Web ant95 2021 03 01

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[ ] new service onboarding
[x] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.
When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month.
If updating an existing version, please select the specific langauge SDKs and CLIs that must be refreshed after the swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No refresh required for updates in this PR

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[x] Check this box if any of the following apply to the PR so that label “WaitForARMFeedback” will be added automatically to begin ARM API Review. Failure to comply may result in delays to the manifest.

Adding a new service
Adding new API(s)
Adding a new API version
-[x] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits.

[x] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If any of the following scenarios apply to the PR, request approval from the Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in a stable version
[ ] Removing properties in a stable version
[ ] Removing API version(s) in a stable version
[ ] Updating API in a stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

Following

@JennyLawrance
First you need ARM sign-off.
And you have 4 breaking changes in "Cross-Version Breaking Changes", if you really need them, you need Jeffrey sign-off.

@JeffreyRichter,
Can you please review these changes?

POST for /sites/{name}/restart and /sites/{name}/slots/{slotName}/restart. This is flagged with 4 failures. The API has always returned 200 and 202, but it was not marked as such in the Swagger. The net effect was that the clients would fail whenever the restart resulted in a 202.

❌ 1011 - AddingResponseCode | The new version adds a response code '202'.New: Microsoft.Web/stable/2021-03-01/WebApps.json#L8108:11
❌ 1011 - AddingResponseCode | The new version adds a response code '202'.New: Microsoft.Web/stable/2021-03-01/WebApps.json#L17368:11
❌ 1044 - XmsLongRunningOperationChanged | The new version has a different 'x-ms-longrunning-operation' value than the previous one.New: Microsoft.Web/stable/2021-03-01/WebApps.json#L8070:7Old: Microsoft.Web/stable/2021-02-01/WebApps.json#L8030:7
❌ 1044 - XmsLongRunningOperationChanged | The new version has a different 'x-ms-longrunning-operation' value than the previous one.New: Microsoft.Web/stable/2021-03-01/WebApps.json#L17323:7Old: Microsoft.Web/stable/2021-02-01/WebApps.json#L17279:7

@miwebst, Can you please comment on the justification for this change?
❌ 1029 - ReadonlyPropertyChanged | The read only property has changed from 'true' to 'false'.New: Microsoft.Web/stable/2021-03-01/StaticSites.json#L2892:9Old: Microsoft.Web/stable/2021-02-01/StaticSites.json#L2892:9

@mkarmark can you comment on the need for this change?
❌ 1008 - ModifiedOperationId | The operation id has been changed from 'WebApps_GetAuthSettingsV2' to 'WebApps_ListAuthSettingsV2'. This will impact generated code.New: Microsoft.Web/stable/2021-03-01/WebApps.json#L1289:7Old: Microsoft.Web/stable/2021-02-01/WebApps.json#L1249:7

@naveedaz the change you added me for is needed as customers can now reconfigure their provider. Prior to this release we were blocking customer from doing this.

@msyyc @ArcturusZhang @qiliao123 @ArthurMa1978 for awareness on possible breaking changes in web/appservice.

Do you mean that sometimes the operation returned synchronously (200) and sometimes it returned asynchronously (202)?
If so, this is not allowed.
Many of your other changes are also breaking and not allowed. You can't change a method from long-running to not long-running or vice versa. Changing an operation ID also breaks all SDKs and clients of them because the SDK method name now changes.

Do you mean that sometimes the operation returned synchronously (200) and sometimes it returned asynchronously (202)? If so, this is not allowed.
Many of your other changes are also breaking and not allowed. You can't change a method from long-running to not long-running or vice versa. Changing an operation ID also breaks all SDKs and clients of them because the SDK method name now changes.

@JeffreyRichter,
I am trying to determine the correct action for each of these items.

For the restart operation, I believe if the restart completes in time it returns a 200, else returns a 202 till termination, when it returns a 200 as well. Is that not compliant with asynchronous API contract? The change from non long-running to long-running is related to this change. If the behavior is correct and already customer run into issues with the generated clients, isn't it a good idea to take the breaking change?

Readonly property change: Is there any pushback for changing read-only property to writable?

operationId change: Per @mkarmark in an offline conversation,
The action operation was originally incorrectly introduced as:

operation Id -> Operation Verb Path
GetAuthSettingsV2 -> GET  /{resourceId}/config/authSettingsV2/list
The API contains secrets, the verb should have been a POST and the OperationId per convention should be ListAuthSettingsV2.
In this API version
a. GET  /{resourceId}/config/authSettingsV2 was introduced. This does not have secrets. Operation Id : GetAuthSettingsV2
b. OperationId for POST /{resourceId}/config/authSettingsV2/list was changed from GetAuthSettingsV2 to ListAuthSettingsV2
Would a better change be:
a. Operation Id for GET  /{resourceId}/config/authSettingsV2, be somethinglike GetAuthSettingsV2WithSecrets
b. Retain Operation Id for /{resourceId}/config/authSettingsV2/list, but change verb to POST

No, it is not compliant to sometimes return 200 and sometimes return 202. The reason is because a client has to be written to support 2 different programming models when invoking this operation. The client MUST be written to support the worst-case scenario which means the client must implement a loop to poll for the operation's completion. Even if the operation completes synchronously, the client must still implement the loop because the operations COULD complete asynchronously.
For the Azure SDKs, this means the operations must always return a Poller object which the customer must poll on using a loop. Changing an operation from sync to async breaks all clients because they would not currently have the loop in their code and therefore, they'd think the operation completed when in fact it did not.
There is no pushback on making the read-only field writable.
Azure's policy is that a customer must be able to adopt a new service api-version without forcing customers to make any code changes (except to leverage NEW features). So, changing an HTTP method verb to POST is a breaking change and is not allowed. You can introduce NEW operations in a new api-version but old operations must remain exactly as they are.
If an old operation has severe problems (like security, compliance, or legal issues), then we can talk about deprecating an operation but this comes with a lot of overhead: We have to have the new/improved thing in GA, notify customers to migrate to the new/improved thing, give customers 3 years to complete this migration, and then the service removes all support for the old thing. If your team wants to go this path, then reach out to me via email and we'll get the ball rolling with Marketing for messaging, etc.

@JeffreyRichter We have reverted all the cross-version breaking changes except the readonly to writable change. Please review and approve.
@Azure/arm-api-review-board  Please review and approve.

      },

id must be returned for each resource in the collection.
https://armwiki.azurewebsites.net/api_contracts/RPCstrongvalidation.html?q=strong#get-resource-collection

Refers to: specification/web/resource-manager/Microsoft.Web/stable/2021-03-01/examples/ListHostnameBindingsOfCertificate.json:21 in af9fffd. [](commit_id = af9fffdebf11cdb5abaf8ead81f491e4a801b60c, deletion_comment = False)

"api-version": "2021-02-01"

Should be 2021-03-01

Refers to: specification/web/resource-manager/Microsoft.Web/stable/2021-03-01/examples/ListRevisions.json:6 in af9fffd. [](commit_id = af9fffdebf11cdb5abaf8ead81f491e4a801b60c, deletion_comment = False)

"api-version": "2021-02-01"

Should be 2021-03-01

Refers to: specification/web/resource-manager/Microsoft.Web/stable/2021-03-01/examples/GetRevision.json:7 in af9fffd. [](commit_id = af9fffdebf11cdb5abaf8ead81f491e4a801b60c, deletion_comment = False)

    ],

Each resource must have id, type and name.
https://armwiki.azurewebsites.net/api_contracts/RPCstrongvalidation.html?q=strong#get-resource-collection

Refers to: specification/web/resource-manager/Microsoft.Web/stable/2021-03-01/examples/ListCustomHostNameSites.json:39 in af9fffd. [](commit_id = af9fffdebf11cdb5abaf8ead81f491e4a801b60c, deletion_comment = False)

