Unable to install Voyager

Laravel Version: Current (whatever 'laravel new' gives me)
Voyager Version: Current (whatever 'composer require tcg/voyager' should give me)
PHP Version: 7.0.9
Database Driver & Version: Doesn't get far enough to matter

Description:
In attempting to install voyager, getting this as an error:
D:\Laravel Sites\voyager> composer require tcg/voyager
Using version ^0.11.14 for tcg/voyager
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for tcg/voyager ^0.11.14 -> satisfiable by tcg/voyager[v0.11.14].
    - Conclusion: remove laravel/framework v5.5.0
    - Conclusion: don't install laravel/framework v5.5.0
    - tcg/voyager v0.11.14 requires illuminate/support ~5.3.0|~5.4.0 -> satisfiable by illuminate/support[v5.3.0, v5.3.16, v5.3.23, v5.3.4, v5.4.0, v5.4.13, v5.4.17, v5.4.19, v5.4.27, v5.4.36, v5.4.9].
    - don't install illuminate/support v5.3.0|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.3.16|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.3.23|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.3.4|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.4.0|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.4.13|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.4.17|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.4.19|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.4.27|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.4.36|don't install laravel/framework v5.5.0
    - don't install illuminate/support v5.4.9|don't install laravel/framework v5.5.0
    - Installation request for laravel/framework 5.5.* -> satisfiable by laravel/framework[v5.5.0].

No 'tcg' folder is generated/populated in 'vendor' as a result of this, so the next suggested step of php artisan voyager:install always fails:
D:\Laravel Sites\voyager> php artisan voyager:install
  [Symfony\Component\Debug\Exception\FatalThrowableError]
  Class 'TCG\Voyager\VoyagerServiceProvider' not found

Steps To Reproduce:
Run laravel new voyager, then within the new voyager directory, attempt composer require tcg/voyager.  Lastly, attempt php artisan voyager:install.

Laravel 5.5 just got released today :) We are still working on version 1.0 and I will make sure to add 5.5 to the list of dependencies on version 0.11.
Talking with a few of the other members to get this updated.
If you want to use it right now you can use Laravel 5.4 or you can use Laravel dev version with:
```laravel new folder --dev`` and then when you include voyager you will write:
composer require tcg/voyager dev-master
Thanks :) We'll get 1.0 released here very soon :)

@tnylea are you here?

Ah.  Guess I'm just getting it at a bad time, heh.
Using --dev and dev-master is working out fine for now, thanks.  :)

for sure. @davodavodavo3 I'm here. What's up?
1.0 will be releasing real soon 👍

How are you?
Do you remember me?
I warned you then that you can watch the video without subsription))))But the question is different
make sure to add 5.5 to the list of dependencies on version 0.11???????????????????????????????
There are many dependencies like LaravelColective and other that doesnt support Laravel 5.5 for now.
Dont do that ,
You suspend the projects of others.

I open an issue titled Question? you can answer there)))

@davodavodavo3, Voyager v0.11.* will not support Laravel 5.5.  You will need to upgrade to Voyager v1.0 when it's released (coming soon).

Closing this issue as the original question has been answered

I understand this, I'm not talking about this, I want to understand whether we get updates for older versions of Voyager v0.11.*

I have the same problem how to resolve it ?
I have LARAVEL 5.8.17 And i am trying to install voyager
this is the error:
composer require  tcg/voyager
Using version ^1.2 for tcg/voyager
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- tcg/voyager 1.2.x-dev requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager 1.x-dev requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.0 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.1 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.2 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.3 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.4 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.5 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.6 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- intervention/image 2.4.x-dev requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.5.0 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.4.3 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.4.2 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.4.1 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.4.0 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- Installation request for tcg/voyager ^1.2 -> satisfiable by tcg/voyager[1.2.x-dev, 1.x-dev, v1.2.0, v1.2.1, v1.2.2, v1.2.3, v1.2.4, v1.2.5, v1.2.6].
To enable extensions, verify that they are enabled in your .ini files:
- /opt/alt/php71/etc/php.ini
- /opt/alt/php71/link/conf/alt_php.ini
You can also run php --ini inside terminal to see which files are used by PHP in CLI mode.
Installation failed, reverting ./composer.json to its original content.
[cocknoti@server231 myapp]$ Installation failed, reverting ./composer.json to its original content.
-bash: Installation: command not found
[cocknoti@server231 myapp]$ ^C
[cocknoti@server231 myapp]$ ^C
[cocknoti@server231 myapp]$
login as: cocknoti
<EMAIL_ADDRESS>password:
[cocknoti@server231 ~]$ cd khadamat.ml
[cocknoti@server231 khadamat.ml]$ cd myapp
[cocknoti@server231 myapp]$ composer require tcg/voyager
Using version ^1.2 for tcg/voyager
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- tcg/voyager 1.2.x-dev requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager 1.x-dev requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.0 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.1 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.2 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.3 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.4 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.5 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- tcg/voyager v1.2.6 requires intervention/image ^2.4 -> satisfiable by intervention/image[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.4.x-dev].
- intervention/image 2.4.x-dev requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.5.0 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.4.3 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.4.2 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.4.1 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- intervention/image 2.4.0 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system.
- Installation request for tcg/voyager ^1.2 -> satisfiable by tcg/voyager[1.2.x-dev, 1.x-dev, v1.2.0, v1.2.1, v1.2.2, v1.2.3, v1.2.4, v1.2.5, v1.2.6].
To enable extensions, verify that they are enabled in your .ini files:
- /opt/alt/php71/etc/php.ini
- /opt/alt/php71/link/conf/alt_php.ini
You can also run php --ini inside terminal to see which files are used by PHP in CLI mode.
Installation failed, reverting ./composer.json to its original content.

@alibenali it's not the same problem since you're on a MUCH newer version.  Please don't comment on closed issues, especially when they've been closed for nearly 2 years.
The answer to your problem is toward the bottom of that message.  If you need further help interpreting it, you can ask on slack (or larachat slack, laravel discord, laracasts forums, etc. Because it's not specific to voyager)


Gift Entry Template "Add Section" Button is cut off from view with browser at normal zoom (100%)

When creating new templates in Gift Entry (or editing existing templates), if the template already has a number of fields in it, the "Add Section" button becomes obscured by the "Back: Template Info" // "Next: Batch Settings" overlay. It can be made visible again if you zoom WAY out in the browser but this is a not-very-intuitive workaround for most users (and might cause problems for users who need the text to be big enough to read).
Here's an example of a section where the "Add Section" button is obscured. In this screenshot, the window is scrolled all the way down.

Here's an example of how zoomed out you need to be in order to see the "Add Section" button again. In my browser this is 50% zoomed out:

Hi ,
We don't provide support via GitHub Issues. In the future please post on the Trailblazer Community (https://trailhead.salesforce.com/trailblazer-community/) to have your question addressed by the community.
This issue in particular is a Known Issue, and you can follow it here. If you click "this issue affects me" then you will receive updates when the issue is updated: https://trailblazer.salesforce.com/issues_view?id=a1p4V0000029kRxQAI
Thank you


Remove SGID.ENVIRONMENT.DWQMonitoringLocations from Internal/OpenSGID

Summary

Internal Dataset Name: SGID.ENVIRONMENT.DWQMonitoringLocations
External Dataset Name: Utah DWQ Monitoring Locations
ArcGIS Online Url: https://www.arcgis.com/home/item.html?id=e3d89f76e52942c2bc76dcec65a435ab

This is part of a group of layers (used in the DEQ Interactive Map) that DWQ has recently moved from File Geodatabases on a network share to AGOL hosted feature layers. This means that we no longer need to pull data from their file share for the interactive map and can instead reference their AGOL items directly. These layer are also currently in SGID. We can now remove them from internal/OpenSGID and our AGOL org and replace them with shared items from DEQ in SGID for ArcGIS.
Migration Guide
This dataset has been replaced by this DEQ AGOL Service.
Action items
These questions should be answered before any further actions are taken.

[x] Should the new DEQ AGOL item be included in SGID on ArcGIS? Yes via shared items from DEQ
[x] Should the new DEQ AGOL item be included in the SGID Index? Yes
[ ] Work with Ryan Parker to get his AGOL item standardized and shared to our Hub (@gregbunce, completed: 2024/00/00)

Soft Delete
The purpose of the soft delete is to ensure that all of our users and applications have gracefully migrated off of the dataset. Soft deletes will remain in effect for 14 days. During this time, we will have the ability to restore the dataset to its original SGID offering(s). After these 14 days, the item is then ready for a hard delete.
Note: If this dataset is being replaced, then wait until the new data is publicly available before completing these steps:

[ ] Append "(Mature Support)" to the end of the item title in the SGID.META.AGOLItems table (@stdavis, completed: 2024/00/00)
[ ] Remove all tags other than "Deprecated" in the SDE metadata (@stdavis, completed: 2024/00/00)
[ ] Add note to SDE description noting when layer will be deleted and any replacement layer (@stdavis, completed: 2024/00/00)
[ ] Update the SGID Index to point to the DEQ AGOL item (@stdavis, completed: 2024/00/00)
[ ] Change Authoritative field to d in SGID.META.AGOLItems to automatically set the Deprecated AGOL flag. Allow the d to persist through one run of Auditor - currently, Auditor runs daily at 5:00am (@stdavis, completed: 2024/00/00)

After at least one successful run of Auditor:

[ ] Remove the row from the SGID.META.AGOLItems table. This will trigger the removal of this item in Open SGID (@stdavis, completed: 2024/00/00)
[ ] Unshare the item from its SGID group, which will remove it from the SGID on ArcGIS (@stdavis, completed: 2024/00/00)
~- [ ] Check if this layer in the base maps.  It is recommended to complete the soft delete process before moving on to these steps. If you decide to skip the soft delete, note that you will need to incorporate some of those steps here.

[ ] Manually remove data from the Internal SGID (name, completed: 2024/00/00)

[ ] Deprecated database layers should be backed up on Google Drive > AGRC Projects > SGID > deprecated layers > internal_db_sgid_layers (name, completed: 2024/00/00).

[ ] Remove ArcGIS Online item: (name, completed: 2024/00/00)

Manually delete the AGOL item
-OR-
~- Unshare by changing the AGOL_ITEM_ID field in SGID.META.AGOLItems to something other than an Item ID and manually changing the sharing settings (remove the item from all SGID groups, remove Public sharing),~
-OR-
~- Shelve the data by copying the row from SGID.META.AGOLItems to the AGOLItems_shelved table in AGOL and changing the AGOL_ITEM_ID field in SGID.META.AGOLItems to shelved or some other note.~
Deprecated AGOL items can be backed up on Google Drive > AGRC Projects > SGID > deprecated layers > agol_sgid_layers.
~- [ ] Remove Farm from AGOL connection (name, completed: 2024/00/00)~
~- [ ] Update the SGID Index fields: "arcGisOnline", "openSgid", "openSgidTableName" (@stdavis, completed: 2024/00/00)~

[ ] Update relevant gis.utah.gov data pages (including downloadMetadata.ts) (@stdavis, completed: 2024/00/00)
~- [ ] Update SGID.META.AGOLItems table (name, completed: 2024/00/00)~

cut and paste row to AGOLItems_shelved table if shelving (see below)
set the AGOL_ITEM_ID field to hosted by <agency> for Farm from AGOL
set the AGOL_ITEM_ID field to exclude from AGOL to not publish to ArcGIS Online

[ ] Delete Google Drive data (name, completed: 2024/00/00)
[ ] Remove row from SGID.META.ChangeDetection (@stdavis, completed: 2024/00/00)
[ ] Remove data from forklift hashing and receiving (@stdavis, completed: 2024/00/00)
[ ] Remove row from data/hashed/changedetection.gdb/TableHashes (@stdavis, completed: 2024/00/00)

Shelve/Static
Choose one based on situation.
~- [ ] Upload to UtahAGRC/AGRC_Shelved folder in AGOL (New shelved item not already in AGOL) (name, completed: 2024/00/00)~
~- [ ] Move existing AGOL item to AGRC_Shelved AGOL folder (shelving an item already in AGOL) (name, completed: 2024/00/00)~
~- [ ] Upload to appropriate UtahAGRC/{SGID Category} folder in AGOL (for static datasets) (name, completed: 2024/00/00)~
Add record to table.
~- [ ] Add record to AGOLItems_shelved table in ArcGIS Online with shelved or static in the CATEGORY field (name, completed: 2024/00/00)~
:robot: Automation validation

Assign yourself or someone to check the item by replacing name with their github @name.
Check [x] the box and add the date of verification 2020/01/01 when the task is verified.
~Strike~ out all items that do not apply.

[ ] Remove data from Open SGID (@stdavis on 2024/00/00)
[ ] sgid-index (@steveoh on 2024/00/00)
[ ] Auditor sets appropriate shelved/static/Deprecated information (@jacobdadams on 2024/00/00)

Are there service dependencies

[x] Are clients querying this data with the WebAPI?
No, I checked the dashboard and couldn't find any requests.
[ ] Notify Don Jackson (don.jackson1 at motorolasolutions.com) if the data is in the Next-Generation 911 Motorola Aware Map? (@gregbunce on 2024/00/00)
[x] Does any other application depend on this data?
Enviro, but I've already pointed it at the new AGOL items. There may be some cleanup in forklift at some point but I don't think that it should block this porter item.

Notification

[ ] Twitter (@steveoh)

Group Task Assignments

Check [x] the box when you have assigned all the tasks relevant to your group.

[ ] Data Team (@gregbunce)
[ ] Dev Team (@steveoh)
[ ] Cadastre Team (@rkelson)

conductor results for tasks - 344

check
status

@gregbunce has completed 0 out of 3 tasks
:no_entry:

@stdavis has completed 0 out of 12 tasks
:no_entry:

@steveoh has completed 0 out of 3 tasks
:no_entry:

@jacobdadams has completed 0 out of 1 tasks
:no_entry:

@rkelson has completed 0 out of 1 tasks
:no_entry:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:no_entry:

open sgid
:no_entry:

open data
:no_entry:

arcgis online
:no_entry:

stewardship

- porter issue link
:no_entry:

conductor results for tasks - 344

check
status

@gregbunce has completed 0 out of 3 tasks
:no_entry:

@stdavis has completed 0 out of 12 tasks
:no_entry:

@steveoh has completed 2 out of 3 tasks
:no_entry:

@jacobdadams has completed 0 out of 1 tasks
:no_entry:

@rkelson has completed 0 out of 1 tasks
:no_entry:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:no_entry:

open sgid
:no_entry:

open data
:no_entry:

arcgis online
:no_entry:

stewardship

- porter issue link
:no_entry:

conductor results for tasks - 344

check
status

@gregbunce has completed 0 out of 3 tasks
:no_entry:

@stdavis has completed 0 out of 12 tasks
:no_entry:

@steveoh has completed 2 out of 3 tasks
:no_entry:

@jacobdadams has completed 0 out of 1 tasks
:no_entry:

@rkelson has completed 0 out of 1 tasks
:no_entry:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:no_entry:

open sgid
:no_entry:

open data
:no_entry:

arcgis online
:no_entry:

stewardship

- porter issue link
:no_entry:

conductor results for tasks - 344

check
status

@gregbunce has completed 0 out of 3 tasks
:no_entry:

@stdavis has completed 0 out of 12 tasks
:no_entry:

@steveoh has completed 2 out of 3 tasks
:no_entry:

@jacobdadams has completed 0 out of 1 tasks
:no_entry:

@rkelson has completed 0 out of 1 tasks
:no_entry:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

@stdavis has completed 0 out of 12 tasks
:no_entry:

@steveoh has completed 2 out of 3 tasks
:no_entry:

@jacobdadams has completed 0 out of 1 tasks
:no_entry:

@rkelson has completed 0 out of 1 tasks
:no_entry:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:no_entry:

open sgid
:no_entry:

open data
:no_entry:

arcgis online
:no_entry:

stewardship

- porter issue link
:no_entry:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

@stdavis has completed 0 out of 12 tasks
:no_entry:

@steveoh has completed 2 out of 3 tasks
:no_entry:

@jacobdadams has completed 0 out of 1 tasks
:no_entry:

@rkelson has completed 0 out of 1 tasks
:no_entry:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:no_entry:

open sgid
:no_entry:

open data
:no_entry:

arcgis online
:no_entry:

stewardship

- porter issue link
:no_entry:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

@stdavis has completed 5 out of 12 tasks
:no_entry:

@steveoh has completed 2 out of 3 tasks
:no_entry:

jacobdadams has completed 1 out of 1 tasks
:+1:

@rkelson has completed 0 out of 1 tasks
:no_entry:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:no_entry:

open sgid
:no_entry:

open data
:no_entry:

arcgis online
:no_entry:

stewardship

- porter issue link
:+1:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

@stdavis has completed 5 out of 12 tasks
:no_entry:

@steveoh has completed 2 out of 3 tasks
:no_entry:

jacobdadams has completed 1 out of 1 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:no_entry:

open sgid
:no_entry:

open data
:no_entry:

arcgis online
:no_entry:

stewardship

- porter issue link
:+1:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

@stdavis has completed 7 out of 12 tasks
:no_entry:

@steveoh has completed 2 out of 3 tasks
:no_entry:

jacobdadams has completed 1 out of 1 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- porter issue link
:+1:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

stdavis has completed 12 out of 12 tasks
:+1:

@steveoh has completed 2 out of 3 tasks
:no_entry:

jacobdadams has completed 1 out of 1 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

stdavis has completed 12 out of 12 tasks
:+1:

jacobdadams has completed 1 out of 1 tasks
:+1:

steveoh has completed 2 out of 2 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- porter issue link
:+1:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- porter issue link
:+1:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

stdavis has completed 12 out of 12 tasks
:+1:

jacobdadams has completed 1 out of 1 tasks
:+1:

steveoh has completed 2 out of 2 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

stdavis has completed 12 out of 12 tasks
:+1:

jacobdadams has completed 1 out of 1 tasks
:+1:

steveoh has completed 2 out of 2 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- porter issue link
:+1:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

stdavis has completed 12 out of 12 tasks
:+1:

jacobdadams has completed 1 out of 1 tasks
:+1:

steveoh has completed 2 out of 2 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- porter issue link
:+1:

conductor results for tasks - 344

check
status

@gregbunce has completed 3 out of 7 tasks
:no_entry:

stdavis has completed 12 out of 12 tasks
:+1:

jacobdadams has completed 1 out of 1 tasks
:+1:

steveoh has completed 2 out of 2 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:no_entry:

meta table
:+1:

stewardship

- porter issue link
:+1:

Done

Thanks for taking care of this, @ZachBeck. 🙏
I'm going to reopen and close after we get a clean conductor report next week.

conductor results for tasks - 344

check
status

gregbunce has completed 3 out of 3 tasks
:+1:

stdavis has completed 12 out of 12 tasks
:+1:

ZachBeck has completed 4 out of 4 tasks
:+1:

jacobdadams has completed 1 out of 1 tasks
:+1:

steveoh has completed 2 out of 2 tasks
:+1:

rkelson has completed 1 out of 1 tasks
:+1:

conductor results for environment.dwqmonitoringlocations

check
status

internal sgid
:+1:

meta table
:+1:

stewardship

- porter issue link
:+1:


yaml not found?

the yaml file is not found. Ive installed using Anaconda and Github.
Ive even inistalled using python and both dont seem to have the yaml file.
Am i doing something wrong?
Using:
Windows 10 Pro
MSI X470
Ryzen 5 3600x
16gb Ram
Gigabyte GeForce 1050 ti OC Edition 4gb

Step to reproduce

Installed using ...
Run as ...
Got ... error

Output
Share what your terminal says when you run the script (as well as what you would expect).

Environment

OS
Windows / Linux / MacOS / other

Installation type
Conda / pip / other

RAM available
XGo

Hardware spec
GPU / CPU / etc ...

Additional context

Please read the documentation for Conda installation. https://github.com/deezer/spleeter/wiki/1.-Installation#using-conda


Add a modal dialog class

This is intended to be used by all of the jupyter repos, but I am prototyping it here.
The dialog will present as a transparent div overlapping the parent panel.
/**
 * A button applied to a dialog.
 */
export
interface IButtonItem {
  /**
   * The text for the button.
   */
  text: string;

  /**
   * The icon class for the button.
   */
  icon?: string;

  /**
   * The extra class name to associate with the button.
   */
  className?: string;

  /**
   * The command for the button.
   */
  command?: ICommand;

  /**
   * The args object for the button command.
   */
  commandArgs?: any;
}

/**
 * Define a default "OK" button.
 */
const okButton: IButtonItem = {
  text: 'OK',
  className: 'jp-Dialog-ok-button'
}

/**
 * Define a default "Cancel" button.
 */
const cancelButton: IButtonItem = {
  text: 'Cancel',
  className: 'jp-Dialog-cancel-button'
}

/**
 * An implementation of a modal dialog.
 */
class Dialog {

  /**
   * Construct a new dialog.
   */
  constructor(title: string, host: HTMLElement, body: HTMLElement, buttons?: IButtonItem[]) {
    this._title = title;
    this._host = host;
    this._body = body;
    this._buttons = buttons || [okButton, cancelButton];
  }

  /**
   * Show the dialog over the host node.
   *
   * @returns The button item that was selected or `null` if the dialog was Escaped.
   */
  show(): Promise<IDialogButton> { }
}

cc @ellisonbg @Carreau @jasongrout

It could also be exposed as:
export
function showDialog(title: string, host: HTMLElement, body: HTMLElement, buttons?: IButtonItem[]): Promise<IDialogButton>{ }

How about making showDialog a static method of Dialog?

That way if we have multiple convenience functions, they are all collected in the same place.

Agreed, updated.


modifyreg16: use small lock in modifyreg16

Summary
modifyreg16: use small lock in modifyreg16
reason:
We would like to replace the big lock with a small lock.
Impact
modifyreg16
Testing
ci

[Experimental Bot, please feedback here]
No, this PR does not fully meet the NuttX requirements. While it provides a summary and mentions testing with CI, it lacks crucial details.
Here's what's missing:

Summary:  Needs more detail. How does modifyreg16 work with the small lock?  What was the previous locking mechanism (the "big lock")?  Why is this change beneficial (performance, deadlock avoidance, etc.)?  Issue references are missing.
Impact:  The impact section is severely lacking.  All answers are essentially "NO" by omission.  At a minimum, the impact on hardware and compatibility needs to be addressed.  Does this change affect all architectures?  Is it backwards compatible?  Even if the answer is "NO", it needs to be explicitly stated.
Testing: CI passing is not sufficient.  "Testing logs before change" and "Testing logs after change" sections are empty.  What was tested? What were the results?  Provide specific examples showing the improvement or demonstrating the fix.  Include the build host and target details.

Without this additional information, the PR cannot be properly reviewed and evaluated.


Major conflict with GW2 UI

You have a really bad conflict with GW2 UI - https://www.curseforge.com/wow/addons/gw2-ui. This addon breaks their action bars. The author of that addon says it's LibStrataFix that's the culprit.

The author has been awol for quite some time, I've updated the project in a fork of this repo here and fixed this issue: https://github.com/MChambers1992/CopyPasta2
It is also available to download through Tukui here: https://www.tukui.org/addons.php?id=186

well i got this today. Not working right . It says come here to report I reported it but its busted.
Version: GW2_UI 5.19.2 Date: 09/29/21 11:24:05 Locale: enUS Build 9.1.0 40120
[11:22:50] [ERROR]: "GW2_UI\mainbar/classpowers.lua:1284: attempt to index field 'GwPlayerUnitFrame' (a nil value)"
[string "=[C]"]: ?
[string "GW2_UI\mainbar/classpowers.lua"]:1284: in function `LoadClassPowers'
[string "GW2_UI\GW2_ui.lua"]:611: in function <GW2_UI\GW2_ui.lua:382>
[string "GW2_UI\GW2_ui.lua"]:692: in function <GW2_UI\GW2_ui.lua:687>