"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettingsV2": {

This does not comply with ARM resource ID format 'resourceType1/{name1}/resourceType2/{name2}/resourceType3/...
I see most of the paths in this file have the issue. So I guess it will be hard to fix. Please avoid this pattern in new paths.

Refers to: specification/web/resource-manager/Microsoft.Web/stable/2021-03-01/WebApps.json:1197 in af9fffd. [](commit_id = af9fffdebf11cdb5abaf8ead81f491e4a801b60c, deletion_comment = False)

@j5lim , resolved issues with incorrect api version in examples in latest PR. Please approve.

@weidongxu-microsoft , can you approve this PR? We have resolved all issues for changes introduced in this PR, including addressing ARM feedback.

@JennyLawrance It still need ARM approve.

@j5lim, we have resolved the issues you identified. @JeffreyRichter , @j5lim , can you please approve the PR?

@JennyLawrance https://github.com/Azure/azure-rest-api-specs/pull/16506#discussion_r775653489 is not resolved

I did approve it 20 days ago.

@weidongxu-microsoft  Can we please merge this PR?


Migration to 2.3.2 fails with "duplicate column name: id"

Describe the bug
2022-03-26T09:02:34.632888706Z [WARN ] with sqlite, only a single connection is supported
2022-03-26T09:02:34.658063536Z [INFO ] potentially running migration '20201103-rename_language_mappings_table'
2022-03-26T09:02:34.659944581Z [INFO ] potentially running migration '20201106-migration_cascade_constraints'
2022-03-26T09:02:34.659965181Z [INFO ] not attempting to drop and regenerate constraints on sqlite
2022-03-26T09:02:34.659967501Z [INFO ] potentially running migration '20210202-fix_cascade_for_alias_user_constraint'
2022-03-26T09:02:34.659970141Z [INFO ] not attempting to drop and regenerate constraints on sqlite
2022-03-26T09:02:34.678247352Z [ERROR] duplicate column name: id
panic: duplicate column name: id

goroutine 1 [running]:
github.com/emvi/logbuch.(*StandardFormatter).Pnc(0x40000e2000?, {0x4000454440?, 0x4000454440?}, {0x0?, 0x0?, 0x0?})
	/go/pkg/mod/github.com/emvi/logbuch@v1.2.0/standard_formatter.go:57 +0x44
github.com/emvi/logbuch.(*Logger).Fatal(0x40000e2000, {0x4000454440, 0x19}, {0x0, 0x0, 0x0})
	/go/pkg/mod/github.com/emvi/logbuch@v1.2.0/logger.go:132 +0x78
github.com/emvi/logbuch.Fatal(...)
	/go/pkg/mod/github.com/emvi/logbuch@v1.2.0/funcs.go:55
github.com/muety/wakapi/migrations.RunSchemaMigrations(0x0?, 0x0?)
	/src/migrations/migrations.go:39 +0x84
github.com/muety/wakapi/migrations.Run(0x40000eaf70?, 0x1?)
	/src/migrations/migrations.go:33 +0x34
main.main()
	/src/main.go:141 +0x594
exit code: 0

System information
Please provide information on:

Wakapi version: 2.3.2 Docker
Database (SQLite, MySQL, ... ?): SQLite

Thanks for bringing this up. I was able to reproduce the error. It occurs while attempting to migrate the heartbeats schema, although it hasn't changed whatsoever since the previous release.
Some digging led to the following GORM issue, which describes the exact same scenario: https://github.com/go-gorm/gorm/issues/5175. There seems to be a bug in GORM which we'll have to wait for to get fixed.
In the meanwhile, you should be able to work around this by setting WAKAPI_DB_AUTOMIGRATE_FAIL_SILENTLY to true (or db.automigrate_fail_silently in config.yml respectively.

@muety setting db.automigrate_fail_silently does not affect it but setting the environment variable works.

In the meanwhile, you should be able to work around this by setting WAKAPI_DB_AUTOMIGRATE_FAIL_SILENTLY to true (or db.automigrate_fail_silently in config.yml respectively.

Use the respective environment variable (with -e in docker run command).

I found that the mentioned upstream bug is not actually the cause for this issue, instead it's related to https://github.com/go-gorm/sqlite/issues/87. I'll push a fix soon.

This is not fixed for me.

What exact errors do you get?

Can you please post the result of running the following query on your SQLite database?
select * from sqlite_schema

Can't reproduce this. Are you on version 2.3.4?

How should I check the version?

Oh, no. It is 2.3.2.

I fixed it, thanks for being with me @muety!


[Bug] [iOS] CameraView changes it's size in horizontal orientation

Description
If I make photo and hold device vertical CameraView works correctly.
But if I make photo and hold device horizontal (when device camera looks down) or with some angle, CameraView changes it's own size after opening page where I use it.
Besides, ImageView, which I use for showing preview, also changes it's own size, if I made photo, while device was held horizontal.
If I lock screen orientation using device button, CameraView works correctly.
But locking orientation using Supported device orientations in info.plist and overriding GetSupportedInterfaceOrientations doesn't work.
Stack Trace

Link to Reproduction Sample

Steps to Reproduce
First scenario:

Hold device horizontal
Open page with CameraView.

Expected Behavior
CameraView has declared size.
Actual Behavior
CameraView has lower size than u declared.
Second scenario: (in this case u should use ImageView for showing photo you took)

Hold device vertical
Open page with CameraView.
Hold device horizontal
Make photo

Expected Behavior
ImageView has declared size.
Actual Behavior
imageView has lower size than u declared.
Basic Information

Version with issue: -
Last known good version: -
IDE: Rider 2023.3
Platform Target Frameworks: Xamarin IiOs & Mac <IP_ADDRESS>, .NET 8.0.100, Mono <IP_ADDRESS>, Xcode 15.1
Nuget Packages: Xamarin.communityToolkit 2.0.2, 2.0.6
Affected Devices: iPhone XR

Reproduction imagery

Code samples (mac zip)
Samples.zip

I used to use Device.Info.ScaledScreenSize.Height for setting CameraView height. It caused resizing. Using App.Instance.MainPage.Height resolves issue.


Is preprocessing parallelization possible?

We've been able to use concurrent.futures.ProcessPoolExecutor to handle some additional preprocessing that we perform before using superpoint transformer at all, and we get a huge speedup by doing independent work in parallel instead of serially per lasfile.
We're now training a model on roughly 10,000 lidar files, and are consequently spending a lot of time in dataset preprocessing before training begins (estimated time roughly 50h).  I think this is because while the individual steps of the CPU and GPU preprocessing steps shown here are able to go fast (built against openMP or cuda), files are still being processed through the preprocessing pipeline serially.
I've had a quick look at the pytorch-lightning docs, but i'm not sure i've found anything there to answer this question concretely -- do you know if there's a way to parallelize the preprocessing steps? Lasfiles are independent of each other, so there's no problem there, but i'm not sure how to express the equivalent of a ProcessPoolExecutor in torch lightning to handle an I/O bound pipeline.

Hi @gvoysey ! I understand your need to accelerate the preprocessing on your large dataset. I agree that in general the preprocessing takes longer than I would like (also true for the on-device transforms). Especially if you compare to the speed of the forward pass on GPU. Yet, I think processing multiple tiles on a single machine will not work, for the simple reason that multiple operations of the preprocessing are already parallelized ans trying to use as much of your CPU/GPU resources as possible. While it might be possible to have multiple threads processing different tiles while sharing CPU resources, I think sharing GPU resources will be a pain and will likely break.
Here is a rough breakdown of the sensitive steps of the DALES preprocessing you mention:
pre_transform:
    SaveNodeIndex          #
    DataTo                 #
    GridSampling3D         # GPU-hungry
    KNN                    # GPU-hungry
    DataTo                 #
    GroundElevation        #
    PointFeatures          # CPU-hungry-ish
    DataTo                 #
    AdjacencyGraph         #
    ConnectIsolated        #
    DataTo                 #
    AddKeysTo              #
    CutPursuitPartition    # CPU-hungry will try to use as many cores as possible
    NAGRemoveKeys          #
    NAGTo                  #
    SegmentFeatures        # GPU-hungry
    RadiusHorizontalGraph  # GPU-hungry
    NAGTo                  #

Depending on your GPU/CPU memories and the size of your individual tiles, several operations are prone to clog up all your resources. You might want to investigate whether the preprocessing of your tiles ever uses all your CPU or GPU memory. If they don't, then you might want to increase your tile size so that they make better use of your resources. Suggested tools for such investigation: htop and torch profiler.
Yet, I agree that when the GPU is busy, the CPU resources could be used to do something else... But coding a program that efficiently distributes both CPU and GPU resources across concurrent processes may be a bit tough. At the moment, I do not know how/if this would be possible. This kind of resembles what a torch DataLoader does: CPU workers that asynchronously prepare batches while the model consumes the batches on GPU. So if you are dead set on this, you would have a look at how torch does it 😅 Yet, our problem is different in several aspects:

multiple GPU-based jobs to handle, but sequentially (otherwise GPU memory errors)
each process's tasks requires an alternance of CPU-based and GPU-based operations, so there is some back-and-forth

That being said, it would however be possible to parallelize the preprocessing across multiple machines. This would require distributing the files to preprocess across several computers.
In any case, if you decide to explore this and find a solution, I would very gladly welcome a PR ! ❤


Adding section on Molecule testing

@noplanman , can you see if you can make it work with this really essential information added?

Seems simple enough, thanks.
I do get this however, when trying to run molecule test.
Am I missing something basic and obvious here?
ERROR! the role 'borgbackup' was not found in /Users/noplanman/Projects/Ansible/ansible-role-borgbackup/molecule/default/roles:/Users/noplanman/.cache/molecule/ansible-role-borgbackup/default/roles:/Users/noplanman/Projects/Ansible:/Users/noplanman/Projects/Ansible/ansible-role-borgbackup/molecule/default

The error appears to be in '/Users/noplanman/Projects/Ansible/ansible-role-borgbackup/molecule/default/playbook.yml': line 5, column 7, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:

  roles:
    - role: borgbackup
      ^ here

ERROR:

@noplanman ,
I decided to set up my env from scratch and was not able to reproduce your situation.
Question: are you running this from the root path of the role? See my command history below and see if it answers some questions:
papaya ~/GIT/fiaasco/borgbackup  (custom/documentation_improvements=) > virtualenv -p python3 ~/.venv/fiaasco-docu
Already using interpreter /usr/bin/python3
...
Installing setuptools, pkg_resources, pip, wheel...done.
papaya ~/GIT/fiaasco/borgbackup  (custom/documentation_improvements=) > source ~/.venv/fiaasco-docu/bin/activate
(fiaasco-docu) papaya ~/GIT/fiaasco/borgbackup  (custom/documentation_improvements=) > pip3 install -r requirements.txt
Processing /home/dieter/.cache/pip/wheels/72/33/3c/64c1767c0ddcb1c39cea29f63d7033d846e9c234105b3dae92/ansible-2.9.6-py3-none-any.whl
Collecting molecule==2.22
...
Successfully installed MarkupSafe-1.1.1 PyYAML-5.3.1 ansible-2.9.6 ansible-lint-4.2.0 anyconfig-0.9.7 appdirs-1.4.3 arrow-0.15.5 aspy.yaml-1.3.0 attrs-19.3.0 bcrypt-3.1.7 binaryornot-0.4.4 cerberus-1.3.2 certifi-2<IP_ADDRESS> cffi-1.14.0 cfgv-2.0.1 chardet-3.0.4 click-7.1.1 click-completion-0.5.2 colorama-0.4.3 cookiecutter-1.7.0 cryptography-2.9 distlib-0.3.0 docker-4.2.0 entrypoints-0.3 fasteners-0.15 filelock-3.0.12 flake8-3.7.9 future-0.18.2 git-url-parse-1.2.2 identify-1.4.14 idna-2.9 importlib-metadata-1.6.0 importlib-resources-1.4.0 jinja2-2.11.1 jinja2-time-0.2.0 mccabe-0.6.1 molecule-2.22 monotonic-1.5 more-itertools-8.2.0 nodeenv-1.3.5 packaging-20.3 paramiko-2.7.1 pathlib2-2.3.5 pathspec-0.8.0 pbr-5.4.5 pexpect-4.8.0 pluggy-0.13.1 poyo-0.5.0 pre-commit-1.21.0 psutil-5.7.0 ptyprocess-0.6.0 py-1.8.1 pycodestyle-2.5.0 pycparser-2.20 pyflakes-2.1.1 pynacl-1.3.0 pyparsing-2.4.7 pytest-5.4.1 python-dateutil-2.8.1 python-gilt-1.2.2 requests-2.23.0 ruamel.yaml-0.16.10 ruamel.yaml.clib-0.2.0 sh-1.12.14 shellingham-1.3.2 six-1.14.0 tabulate-0.8.7 testinfra-3.4.0 toml-0.10.0 tree-format-0.1.2 urllib3-1.25.8 virtualenv-20.0.17 wcwidth-0.1.9 websocket-client-0.57.0 whichcraft-0.6.1 yamllint-1.21.0 zipp-1.2.0
(fiaasco-docu) papaya ~/GIT/fiaasco/borgbackup  (custom/documentation_improvements=) > molecule --version
molecule, version 2.22
(fiaasco-docu) papaya ~/GIT/fiaasco/borgbackup  (custom/documentation_improvements=) > molecule test
--> Validating schema /home/dieter/GIT/fiaasco/borgbackup/molecule/default/molecule.yml.
Validation completed successfully.
...
    ::test_include_exclude[ansible://default-client-debian-10] PASSED        [ 96%]
    ::test_pre_post_commands[ansible://default-client-debian-10] PASSED      [100%]

    ======================== 24 passed, 4 skipped in 29.94s ========================
Verifier completed successfully.
--> Scenario: 'default'
...
--> Pruning extra files from scenario ephemeral directory
(fiaasco-docu) papaya ~/GIT/fiaasco/borgbackup  (custom/documentation_improvements=) >

As a non-python person, maybe you could add the part of creating a virtual environment to the instructions too? :innocent:


Improved coloring of summary_plot 'dot' type

As discussed in #59, one of the problems with the dot plot is it's easy to end up being misleading when dots overlap each other e.g. depending on the order dots are plotted, you might end up with things appearing blue when they should 'actually' be red. More specifically, say there are 10 dots to appear, which are located in very similar places on the graph (so basically fully overlap) and 1 is blue, while 9 are red. If the blue one gets plotted last, then this area will look blue, not red, as it 'should' be. Note that, for a large graph this would be less of an issue, as the dots are much less likely to overlap - but with small graphs like these (and comparatively large dots - a single dot can often be 10% of the colored area), it's more likely to be a problem
Two possible solutions:

make sure we plot the dots in random order. This won't fix it for small graphs (as above), but will reduce the chance of e.g. the blue dot always being drawn over the red ones (in the 10 dot example). So, random error instead of systematic.
If a dot is standing alone, there's nothing to be done, but if there are two or more dots overlapping, we adjust their colors to give a more representative view. Detecting overlaps is relatively easy (either numerically, or just doing the trick of heatmaps will grayscales and opacity etc.). Choosing the colors appropriately is harder, but the simplest solution is to use opacity. This doesn't work normally, as if we say opacity=0.1 to make the overlaps clearer, it means all the standalone dots are hard to see. So, what we can do is make the opacity inversely proportional to the amount of overlapping occurring. Then everything should appear around about opacity 1 (after adding up overlaps), and the colors in overlapping areas should merge. This might end up with unpleasant colors (red + brown = yuck), but it's a start. Another similar options is to use unfilled circles (i.e. just a line, not filled) - these should overlap more nicely.

Great suggestions. 1 is already implemented via a shuffle operation, so
that's done. I actually started on something similar to 2 but decided it
took more time than I had right now. I think we want an "average" blend
mode that sets every pixel to the average of it's overlapping dots, then
map that through the color scale. One way to do this would be to plot using
a pure green-red color scale and a 0.001 opacity. Then extract the raster
image and recolor by green/(green + red) color channels.
On Mon, May 21, 2018 at 2:18 PM kodonnell<EMAIL_ADDRESS>wrote:

As discussed in #59 https://github.com/slundberg/shap/issues/59, one of
the problems with the dot plot is it's easy to end up being misleading when
dots overlap each other e.g. depending on the order dots are plotted, you
might end up with things appearing blue when they should 'actually' be red.
More specifically, say there are 10 dots to appear, which are located in
very similar places on the graph (so basically fully overlap) and 1 is
blue, while 9 are red. If the blue one gets plotted last, then this area
will look blue, not red, as it 'should' be. Note that, for a large graph
this would be less of an issue, as the dots are much less likely to overlap

but with small graphs like these (and comparatively large dots - a single
dot can often be 10% of the colored area), it's more likely to be a problem

Two possible solutions:

make sure we plot the dots in random order. This won't fix it for
small graphs (as above), but will reduce the chance of e.g. the blue dot
always being drawn over the red ones (in the 10 dot example). So, random
error instead of systematic.
If a dot is standing alone, there's nothing to be done, but if
there are two or more dots overlapping, we adjust their colors to give a
more representative view. Detecting overlaps is relatively easy (either
numerically, or just doing the trick of heatmaps will grayscales and
opacity etc.). Choosing the colors appropriately is harder, but the
simplest solution is to use opacity. This doesn't work normally, as if we
say opacity=0.1 to make the overlaps clearer, it means all the standalone
dots are hard to see. So, what we can do is make the opacity inversely
proportional to the amount of overlapping occurring. Then everything should
appear around about opacity 1 (after adding up overlaps), and the colors in
overlapping areas should merge. This might end up with unpleasant colors
(red + brown = yuck), but it's a start. Another similar options is to use
unfilled circles (i.e. just a line, not filled) - these should overlap more
nicely.

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/slundberg/shap/issues/95, or mute the thread
https://github.com/notifications/unsubscribe-auth/ADkTxWrmAV9HnBtooYfmW3Riuha5oPcGks5t0y8bgaJpZM4UHodJ
.

I think we want an "average" blend mode that sets every pixel to the average of it's overlapping dots, then map that through the color scale.

Yup, that's what I was thinking too.

One way to do this would be to plot using a pure green-red color scale and a 0.001 opacity. Then extract the raster image and recolor by green/(green + red) color channels.

I think that's also what I was thinking - though when I've done it before (for proper heatmaps - not matrix grids) you use a low opacity greyscale image, and draw everything on that first, then extract the final opacity from that (which builds up under overlaps etc.). However, it can get quite fiddly - e.g. your 0.001 suggestion may only work if opacity is stored as a float, and not clamped to one of 255 values etc. Also, there's smoothing to consider. Anyway, I'd probably be more tempted to do this in a manually created x/y numpy array representing the grid - 'plot' everything into it (just points, not circle) and then do a basic gaussian filter to convert to colors. This could be an interesting plot in itself - or one could randomly sample colors from it to draw dots.
Another possible solution: instead of one big dot, draw e.g. 10 small dots randomly centered around the main dot - the idea being that in the case of two overlapping big dots, the 10 dots for each won't overlap, and hence you'll get an approximate averaging of color. Alternatively, if there's enough data, just use dots of a single pixel in size, with slightly randomised positions - with the shuffling, this should also give an average color. This will fail for really small graphs (which there often are) - so a sneaky option would be to simply draw bigger graphs first, then shrink them to fit into the existing graph.
But yes, agreed - it might take a bit of time. I probably won't look into it unless I want something fun to play with (and I'm a fan of the layered violin plot, which kind of solves it anyway).


Revise project outputs to AAR

convert to AAR format
remove slf4j
remove the ResourceProxy.

@neilboyd if you want to remove sfl4j, what do you want to use instead? or just the standard android logcat?

My idea was to use standard Android logging. I haven't thought this through, but isn't it part of the same story about using real Android resources? And using something like Robolectric?

alright, i'm on it. i already have the aar part done and tested.

@neilboyd i'll throw this over to you for the resource proxy stuff. this will probably be a breaking change.

@spyhunter99 I wasn't planning on working on this now.
I thought it was a relatively small change that becomes possible by using AAR format, but if you don't want to do it then you can make a new issue that I'll look at some time in the future.

OK, we can revise this ticket to exclude the removal of the resource proxy and save it for another day


Prompt shows but name and icon are not visible on macOS

sudo-prompt is not correctly showing the name or icon file for the app when passed an object with name or icns keys. I was able to replicate the issue on a fresh Electron project with just this package installed. The following code:
import sudo from 'sudo-prompt'

let options = {
  name: 'Valet Lite',
  icns: '/Applications/Valet Lite.app/Contents/Resources/Valet Lite.icns',
}

sudo.exec('ls', options, (error, stdout, stderr) => {
  if (error) throw error
  console.log(stdout)
  console.log(stderr)
})

Produces this:

I downloaded the repository and ran node test.js and the errant behavior was present as well. This is on Catalina 10.15.5.

Thanks @davidhemphill I can confirm this. Do you know of any changes in Info.plist behavior across macOS that would affect this? That's what we're using to set the app name and icon.

Sadly, I don't as that's out of my area of expertise. I'll do some research on my end and see if I can come up with anything.

Hi I have the same issue after updated to Catalina 10.15.5,
The same product works as expected on older versions of macOS and older versions of Catalina (10.15.4 and older).
I didn't have the chance to check what is causing, I'll try to make some time for checking this.

Hi Guys,
I'm sorry to say that I wasn't able to figure it out yet.
I tried to recreate the applet using Catalina Xcode 11.
It didn't change anything, Icon and name are missing.
I'll try next following the suggested path under this issue
https://github.com/jorangreef/sudo-prompt/issues/109
Seems Catalina will require new approach for running elevated commands.

Sorry for spamming,
Just got word that on 10.15.6 it was fixed ;)
So it was indeed an apple issue

@idanwork Thank you! I can also confirm it, I've just updated to 10.15.6 and sudo-prompt works as expected :) This issue can be closed.

Thanks everyone!


<EMAIL_ADDRESS>Download via aria2 failed

Download failed! (Error 3) Resource was not found
http://us2-dl.techpowerup.com/files/GPU-Z.2.45.0.exe#/GPU-Z.exe

The url I click on site https://us2-dl.techpowerup.com/files/MwWA2GKCH-zgbXJfIFHjvQ/1648590071/GPU-Z.2.45.0.exe

Paste content of ~/.config/scoop/config.json

{
  "lastUpdate": "258|2022-03-29 17:37:59",
  "SCOOP_REPO": "https://github.com/Ash258/Scoop-Core",
  "SCOOP_BRANCH": "main",
  "proxy": "<IP_ADDRESS>:7890"
}

You are using a fork of Scoop.


Fix leaflet compatibility

Fixes: https://github.com/slutske22/leaflet-spline/issues/1

Thanks for looking at this.  I ended up updating all the dependencies and republishing under 0.2.0 on a separate branch.


Release 3.6.0

Questions
Answers

Description?
Release 3.6.0

Type?
release

BC breaks?
no

Deprecations?
no

How to test?
Please indicate how to best verify that this PR is correct.

This change is

Thanks @PierreRambaud & @sarahdib


Add mastodon Icon

Description
https://mastodon.social/about
Screenshots
No response
Additional information
No response

i ll work on this.

I haven't heard of mastodon and don't think many people use it.

@piyush-1234 you still up for this?

This is now done 👍 so I will close this issue


Check the path to CC and CXX when building libUnwind

Closes google/honggfuzz#159

CLA signed, but also a Google employee


Add dependency to docker/swarmkit

Add a dependency to docker/swarmkit in preparation for adding first-class Swarm-wide service management inside the Docker Engine as described in our ROADMAP.md.

This needs a rebase.

If we get the engine-api change merged this one can be merged easily.  Its just a bunch of vendored deps

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "swarm" git@github.com:docker/docker.git somewhere
$ cd somewhere
$ git rebase -i HEAD~95
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f

Ammending updates the existing PR. You DO NOT need to open a new one.

In the making of this PR:

CLI was merged into this branch from #23363 (complete history is still available on this PR)
API and backend implementation was merged into this branch from #23362 (complete history is still available on this PR)

This branch is now updated with a squashed version of this work to avoid polluting master's history.

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "swarm" git@github.com:docker/docker.git somewhere
$ cd somewhere
$ git rebase -i HEAD~8
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f

Ammending updates the existing PR. You DO NOT need to open a new one.

LGTM :+1:

LGTM

LGTM

Ping @SvenDowideit: can you please help us with that?
1:04:59 ERROR: 2016/06/14 04:04:59 site.go:1211: Two or more menu items have the same name/identifier in Menu "main": "update".
21:04:59 Rename or set an unique identifier.

Nevermind we figured it out :innocent:

@mlaventure

LGTM

LGTM

experimal timed out after all the tests 😇


all serials

Hello! How I can get all serial ports?

It would be extremely helpful if a method to list available serial ports was provided.

something like this might be easy to translate to go, however I'm not sure how reliable this is. Does it show ports that are unused (some machines still have dedicated COM ports)? Are all ttys globed like this actually serial ports?

Thank you very much for the solution you provided, but when the program is compiled into an executable file, the execution platform may not have GOOS environment variables. Does this also need to be considered


Merging new_fragment branch back into master

Since people had more than enough time to test the new_fragment branch (see #656) and there seem to have been no problems, I would like to merge that branch back into the master branch. As discussed in #674, this also changes the time-basis for GetTime() to ns (from 10 ns) and requires people to update their run-info files accordingly.
I think this would be a good opportunity to create a tag for the master branch before merging, i.e. the most up to date version with the old fragment format.
Does anyone have any issues with that? If not I will start looking into this beginning of next week.

Peter is going to rework the way we're storing the data a bit, TFragment will inherit from TGRSIDetectorHit. This will also mean that there is only a TFragment (no TOldFragment), so old data will simply generate multiple TFragments per "midas-fragment".


In controller mode, the variable 'isIsolated' is always true, which cause heartbeat between borker and controller will never happen.

As shown in picture and described in the title, heartbeat between borker and controller will never happen.

https://github.com/apache/rocketmq/blob/f8bf7bd38b11ca025c5795a8e4a03bd577f47273/broker/src/main/java/org/apache/rocketmq/broker/controller/ReplicasManager.java#L290-L314
The isIsolated will be false after the broker register to the controller success.

ok, thanks for explanation.


[Haxe][ASGenerator][Bug] Wrong type detection

After generating function for
func(Math.round(x))
received
function func(round:*)
expected
function func(round:Int)
or
function func(round:Float)

Bug

Works fine!


fix: link to react documentation

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #XXXXX

Updated links to take you to the exact link in documentation(internal linking). The original links were to the documentation, which for one of the link it had been moved to an entirely new place, So I thought it would be intuitive to link the exact place React wants you to go.

This looks good to me! Thanks for the work on this.
As a side note, in general you don't want to commit directly to your main branch - it is best practise to create a new branch to work on your changes. Once this is merged, you'll need to reset your main branch to match ours. 🙂

Thanks for the heads up, will do :)


A More Accurate Simulation

When two bodies get close and start to move really fast, the simulation accuracy breaks down. This is clear because when two bodies are orbiting each other, their orbital paths should never change (ignoring gravitational wave effects, that's endgame simulation). However, if the bodies get really close, their orbits can change substantially and even launch them into escape velocities.
The ultimate problem here is that the simulation timestep is too big for these scenarios. Would it be possible to either lower the global simulation time step, or figure out a way to change local timesteps when planets have high expected velocities?

I think this is addressed with 0.4.0 because it lets the user set the simulation accuracy. Maybe in the future we can use an adaptive simulation accuracy that changes based on how close two bodies are (and more accuracy is needed). However, after working on this a bit, I've realized that accuracy is relevant even among distant planets in a way that a minor change in accuracy has significant impacts even in the lagrange point simulator. For this reason, I'm not going to worry about this now and I'll close this issue with this version.


CUDA Error 222 - provided PTX was compiled with an unsupported toolchain

Prerequisites
Please answer the following questions for yourself before submitting an issue.

[X] I am running the latest code. Development is very rapid so there are no tagged versions as of now.
[X] I carefully followed the README.md.
[X] I searched using keywords relevant to my issue to make sure that I am creating a new issue that is not already open (or closed).
[X] I reviewed the Discussions, and have a new bug or useful enhancement to share.

Prerequisites
Expected Behavior
When using a Kaggle notebook with 2xT4 GPU, llama-cpp-python should work as expected.
Current Behavior
#python -m 'llama_cpp'

ggml_init_cublas: found 2 CUDA devices:
  Device 0: Tesla T4
  Device 1: Tesla T4
CUDA error 222 at /tmp/pip-install-2ecmu5o2/llama-cpp-python_284b4b67e8bf4aecb8c75b3d2715bc08/vendor/llama.cpp/ggml-cuda.cu:1501: the provided PTX was compiled with an unsupported toolchain.

Running llama.cpp directly works as expected.
Environment and Context
Free Kaggle notebook running with the 'T4 x2' GPU accelerator.
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.161.03   Driver Version: 470.161.03   CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla T4            Off  | 00000000:00:04.0 Off |                    0 |
| N/A   44C    P8     9W /  70W |      0MiB / 15109MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   1  Tesla T4            Off  | 00000000:00:05.0 Off |                    0 |
| N/A   45C    P8     9W /  70W |      0MiB / 15109MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:33:58_PDT_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0

$ python3 --version => Python 3.10.10
$ make --version => GNU Make 4.3
$ g++ --version => g++ (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0

Failure Information (for bugs)
Steps to Reproduce
I published a repro at https://www.kaggle.com/randombk/bug-llama-cpp-python-cuda-222-repro

This looks like a nvcc NVidia compilation issue. PTX is a reference to CUDA compiled code.

Closing. Please reopen if the problem is reproducible with the latest llama-cpp-python which includes an updated llama.cpp

The issue still repros on 0.1.77. It only appears on Kaggle, so I suspect it's something to do with their notebook/conda setup.
For anyone else blocked by this, a hacky workaround is to manually compile llama.cpp as a library then copy the resulting file into llama-cpp-python:
cd ~
git clone --recursive https://github.com/ggerganov/llama.cpp.git
cd llama.cpp
make LLAMA_CUBLAS=1 -j libllama.so

# HACK: Use custom compiled libllama.so
cp ~/llama.cpp/libllama.so /opt/conda/lib/python3.10/site-packages/llama_cpp/libllama.so

I'm having this issue and the @randombk workaround doesn't work for me, it just gives a new error:
LLAMA_ASSERT: llama.cpp:1800: !!kv_self.ctx
The output of nvcc --version is:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Tue_Feb__7_19:32:13_PST_2023
Cuda compilation tools, release 12.1, V12.1.66
Build cuda_12.1.r12.1/compiler.32415258_0

Any suggestions would be greatly appreciated!

@di-rse
Same here...
Please refer to https://github.com/abetlen/llama-cpp-python/issues/586

@randombk
Would you mind sharing the version of the cuda toolkit you used to manually compile llama.cpp? Thank you!

FYI, I was running into this same issue but once I installed the actual CUDA version matching the version indicating at the top right in nvidia-smi output, the build worked great.

@wu375 @desilinguist
FYI:
➜  ~ nvidia-smi
Fri Aug 11 12:53:05 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.54.03              Driver Version: 535.54.03    CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce RTX 2080 Ti     Off | 00000000:21:00.0 Off |                  N/A |
|  0%   46C    P8              17W / 300W |      8MiB / 11264MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+
|   1  NVIDIA GeForce RTX 3090        Off | 00000000:49:00.0  On |                  N/A |
|  0%   53C    P8              28W / 350W |   1635MiB / 24576MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      6244      G   /usr/lib/xorg/Xorg                            4MiB |
|    1   N/A  N/A      6244      G   /usr/lib/xorg/Xorg                          380MiB |
|    1   N/A  N/A      6497      G   /usr/bin/gnome-shell                         88MiB |
|    1   N/A  N/A     10763      G   ...6044373,14595055559140153217,262144      199MiB |
|    1   N/A  N/A   1302513      C   python                                      884MiB |
|    1   N/A  N/A   2873402      G   ...sion,SpareRendererForSitePerProcess       61MiB |
+---------------------------------------------------------------------------------------+
➜  ~ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Tue_Jun_13_19:16:58_PDT_2023
Cuda compilation tools, release 12.2, V12.2.91
Build cuda_12.2.r12.2/compiler.32965470_0

It wasn't just nvcc though. I used conda to install all cuda packages of that specific version like so:
conda create -c https://conda.anaconda.org/nvidia/label/cuda-12.0.1 -n cudaenv cuda

@desilinguist
I personally don't use conda any more...
But, it wouldn't make any difference if I use a virtual environment or not ...

libllama.so

Building libllama.so works for me.

this works for me in kaggle:
!git clone --recursive https://github.com/ggerganov/llama.cpp.git
# instead of: !LLAMA_CUBLAS=1 CMAKE_ARGS="-DLLAMA_CUBLAS=on" FORCE_CMAKE=1  pip install llama-cpp-python --force-reinstall --upgrade --no-cache-dir
import os
os.chdir('llama.cpp')
!make LLAMA_CUBLAS=1 -j libllama.so

# # HACK: Use custom compiled libllama.so
!cp libllama.so /opt/conda/lib/python3.10/site-packages/llama_cpp/libllama.so

same issue here


[DOCFIX] Update docs/cn/Contributing-Getting-Started.md

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/20495/
Test PASSed.


Adds some error handling/more detail to create-cluster script

Adds some more verbose output in the event of an error creating a
cluster with the create-cluster script.
Signed-off-by: Christopher Collins<EMAIL_ADDRESS>

Seems fairly straightforward..
I think this script is maintained also in another repo @cblecker s maybe?
If so did you also longer there regarding this change?
If not it's fine and it can be merged.
Will test it tomorrow

seems to work. approving

@georgettica Just FYI, I wrote this script specifically for ocm-container.  If it exists elsewhere now, I'm not aware of it.

I was incorrect, thought it was sre-login


Not working using separated wrapper component

Describe the bug
this is part of the code used in the dynamic example.

  <div
    style={{
      position: "absolute",
      top: 0,
      left: 0,
      width: "100%",
      transform: `translateY(${items[0]?.start ?? 0}px)`,
    }}
  >
    {items.map( .... )}

it doesn't work if separate the div wrapper into components.
<Wrapper height={virtualizer.getTotalSize()} start={items[0]?.start ?? 0}>
  {items.map( .. )}
</Wrapper>

const Wrapper = ({ height, start, children }) => (

    <div
      style={{
        position: "absolute",
        top: 0,
        left: 0,
        width: "100%",
        transform: `translateY(${start}}px)`,
      }}
    >
      {children}

);

how can I fix it?
Your minimal, reproducible example
https://codesandbox.io/p/sandbox/tanstack-virtual-9x5xkf?file=%2Fsrc%2FApp.js%3A76%2C3
Steps to reproduce

open codesandbox https://codesandbox.io/p/sandbox/tanstack-virtual-9x5xkf?file=%2Fsrc%2FApp.js%3A76%2C3
click 'open' button
scroll

Expected behavior
only few items located in the front can be seen
How often does this bug happen?
Every time
Screenshots or Videos
No response
Platform
mac OS
Chrome 125.0.6422.76
tanstack-virtual version
v3.5.0
TypeScript version
No response
Additional context
No response
Terms & Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I understand that if my bug cannot be reliable reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.

I think the issue is with conditional rendering the list, store containerRef on state, like
const [container, setContainer] = useState(null);

and then
getScrollElement: () => container,

If I remove the conditional rendering part and store containerRef on state, the same issue continues.

@kykim00 there is typo in Wrapper styles it should be
style={{
  position: "absolute",
  top: 0,
  left: 0,
  width: "100%",
  transform: `translateY(${start}px)`,
}}


RDocs API not fetching most recent data for some packages

E.g. latest dplyr version is 1.0.2: https://cran.r-project.org/web/packages/dplyr/index.html
But RDocs API shows latest is 0.7.8: https://www.rdocumentation.org/api/packages/dplyr

This  is a major problem, is it not? Today I was exploring RDocumentation as I am planning to switch from RStudio to VIM and wanted try out RDocumentation as an interactive help viewer. Having outdated data defeats the whole purpose of the website IMHO.

Is this still a general problem? I noticed that rdocumentation.org shows an ancient version of RNetCDF - 1.9-1 vs the latest 2.6-1. The page shows that newer versions are available, but their pages are missing when you try to select them.


[os-images] custom console

RancherOS Version: (ros os version)
v1.1.0
Where are you running RancherOS? (docker-machine, AWS, GCE, baremetal, etc.)
baremetal
How do I create my custom os-console container?
For my test machines I often need to edit and move data around while testing/experimenting and I would like a permanent installation of midnight commander on my rancher machines. It is my understanding that I would need a custom os-console container.
Can someone point me in the right direction on how to make one?

For default console, we use the busybox, you can refer to these two projects:

https://github.com/rancher/buildroot
https://github.com/rancher/os-base

For other consoles, you can check in os-services:
https://github.com/rancher/os-services/tree/master/images

@niusmallnan thanks 👍

@niusmallnan is there an easy way to add custom console to the list in ros or do I need a custom ros build for this?

If you run ros console list, it should read contents from the index.yml of os-services.
Different ROS versions will visit the corresponding branch of os-services.
You can modify the /usr/share/ros/os-config.yml file in your setup, just focus on the rancher.repositories.core.url.


Cookbook fails on SmartOS machines

I am running this on Joyent's SmartOS machines and keep getting this error:
       Synchronizing Cookbooks:
         - java
       Compiling Cookbooks...
       Converging 4 resources
       Recipe: java::set_java_home
         * ruby_block[set-env-java-home] action run
           - execute the ruby block set-env-java-home
         * directory[/etc/profile.d] action create
           - create new directory /etc/profile.d
           - change mode from '' to '0755'
         * file[/etc/profile.d/jdk.sh] action create
           - create new file /etc/profile.d/jdk.sh
           - update content in file /etc/profile.d/jdk.sh from none to 61b1f8
           --- /etc/profile.d/jdk.sh   2015-03-18 22:51:26.175891846 +0000
           +++ /etc/profile.d/.jdk.sh20150318-76506-9ztpa2     2015-03-18 22:51:26.175673897 +0000
           @@ -1 +1,2 @@
           +export JAVA_HOME=/opt/local/java/sun6
           - change mode from '' to '0755'
       Recipe: java::oracle
         * java_ark[jdk] action install
           - create dir /opt/local/java and change owner to root:root
           * smartos_package[curl] action install (up to date)
           - download oracle tarball straight from the server
           - extract compressed data into Chef file cache path and

           - Symlink /opt/local/java/jdk1.7.0_75 to /opt/local/java/sun6
         * smartos_package[curl] action nothing (skipped due to action :nothing)
         * java_alternatives[set-java-alternatives] action set

           ================================================================================
           Error executing action `set` on resource 'java_alternatives[set-java-alternatives]'
           ================================================================================

           Errno::ENOENT
           -------------
           No such file or directory - update-alternatives

           Cookbook Trace:
           ---------------
           /tmp/kitchen/cache/cookbooks/java/providers/alternatives.rb:42:in `block (3 levels) in class_from_file'
           /tmp/kitchen/cache/cookbooks/java/providers/alternatives.rb:39:in `block (2 levels) in class_from_file'
           /tmp/kitchen/cache/cookbooks/java/providers/alternatives.rb:24:in `each'
       /tmp/kitchen/cache/cookbooks/java/providers/alternatives.rb:24:in `block in class_from_file'

           Resource Declaration:
           ---------------------
           # In /tmp/kitchen/cache/cookbooks/java/providers/ark.rb

       219:   java_alternatives 'set-java-alternatives' do
       220:     java_location app_home
       221:     bin_cmds new_resource.bin_cmds
       222:     priority new_resource.alternatives_priority
       223:     default new_resource.default
       224:     action :set
           225:   end
           226: end

           Compiled Resource:
           ------------------
           # Declared in /tmp/kitchen/cache/cookbooks/java/providers/ark.rb:219:in `block in class_from_file'

       java_alternatives("set-java-alternatives") do
         action [:set]
         retries 0
         retry_delay 2
         default_guard_interpreter :default
         declared_type :java_alternatives
         cookbook_name "java"
             java_location "/opt/local/java/sun6"
             bin_cmds ["appletviewer", "apt", "ControlPanel", "extcheck", "idlj", "jar", "jarsigner", "java", "javac", "javadoc", "javafxpackager", "javah", "javap", "javaws", "jcmd", "jconsole", "jcontrol", "jdb", "jhat", "jinfo", "jmap", "jps", "jrunscript", "jsadebugd", "jstack", "jstat", "jstatd", "jvisualvm", "keytool", "native2ascii", "orbd", "pack200", "policytool", "rmic", "rmid", "rmiregistry", "schemagen", "serialver", "servertool", "tnameserv", "unpack200", "wsgen", "wsimport", "xjc"]
         priority 1062
         default true
           end

       [2015-03-18T22:51:38+00:00] ERROR: Converge failed with error message java_alternatives[set-java-alternatives] (/tmp/kitchen/cache/cookbooks/java/providers/ark.rb line 219) had an error: Errno::ENOENT: No such file or directory - update-alternatives

       Running handlers:
       [2015-03-18T22:51:38+00:00] ERROR: Running exception handlers
       Running handlers complete
       [2015-03-18T22:51:38+00:00] ERROR: Exception handlers complete
       [2015-03-18T22:51:38+00:00] FATAL: Stacktrace dumped to /tmp/kitchen/cache/chef-stacktrace.out
       Chef Client failed. 4 resources updated in 14.906527449 seconds
       [2015-03-18T22:51:38+00:00] ERROR: Found 1 errors, they are stored in the backtrace
       [2015-03-18T22:51:38+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
>>>>>> Converge failed on instance <default-smartos-postgresql>.
>>>>>> Please see .kitchen/logs/default-smartos-postgresql.log for more details
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: SSH exited (1) for command: [sh -c '
sudo -E /opt/chef/bin/chef-client --local-mode --config /tmp/kitchen/client.rb --log_level auto --force-formatter --no-color --chef-zero-port 8889 --json-attributes /tmp/kitchen/dna.json
']
>>>>>> ----------------------

If you need any more information let me know.  Thanks.

This is saying your shell couldn't find a location for a command named "update-alternatives".
Possible reasons for this:

The path where the command exists is not in your PATH variable.

The command is not on your system. (which it usually should be)

The command is on your system but doesn't have execute bit set so isn't recongized as an executable.

To find where the command is:
find / -name update-alternatives
The above should print out the full directory for this command (e.g. /usr/local/bin/update-alternatives).
You would then type "echo $PATH" and see if that path (e.g. /usr/local/bin) appears in the output separated by colons from other paths in the variable. If not you can append it to the PATH variable by typing "PATH=$PATH:/usr/local/bin" (/usr/local/bin is ONLY an example - you'd substitute whatever path alternatives was found in here).

It looks like this has since been addressed
https://github.com/agileorbit-cookbooks/java/blob/99acaf85d906764fafdb7e3d46e4ecb2ff1793d0/spec/openjdk_spec.rb#L25-L28
https://github.com/agileorbit-cookbooks/java/blob/99acaf85d906764fafdb7e3d46e4ecb2ff1793d0/spec/openjdk_spec.rb#L49-L55


As a data user I want to download data products in an open/standard format, so that I can easily open them for analysis

Steering Group Meeting 26th March agreed: csv, txt, shp, GeoJSON, [question around gpkg = geopackage (wrapped spatial databases)]


nextcloud26: init at 26.0.0beta1

Description of changes
Because nextcloud ships their prerelease versions on a different url, we are not parsing the version string to detect which path to use. We also enabled and validated this change via nixos module testing.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/1760

Is it possible to already generate and include nextcloud26Packages?

yep, added a new commit for that; it is very much not all there yet, but most of the core stuff is, and I had to bodge generate.sh with a 26.0.0 version manually, since it appears to be using the wrong nixpkgs, and did not like 26.0.0beta1

Result of nixpkgs-review pr 212912 run on x86_64-linux 1

1 package built:

nextcloud26

Tests fail to run for me :(
~/p/nixpkgs (master) [1]> nixpkgs-review pr 212912 -p nixosTests.nextcloud
$ git -c fetch.prune=false fetch --no-tags --force https://github.com/NixOS/nixpkgs master:refs/nixpkgs-review/0 pull/212912/head:refs/nixpkgs-review/1
$ git worktree add /home/onny/.cache/nixpkgs-review/pr-212912-4/nixpkgs 6173948c03942a3eaff2e18c7375f4f79c3b1739
Preparing worktree (detached HEAD 6173948c039)
Updating files: 100% (33420/33420), done.
HEAD is now at 6173948c039 Merge pull request #212969 from r-ryantm/auto-update/python310Packages.google-cloud-language
$ git merge --no-commit --no-ff c71e752e7baaad90a1447426741a113b27a2219d
Auto-merging pkgs/top-level/all-packages.nix
Automatic merge went well; stopped before committing as requested
error: cannot coerce a set to a string

       at /nix/store/0zipgmy333i0x71xgriaa5ajz11waf1s-nixpkgs-review-2.7.0/lib/python3.10/site-packages/nixpkgs_review/nix/evalAttrs.nix:16:27:

           15|       else
           16|         builtins.tryEval "${pkg}";
             |                           ^
           17|   in rec {
nix --experimental-features nix-command --system x86_64-linux eval --json --impure --expr (import /nix/store/0zipgmy333i0x71xgriaa5ajz11waf1s-nixpkgs-review-2.7.0/lib/python3.10/site-packages/nixpkgs_review/nix/evalAttrs.nix { allowAliases = false; attr-json = /tmp/tmpwrgmy9qp; }) failed to run, /tmp/tmpwrgmy9qp was stored inspection
https://github.com/NixOS/nixpkgs/pull/212912 failed to build

I could be wrong, but this looks like it could be an issue with nixpkgs-review, rebasing off the tip of master (what I just pushed), works fine and does not reproduce the failure. also nix-build -A nixosTests.nextcloud completes successfully.

I am interested in running this on my staging infrastructure prior to the full launch, to validate the new release. we have plenty of other prerelease packages with unstable-2023-01-28 version strings, and you have to manually opt in, what is the harm?

I could be wrong, but this looks like it could be an issue with nixpkgs-review, rebasing off the tip of master (what I just pushed), works fine and does not reproduce the failure. also nix-build -A nixosTests.nextcloud completes successfully.

Okay manually building the tests work fine, thank you :)
I'm interested to package Nextcloud 26 beta in order to better test and integrate upcoming versions for NixOS (I'm also doing some development for Nextcloud). Thank you for this work!

I am interested in running this on my staging infrastructure prior to the full launch, to validate the new release.

You can also do that with overlays very easily. If not we should adjust the packaging of nextcloud.

we have plenty of other prerelease packages with unstable-2023-01-28 version strings, and you have to manually opt in, what is the harm?

That statement is wrong. unstable-XXXX-XX-XX is used if there are no release tags or the latest release is years in the past and we would need to cherry-pick 10s of patches to make it work.
Normally we don't really want to ship beta versions of softwares. They do not work great with our stable release workflow and require more maintenance and work. They are the exceptions and we should only do it if there is a strong reason for it.
I don't see one here, so I am fully with @Ma27 .
Also backporting this to 22.11 is wrong. I am going to revert that in #213226

Also I am inclined to revert the addition of nextcloud26 beta, if @Ma27 agrees with that. Nextcloud does not allow to easily downgrade your database in case there are problems and it is not worth the extra effort.

You can also do that with overlays very easily. If not we should adjust the packaging of nextcloud.

yeah, doing this via an overlay is near impossible via the let usage of the generic function. are you recommending passing the current generic function through some symbol like pkgs.nextcloud.mkDerivation?

That statement is wrong. unstable-XXXX-XX-XX is used if there are no release tags or the latest release is years in the past and we would need to cherry-pick 10s of patches to make it work.

considering how we package nextcloud, that is how I read the nextcloud26 symbol, it is a derivation with "no release tags", and since we had others in nixpkgs, it seems fine; then once they cut the first tag, we can move over.

Also backporting this to 22.11 is wrong. I am going to revert that in https://github.com/NixOS/nixpkgs/pull/213226

as such, I am mixed on this being "wrong", but I can see that there is not much benefit to the backport, and my actions there reflected my own interest and the perceived eagerness of the community via the actions of a core maintainer.

Nextcloud does not allow to easily downgrade your database in case there are problems and it is not worth the extra effort.

that said, I would ask how much we concerned with people accidentally upgrading? I get that downgrades are impossible, but that this is a problem with loads more software than nextcloud. e.g. signal. also, there are a lot of things that even jumping between stable releases can break, and as you call out it is impossible to go back. as such, my upgrade process usually involves a pile of backups, and a well laid plan; I get that everybody may not, but there is only so much we can do?
if this change would serve to make nixos and nixpkgs worse by breaking lots of installations, could merge the package with a broken or unsupported platform flag? this is kind of a misuse of those flags, so maybe the right move is to advocate for the idea of a "beta/unstable" flag in derivation metadata?

Normally we don't really want to ship beta versions of softwares.

see go_1_20, which tracked rc{1,2,3}

yeah, doing this via an overlay is near impossible via the let usage of the generic function. are you recommending passing the current generic function through some symbol like pkgs.nextcloud.mkDerivation?

Yes, for example.

and my actions there reflected my own interest

For that I just use my fork. I don't think we should backport most commits I cherry-picked in my branch especially the breaking ones.
https://github.com/NixOS/nixpkgs/compare/nixos-22.11...SuperSandro2000:nixpkgs:nixos-22.11


Use Jacobian Based Algorithms if user supplies custom Jacobian

I want to test this with BoundaryValueDiffEq once before merging


%rand-guid% behavior is broken

The binding refactors we released in the last 0.3 update ended up inadvertently breaking this. Recent changes were introduced to BindingMetadata to pre-resolve all metadata properties at index time, meaning out bindings that use %rand-guid% won't get a unique ID per invocation.

Thanks!

FYI: We're planning on getting this fix out by end of week.

Was this ever pushed out?

Yes it was fixed. As part of the fix, the syntax has changed. In a binding expression, you should use {rand-guid} rather than %rand-guid%, e.g.:
{
    "bindings": [
        {
            "type": "queueTrigger",
            "direction": "in",
            "name": "input",
            "queueName": "scenarios"
        },
        {
            "type": "blob",
            "name": "blob",
            "direction": "out",
            "path": "{Container}/{rand-guid}"
        }
    ]
}


Added ContentMode to JPSThumbnail

Added for each thumbnail the option to choose content mode, by default
is aspect fill (even if not defined), but it can be set to aspect fit
or others.
With this feature all images keep their aspect and allow users to
choose other options.

Thanks for your contribution!


Sponsors and Partners

At the moment, our only sponsor is NSF.
We (according to Gabi) don't have any partners.
Let's reduce the sponsorship page to NSF for right now.
Let's remove the "Partners"
Let's add a page for "Contributors" that has all the other groups and institutions.

What about a sub-section of sponsors called "Contributor Sponsors"?

Sponsorship through Contributions ?
Collaborators?
I like Collaborators.
On Wed, Feb 17, 2021 at 4:08 PM Matt Dawson<EMAIL_ADDRESS>wrote:

What about a sub-section of sponsors called "Contributor Sponsors"?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/NCAR/music-box/issues/66#issuecomment-780914054, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ACB7OKYSXFT6JBOKK5KILA3S7RD7NANCNFSM4XZHE4HQ
.

Collaborators sounds good

Collaborators it is!

recreated this issue in music-box-interactive


Google signing not working

Interesting. Thanks for the report @Rahul7f,
Didn't you try Ctrl+R to refresh the page as it stated in the message? I'm not sure if Ctrl+R will refresh the page but worth a try

Hi, I'm experiencing the same issue.
Ctrl+R does refresh the page but does not fix the issue.

Installing on Ubuntu 18.04.3 LTS 64-bit

Even though it's a fresh install, I tried the CTRL+R, and just for giggles, CTRL+SHIFT+R and I get the same error.

Installing on Ubuntu 18.04.3 LTS 64-bit

Even though it's a fresh install, I tried the CTRL+R, and just for giggles, CTRL+SHIFT+R and I get the same error.

Same for me. Some Googling shows that it may be relatively easy to fix for one knowing Electron: https://stackoverflow.com/questions/59685927/electron-application-using-google-oauth-this-browser-or-app-may-not-be-secure

Same for me. Some Googling shows that it may be relatively easy to fix for one knowing Electron: https://stackoverflow.com/questions/59685927/electron-application-using-google-oauth-this-browser-or-app-may-not-be-secure

Same for me. Some Googling shows that it may be relatively easy to fix for one knowing Electron: https://stackoverflow.com/questions/59685927/electron-application-using-google-oauth-this-browser-or-app-may-not-be-secure

For what it's worth:

Apparently Google is restricting usage of Google sign-in in non-standard browsers (which presumably includes Electron) starting in Jan. 2021, and warns developers not to modify their browser's user-agent (which all three of the possibilities I mention do). Use at your own risk! (they don't make clear what outcome will result, but for my own use, I'm opting to use the alternative shown below from now on)
As an alternative to using a Google sign-in popup in your app (which some might be wary of, since Electron apps could in principle insert code into the popup to read the raw password -- not that it matters that much, since Electron apps could just install keyloggers or the like anyway), you could instead open a tab in the user's regular external browser, pointed to a special page that triggers a sign-in popup there, and then just sends the credentials to your Electron app afterward.
Instructions can be seen here (approach 3): https://stackoverflow.com/a/64328193/2441655

Same for me. Some Googling shows that it may be relatively easy to fix for one knowing Electron: https://stackoverflow.com/questions/59685927/electron-application-using-google-oauth-this-browser-or-app-may-not-be-secure

For what it's worth:

Apparently Google is restricting usage of Google sign-in in non-standard browsers (which presumably includes Electron) starting in Jan. 2021, and warns developers not to modify their browser's user-agent (which all three of the possibilities I mention do). Use at your own risk! (they don't make clear what outcome will result, but for my own use, I'm opting to use the alternative shown below from now on)
As an alternative to using a Google sign-in popup in your app (which some might be wary of, since Electron apps could in principle insert code into the popup to read the raw password -- not that it matters that much, since Electron apps could just install keyloggers or the like anyway), you could instead open a tab in the user's regular external browser, pointed to a special page that triggers a sign-in popup there, and then just sends the credentials to your Electron app afterward.
Instructions can be seen here (approach 3): https://stackoverflow.com/a/64328193/2441655


Update gem chartkick (2.3.5->3.2.0)

Chartkick 2.3.5 has a vulnerability (CVE-2019-12732),
so update to repaired component.
I am pretty confident that the BadgeApp cannot be attacked through this
vulnerability, because the only data we use on pages with Chartkick are
calculated numbers and dates from trusted sources. But since mistakes
are always possible, it's best to update vulnerable compoents to
deny attackers from gaining even a toehold.
Signed-off-by: David A. Wheeler<EMAIL_ADDRESS>

@jdossett @dankohn - this updates a vulnerable component.  Let me know if okay!

No complaints, and this needs to be merged.  Merging.


BleAlreadyConnectedException: Already connected to device with MAC address

Hey. When I connect to the device with off states, I get an error BleAlreadyConnectedException. If after this, reopen the app (with Bluetooth enabled and location), the connection is successful. I looked here, but it didn't clear up my problem.
Initial state: Bluetooth and location are off, permission to get location has not been requested yet.
Connection code:
override fun connect() {
        subscriptions += rxBleClient.scanBleDevices(scanSettings, scanFilter)
            .flatMap { scanResult ->
                rxBleDevice = scanResult.bleDevice
                scanResult.bleDevice.establishConnection(false)
            }
            .flatMapSingle {
                rxBleConnection = it
                it.discoverServices()
            }
            .flatMapSingle { obtainCharacteristics(it) }
            .flatMapSingle {
                readCharacteristic = it.first
                writeCharacteristic = it.second

                writeDescriptor(it.first)
                    .andThen(Single.fromCallable { sendStartConnection() })
            }
            .flatMapSingle { it }
            .subscribeBy(
                onNext = {
                    Timber.d("Connect to a device is next: ${it?.contentToString()}")
                    setupAndObserveNotification(readCharacteristic!!)
                },
                onComplete = { Timber.d("Connect to a device is completed.") },
                onError = { Timber.e("Error while connecting to a device: $it") }
            )
}

Log error:
E/BluetoothLeRepositoryImpl$observeStateChanges: Location permission not granted.
D/ConnectDeviceFragment$enableLocation: ACCESS_FINE_LOCATION permission is granted.
E/BluetoothLeRepositoryImpl$observeStateChanges: Bluetooth not enabled.
D/BluetoothAdapter: onBluetoothServiceUp: android.bluetooth.IBluetooth$Stub$Proxy@e69a46f
E/BluetoothLeRepositoryImpl$observeStateChanges: Location services not enabled.
D/BluetoothLeRepositoryImpl$observeStateChanges: Bluetooth state is ready.
D/RxBle#ClientOperationQueue: QUEUED   ScanOperationApi21(139653596)
D/RxBle#ClientOperationQueue: STARTED  ScanOperationApi21(139653596)
I/RxBle#QueueOperation: Scan operation is requested to start.
D/BluetoothAdapter: isLeEnabled(): ON
D/BluetoothLeScanner: onScannerRegistered() - status=0 scannerId=5 mScannerId=0
D/RxBle#ClientOperationQueue: FINISHED ScanOperationApi21(139653596) in 47 ms
D/RxBle#ClientOperationQueue: QUEUED   ConnectOperation(123558721)
D/RxBle#ClientOperationQueue: STARTED  ConnectOperation(123558721)
V/RxBle#BleConnectionCompat: Connecting without reflection
D/BluetoothGatt: connect() - device: 9C:1D:58:92:85:E3, auto: false
D/BluetoothGatt: registerApp()
D/BluetoothGatt: registerApp() - UUID=cb82dafd-ba5f-47e6-851c-5f8fc43eae1e
D/BluetoothGatt: onClientRegistered() - status=0 clientIf=8
I/RxBle#CancellableDisposable: Scan operation is requested to stop.
D/BluetoothAdapter: isLeEnabled(): ON
E/BluetoothLeRepositoryImpl$connect: Error while connecting to a device: com.polidea.rxandroidble2.exceptions.BleAlreadyConnectedException: Already connected to device with MAC address 9C:1D:58:92:85:E3
I/RxBle#ConnectionOperationQueue: Connection operations queue to be terminated (9C:1D:58:92:85:E3)
D/RxBle#Executors$RunnableAdapter: Terminated.
D/RxBle#ClientOperationQueue: FINISHED ConnectOperation(123558721) in 179 ms
D/RxBle#ClientOperationQueue: QUEUED   DisconnectOperation(53321255)
D/RxBle#ClientOperationQueue: STARTED  DisconnectOperation(53321255)
D/BluetoothManager: getConnectionState()
D/BluetoothManager: getConnectedDevices
D/BluetoothGatt: close()
D/BluetoothGatt: unregisterApp() - mClientIf=8
D/RxBle#ClientOperationQueue: FINISHED DisconnectOperation(53321255) in 9 ms

Log successful (after a previous failed connection):
D/BluetoothLeRepositoryImpl$observeStateChanges: Bluetooth state is ready.
D/RxBle#ClientOperationQueue: QUEUED   ScanOperationApi21(72294046)
D/RxBle#ClientOperationQueue: STARTED  ScanOperationApi21(72294046)
I/RxBle#QueueOperation: Scan operation is requested to start.
D/BluetoothAdapter: isLeEnabled(): ON
D/BluetoothLeScanner: onScannerRegistered() - status=0 scannerId=7 mScannerId=0
D/RxBle#ClientOperationQueue: FINISHED ScanOperationApi21(72294046) in 16 ms
D/RxBle#ClientOperationQueue: QUEUED   ConnectOperation(118003238)
D/RxBle#ClientOperationQueue: STARTED  ConnectOperation(118003238)
V/RxBle#BleConnectionCompat: Connecting without reflection
D/BluetoothGatt: connect() - device: 9C:1D:58:92:85:E3, auto: false
D/BluetoothGatt: registerApp()
D/BluetoothGatt: registerApp() - UUID=b5748661-d640-4d50-8e04-ebd2900983c7
D/BluetoothGatt: onClientRegistered() - status=0 clientIf=8
D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=8 device=9C:1D:58:92:85:E3
D/RxBle#BluetoothGatt$1: onConnectionStateChange newState=2 status=0
D/RxBle#ClientOperationQueue: FINISHED ConnectOperation(118003238) in 488 ms
D/RxBle#ConnectionOperationQueue: QUEUED   ServiceDiscoveryOperation(250099901)
D/RxBle#ConnectionOperationQueue: STARTED  ServiceDiscoveryOperation(250099901)
D/BluetoothGatt: discoverServices() - device: 9C:1D:58:92:85:E3

Hi, @akhbulatov . One device may be returned more than once in your code above.So, are you looking for like this:
subscriptions += rxBleClient.scanBleDevices(scanSettings, scanFilter)
            .take(1) // just take the first one
            .flatMap { scanResult ->
                rxBleDevice = scanResult.bleDevice
                scanResult.bleDevice.establishConnection(false)
            }
            ...


Mex compilation instructions in manual

The documentation says that installMultiDIC

...will compile all the necessary files for Ncorr and will save the Matlab MEX files in the Ncorr folder. It has to be done only the first time.

However the code only seems to add paths e.g.:
addpath(genpath(fullfile(mPath,'lib_MultiDIC'))); % add libraries
addpath(genpath(fullfile(mPath,'lib_ext'))); % add external library

Thanks for that. This is fixed in the new release (v.1.1.0).


Suggestion for MoveWhenLooking AI type

The Rolling Giant will not move while being behind a wall. This makes the Giant less dangerous so it would be nice if you implemented a feature that allows the Giant to move while he is not seeing a player.

Hey there! Sure I can add an extra check for that 👍

Added 👍


Disable right-click in Windows 11

Doesn't work at the moment and there doesn't seems to be any fast fix.

Fixed


RETURN max(x) in UNWIND returns BAD_TYPE

UNWIND [[1], [2], [2, 1],[2, 2]] AS x RETURN max(x)

The same happens with min(), and maybe other functions.

The same happens with min(), and maybe other functions.

neo4j test:
neo4j@neo4j>  UNWIND [['a'],["abc"],["ab","kajk"]] AS x
                   return min(x) AS min, max(x) AS max
             ;
+-----------------+
| min   | max     |
+-----------------+
| ["a"] | ["abc"] |
+-----------------+

1 row available after 138 ms, consumed after another 2 ms
neo4j@neo4j>  UNWIND [[1],[2],[2,1]] AS x
                   return min(x) AS min, max(x) AS max
             ;
+--------------+
| min | max    |
+--------------+
| [1] | [2, 1] |
+--------------+

neo4j test:
neo4j@neo4j>  UNWIND [['a'],["abc"],["ab","kajk"]] AS x
                   return min(x) AS min, max(x) AS max
             ;
+-----------------+
| min   | max     |
+-----------------+
| ["a"] | ["abc"] |
+-----------------+

1 row available after 138 ms, consumed after another 2 ms
neo4j@neo4j>  UNWIND [[1],[2],[2,1]] AS x
                   return min(x) AS min, max(x) AS max
             ;
+--------------+
| min | max    |
+--------------+
| [1] | [2, 1] |
+--------------+

This is my local test:
(czp@nebula) [nba]>       """
                 ->       UNWIND [[1],[2],[2,1]] AS x
                 ->       return min(x) AS min, max(x) AS max
                 ->       """
+-----+--------+
| min | max    |
+-----+--------+
| [1] | [2, 1] |
+-----+--------+
Got 1 rows (time spent 119726/158461 us)

(czp@nebula) [nba]>       """
                 ->       UNWIND [['a'],["abc"],["ab","kajk"]] AS x
                 ->       return min(x) AS min, max(x) AS max
                 ->       """
+-------+---------+
| min   | max     |
+-------+---------+
| ["a"] | ["abc"] |
+-------+---------+

This is my local test:
(czp@nebula) [nba]>       """
                 ->       UNWIND [[1],[2],[2,1]] AS x
                 ->       return min(x) AS min, max(x) AS max
                 ->       """
+-----+--------+
| min | max    |
+-----+--------+
| [1] | [2, 1] |
+-----+--------+
Got 1 rows (time spent 119726/158461 us)

(czp@nebula) [nba]>       """
                 ->       UNWIND [['a'],["abc"],["ab","kajk"]] AS x
                 ->       return min(x) AS min, max(x) AS max
                 ->       """
+-------+---------+
| min   | max     |
+-------+---------+
| ["a"] | ["abc"] |
+-------+---------+


Fresh installs having same problem as regular nomp

Error: Cannot find module 'stratum-pool'
I think they have put in a pull request for the versions.  I have worked on getting around this for hours now.   Any Idea?   I got past this once but landed on bignum error.  Worked my way back around to this one again.
Any Ideas?

Here is the link to the other issue.
https://github.com/zone117x/node-open-mining-portal/issues/489
If you guys have any idea what versions I need to try and download to get past this I would appreciate it.

did you do npm update and npm install??

Absolutely.   I'm running 14.4 in wonder if going to a new version of Ubuntu would fix it.     I was trying to run it like i do my bitcoin pool with node init.js instead of npm.....  I also updated to 16.04

can be.. lemme know if it helps

Nomp requires node 0.10 while znomp requires >v4

To start without using npm use this
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/node_modules/stratum-pool/node_modules/equihashverify/build/Release/:$PWD/node_modules/equihashverify/build/Release/ node init.js


Website 🐛 [Bug]: No cta and links in Media Tab

Description

To Reproduce
No response
Current vs. Expected behavior
No response
Which area(s) are affected? (Select all that apply)
No response
Additional context
No response

Updated the content here: https://8-aaeffee09b-7w6v22.manager.zesty.io/content/6-b0e0caa18c-zpjlsr/7-f6e3e1ab88-wh4xbs


Install of romkan 0.2.1 fails

pip install romkan failed in windows 10 with python 3.9.6 with the following error message:
README = open(os.path.join(here, 'README.rst')).read()
       File "C:\Python396\lib\encodings\cp1250.py", line 23, in decode
         return codecs.charmap_decode(input,self.errors,decoding_table)[0]
     UnicodeDecodeError: 'charmap' codec can't decode byte 0x83 in position 182

I could overcome this issue by setting PYTHONUTF8=1  environment variable.
(In the code, encoding="utf-8" should be added to open().)
Also, there was a deprecation notice:
DeprecationWarning: the imp module is deprecated in favour of importlib

Wasn't fixed with #15 , the error still happens via pip or setup.py if installed on win 10 / python 3.10.8 and i suppose also on 3.9.6.
Fixed it locally where i put encoding="utf-8" in the open-statement on line 12 in the setup.py file, as @BarnabasSzabolcs states.


Generating a fetch client instead of axios for Next.js

Hi, I'd like to use fetch instead of axios for the basic setup since it's lightweight. Is there a way that's possible right now?

Hello, sure you can use the next version. You can install it with yarn global add orval@next. You just need to set up a global mutator with your preferred HTTP client (check the doc here https://next.orval.dev/reference/configuration#overridemutator). If you use Next.js you can also use react-query (https://react-query.tanstack.com/docs/guides/ssr). It's cool, easy to use and you also have an integration with orval (https://next.orval.dev/guides/react-query).

I also would like to use the Fetch API instead of Axios. I don't see this mentioned anywhere in the docs so I'm adding to this issue. Is there any plans to use Fetch? E.g. in react-query requests are made via a e.g. fetch(url) instead of an e.g. axios.get(url).

You can already do it you need to use a mutator check here. you can replace Axios by fetch or any other http client

This will be supported in 6.32.0 with this ticket: https://github.com/anymaniax/orval/issues/1387


Modify minor release docker push step in azure pipeline

Description:  Modify minor release docker push step azure pipeline
Changes Proposed in PR:

Modified docker push script to be compatible with azure platform.

Fixes: internal

/azp run


Advance to "Store fields alongside fields information in select" commit.

Coverage decreased (-0.05%) to 83.38% when pulling 13b2d1356afee2bbbbb31fc93a6d5688397c1e28 on store-fields-along-field-info into 33cdcd8c38b3966b33919e8746c66de9774a21ee on master.


Dimension filters on query results do not support the pivoted dimension

A query supports dimension filters before and after the datasets are mapped to the project and concatenated. The pre-filters support all dimensions. The post-filters do not handle the case where the filter is working on the pivoted dimension because the filter expects one column. This could be addressed.

No longer relevant because we do all work in unpivoted format.


Update the posts endpoint

The implementation should be based on and tested with v2.8 of the Facebook Graph API

Obsolete and deprecated code should be removed

etc.

Also see #1


dcos-docker muti cluster

Docker Env, Not in same machine, I want to create most masters and agents, I dont not how to do.
In document, I know how to create in same machine, but Not in same machine?

Yeah,@adamtheturtle
I‘m using the DC/OS E2E CLI.
I‘m using the dcos-docker create command.
I want to use it for multiple machine clusters, not stand-alone.

@xyjwsj Thank you for clarifying.
That is not currently supported.
What is your use case? Knowing this might help us know whether to prioritise this.

In addition to what @adamtheturtle asked I would like to clarify that if your goal is to run DC/OS on multiple machines then canonical installation of DC/OS is the right way to go, and dcos-docker is not.
dcos-docker (DC/OS E2E with the Docker backend) can be thought of as a convenient way to "simulate running a real DC/OS cluster on a single machine".

Could support this mode? I need run DC/OS on  multiple machines, how to do?

There are multiple ways to install DC/OS on multiple nodes.
See https://docs.mesosphere.com/1.11/installing/oss/.
I do not think that DC/OS E2E (and DC/OS in Docker) is the way to go - it is not supported for this use case.
I would follow the instructions in the above link.
However - is there a particular reason you want to use DC/OS E2E?

@xyjwsj I will close this - please re-open or open a new issue if you are still having trouble.


Implement masking for the segmentation scripts

Add an option to the prediction scripts to specify a mask, so that the segmentation is applied only to the area in the mask.

Use the following:

https://github.com/constantinpape/torch-em/blob/main/torch_em/loss/wrapper.py
https://github.com/constantinpape/torch-em/blob/main/torch_em/transform/label.py#L107


Problem: playwright config and tests are clutting the root directory

We are using playwright for an e2e testing suite. Move playwright config and tests to e2e sub directory to declutter the root directory.
This will require splitting the package.json into two: root package.json and e2e/package.json. The former requires tailwindcss and the latter includes all the playwright dependencies. Both should have the {"private":true} set.

Playwright was removed in favour of cypress. Tests no longer in the root. Problem is resolved


Add parallel meter to monitor concurrent activities for testing

Codecov Report

Merging #27 (c8ff731) into master (31506ac) will increase coverage by 2.19%.
The diff coverage is 94.35%.

@@             Coverage Diff              @@
##             master      #27      +/-   ##
============================================
+ Coverage     85.71%   87.91%   +2.19%
- Complexity      157      224      +67
============================================
  Files            19       25       +6
  Lines           518      695     +177
  Branches         37       50      +13
============================================
+ Hits            444      611     +167
- Misses           65       71       +6
- Partials          9       13       +4

Impacted Files
Coverage Δ
Complexity Δ

...a/uk/org/webcompere/testgadgets/retry/Retryer.java
91.89% <ø> (ø)
12.00 <0.00> (ø)

...ebcompere/testgadgets/GenericThrowingCallable.java
33.33% <33.33%> (ø)
2.00 <2.00> (?)

...testgadgets/parallel/statistics/EventTracking.java
95.29% <95.29%> (ø)
34.00 <34.00> (?)

...pere/testgadgets/parallel/statistics/EventLog.java
96.07% <96.07%> (ø)
13.00 <13.00> (?)

...ebcompere/testgadgets/GenericThrowingRunnable.java
100.00% <100.00%> (ø)
2.00 <2.00> (?)

.../uk/org/webcompere/testgadgets/parallel/Meter.java
100.00% <100.00%> (ø)
10.00 <10.00> (?)

...stgadgets/parallel/statistics/EventStatistics.java
100.00% <100.00%> (ø)
6.00 <6.00> (?)

... and 3 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 31506ac...c8ff731. Read the comment docs.


Cached Attributes (Rails 4) & marking nested models as dirty

https://github.com/mbleigh/acts-as-taggable-on/issues/342

Clear local column cache when parent does
Get the model to be marked as dirty when setting a new list via a context

Model
class TaggableModel < ActiveRecord::Base
  acts_as_taggable
  acts_as_taggable_on :languages
end

Controller
class FoosController < ContentAdminController
      # .....
      def update
        if @foo.update_attributes(update_params)
          redirect_to foo_path(@foo), flash: {success: 'Updated foo.'}
        else
          render :edit
        end
      end
      # .....
    private

      def update_params
        params.require(:foo).permit(
          :taggable_attributes => [
            :id, :_destroy, {:language_list => []}
          ]
        )
      end
end

Post Data looks like...
{
  "utf8"=>"✓",
  "authenticity_token"=>"some-tada-here",
  "foo"=>{
    "taggable_attributes"=>{
      "0"=>{
        "_destroy"=>"0",
        "language_list"=>"english, french, german",
        "id"=>"15"
      }
    }
  },
  "commit"=>"Save",
  "id"=>"1"
}

Given the above, the TaggableModel will not receive a Dirty state, which ends up with an unsaved child.

Hey, thanks for the fix @spodlecki !
What's the status of this one? We really need a fix on our application codebase :).
Also, it looks similar to #728 and #812.
Thanks a lot !


[CT-1458] [Feature] change default dbt-py method to anonymous stored procedures (sprocs)

Is this your first time submitting a feature request?

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt-snowflake functionality, rather than a Big Idea better suited to a discussion

Describe the feature
change to anonymous sprocs as the default
the code is already there, the default should just be changed once it's ready per Snowflake team
should keep stored sprocs as an option
Describe alternatives you've considered
n/a
Who will this benefit?
all dbt-py users on Snowflake with slightly faster execution
Are you interested in contributing this feature?
no
Anything else?
No response

Anon sprocs are now available to everyone with access to Snowpark (Open Preview), so we can do this any time: https://docs.snowflake.com/en/sql-reference/sql/call-with.html

@Fleid @nathaniel-may What do you think of prioritizing this for inclusion in dbt-snowflake==1.4.0?


changing zip service to send fedora headers and stream the content on…

… external files
Additionally allow http to redirect to https

Coverage decreased (-30.9%) to 61.925% when pulling 6a911730ddf8bde57cb035e90518687746b5f556 on i#1393 into 5b828058418012e7f5491179c0b87e21482026ec on develop.


Update non-micro.md

Only Microsoft employees can sign off on PRs. Your PR will be routed for review.

#sign-off


Control two instances with different option loop

This is a (multiple allowed):

[x] bug

[ ] enhancement

[ ] feature-discussion (RFC)

Swiper Version: 6.0.4.

Platform/Target and Browser Versions: ALL.

Live Link or JSFiddle/Codepen or website with isssue: https://jsfiddle.net/7wa109z2/ or in https://stackoverflow.com/questions/63096486/swiper-js-control-two-instances-with-different-option-loop.

What you did
I try to make a slider with thumb. But i want my slider is loop=true and my thumb is loop=false. Here is my setting
var galleryTop = new Swiper('.gallery-top', {
	spaceBetween: 10,
	navigation: {
		nextEl: '.swiper-button-next',
		prevEl: '.swiper-button-prev',
	},
	loop: true
});
var galleryThumbs = new Swiper('.gallery-thumbs', {
	spaceBetween: 10,
	centeredSlides: true,
	slidesPerView: 'auto',
	touchRatio: 0.2,
	slideToClickedSlide: true
});
galleryTop.controller.control = galleryThumbs;
galleryThumbs.controller.control = galleryTop;
Behavior and suggested improvement
It not working well, my slider and my thumb is not show correct. Ex: when i swipe my slide from 1 to 2 then my thumb show 3.

I can confirm this 👍

I tried to play with it, that's what I get:
https://jsfiddle.net/5hvndmxg/33/
Is it works as you wanted @iforcode ?


A new Universe Selection Algorithm based on last weeks Momentum analysis

Hello Everyone,
I want to design and implement an algorithm for Universe Selection. I would love to get some inputs from the community as to what should be the approach towards building such an algorithm. I am new to the world of finance and QuantConnect, thus any help will be profoundly appreciated.
Thanks

Welcome @Anshul, this discussion is more appropriate in the QC forums. The open source issue list is more for reporting bugs and planning feature.
If you find a bug in the LEAN open source please let us know here. Other wise quantconnect.com/forum is a great place for algorithm and finance discussion.


Migrating Regions Module code from AMRclaw while under development

I'd like to migrate the regions module and corresponding amr3.f90 to the ./src/3d directory so that development of seismic code doesn't require checking out my amrclaw/3d_regions branch.  The slices module should also be migrated, as that is currently sitting on a separate branch: my amrclaw/3d_slices branch.  This will be especially useful for the upcoming workshop... after which, we can look into integrating developments back into amrclaw if that community would find them useful.

Also, the regions module is pretty useless without the "flag2refine" code in the seismic/src/3d directory.