Splitted batch iterator functionality

splitted batch iterator functionality into

getting node_ids per octree according to a function e.g. point location
getting from each node chunks of data
computing the mut function at the end

this is the pre step that allows finally for a parallelization of the query

ptal @feuerste @nnmm

ptal @feuerste @nnmm

a number of changes of the pr in #219 got lost in the merge to master
hence i'd leave for comparison the changes against the branch and then switch after the review to master

The main question I have is whether we want an mpsc of points vs an mpsc of batches. This PR seems to be targetting an mpsc of batches, and I'd like to understand better why, since the decision to go with batches options seems to be making this change a bit complex. Is it for performance reasons?

yes, I'd say so. every time you want to read a single point a piece of file is gonna be cached and you get the rest of the batch nearly for free. the batch iterator has been now implemented since a couple of prs. which complexity are you thinking of? This PR actually decouples the evaluation of mutable fuctions from the reading of the points, as mutable function do not generally go along with threads.

I think you're right that it makes sense to have an mpsc/channel of batches. It seems possible however to keep the BatchIterator and PointStream like before, but just make the callback in the PointStream a closure that sends the batch over the channel back to the main thread. The actual callback could then be executed with try_for_each on rx.iter() like in this demo. That seems a lot simpler, but if I'm missing anything, let me know :)

in theory yes, it would work, but it allows misuse of the batch iterator. that's why I want to scrap passing the mut function completely.


Local data sources should keep all metadata

Expected behavior
After making a remote data source local I expect all meta-information to be kept.
It is essential for users to have at least the complete variable information before the dataset is opened.
Actual behavior
Only limited meta-info is currently stored in data_stores/local/<name>.json. The majority of information available from remote ODP services is dropped.
Steps to reproduce the problem

CLI cate ds copy ... or in the GUI, clicking the Download button in the DATA SOURCES panel
Find only limited data in  data_stores/local/<name>.json.

Specifications
Cate 0.8.0rc5

Turned into bug, because we loose essential functionality while opening such datasets, e.g. no variables to select from, no spatial coverage to validate against entered subset constraints.

Not happened again


[1457] Add prettier

Context
This adds prettier as a project dependency, allowing us to run editor plugins to automatically indent / format files as we go.
Changes proposed in this pull request

Add prettier as an npm dependency (because the gem 'prettier' version gets ignored by my editor Atom for some reason... probably works for other editors, but please test)
Add instructions for how to run prettier
Disable rubocop rules that conflict with prettier

Guidance to review
Try this locally! Configure your editor, go to any file (app/models/provider.rb is good), and save it / format it.
I've stopped short of formatting all the files because in some niche situations I think the changes deserve manual review.
Checklist

[x] Make sure all information from the Trello card is in here
[ ] Attach to Trello card
[x] Rebased master
[x] Cleaned commit history
[x] Tested by running locally

 Use prettier to auto-format Ruby and ERB

I actually now propose parking this, as I think Rubocop deserves a bit more exploration, based on my chats with @heidar and @misaka.
Will leave the branch open.


server stops suddenly

Hi,
Server was running fine. Just upgraded to latest commits few days ago. Now when I type electrum-server starts, it looks like it starts (take some time) but when I run electrum-server getinfo (after ~1 minute) it says server not running. There is nothing in the log files which would be interesting, except starting TCP Server on ... and starting SSL server on...
bitcoind is working good, didn't touch it. I have tried restarting bitcoind as well, and then then electrum server started and was running for few hours, but died again with nothing in the logfile. How can I debug this?

You can try to run run_electrum_server directly and see if it spits out more info.

INFO:electrum:Starting Electrum server on <IP_ADDRESS>
ERROR:electrum:db init
Traceback (most recent call last):
File "build/bdist.linux-x86_64/egg/electrumserver/storage.py", line 180, in init
self.db_utxo = DB(self.dbpath, 'utxo', config.getint('leveldb', 'utxo_cache'))
File "/usr/lib/python2.7/ConfigParser.py", line 359, in getint
return self._get(section, int, option)
File "/usr/lib/python2.7/ConfigParser.py", line 356, in _get
return conv(self.get(section, option))
File "/usr/lib/python2.7/ConfigParser.py", line 618, in get
raise NoOptionError(option, section)
NoOptionError: No option 'utxo_cache' in section: 'leveldb'
INFO:electrum:Stopping Stratum
INFO:electrum:Initializing database
Traceback (most recent call last):
File "/usr/local/bin/run_electrum_server", line 4, in
import('pkg_resources').run_script('electrum-server==1.0', 'run_electrum_server')
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 534, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1445, in run_script
exec(script_code, namespace, namespace)
File "/usr/local/lib/python2.7/dist-packages/electrum_server-1.0-py2.7.egg/EGG-INFO/scripts/run_electrum_server", line 256, in
File "build/bdist.linux-x86_64/egg/electrumserver/blockchain_processor.py", line 57, in init
File "build/bdist.linux-x86_64/egg/electrumserver/storage.py", line 195, in init
File "build/bdist.linux-x86_64/egg/electrumserver/storage.py", line 324, in put_node
AttributeError: 'Storage' object has no attribute 'db_utxo'

you're not on git head, are you?

you have to run run_electrum_server.py, not run_electrum_server

Maybe the database was corrupt. I have deleted electrum's database and downloaded it again from foundry. Started fine and working for last hours under normal parameters... slowly catching up.
Could my database just get corrupted on the fly, without anyone doing anything wrong? I know how to start/stop the server and never kill -9 electrum.

@ecdsa It have downloaded a fresh leveldb dump from foundry, started again and it died again unfortunately. There is a bug here. I run run_electrum_server.py in console and here is what I get:
INFO:electrum:Starting Electrum server on <IP_ADDRESS>
INFO:electrum:Database version 3.
INFO:electrum:Pruning limit for spent outputs is 10000.
INFO:electrum:Blockchain height 375506
INFO:electrum:UTXO tree root hash: c5e8dca8fefc2e5f8ab198aac02824d9b0b3e08c414cd                                                                                249fa62bb0d0408221a
INFO:electrum:Coins in database:<PHONE_NUMBER>755852
INFO:electrum:catching up missing headers:<PHONE_NUMBER>06
INFO:electrum:TCP server started on <IP_ADDRESS>:50001
INFO:electrum:SSL server started on <IP_ADDRESS>:50002
Exception in thread Thread-4:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
File "/usr/lib/python2.7/threading.py", line 763, in run
File "build/bdist.linux-x86_64/egg/electrumserver/blockchain_processor.py", line 83, in do_catch_up
File "build/bdist.linux-x86_64/egg/electrumserver/blockchain_processor.py", line 657, in catch_up
File "build/bdist.linux-x86_64/egg/electrumserver/blockchain_processor.py", line 413, in import_block
File "build/bdist.linux-x86_64/egg/electrumserver/storage.py", line 625, in import_transaction
File "build/bdist.linux-x86_64/egg/electrumserver/storage.py", line 585, in set_spent
File "build/bdist.linux-x86_64/egg/electrumserver/storage.py", line 144, in get
File "_plyvel.pyx", line 299, in plyvel._plyvel.DB.get (plyvel/_plyvel.cpp:4025)
File "_plyvel.pyx", line 103, in plyvel._plyvel.db_get (plyvel/_plyvel.cpp:1891)
File "_plyvel.pyx", line 80, in plyvel._plyvel.raise_for_status (plyvel/_plyvel.cpp:1698)
IOError: IO error: /home/bitnode/electrum-server/electrum-leveldb-utxo-10000/hist/30610918.ldb: Too many open files
What could be the issue? I have the correct limits setup in /etc/security/limits.conf for the user running electrum.

If this is a ubuntu install you also need to edit /etc/pam.d/common-session and add
session required   pam_limits.so
To test that your changes are ok login with the user running electrum and run:
ulimit -n

@abitfan I am on Debian Jessie.
Unfortunately, here is what ulimit -n run as the user running electrum says:
sudo -u bitnode -i ulimit -n
1024
I have in /etc/security/limits.conf the following appended:
bitnode hard nofile 65536
bitnode soft nofile 65536

Actually the common-session mod is required for debian as well

@abitfan can you let me know step by step what do I need to do in order to enable it? thanks.

as root:
echo "session required pam_limits.so" >> /etc/pam.d/common-session

I have done that. now the limit is 65536 for 'bitnode' which is the user I run electrum-server as.
It still did not fix it. It starts and dies with nothing relevant in electrum.log. Running from console I get the following:
sudo -u bitnode -i run_electrum_server.py
INFO:electrum:Starting Electrum server on <IP_ADDRESS>
ERROR:electrum:db init
Traceback (most recent call last):
File "build/bdist.linux-x86_64/egg/electrumserver/storage.py", line 180, in init
self.db_utxo = DB(self.dbpath, 'utxo', config.getint('leveldb', 'utxo_cache'))
File "build/bdist.linux-x86_64/egg/electrumserver/storage.py", line 129, in init
self.db = plyvel.DB(os.path.join(path, name), create_if_missing=True, compression=None, lru_cache_size=cache_size)
File "_plyvel.pyx", line 236, in plyvel._plyvel.DB.init (plyvel/_plyvel.cpp:3129)
File "_plyvel.pyx", line 80, in plyvel._plyvel.raise_for_status (plyvel/_plyvel.cpp:1698)
IOError: IO error: lock /home/bitnode/electrum-server/electrum-leveldb-utxo-10000/utxo/LOCK: Resource temporarily unavailable
INFO:electrum:Stopping Stratum

Can you try this with a fresh db ?

Ok. I have tried with fresh DB 10 times. Correct dbs, checked the hash and everything.
I have set the limits properly like you said, the user running electrum now has soft 65536 and hard 65536.  It always dies like this after few seconds:
INFO:electrum:Starting Electrum server on <IP_ADDRESS>
terminate called after throwing an instance of 'std::bad_alloc'
what():  std::bad_alloc
I am on latest commit. What could be wrong?

bad_alloc sounds like memory exhaustion. Try allocating more swap space.
You could also reduce the cache sizes via your electrum.conf hist_cache, utxo_cache and addr_cache settings.

My cache looks empty. This machine used to work with electrum very well. Can it suddenly require more swap space?

@shsmith @ecdsa I have increased the allocated RAM for this virtual machine from 8GB to 16GB and increased the swap space from 5GB to 8GB and this seam to have fixed it -- now electrum is catching up with bitcoind height and updating leveldb.
Do we require more resources now to run electrum server?

Tried 100 more times with different changes, it still won't work.
I think this is not related to electrum-server, this is maybe the fault of not enough hard disk I/O operations allowed since the server doesn't have SSD (server has normal SATA drives, no raid). This is a virtual machine, hosted on shared hardware - on the same hardware I have another electrum server + many other things so I guess the disk just can't take all of it and the hypervisor doesn't allocate more I/O hard disk resources to this virtual machine in order to protect the others.
We already know that leveldb uses the disk very much, it needs SSD. So, I will close this, since I don't see a bug in electrum-server. The last log message is:
[18/10/2015-05:06:38] block 379312 (410 401.10s) 457255bb18a4ba9e792ab8f3e2b4d5fd34f3dccf7b008ed5d278622c31f3e280 (4.49tx/s, 255.59s/block) (eta 11.3 hours, 112 blocks)
You can see it takes a lot to expand blocks. The RAM/CPU/Swap space resources are plenty, but the hard disk is not.

I'm seeing the same issue here:
server with 4 GB RAM and 4 GB swap dies after around a week of running, which caches at half the size of the new lower default (so they are not the issue):
Crash message "terminate called after throwing an instance of 'std::bad_alloc'  what():  std::bad_alloc"
It's definitely running out of memory / swap.
I've noticed the current git head pulls in like 90% of memory (with swap that'd be 8 GB on my system) on startup to catch up blocks.
This might be related to recent changes like "writing once per block" or the "ordering of tx" stuff. server versions from June 2015 don't have this issue.
Unless memory footprint can be reduced we should recommend at least 8 GB or RAM - better 16 GB - for running electrum server

Any update on this? I'm still seeing electrum-server taking 16GB of RAM + 4 GB swap on a server when processing blocks...

We're investigating the issue. Thomas' server is using less than 2 gigs of RES RAM, while I'm at 11 gig. It might be the plyvel verison. I've updated to 0.9 (from 0.2) recently - still running leveldb 1.9.x (2013) with it. Thomas is using leveldb 1.9.x and plyvel 0.9.  Which pyvel versions are you using?
For now I get a stable running server with 16 GB RAM + 16 GB swap. Around 6 GB swap get used so I can recommend setting 24 Gigs or RAM + swap.

Sorry, no progress here currently. The RAM recommendations still stand. I've put them into the HOWTO for now


Some code cleanup

This has a variety of consistency code cleanups in it, some markup for fixme's and a changeover to clowderframework instead of clowder.ncsa for reference URLs

Merged most of the changes in master. Left out formatting changes. Thank you!


Edit page will get error after changing LANGUAGE_CODE in settings

Found a bug? Please fill out the sections below. 👍
Issue Summary
When I set LANGUAGE_CODE = 'zh-hans', then edit page will ocurred error like
can't currently handle on_delete types other than CASCADE, SET_NULL and DO_NOTHING
Steps to Reproduce
1.set LANGUAGE_CODE = 'zh-hans' in settings/base.py
2. runserver anyway
3. Try to edit page in nemu
Any other relevant information. For example, why do you consider this a bug and what did you expect to happen instead?

I have confirmed that this issue can be reproduced as described on a fresh Wagtail project: (yes)

Technical details

Python version: 3.9.1
Django version: 3.1.7
Wagtail version: 2.12.2.
Browser version: Edge 88.

Hi @Sccotliu - thanks for the report.
I'm not able to reproduce this error on a fresh Wagtail project as described. From the error message, it sounds like you've set the ParentalKey on an Orderable child model to on_delete=models.PROTECT or similar - not related to the language setting.
If this isn't the case, please include your models.py file and the full traceback of the error.

Actually, I've just been able to replicate it - it looks like it only happens if the page has been previously saved under the original language setting. Investigating now...

cc @kaedroho
Looks like there are two variants of this issue: if LANGUAGE_CODE is changed immediately after running initial migrations - but with Wagtail i18n still disabled - then a "Locale object with ID 1 does not exist" error occurs on save:
Traceback (most recent call last):
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/core/handlers/exception.py", line 47, in inner
    response = get_response(request)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/core/handlers/base.py", line 181, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/views/decorators/cache.py", line 44, in _wrapped_view_func
    response = view_func(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/urls/__init__.py", line 127, in wrapper
    return view_func(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/auth.py", line 193, in decorated_view
    return view_func(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/views/generic/base.py", line 70, in view
    return self.dispatch(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/views/pages/edit.py", line 131, in dispatch
    return super().dispatch(request)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/views/generic/base.py", line 98, in dispatch
    return handler(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/views/pages/edit.py", line 218, in post
    return self.form_valid(self.form)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/views/pages/edit.py", line 248, in form_valid
    return self.save_action()
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/views/pages/edit.py", line 254, in save_action
    self.page.save_revision(
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/core/models.py", line 1287, in save_revision
    self.full_clean()
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/core/models.py", line 948, in full_clean
    super().full_clean(*args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/db/models/base.py", line 1231, in full_clean
    raise ValidationError(errors)

Exception Type: ValidationError at /admin/pages/3/edit/
Exception Value: {'locale': ['Objekt vom Typ locale mit id 1 existiert nicht.']}

On the other hand, if you run initial migrations, make a draft edit to the homepage and then change LANGUAGE_CODE, then on visiting the Edit view again I get the on_delete error as described here, presumably an instance of https://github.com/wagtail/django-modelcluster/issues/127 at the point where it's unpacking the previous revision's JSON:
Traceback (most recent call last):
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/modelcluster/models.py", line 86, in model_from_serializable_data
    field.remote_field.model._default_manager.get(**{field.remote_field.field_name: clean_value})
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/db/models/manager.py", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/db/models/query.py", line 429, in get
    raise self.model.DoesNotExist(

During handling of the above exception (Locale matching query does not exist.), another exception occurred:
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/core/handlers/exception.py", line 47, in inner
    response = get_response(request)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/core/handlers/base.py", line 181, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/views/decorators/cache.py", line 44, in _wrapped_view_func
    response = view_func(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/urls/__init__.py", line 127, in wrapper
    return view_func(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/auth.py", line 193, in decorated_view
    return view_func(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/django/views/generic/base.py", line 70, in view
    return self.dispatch(request, *args, **kwargs)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/admin/views/pages/edit.py", line 104, in dispatch
    self.page = self.real_page_record.get_latest_revision_as_page()
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/core/models.py", line 1360, in get_latest_revision_as_page
    return latest_revision.as_page_object()
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/core/models.py", line 2781, in as_page_object
    return self.page.specific.with_content_json(self.content_json)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/wagtail/core/models.py", line 2629, in with_content_json
    obj = self.specific_class.from_json(content_json)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/modelcluster/models.py", line 272, in from_json
    return cls.from_serializable_data(json.loads(json_data), check_fks=check_fks, strict_fks=strict_fks)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/modelcluster/models.py", line 239, in from_serializable_data
    obj = model_from_serializable_data(cls, data, check_fks=check_fks, strict_fks=strict_fks)
  File "/Users/matthew/.virtualenvs/zhhans/lib/python3.9/site-packages/modelcluster/models.py", line 100, in model_from_serializable_data
    raise Exception("can't currently handle on_delete types other than CASCADE, SET_NULL and DO_NOTHING")

Exception Type: Exception at /admin/pages/3/edit/
Exception Value: can't currently handle on_delete types other than CASCADE, SET_NULL and DO_NOTHING

Have also replicated this on 2.11.1.

This is happening due to the custom manager on the Locale class, which filters out any locales that are not in the current set of recognised language codes:
https://github.com/wagtail/wagtail/blob/4ae37572d467554a9483f96813a995ef23437d90/wagtail/core/models.py#L333-L335
If LANGUAGE_CODE is changed from the one that the page tree was created under, then the locale of the existing pages will no longer be considered valid, even on a non-i18n-enabled install - and so pages will fail validation checks on saving.
@kaedroho Commenting out this get_queryset method fixes both variants of this bug, and doesn't break any of Wagtail or wagtail-localize's tests. Any reason not to remove it? (Or, alternatively, only enforce it when WAGTAIL_I18N_ENABLED is true - that does mean that people are likely to see this breaking again as soon as they enable i18N, but at least that way we aren't breaking something that works on existing setups, and it's [sort of covered by the documentation(https://docs.wagtail.io/en/stable/advanced_topics/i18n.html#locales).)

Thanks for your concern, but here is another issue maybe related by LANGUAGE_CODE setting, When I change LANGUAGE_CODE before migrate, create and update pages corrected, but after I release the page, I can enter the list page, but click the title will ocurred error

@Sccotliu Looks like that view is being handled by puput rather than Wagtail - I'm happy to investigate further if you can find steps to replicate this problem without puput.

@gasman Thanks, I realized that actual is puput issue, and I were reslove it by myself, sorry to bother you


Transitioning JSON generation scripts

Willow to document scripts and usage in project repository.
What to cover:
1.) General overview of how scripts work (e.g. Google Sheet levelgens parsed by script ___.py, ___.py called by Google Cloud function, outputs to JSON, etc.)
2.) Two methodologies for calling the function-- a.) link in Google Sheet or b.) (for scripting) by URL
3.) Two methods for deploying the Cloud function-- a.) web interface or b.) command line deployment.

Willow to add level name equivalency chart.

Documentation in progress link: https://docs.google.com/document/d/19K0y2f4JvJbF3hve1GN2h-5BnooDMy_L47LKIeqtkks/edit?usp=sharing


Bug 2041679: report the correct K8S version

Description of the change:
Motivation for the change:
Checklist
If the pull request includes user-facing changes, extra documentation is required:

[ ] Add a new changelog fragment in changelog/fragments (see changelog/fragments/00-template.yaml)
[ ] Add or update relevant sections of the docs website in website/content/en/docs

/bugzilla refresh

closing this PR in favor of PR #203


[Feature] Implement dark/light mode

I noticed the website does not have a dark/light mode, I would like to implement this using vanilla JS.

Just to add a little context to this issue - apparently browsers will use your system settings to automatically use light mode or dark mode. I did a quick web search and found an article about this from a few years ago.
But I agree that it would be nice to have a toggle between the two, and vanilla JS is a great way to do it!

I'm not sure exactly how it works either, should I start on this issue to do it with vanilla JS or do you want to leave it for someone else?

No, you can go for it! Might need to do a bit of reading/learning but have a try with js.

Alright assign me to this one. :)

All yours! Leave a comment here if you get stuck, we're happy to help where we can.

I'll close this for now, we'll see in the future if we want/need to make any changes. A good start!


misunderstanding of the data size of omniglot

Hi,
I noticed the description of the dataset:
"The Omniglot dataset [1]. A dataset of 1623 handwritten characters from 50 different alphabets.
The meta train/validation/test splits used in [3] are taken from [this repository]. These splits are over 1028/172/423 classes " .
However, when I tested
dataset = omniglot(data_path, ways=6, shots=10, test_shots=15, meta_train=True, download=True)
print(len(dataset))
the result is this huge number:<PHONE_NUMBER>037915648,
Also, when I use dataloader, the number of total batch seems not equal 1028.
If I change argument "ways" to bigger than 10, i get this bug: "OverflowError: cannot fit 'int' into an index-sized integer".
Is there any misunderstanding of this dataset here? Thanks for your explanation

Hi! len(dataset) returns the number of tasks in the dataset. For a dataset like Omniglot, each task is created as a combination of multiple classes (this is a CombinationMetaDataset in Torchmeta), so the number of tasks you can create is combinatorially large.
In the case of Omniglot, you have 1028 classes in the meta-training split. In fact, since there are class augmentations (rotations of 90/180/270 degrees), this increases the pool of possible classes to 1028 * 4 = 4112. Since you want to create 6-way tasks, the total number of tasks is C(4112, 6) = 4112! / (6! * 4106!) =<PHONE_NUMBER>037915648. For a larger number of ways, this number is so large it doesn't fit in an int anymore.

Thank you! That makes perfect sense. And if I set shuffle = False in data_loader, I can make sure that even if I test several methods on partial data set, they are using the same chunk of data.

shuffle=False in the data-loader means that the tasks will be returned in a sequential order. For example in Omniglot, if the classes are between 0 and 4111, then the tasks will be returned in this order (for 6-way classification, where the tuple means which classes are selected for the task):
(0, 1, 2, 3, 4, 5) -> (0, 1, 2, 3, 4, 6) -> (0, 1, 2, 3, 4, 7) -> ... -> (4105, 4107, 4108, 4109, 4110, 4111)  -> (4106, 4107, 4108, 4109, 4010, 4111)
So they are not using the same chunk of data.

Well, then I'd better set shuffle = True. But how do I know my algorithm is comparable with others if we are using different tasks? I saw that in your MAML demo and a claimed robust implementation in https://github.com/tristandeleu/pytorch-maml, you randomly picked 100 tasks as training episode. I was wondering if in practice, it does not make such a difference with a big enough epoch. Again, thank you for being patient and kind.

In practice, it won't make much of a difference assuming you do N trials with each of M seeds and consider the range.


Cherrypick: e6b8181895b96740dbe54aca036aa237e0a8363d

Commit:

llvm/llvm-project@e6b8181895b96740dbe54aca036aa237e0a8363d

Why is this important or safe?
Improves selection trees to work on fields, which in return enables all other features. see clangd/clangd#292

Weird, for some reason on the branch this test fails: class X { operator [[^X]](); }; because it emits a correct diagnostic that a self-conversion will never be used. Wonder why it's passing on master...
Anyway, tweaked the test and merged.


Openid connect

Rebasing the work done by @ib-lundgren in 2014 onto the current version of master and providing some additional work to get OpenID Connect generally useable.  Authorization Code flow is the primary target but existing work on Implicit and Hybrid is still included.

Nice job. Have you tested this yourself?

@thedrow I'm developing it in the context of a Django app using Django-OAuth2-Toolkit, with a small few patches to DOT to support any changes made here to the oauthlib (mostly the validator) .  So far so good.

Ok let me know when you guys are ready.

@thedrow @bjmc @clintonb @ib-lundgren I think this is pretty much ready - but does anyone have any lingering concerns or suggestions?

How much API does this PR break if at all?

Also, this feature really needs to be documented.

Sorry for the delay - I hope to get to that this week.

@joelstevenson @thedrow @ib-lundgren is this still under active development? What can we do to get it delivered?

@clintonb I need to provide some documentation describing what aspects of OIDC are supported.  Thanks for the ping - I will do so today.

@thedrow the OpenID Connect auth flows don't break any existing API, as such, though the do extend it when an OpenID Connect auth request is received.  The OIDC code is only active when/if the request has a scope including openid.  For all other requests OAuthLib will behave as if unchanged.
If OAuthLib users are passing the scope parameter through unfiltered (which is likely I'd imagine), and a request comes through that triggers the OIDC code then it will result in a NotImplementedError from one of:
RequestValidator.validate_silent_authorization()
RequestValidator.validate_silent_login()
RequestValidator.validate_user_match()
RequestValidator.get_id_token()

Until their validator subclass provides an implementation.

Is there anything else needed to push this across the finish line?

@bjmc Just a few more minor issues.
@joelstevenson Can you take a look at the comments?
Also, you can add yourself to the AUTHORS file :)

@joelstevenson Great job! Thank you for your contribution.
I'll release this feature tonight (Israel Time) :)

@thedrow .  Cheers, I'm happy to help!  Most of the work was from @ib-lundgren so a big thanks to him for bootstrapping the whole effort.

Released!


Switch base to rocker/binder image

Matches what we do in other images
Simplifies this image a lot
Knitting still takes time the first time even if we just switch to new base image. But https://github.com/rocker-org/rocker-versioned2/pull/714 installs some of the texlive packages that are being installed the first time, and should speed things up.

Ref https://github.com/2i2c-org/infrastructure/issues/3178

@GeorgianaElena I think this is documented in https://infrastructure.2i2c.org/howto/features/rocker/ as us prefering using rocker/binder image. Do you think that's enough?

@yuvipanda, yes, totally. That does a great job explaining the why and how <3
I think maybe what we're missing is a central place like https://infrastructure.2i2c.org/howto/update-env/#manage-a-hub-s-user-environment that explains the when?
Maybe an aggregator docs page of 2i2c "recommended" images and when they can be used (like proposed in https://github.com/2i2c-org/infrastructure/issues/3103), followed by the guide on how to use the repo2docker action to quickly build on top of them if/when needed.
I believe I'm imagining your great JupyterCon talk in a docs page with links towards pages like https://infrastructure.2i2c.org/howto/features/rocker/ if that makes sense :D


feat: model based ml data preprocessing

preprocessing data using machine learning models before feed it into model training.
Examples:

model based imputing

KNN imputer

model based outlier detection

tidy.outliers

model based encoding

RandomTreesEmbedding

Note: certain models may be challenging to execute on SQL backends

Probably not a priority for initial release; we will focus on steps that are easy to train on SQL backends.


changelog + semver

ng-sortable 1.3.2 broke drag and drop for us, not sure what changes went into it though.

try out with the latest version 1.3.8


added keylogger for every os

used a global event hook to get the used keys

Hello @cauefcr,
I'm sorry for delay.
On the last CHAOS version i've disable keylogging support, until we found some generic way (at least windows and linux) to perform this.
I saw your PR and looks great, however it requires some specific depencies and can cause some issues on the big part of users to configure it.
Maybe a solution will be using docker or some way of containerization for the application.


Test Commands for Windows

Hey there,
I've just came across the fact that the npm test and npm run test-debug commands ain't working on a Windows Operating System and here is my Suggestion.
Greetings
Not Adrian

Looks great. I had to do roughly the same thing to test on my Windows machine.

Two suggestions that might make it possible to have just a single test command for all platforms:

npx mocha should work the same on all platforms. I can't test it right now because of the lack of a Windows machine.
Setting NODE_ENV could be done as shown here.

So the test commands might just look like this:
{
  "test": "npx mocha 'test/**/*_test.js'",
  "test-debug": "npx mocha --inspect --debug-brk 'test/**/*_test.js'"
}


Support passing extra data for loss function via MLJ interface

Example:
function derivative_loss(tree, dataset::Dataset{T,L}, options, idx) where {T,L}
    # Select from the batch indices, if given
    X = idx === nothing ? dataset.X : view(dataset.X, :, idx)

    ŷ, ∂ŷ, completed = eval_grad_tree_array(tree, X, options; variable=true)

    !completed && return L(Inf)

    y = idx === nothing ? dataset.y : view(dataset.y, idx)
    ∂y = idx === nothing ? dataset.extra.∂y : view(dataset.extra.∂y, idx)

    mse_deriv = sum(i -> (∂ŷ[i] - ∂y[i])^2, eachindex(∂y)) / length(∂y)
    mse_value = sum(i -> (ŷ[i] - y[i])^2, eachindex(y)) / length(y)

    return mse_value + mse_deriv
end

you can now use this by passing a NamedTuple for the w input to machine, which is usually a vector of weights. If you pass a vector, it will be treated as the weights. But if you pass a NamedTuple, it will get added to the extra property of Dataset.
e.g.,
    model = SRRegressor(;
        binary_operators=[+, -, *],
        unary_operators=[cos],
        loss_function=derivative_loss,
        enable_autodiff=true,
        batching=true,
        batch_size=25,
        niterations=100,
        early_stop_condition=1e-6,
    )
    mach = machine(model, X, y, (; ∂y=∂y))

@OkonSamuel @ablaom I was not sure whether there is a way to pass additional custom data to a machine, so I am currently simply allowing the user to pass a NamedTuple for the weights. What do you think?

I was not sure whether there is a way to pass additional custom data to a machine, so I am currently > simply allowing the user to pass a NamedTuple for the weights. What do you think?

You want to provide ∂y as additional training data, right? Well, there's  no strict requirement about the number of arguments to MLJModelInterface.fit, so you could just make ∂y an optional third (positional) argument. If you also want to optional per-observation weights, then you have a problem because both ∂y and w could have the same type, yes? Your suggestion should work, but you should  understand one point that is not well documented:
Subsampling of training data in MLJ. When observations are subsampled by evaluate! (eg in cross-validation) each training data argument (X, Y, w, and so forth) is subsampled only if it is an abstract vector, an abstract matrix (first dim is the observation index) or if istable(_) is true. In all other cases, the full object is used. For example, if w is a vector of per-observation weights, then in evaluate! it is subsampled along with X and y (say) but if w is a dict of class weights (in which case subsampling makes no sense) then w is not subsampled. If you pass a named tuple (ie. (; ∂y=∂y))  then that should work, because that will be regarded as a table. (In general, the subsampling might change the table type, but in this case I think it won't.)
If per-observation weights are not every going to be supported, then perhaps  two signatures MMI.fit(model, verb, X, y) and MMI.fit(model, verb, X, y, ∂y) is cleaner than your suggestion.
Another possibility, which I quite like,  is to insist that y and ∂y be passed as a two-column table or two column matrix and that predict also returns both of these as a table or matrix. Then you could use a multi-target measure for out-of-sample evaluation. (Multi-target measures are coming soon). And you could also support per-observation weights, which would have a different type AbstractVector{<:Real}, which would never be the type of the two-column matrix or table.

@MilesCranmer this works for my use case. Thanks again working on this quickly.

@ablaom it seems like fit_only! does not permit extra keywords?
function fit_only!(
    mach::Machine{<:Any,cache_data};
    rows=nothing,
    verbosity=1,
    force=false,
    composite=nothing,
) where cache_data

Yeah it doesn't seem like there's any way to allow users to pass arbitrary data to be used in a custom loss function. I guess the only option is for users to declare their extra data as a const and access that constant in their custom loss?

I've tried a few different strategies it doesn't seem like there's a good way to let users to pass arbitrary data (of any shape) to be used in a custom loss function. I think this isn't a limitation necessarily, it just is a point at which high-level interfaces should not be used, as such levels of customisation would break various assumptions anyways.
For now I think we need to close this @tomaklutfu, doesn't seem like there's any robust way to do this right now. I would recommend either:

Declaring any extra data as a constant and accessing it inside the custom loss, or
Using the low-level interface whenever you need to pass non-standard data formats or do very custom things.

Cheers,
Miles

@ablaom it seems like fit_only! does not permit extra keywords?
Correct. Custom kwargs to fit is not supported.

Thanks @MilesCranmer . I did use custom loss function sub-typed via a struct with fields for extra data.


Is this cmdlet actually deprecated?

Or is that a typo? There were bug fixes to this cmdlet with 1610 (https://docs.microsoft.com/en-us/powershell/sccm/1610_release_notes?view=sccm-ps) and I'm not finding any suitable replacement cmdlet.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: d700e032-eacd-78be-72b7-6d4a0429449d
Version Independent ID: 4fa54d15-92b5-2cef-f3fb-4cb304ebaece
Content: Add-CMDeploymentType - Configuration Manager
Content Source: sccm-ps/ConfigurationManager/Add-CMDeploymentType.md
Product: configuration-manager
GitHub Login: @mumian
Microsoft Alias: jgao

I just had it pointed out to me that there are cmdlets per deployment type "type" now. e.g. Add-CMScriptDeploymentType

Probably worth making a note to reference the other cmdlets

Oh, I should have noticed this earlier, the list of replacement cmdlets is already in the Description
Use one of the following cmdlets:

Add-CMAndroidDeploymentType
Add-CMAppv5XDeploymentType
Add-CMAppvDeploymentType
Add-CMGooglePlayDeploymentType
Add-CMIosAppStoreDeploymentType
Add-CMIosDeploymentType
Add-CMMacDeploymentType
Add-CMMobileMsiDeploymentType
Add-CMMsiDeploymentType
Add-CMScriptDeploymentType
Add-CMWebApplicationDeploymentType
Add-CMWindowsAppxDeploymentType
Add-CMWindowsPhoneDeploymentType
Add-CMWindowsPhoneStoreDeploymentType
Add-CMWindowsStoreDeploymentType


Issue on Setting up for the workshop

hi
my mac shell is zsh and not bash. what should I change in running the codes? i always receive errors!

Hi @shimayaghoubian,
thank you very much for opening this issues.
We have OS-specific installation instructions in the Setup for the workshop page, including what to do if your default shell isn't bash. Please have a look at and follow the instructions provided there.
HTH, Cheers, Peer


FileNotFoundError: README.md when installing ptv 0.1 with pip

Looks like the sdist might be broken, preventing installation & further evaluation:
$ pip install ptv==0.1
Collecting ptv==0.1
  Using cached https://files.pythonhosted.org/packages/77/72/221263344a89e3984af4f7dac9c07b0edb9392a17f58b05bbd69f82ea3e2/ptv-0.1.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/0l/.../T/pip-install-ns5nvohm/ptv/setup.py", line 39, in <module>
        readfile(os.path.join(os.path.dirname(__file__), "README.md"))
      File "/private/var/folders/0l/.../T/pip-install-ns5nvohm/ptv/setup.py", line 19, in readfile
        with open(filename, **readfile_kwargs) as fp:
    FileNotFoundError: [Errno 2] No such file or directory: '/private/var/folders/0l/.../T/pip-install-ns5nvohm/ptv/README.md'

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/0l/.../T/pip-install-ns5nvohm/ptv/

Yeah: there's not even a setup.py currently in the repository because I realised that some functionality existed in v2 of the PTV API, and some in v3, but the same functionality was not available in both. So for what I wanted to do I would need to have v2 credentials, v3 credentials, and a mapper that would use v2/v3 depending on what function was being called.
And v2/v3 were very different from each other.
So instead I decided to drop this project until their API converged. Maybe it has now?

I'm not sure, sorry.  My knowledge of the differences between the APIs is very little.
Notwithstanding the plan for future releases, it might be a good idea to just delete the current release off PyPI in the interim?


Example for filtering ?

Hi,
Thanks for this wonderful work, i find it super useful..
If only i could understand how to apply the different features like the "query.filter('query','dress','contains')" etc.
Any chance to see an example how the code should be ?
I'm trying this and other guesses but non of them filter the data...

I read the docs and the query.py (both this and the ga) over and over and wonder what i didn't understood.. no need to mention - i'm clueless in code!

Hey Gefen. Thanks, good to hear you find the package useful.
In your code above, you are calling .get() on your query before adding the filter. I think you want:
import searchconsole
account = searchconsole.authenticate(client_config='client_secrets.json',
                                     credentials='credentials.json')
webproperty = account['https://www.example.com/']
query = (webproperty.query.range('today', days=-7)
                          .dimension('query')
                          .filter('query', 'example', 'contains'))
report = query.get()
df = report.to_dataframe()
print(df)

I've split the query across multiple lines to make it a bit more readable. Don't miss the outermost parentheses if you do.
Hope that all makes sense.


[Enhancement] Add AJAX functionality to update scheduled flows, fetch all projects, fetch all scheduled flows (and/or by projectId)

Is there possibility to implement the following functionality (by myself):

add ajax option like fetchAllProjects to be able fetch all projects

add ajax options like fetchAllScheduledFlows and fetchAllScheduledFlowsByProject to be able fetch all scheduled flows and/or scheduled flows by projectId

add ability to update existing scheduled flows thru AJAX, for example update flowParameters, cron schedule

Just want to make sure before start implementing that this functionality is useful not only in my case and will be reviewed

@antey86 Thanks for your request and sorry for the delayed response.
few questions:

Would will you return exactly as fetchAllProjects/fetchAllScheduledFlows?
How do you handle permission issue e.g calling user doesn't have read permission on some projects.


[UX] Wallet recovery depth steps confusing

When recovering the wallet from the mnemonic backup the user first has to click to detect ecash from derivation 0 - 50, then he has to click again for 50 - 100, etc...
One problem here is that if ecash is found in 0 - 50 the user could think that everything has been found and continue without scanning 50 - 100 and missing some ecash.
Also it's confusing for users to do "the same thing" multiple times.
Couldn't the wallet just scan until it doesn't detect unspent ecash anymore all in one step?

It could, but there is some performance problem related to used cryptographic operations that are very slow specifically in react native - you can see each round taking quite a time.
Agree not optimal, but for now this is safer option.

If you mean the time it takes to load in the restoring process, i feel like it is not a big problem to wait some time as long as the UI shows that its doing something (Restoring balance...). Restoring onchain bitcoin wallets like Bluewallet also take >30 sec if it tries to scan different derivation paths.
Not sure about the other stuff going on in the background of Minibits, so just my unqualified observation.

Came here to ask how the restoring process works exactly. What are keystores? Do I have to scan them all to ensure all txs are found?


Need to initialize network with VirtualBox Machinery module

When starting Cuckoo, if VirtualBox network isn't active already, we get that error with the resultserver not binding. It is quite annoying, so let's try to either initialize the network or start and stop a VM to make VirtualBox do it for us.

If you have vmcloak installed you can just run vmcloak-vboxnet0: https://github.com/jbremer/vmcloak/blob/master/bin/vmcloak-vboxnet0

I like this, is a common problem. I think is good the vmcloak vboxnet code use in cuckoo or integrate vmcloak in cuckoo by default.

I think it would make sense to catch the exception and to present the user with a proper error - one that informs exactly what it is about, perhaps with a URL to the documentation around it.
After all, you can't really create vboxnet0 for the user - what if they want to use a custom IP range?

And, also, in /utils a script like as https://github.com/jbremer/vmcloak/blob/master/bin/vmcloak-vboxnet0 for easy configuration of vboxnet and in deploy easy of call before of run cuckoo.

Closing this as about-to-be-resolved through #683.


Adding mdl-grid--hide-<SCREEN_SIZE> classes to grid.

Allows user to hide the entire grid. Currently if you want to hide all cells in a grid the grid's padding hangs around and can mess with your desired layout.

We currently have classes to hide cells like this. They can be reused for this.
:-1: from me. Just adds extra stuff for naming.
We should instead look into a more neutral naming convention for the next major drop.

And give it some time to click. Looking over this in relation to issue #1162, this is actually good naming to make it general. Looking at naming first thing was confusing since I thought we had a block for the grid as well, but we don't. We can introduce this and deprecate using the cell element modifiers.

Oh wait, we aren't following BEM with the grid. :frowning: That is why I'm confused.
So, mdl-cell--{whatever} currently is the same length. So yea, this is a no-go since it isn't adding anything really useful over what is currently offered. We do need to refactor grid to be BEM compliant in the next major and part of that can be making sure these modifiers are based on the main block.


Nesting an  in a

When nesting a Stardust <Input /> in a <Field />, extra markup is generated.
Semantic field markup consists of a field div around an input:

    User Input
    <input type="text">

Semantic input markup consists of a ui input div around an input:

  <input type="text" placeholder="Search...">

There is never more than one div wrapping an input.  The div is either a field div or a ui input div.
Since Stardust <Field /> and <Input /> components both have an outer div with their respective Semantic classes (field and ui input) we get two divs wrapping the input when we nest them like so:

    User Input

      <input type="text" placeholder="Search...">

With limited examples at tests at the moment, it is not clear if this is a real issue.  Though, it is improper use of the framework and we should find a solve for it.

With limited examples at tests at the moment, it is not clear if this is a real issue. Though, it is improper use of the framework and we should find a solve for it.

This is a confirmed bug now, see #92


Nicer Footer

Sorry about pushing this to main accidentally

📝Changed routes:

/

(view full size)

Commit f3189132a4ce638bca6ddac2b2a18bcb1bc61b1c (https://summer-git-nicer-footer-bg.hackclub.dev).

Still looks kind of depressing imo

hmm.. this one isn't great in its own way


Fixes #3492

This PR fixes #3492 as well as other issues connected to C++ objects being destroyed too early.
For example, the current RDKit master branch segfaults when doing:
In [1]: from rdkit import Chem

In [2]: Chem.MolFromSmiles("CC").GetBonds()[0].GetOwningMol()
Segmentation fault

or
In [1]: from rdkit import Chem

In [2]: Chem.MolFromSmiles("CC").GetAtoms()[0].GetOwningMol()
Segmentation fault

while after this PR this does not happen anymore.

I initially thought that this solution was a pretty have hammer, but it really only changes reference_internal_object to with_custodian_and_ward_postcall and let's conformers along for the ride.
I'm a bit curious on the performance hit, conformers aren't a big deal but atoms may be.  Would this go away if we simply didn't have GetOwningMol?

Benchmark:
import rdkit
rdkit.__version__
'2021.03.1dev1'

import gzip
from rdkit import Chem

with gzip.open("/home/toscopa1/sdf/chembl_27.sdf.gz", "rb") as hnd:
    suppl = Chem.ForwardSDMolSupplier(hnd)
    mols = [next(suppl) for i in range(100000)]

master branch

%%timeit
for m in mols:
for i in range(m.GetNumAtoms()):
assert(m.GetAtoms()[i].GetOwningMol())
6.82 s ± 151 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

getconformers branch

%%timeit
for m in mols:
for i in range(m.GetNumAtoms()):
assert(m.GetAtoms()[i].GetOwningMol())
8.09 s ± 85.6 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

I'd rather live with a small performance hit than with dangling pointers.
Note that the proposed change involves no copying - only pushing `ROMOL_SPTR`s in the `ReadOnlySeq` iterators and using `with_custodian_and_ward_postcall` to keep `ReadOnlySeq` iterators, and hence the owning mol `ROMOL_SPTR` alive.

I think removing `GetOwningMol()` would break a lot of existing Python code.

I think removing GetOwningMol() would break a lot of existing Python code.
Yeah, we can't do that

I'll leave it to you all, but it is a 15% performance hit for the iterator.  However it does seem to solve this vexing problem
atoms = list(mol.GetAtoms())
del mol
# are the atoms valid?  Probably not.

So for general safety, I'm for it.  I don't think there is a reasonable way to have GetOwningMol return None as the C++ side thinks the atoms are deleted without some a lot of effort.

The only other solution I've seen is to add hidden properties to the output iteratators, like
setattr(atom, "_parent", mol)

Which probably isn't any faster than the custodian.

@bp-kelley An alternative approach to the custodian_and_ward one would be having a Python-accessible, global thread-safe std::set<ROMol *> where C++ ROMols are registered upon construction and de-registered upon destruction. Python would check the std::set<ROMol *> and throw (or return None, depending on the case) when the underlying ROMol turns out not to exist anymore. This C++ machinery would be compiled only if Python wrappers are generated. Doable, not sure how much faster than the custodian_and_ward one.

@bp-kelley As you say, the setattr hack is probably not faster and certainly uglier as it is visible Python-side - I admit that I thought of that at first but then I rejected it as too ugly :-)

@bp-kelley @greglandrum Let me have a play to an alternative solution I have just thought of and see if it is faster. Then we can make a decision on this.

Please be careful of engaging in premature optimization here. Sure calling GetAtoms() is slower, but normally what we do inside the loop that follows that takes considerably longer.
If there's a straightforward way to avoid the performance hit that's great, but given that I don't think this is going to have a dramatic performance impact on real scripts/programs, I don't think it's tragic.

I find this much cleaner and less disruptive than the alternative in #3530 and as I said in the previous comment, I don't think the real-world performance impact is likely to be that dramatic.

@greglandrum Thanks Greg! I'll close #3530. You are right it is more disruptive, but I think it is clean. I'll keep it around for future reference should we ever run into similar lifetime issues that cannot be effectively handled with the simpler custodian_and_ward approach.


feat: add IEnumerable support for serialization and deserialization

Adds basic IEnumerable support for deserialization and serialization. Treats IEnumerable de/serialization as if they were collection types.
I could not find a way to only commit what I've changed in the TestResources.resx but I hope this isn't a problem.

coverage: 91.65% (-0.8%) from 92.423% when pulling 6b32847baee1badf30ab6d5e25a9643e0b8a788b on tcortega:feat/ienumerable-support into 294ad2379e7be27a01f9ad0a4616c89a549bb65d on SamboyCoding:master.

I think - judging by the coverage report - that this breaks Dictionary serialization? Specifically referring to this report, because the check for Dictionary comes after the check for IEnumerable, and Dictionary inherits from IEnumerable. Not sure why the tests still pass though, that's a little strange.

I think - judging by the coverage report - that this breaks Dictionary serialization? Specifically referring to this report, because the check for Dictionary comes after the check for IEnumerable, and Dictionary inherits from IEnumerable. Not sure why the tests still pass though, that's a little strange.

This happens indeed because the IDictionary<,> inherits from ICollection<T> which inherits from IEnumerable<T>. This means that it'll get the dictionaries enumerator and deserialize/serialize it, item by item, reading the KeyValuePairs.
Now the question that is left is, this approach works fine, however, it might be slower than the old serializer, I didn't benchmark it but it probably is. Do you want me to move the condition for the dictionary check to be above it?

I'm not only concerned about the speed, I'm also concerned that it'll likely serialize differently - I'd imagine it'd serialize as a table array with each table having a key and value field, instead of as a table. So yeah please move the check up.

@SamboyCoding Thanks for implementing this.


Edit the login blade files?

I need to edit the wink login.blade.php file to make the routes secure and do some other styling tweaks.... I'm really struggling to locate them though? I've republished the assets but that doesn't seem to publish the blade files.
I know this is pretty rudimental but I'd appreciate some help.
Thanks

They are located in /vendor/writinglink/wink/resources/views


cli/fido2: fix 'verify' to work with all pin variants and allow prompt

This PR adds support for the fido2 verify subcommand to accept a pin, the commit has simply been carried from https://github.com/Nitrokey/pynitrokey/pull/216
Changes

cli/fido2: fix 'verify' to work with all pin variants and allow prompt

Checklist

[x] tested with Python3.9
[x] run make check or make fix for the formatting check
[x] signed commits
[x] updated documentation (e.g. parameter description, inline doc, docs.nitrokey)
[ ] added labels

Test Environment and Execution

OS: Fedora 37 Beta
device's model: nk3 3a nfc + nk3 3a mini
device's firmware version: 1.2.2

Relevant Output Example

Fixes #

Does not work for me:
  File "/home/robin/reps/pynitrokey/venv/lib/python3.9/site-packages/pynitrokey/cli/__init__.py", line 111, in main
    nitropy()
  File "/home/robin/reps/pynitrokey/venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/robin/reps/pynitrokey/venv/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/robin/reps/pynitrokey/venv/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/robin/reps/pynitrokey/venv/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/robin/reps/pynitrokey/venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/robin/reps/pynitrokey/venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
TypeError: verify() got an unexpected keyword argument 'pin'

Thanks for the fix! Now I get this error:

turns out adding pin doesn't really work as the base FIDO2Client doesn't just accept the pin but requires something similar to nk3 test to pass the pin I think

This is to say, with the current nitrokey 3, it doesn't work even if there's no pin set

@robin-nitrokey it works fine with my nitrokey 3, both A NFC and A mini - one curious thing is that I get the prompt to touch the device in the 3A NFC but it doesn't prompt with 3A mini

Thanks, I’ll test it in the next days!  In the first two seconds after device connection, the first FIDO2 operation is accepted without a button press.  Could this explain the difference you noticed?

Thanks, I’ll test it in the next days! In the first two seconds after device connection, the first FIDO2 operation is accepted without a button press. Could this explain the difference you noticed?

This is 100% consistent - the 3aNFC prompts to touch the device, the 3aMini doesn't no matter how long it has been plugged in . It seems         if status == STATUS.UPNEEDED:  # Waiting for touch this call in python-fido2 isn't called on the 3aMini

bumping @robin-nitrokey
Asking because of https://github.com/Nitrokey/pynitrokey/issues/279

rebased


Update resolver, simplify CI, and reduce CI average runtime

Updated to latest LTS, and made required changes to flake and CI.
Changed CI to use Nix to install test dependencies (Neovim and Agda) on Linux/macOS so that the two share the same process for installing deps, and don't ever need to build Agda.
Changed some stuff about caching works to reduce the amount of new caches that are created.

Thanks so much, Malo!


Patch CVE-2023-2650 in OpenSSL

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[x] The toolchain has been rebuilt successfully (or no changes were made to it)
[x] The toolchain/worker package manifests are up-to-date
[x] Any updated packages successfully build (or no packages were changed)
[x] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[x] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[x] All package sources are available
[x] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[x] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[x] All source files have up-to-date hashes in the *.signatures.json files
[x] sudo make go-tidy-all and sudo make go-test-coverage pass
[x] Documentation has been updated to match any changes to the build system
[x] Ready to merge

Summary

Apply patch from upstream to resolve CVE-2023-2650 in OpenSSL
Change Log

Resolve OpenSSL CVE-2023-2650

Does this affect the toolchain?

YES
Links to CVEs

https://nvd.nist.gov/vuln/detail/CVE-2023-2650

Test Methodology

Full Build: https://dev.azure.com/mariner-org/mariner/_build/results?buildId=373321&view=results

Build flaked out, going to give it one more shot


[FEAT] Custom Timestamp function

This PR proposes changes talked in #2.
I have made changes in the types of withTimestamp. It can now be a function that returns a string.

Thanks for the PR, looks great. Also the code style matches with withBanner which is a huge positive 💯.

Accidentally, removed lockfile from the worktree instead of PR 😅


Full clone of history necessary?

Hey there,
I'm currently trying to figure out if it's possible to save bandwidth by modifying this specific line: https://github.com/falconindy/asp/blob/5d64421cd9538cce28b9f554e2116495df9be49f/package.inc.sh#L170
Currently, the line does a git clone --single-branch --branch ... behind the scenes and I'm wondering if a --depth=1 would also be enough as I would probably not want to revert the history and this would save me a shitload of bandwidth on my third-country-like connected machines.
So I guess my questions are:

Is a full git history necessary and used somewhere else by asp?

If you don't need history, then you probably don't want to use asp checkout, but rather asp export.

Yes, that's probably what I want.
For others when they find this issue: asp export uses git archive behind the scenes, so it's without a git history and just a tar archive.


Fail early if used on an incompatible version set

Is your feature request related to a problem? Please describe.
The errors caused when using the plugin with unsupported versions is not very intuitive. They often point to missing classes in Gradle,AGP or other dependencies of this plugin.
Describe the solution you'd like
We could have a supported version check at the plugin initialization which would fail fast if the it is below the supported versions.
Describe alternatives you've considered
The current approach involves explicitly mentioning the supported versions on the read me and while creating an Issue. However IMO it would save both you and the library user effort if these versions were more explicitly enforced on the codebase :)
Additional context
I'd be happy to help in adding this if you're open to contributions.

Please be more explicit. Which incompatible version of which thing did you
experience? I already have a version check for AGP and emit a warning if
it's outside of the known good range.
On Sun, Apr 26, 2020, 9:32 PM Satyarth Sampath<EMAIL_ADDRESS>wrote:

Is your feature request related to a problem? Please describe.
The errors caused when using the plugin with unsupported versions is not
very intuitive. They often point to missing classes in Gradle,AGP or other
dependencies of this plugin.
Describe the solution you'd like
We could have a supported version check at the plugin initialization which
would fail fast if the it is below the supported versions.
Describe alternatives you've considered
The current approach involves explicitly mentioning the supported versions
on the read me and while creating an Issue. However IMO it would save both
you and the library user effort if these versions were more explicitly
enforced on the codebase :)
Additional context
I'd be happy to help in adding this if you're open to contributions.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/issues/133,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABJG5PMIFHI43FN6ABWZUSLROUDGJANCNFSM4MRSNNRQ
.

Sorry about that,
I stumbled on the issue while trying to use it with 3.6.2 and also Gradle 6.0  .   I rechecked this with the versions mentioned on the ReadMe, the issues and just digging through source code to identify the errors.
Eg:

While using on a Gradle version lower than < 6.1 leads to #116 .
This could be a non-issue too. In that case , please go ahead and close the issue 👍

A check for min gradle version (6.1 currently) would not be bad. If you want to contribute that, I welcome it. You can look at the existing check for AGP version in DependencyAnalysisPlugin. In this case however, it should throw a GradleException rather than simply printing a warning.

Sounds good.
After going through the code for AGPVersion, I had a question.
Would you want to create a wrapper for GradleVersion, or can we use the one that Gradle provides
In case of the AGP version check. I see that it states that it would work for versions greater than 3.5.3, however it does not work for 3.6.2. (This fact is  also mentioned in the doc). Do you think this should also be addressed by the check for AGP Version

You can use GradleVersion directly.
It does work for 3.6.2. My policy is simply to only test for the latest
patch release for each minor version.
On Thu, Apr 30, 2020, 11:42 PM Satyarth Sampath<EMAIL_ADDRESS>wrote:

Sounds good.
After going through the code for AGPVersion, I had a question.
Would you want to create a wrapper for GradleVersion, or can we use the
one that Gradle provides
In case of the AGP version check. I see that it states that it would work
for versions greater than 3.5.3, however it does not work for 3.6.2. (This
fact is also mentioned in the doc). Do you think this should also be
addressed by the check for AGP Version
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/issues/133#issuecomment-622271874,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABJG5POW6KHFAUDJSIS5TR3RPJVORANCNFSM4MRSNNRQ
.


Batch API unsupported

Describe the feature or improvement you're requesting
OpenAI now has a Batch API, which is not currently supported by this crate.
https://platform.openai.com/docs/api-reference/batch
Additional context
No response

@fmhall https://github.com/dongri/openai-api-rs/pull/107
I have added the batch API. Please use v5.0.6.
You can find a sample here https://github.com/dongri/openai-api-rs/blob/main/examples/batch.rs

Thank you!

You might also want to add it to the list of supported APIs in the README :)


update proj to 5.2

this fixes QGIS build following https://github.com/qgis/QGIS/pull/8792
but

but I removed the patch, so I will try to test with it again

Superseded by #38


Troubles with handling flags and aliases in extensionapps.

First observed in nbclassic:
https://github.com/Zsailer/nbclassic/issues/1

This is fixed with #159. Thx @Zsailer.