Add flag to enable moving resources to cluster-aws

What this PR does / why we need it
Towards https://github.com/giantswarm/roadmap/issues/3119
This PR adds a Helm boolean value that, when enabled, will create post-delete hook where all resources will have their meta.helm.sh/release-name annotation updated to cluster name, which means that Helm will see those resources as they are deployed by cluster-aws, and then cluster-aws can continue updating them.
Cluster migration steps are:

Update cluster to the latest version of default-apps-aws (with this change). Nothing should change as the .Values.deleteOptions.moveAppsHelmOwnershipToClusterAws is disabled by default.
Update .Values.deleteOptions.moveAppsHelmOwnershipToClusterAws to true. Verify that all App resources and ConfigMaps from default-apps-aws have helm.sh/resource-policy: keep annotation set.
Delete <cluster name>-default-apps App. Verify that all resources from default-apps-aws have their meta.helm.sh/release-name annotation updated to <cluster name>.
Update cluster to the latest version of cluster-aws (new TBA release with this change https://github.com/giantswarm/cluster-aws/pull/581).

Checklist

[ ] Update changelog in CHANGELOG.md.

E2E Tests

/run cluster-test-suites

Cluster that was created with apps in default-apps-aws successfully upgraded to a cluster with default apps in cluster-aws :tada:
3-step upgrade process (with simplified details for the sake of brevity):

Upgrade default-apps-aws version

Apps get paused (so that Charts on the WC are not deleted) :white_check_mark:
new Helm hooks are created (post-upgrade hook to propagate pause to bundled apps, post-delete hook to remove App CRs that stay behind due to finalizers, which happens because of above pause) :white_check_mark:

Delete default-apps-aws

All App CRs are deleted :white_check_mark:
Chart CRs stay on WC and apps are still running :white_check_mark:

Upgrade cluster-aws to a new version with default apps

cluster upgraded successfully :white_check_mark:
All new App CRs for default apps got created :white_check_mark:
Chart CRs (for default apps) in the WC got updated to reflect that they are now deployed by cluster-aws :white_check_mark:

I would merge these PRs now (after re-running cluster-test-suites, which I think I would have to do locally, due to nature of the breaking changes here):

https://github.com/giantswarm/cluster/pull/127
https://github.com/giantswarm/cluster-aws/pull/581
https://github.com/giantswarm/default-apps-aws/pull/463

Other tools/components (I can remember now) that need changes are then (should not be a lot of work):

capi-migration-cli
kubectl-gs
happa
cluster-test-suites (upgrade suite will be failing until there is a new cluster-aws release)

P.S. I would probably merge the above PRs even without changes to mentioned tools/components, so we can upgrade clusters ASAP.

/run cluster-test-suites

Since the feature is behind a flag it should not break anything even if clusters get upgraded, so I will just run e2e tests to verify that they pass here, and then I'll merge this.

Current private test suite is failing, few apps got stuck in pendin-upgrade (and it's only creating the cluster 😕)
kubectl get app -n org-t-xiuqpncqy0a7ff9and
NAME                                               INSTALLED VERSION                                 CREATED AT   LAST DEPLOYED   STATUS
t-1g0xbub66ua3fuouoq                               0.75.0                                            64m          62m             deployed
t-1g0xbub66ua3fuouoq-app-operator                  6.10.3                                            62m          62m             deployed
t-1g0xbub66ua3fuouoq-aws-pod-identity-webhook      1.15.1                                            62m          21m             failed
t-1g0xbub66ua3fuouoq-capi-node-labeler             0.5.0                                             62m          58m             deployed
t-1g0xbub66ua3fuouoq-cert-exporter                 2.9.0                                             62m          52m             deployed
t-1g0xbub66ua3fuouoq-cert-manager                  3.7.4                                             62m          7m38s           pending-upgrade
t-1g0xbub66ua3fuouoq-chart-operator                3.2.1                                             62m          58m             deployed
t-1g0xbub66ua3fuouoq-chart-operator-extensions     1.1.2                                             62m          50m             deployed
t-1g0xbub66ua3fuouoq-cilium-servicemonitors        0.1.2                                             62m          50m             deployed
t-1g0xbub66ua3fuouoq-cluster-autoscaler            1.27.3-gs8                                        62m          58m             deployed
t-1g0xbub66ua3fuouoq-default-apps                  0.51.0-9177be60cf7f0de3e705f9fba465e987b3a8afb7   64m          61m             deployed
t-1g0xbub66ua3fuouoq-etcd-k8s-res-count-exporter   1.10.0                                            62m          58m             deployed
t-1g0xbub66ua3fuouoq-external-dns                  3.1.0                                             62m          58m             deployed
t-1g0xbub66ua3fuouoq-grafana-agent                 0.4.3                                             62m          50m             deployed
t-1g0xbub66ua3fuouoq-k8s-dns-node-cache            2.6.1                                             62m          47m             deployed
t-1g0xbub66ua3fuouoq-kube-prometheus-stack         9.1.2                                             62m          2m12s           pending-upgrade
t-1g0xbub66ua3fuouoq-kyverno                       0.17.10                                           58m          56m             deployed
t-1g0xbub66ua3fuouoq-kyverno-policies              0.20.2                                            58m          48m             deployed
t-1g0xbub66ua3fuouoq-kyverno-policy-operator       0.0.7                                             58m          47m             deployed
t-1g0xbub66ua3fuouoq-metrics-server                2.4.2                                             62m          58m             deployed
t-1g0xbub66ua3fuouoq-net-exporter                  1.18.2                                            62m          48m             deployed
t-1g0xbub66ua3fuouoq-node-exporter                 1.19.0                                            62m          50m             deployed
t-1g0xbub66ua3fuouoq-observability-bundle          1.3.4                                             62m          61m             deployed
t-1g0xbub66ua3fuouoq-prometheus-agent              0.6.9                                             62m          50m             deployed
t-1g0xbub66ua3fuouoq-prometheus-operator-crd       9.0.0                                             62m          58m             deployed
t-1g0xbub66ua3fuouoq-promtail                      1.5.3                                             62m          48m             deployed
t-1g0xbub66ua3fuouoq-security-bundle               1.6.5                                             62m          58m             deployed
t-1g0xbub66ua3fuouoq-teleport-kube-agent           0.9.0                                             62m          58m             deployed
t-1g0xbub66ua3fuouoq-vertical-pod-autoscaler       5.1.0                                             62m          4m13s           pending-upgrade

/run cluster-test-suites

Considering that failures in my PR are identical to failures from other PRs in previous days, I will go ahead and merge my PR (as I have tested it extensively and everything is disabled by default anyway).
We should in any case investigate and fix the issues that we have, but IMO that should not block other work.


I get a error when to change the backgroundColor by Animated

This is my code.
                <Animated.View style={[styles.loginButton, {
                    transform: [{
                        backgroundColor: this.state.anim.interpolate({
                            inputRange: [0, 1],
                            outputRange: ['rgba(80,253,227,0.2)', 'rgba(80,253,227,1)']
                        })
                    }]
                }]}></Animated.View>

The error
Invariant Violation: Invariant Violation:
Invalid transform backgroundColor:
{"backgroundColor":"rgba(80,253,227,0.2)"}

I did not understand that before.


SPEED

Removes a few non-pythonic inclusions:

instead of iterating over objects by index, iterate over the object exactly, e.g. instead of a while k <= len(object); row = object[k], just do for row in object - much easier to read, mostly foolproof (will just stop looping once there are no more rows), and will work on just about every iterable object type (lists, tuples, dicts, file handlers...)
Don't store more than you have to - here we have the first 4 lines that we need repeatedly (metadata), but each other line is handled atomically. That means that we don't need to hold it all in memory. Reading all the contents into memory and iterating by index is MUCH slower than reading a file one line at a time, but for this purpose accomplishes the same result.
Think about your output, and then the easiest way to reach it. In the original you're constructing a pandas dataframe (a 'heavy' object, with a lot of features), then appending to it a million times. This potentially means a million regenerations of an index, and provisioning new memory space for the growing object. Instead of that, just write directly to an output file line by line, with a negligible memory footprint.

This revised script generates ~78MB of output, 1.3M lines, in 0.7 seconds

closing this... over a year old, can't remember why it exists


Pipes optimize

fix bug #2387
embeding pipes and feature normalize
keep the build dir after building triton models failed.
DataQueue add to_list function

Signed-off-by: junjie.jiang<EMAIL_ADDRESS>

/lgtm


Charizard delta 4

Allows multiple activations of different peal of thunders

I was able to successfully evolve from charmeleon delta.


python312Packages.zwave-js-server-python: 0.57.0 -> 0.58.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python312Packages.zwave-js-server-python is: Python wrapper for zwave-js-server
meta.homepage for python312Packages.zwave-js-server-python is: https://github.com/home-assistant-libs/zwave-js-server-python
meta.changelog for python312Packages.zwave-js-server-python is: https://github.com/home-assistant-libs/zwave-js-server-python/releases/tag/0.58.0
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.58.0 with grep in /nix/store/gv7p42jzcj7fhl8hyry7pga2cg9y5l1m-python3.12-zwave-js-server-python-0.58.0
found 0.58.0 in filename of file in /nix/store/gv7p42jzcj7fhl8hyry7pga2cg9y5l1m-python3.12-zwave-js-server-python-0.58.0

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

4 package rebuild(s)

First fifty rebuilds by attrpath

home-assistant-component-tests.zwave_js
python311Packages.zwave-js-server-python
python312Packages.zwave-js-server-python

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/gv7p42jzcj7fhl8hyry7pga2cg9y5l1m-python3.12-zwave-js-server-python-0.58.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python312Packages.zwave-js-server-python https://github.com/r-ryantm/nixpkgs/archive/981197b91251746ec525892303555726f4f6bfc1.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/981197b91251746ec525892303555726f4f6bfc1#python312Packages.zwave-js-server-python

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/gv7p42jzcj7fhl8hyry7pga2cg9y5l1m-python3.12-zwave-js-server-python-0.58.0
ls -la /nix/store/gv7p42jzcj7fhl8hyry7pga2cg9y5l1m-python3.12-zwave-js-server-python-0.58.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package failed to build:

home-assistant-component-tests.zwave_js

4 packages built:

python311Packages.zwave-js-server-python
python311Packages.zwave-js-server-python.dist
python312Packages.zwave-js-server-python
python312Packages.zwave-js-server-python.dist

Maintainer pings
cc @fabaff for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

Home Assistant PR: https://github.com/home-assistant/core/pull/125666

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python312Packages.zwave-js-server-python is: Python wrapper for zwave-js-server
meta.homepage for python312Packages.zwave-js-server-python is: https://github.com/home-assistant-libs/zwave-js-server-python
meta.changelog for python312Packages.zwave-js-server-python is: https://github.com/home-assistant-libs/zwave-js-server-python/releases/tag/0.58.1
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.58.1 with grep in /nix/store/mm73v1wrf7lbx2j0piqp2na89kh7ms5i-python3.12-zwave-js-server-python-0.58.1
found 0.58.1 in filename of file in /nix/store/mm73v1wrf7lbx2j0piqp2na89kh7ms5i-python3.12-zwave-js-server-python-0.58.1

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

4 package rebuild(s)

First fifty rebuilds by attrpath

home-assistant-component-tests.zwave_js
python311Packages.zwave-js-server-python
python312Packages.zwave-js-server-python

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/mm73v1wrf7lbx2j0piqp2na89kh7ms5i-python3.12-zwave-js-server-python-0.58.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python312Packages.zwave-js-server-python https://github.com/r-ryantm/nixpkgs/archive/64d445e98c8f475c697ec6fadf83f9782b87cb60.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/64d445e98c8f475c697ec6fadf83f9782b87cb60#python312Packages.zwave-js-server-python

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/mm73v1wrf7lbx2j0piqp2na89kh7ms5i-python3.12-zwave-js-server-python-0.58.1
ls -la /nix/store/mm73v1wrf7lbx2j0piqp2na89kh7ms5i-python3.12-zwave-js-server-python-0.58.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package failed to build:

home-assistant-component-tests.zwave_js

4 packages built:

python311Packages.zwave-js-server-python
python311Packages.zwave-js-server-python.dist
python312Packages.zwave-js-server-python
python312Packages.zwave-js-server-python.dist

Maintainer pings
cc @fabaff for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

included in https://github.com/NixOS/nixpkgs/pull/346048


DPUCZDX8G DPU configuration

Hi,
Is the DPUCZDX8G DPU configuration described somewhere? This is the default DPU configuration available in Vitis AI for ZCU102 boards. Especially, I would like to know the value of the "channel_parallel" variable.
Maybe I missed the information in the Vitis AI User Guide... In UG1414 the channel_parallel for DPUCAHX8H is said to be 16, but I cannot find something about DPUCZDX8G.
Thanks a lot.

@kerocc
You can find the DPU configuration in PG338.  Please download it in the following link.
https://www.xilinx.com/support/documentation/ip_documentation/dpu/v3_2/pg338-dpu.pdf
Also, you can find DPU configuration in
https://github.com/Xilinx/Vitis-AI/tree/master/DPU-TRD

Thanks for your replies. I had these tables in mind, they are really useful to configure our own DPU.
But here I was wondering what is the architecture provided with the ZCU102 image that we find in the VART Tutorials.
Is it B4096/3 cores? This is the information I was looking for. Is it given somewhere?
Thanks.

I am not quiture sure but you can check with dexplorer -w on your target board how many dpu cores are present. Sadly I do not have a zcu102, but I assume it is the common used TRD from xilinx which includes 2 DPU Cores.
When you have more DPU cores you do not automatically have the whole throughput of 2 DPU cores, only a single DPU is utilized when you do not write the appropiate code to use both. So e.g. using the first DPU for every even and the second for every uneven frame

@kerocc
There are 3 * B4096F DPU core @300Mhz integrated in the official ZCU102 image.

Thank you


get.synonyms not returning data

I tried to use 'get.synonyms' to retreive chemical descriptions.  My favorite test case:

rpubchem::get.synonyms(name = 'caffeine', quiet = FALSE)
data frame with 0 columns and 0 rows

I went into the function and found that the created 'url' was valid and had many synonyms.  the 'out' object was also full of synonyms.  The only thing I had to change was to change the last line from:
out
to:
return(out)
and the function now works to return the data.frame successfully.

sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 17134)

Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252    LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                           LC_TIME=English_United States.1252
attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base
other attached packages:
[1] data.table_1.12.6 XML_3.98-1.20     RCurl_1.95-4.12   bitops_1.0-6
loaded via a namespace (and not attached):
[1] zip_2.0.4         Rcpp_1.0.2        pillar_1.4.2      compiler_3.6.1    cellranger_1.1.0  forcats_0.4.0     base64enc_0.1-3
[8] iterators_1.0.12  tools_3.6.1       zeallot_0.1.0     tibble_2.1.3      pkgconfig_2.0.3   rlang_0.4.1       openxlsx_4.1.2
[15] rstudioapi_0.10   curl_4.2          parallel_3.6.1    haven_2.1.1       rio_0.5.16        stringr_1.4.0     vctrs_0.2.0
[22] hms_0.5.2         readxl_1.3.1      rpubchem_1.5.10   foreign_0.8-71    RJSONIO_1.3-1.3   carData_3.0-2     car_3.0-4
[29] magrittr_1.5      backports_1.1.5   itertools_0.1-3   abind_1.4-5       fingerprint_3.5.7 stringi_1.4.3     crayon_1.3.4

Could you put in a patch, which I can then merge?
On Tue, Nov 5, 2019 at 11:10 AM Corey Broeckling<EMAIL_ADDRESS>wrote:

I tried to use 'get.synonyms' to retreive chemical descriptions. My
favorite test case:
rpubchem::get.synonyms(name = 'caffeine', quiet = FALSE)
data frame with 0 columns and 0 rows
I went into the function and found that the created 'url' was valid and
had many synonyms. the 'out' object was also full of synonyms. The only
thing I had to change was to change the last line from:
out
to:
return(out)
and the function now works to return the data.frame successfully.
sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 17134)
Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United
States.1252 LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] data.table_1.12.6 XML_3.98-1.20 RCurl_1.95-4.12 bitops_1.0-6
loaded via a namespace (and not attached):
[1] zip_2.0.4 Rcpp_1.0.2 pillar_1.4.2 compiler_3.6.1 cellranger_1.1.0
forcats_0.4.0 base64enc_0.1-3
[8] iterators_1.0.12 tools_3.6.1 zeallot_0.1.0 tibble_2.1.3
pkgconfig_2.0.3 rlang_0.4.1 openxlsx_4.1.2
[15] rstudioapi_0.10 curl_4.2 parallel_3.6.1 haven_2.1.1 rio_0.5.16
stringr_1.4.0 vctrs_0.2.0
[22] hms_0.5.2 readxl_1.3.1 rpubchem_1.5.10 foreign_0.8-71 RJSONIO_1.3-1.3
carData_3.0-2 car_3.0-4
[29] magrittr_1.5 backports_1.1.5 itertools_0.1-3 abind_1.4-5
fingerprint_3.5.7 stringi_1.4.3 crayon_1.3.4
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/CDK-R/rpubchem/issues/1?email_source=notifications&email_token=AAAIMOIR44VYGI3GVQJ4TT3QSGLJBA5CNFSM4JJEJ76KYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HW5ZPVQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAIMOMHRWVJKLHEPZPFNTDQSGLJBANCNFSM4JJEJ76A
.

--
Rajarshi Guha | http://blog.rguha.net | @rguha https://twitter.com/rguha

I forked, edited, pushed to my github and created a pull request.  I haven't done this much - let me know if this works!!


provide css files as scss files too

please provide scss files. thanks.

For what? You can write your own theme with Sass.

:+1: There are these "Remodal's necessary styles" we'd have to recompile into SCSS/SASS.


Add new CFA analyst to CDCGov Github

What type of help do you need?

[ ] Question
[ ] New Repo
[ ] Delete Repo
[x ] User Membership (please make sure new members are familiar with the CDC open practices and set up their profile with name and org info to help people collaborate with them)
[ ] Other

Please describe how you'd like us to help.
I am a new data scientist in CDC/OD/CFA. Please add me to the CDCGov GitHub Organization.
Name: Theresa Sheets
CDC ID: utg8
GitHub ID: theresaSheets

Sent the invite, have fun! Will close this ticket once you have verified access to the organization.

Closing issue - haven't gotten a response; I believe this has been resolved.


Problem with BirrtPlanner

I see this error often when planning via Birrt:
[rrt.h:80 _InitPlan] no initial configurations
[rrt.h:354 PlanPath] BirrtPlanner::PlanPath - Error, planner not initialized
It is not consistent, i.e. sometimes we are able to plan just fine. When I manually move the arm to reset we seem to be fairly wrapped up, so it could be because the start configuration is near joint limit.

You can try switching back to CBiRRT or OMPL for our default randomized planner. I switched to the OpenRAVE BiRRT based on the input of @siddhss5 and @psigen. They found that the OpenRAVE BiRRT is much faster than OMPL's RRT-Connect.

I've found that this pair of errors generally means that the planner thinks
the initial configuration is violating a limit or in collision.
On Mon, Apr 6, 2015 at 9:29 PM, Michael Koval<EMAIL_ADDRESS>wrote:

You can try switching back to CBiRRT or OMPL for our default randomized
planner. I switched to the OpenRAVE BiRRT based on the input of @siddhss5
https://github.com/siddhss5 and @psigen https://github.com/psigen.
They found that the OpenRAVE BiRRT is much faster than OMPL's RRT-Connect.
—
Reply to this email directly or view it on GitHub
https://github.com/personalrobotics/prpy/issues/101#issuecomment-90306404
.

It could be the usual "padded joint limits" problem, like @jeking04 suggested, then. Maybe it's time to actually solve this properly...


Support in-kind donations

Add a link to Donations page to add in-kind donations: Name, email, avatar, amount, description.
It creates a Donation on the backend and adds to userGroup.
Note: you might need to generate sponsors and backers from Donations instead of Transactions, with this change.

From Slack:
gusaus 2:42 PM
Is there a way to have an in-kind sponsor (like a hosting company) show up as a sponsor?
2:43
if that makes sense :grinning:
nicobarreto 2:45 PM
@gusaus that’s a good question. I am not sure if we have that functionality yet. Although I can imagine it being used for co-working spaces.
piamancini 2:49 PM
@gusaus we don't support that, because it messes up the backers/sponsors sorting
2:49
we did at one point but we stopped for the moment.
gusaus 2:54 PM
@U0J6D6LV9 I thought that was an option previously - I’m trying to visualize how the sorting would be thrown off. If a company was providing #100/mo hosting, that would mess something up?
piamancini 2:55 PM
because we sort based on the contributions they make
2:55
that 100/month is not a transaction so we can't compute it
gusaus 2:57 PM
right - makes sense

we decided agains this as per @patcon's comment so closing the issue.


Update travis for updated command style of scan

Based on the following command running output:
sudo gem install scan
Fetching: scan-1.0.0.gem (100%)
Please use `fastlane scan` instead of `scan` from now on.
Successfully installed scan-1.0.0
Parsing documentation for scan-1.0.0
Installing ri documentation for scan-1.0.0
Done installing documentation for scan after 0 seconds
1 gem installed

Codecov Report

Merging #23 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #23   +/-   ##
=======================================
  Coverage   75.07%   75.07%
=======================================
  Files          18       18
  Lines         337      337
=======================================
  Hits          253      253
  Misses         84       84

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 ae13699...ba6269f. Read the comment docs.

Thanks for your PR 🎉


Prepare Codebook in RedHen Website for reference of Audio Tags

@brucearctor @turnermarkb Can you please take a look at the PR if the cookbook format is okay?

Living on a boat the next few days...  not likely to have a look for a bit

So there are potentially two types of coding/codebook:
(a) trying to make the file sizes smaller ...  ex: use just a small integer rather than a longer string of many characters.
(b) an extension of that, where even something like:
500,"Inside
501,"Inside
502,"Inside
What are the difference between each of these "inside"?  A longer description might be helpful, and if there isn't some form of known difference, why would they be treated differently ?
Also, related to format that you share ....  LOTS have an initial " double quotation mark, but not a second one.  Imagining, for a CSV, you might want the entire field to include double quotes ( beginning and end of string/word/words ) or else, I don't understand why you would use the leading double quote.

@brucearctor Sorry this was a mistake from my end. Can you please check if this is okay now ?

@brucearctor The latest version looks good, right ?

I didn't look at all the lines ... the description/text/word(s):  are they all sufficiently descriptive to identify [ potentially yes, but I don't know without looking at all closely ].

@brucearctor I have modified this based as you suggested in the meeting last day. Please refer to this PR.


Relogin functionality added

Any currently any 401 response redirects the user to the login page.
We still need to find a better practice on UX and UI code as well.

[test]

I wonder if calling /api/login/authorize directly instead of routing to the login page would be better approach. No need to click on login button for the user and even automated token re-issuing may work.

@alexeykazakov I thought the same, it's just am an approach to fixing the breakdown in production. Once we have the accepted behavior we can implement it the right way. What do you say?

https://github.com/fabric8io/fabric8-planner/issues/941

@sanbornsen, agreed.


esm support

Would very much like to just simply use (async) import from a CDN without bundling the code

FWIW - I forked and created https://www.npmjs.com/package/@bengreenier/sdp-transform for my needs, I'm no ESM expert but I think it's sufficient for most ESM use cases.

why didn't you just send a PR and stick to plain vanilla javascript and some jsDoc? i think typescript syntax is unnecessary, more complicated and require compiling, which is unnecessary, not the original code, so it's then also harder to debug.

I wanted my fork to be typescript 🤷♂ feel free to ignore it and/or do those things yourself.

@bengreenier does your fork have a release I could just download and import without NPM?

@bengreenier does your fork have a release I could just download and import without NPM?

Like a standalone GitHub release? Unfortunately it currently does not. Though I suppose you could grab the tarball from npm, same as you could for this original package. Maybe something like https://stackoverflow.com/questions/15035786/download-source-from-npm-without-installing-it would meet your needs?

The ESM support is required for this package to be compatible with the new Symfony's AssetMapper. I just tried to install a package depending on this one, and the installation failed because of the lack of the ESM support. This will be happening more and more often.


LinearOperator objects cannot be applied to sparse matrices

My issue is about how LinearOperator objects interact with sparse matrix classes (e.g. csc_matrix). Currently, operations like A @ B and A * B fall back on dot, which does input casting without checking for sparse matrix types. Here is the line where the casting happens:
https://github.com/scipy/scipy/blob/1e161716a5e5c827573b9b88aa790af1864dfb1d/scipy/sparse/linalg/interface.py#L412
The effect of this casting is that operations A @ B raise ValueErrors when B is a SciPy sparse matrix.
Reproducing code example:

import scipy.sparse as spar
import scipy.sparse.linalg as spla

I = spar.eye(5)  # any dimension will do
A = spla.aslinearoperator(I)
A @ I  # raises a ValueError

Error message:

Traceback (most recent call last):
  File "/home/riley/anaconda3/envs/dev36/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 3326, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-15-7d320c9e011f>", line 1, in <module>
    A @ I
  File "/home/riley/anaconda3/envs/dev36/lib/python3.6/site-packages/scipy/sparse/linalg/interface.py", line 426, in __matmul__
    return self.__mul__(other)
  File "/home/riley/anaconda3/envs/dev36/lib/python3.6/site-packages/scipy/sparse/linalg/interface.py", line 390, in __mul__
    return self.dot(x)
  File "/home/riley/anaconda3/envs/dev36/lib/python3.6/site-packages/scipy/sparse/linalg/interface.py", line 420, in dot
    % x)
ValueError: expected 1-d or 2-d array or matrix, got array(<5x5 sparse matrix of type '<class 'numpy.float64'>'
	with 5 stored elements (1 diagonals) in DIAgonal format>, dtype=object)

Scipy/Numpy/Python version information:
SciPy: 1.4.1.
NumPy: 1.17.1.
Python 3.6.7.

What would be the desired behavior here?

Silently returning a sparse matrix/array of the same type seems wrong because there's no promise it'll be actually sparse.
Wrapping the sparse matrix into aslinearoperator and returning a product seems like a good option, but I am not sure whether it's what the user wants.

I believe raising an informative error would be the best; do people agree?

Hi @akhmerov! Thanks for checking in on this. I think that if someone is using LinearOperator object A or B, then their most likely assumption will be that A @ B returns a LinearOperator whenever possible. Certainly, there are limitations where duck typing will only get you so far. But from a mathematical standpoint, a sparse matrix is a linear operator. Since SciPy's LinearOperator class is defined in scipy.sparse.linalg a user can reasonably expect that SciPy sparse matrices play nice with that class.
That said -- raising an informative error message would be okay, in my opinion. I'd just want the error to recommend a fix, like
ValueError : computing A @ B where one of (A, B) is a LinearOperator and the other of (A, B) is a sparse matrix.
If A is the sparse matrix, consider computing A_lo @ B where A_lo = scipy.sparse.linalg.aslinearoperator(A).
If B is the sparse matrix, consider computing A @ B_lo where B_lo = scipy.sparse.linalg.aslinearoperator(B).

Alright; happy to provide a more specific error message once my own #18061 editing the same code is accepted.

Please take a look at #18357


Simple markers won't show on map (Xamarin Forms)

I try add markers on map:
<map:MapView x:Name="Map"
                         LogoEnabled="False"
                         Annotations="{Binding Annotations}"
                         ZoomLevel="1"
                         ShowUserLocation="True"
                         UserLocation="{Binding UserLocation}"
                         VerticalOptions="FillAndExpand"
                         HorizontalOptions="FillAndExpand"/>

Annotations is an ObservableCollection. I fill it with random points
for (int i = 0; i < 25; i++)
                {
                    var lat = RandomExtension.NextDouble(rand, -90.0, 90.0);
                    var lon = RandomExtension.NextDouble(rand, -90.0, 90.0);

                    SymbolAnnotation point = new SymbolAnnotation()
                    {
                        IconColor = Color.Red,
                        Id = Guid.NewGuid().ToString(),
                        Coordinates = new LatLng(lat, lon),
                        IconSize = 5,
                        IsDraggable = true
                    };
                    Annotations.Add(point);
                }

But nothing is shows on the map. Break point shows, that Annotations property of map contains List of Annotations

If you are adding SymbolAnnotations, try replacing your Annotations Datatype as follows
public ObservableCollection<SymbolAnnotation> Annotations
        {
            get;
            set;
        }

@nakulLukan, @alzaburetz ,
To bind these items correctly, please assign Annotations property after style is loaded.
Please check out a sample here.
Let me know if it works.
Cheers.


Replace strings with enumerations

https://github.com/MrGrim48/gmod_unstuck/blob/d02dae13c027951dd3cfa9e9170a0280a2bbf6a5/lua/unstuck/sv_unstuck_table.lua#L22-L23
This will allow you to send less data while sending the same amount of information. This would also vastly increase your readability, as the name of the enumeration can explain it's effect, while "add" does not. Consider the following:
Unstuck.Enumerations = {
	Debug = {
		OPPERATION_AND = 1,
		NOUN_BOX = 2
	}
}

You can then do the following:
/* ... */
	net.Start( "Unstuck.Debug" )

	//net.WriteString( "add" )
	net.WriteInt( Unstuck.Enumerations.Debug.OPPERATION_ADD, 8 )

	//net.WriteString( "box" )
	net.WriteInt( Unstuck.Enumerations.Debug.NOUN_BOX , 8 )

	net.WriteVector( ply:GetPos()+minBound )
	net.WriteVector( ply:GetPos()+maxBound )
	net.WriteColor( Color(255,150,150) )
	net.Send( ply )
/* ... */

This will show to anyone reading your code that the two enumerations being sent work together. It also means you can send two identical values for different scenarios (eg maybe "add" could mean other things), while having them represented by different variables, allowing anyone reading the code not to have any doubt over which "add" is meant.

Added in latest update.


How to close that using back button

i am using this package in android. i wanted to close that modal on back button i am not able to do that.
i am already try to use backhandler but when my currency modal is open at that time this back trigger not response.
now how to manage this

you got the wrong repository, there is no modal here


Will the script work by using Docker version 1.10.2?

The newest docker version creates a cfg file under .docker/config.json, while the script searches the user information under .docker.cfg file.
I have to do migration of a V1 registry to a v2 registry by using the new client version. This script seems to use the old client.

At moment it does use an older version of the docker client.  However you can specify the login credentials for your user and it will perform the login to create the credential file.
I'd like to be able make the API version or docker client somewhat user selectable but I can't commit to a date to when I would be able to add it.

Yes but the credential file follows the format of the new client.

Are you running this via the Docker image or just running the script on your own?  The expected usage is to run inside of a container.  Since the docker image has the docker client version 1.6.2, it is able to support engines >=1.6.0.  Is there a specific reason why you are needing to use a newer client to talk to your engine while it is performing the migration?  The 1.6.2 client in the image can talk to a newer engine to be able to pull, retag, and push images.  Just trying to understand your use case to see what can be done to address the issue you're running into.

By using the script I am obtaining an error with curl, in particular
docker run  -it  -v /var/run/docker.sock:/var/run/docker.sock -e DOCKER_HUB=false -e V1_NO_LOGIN=true  -e V1_REGISTRY=registry1:443 -e V2_REGISTRY=registry2:443 docker/migrator
[INFO] Getting a list of images from docker.cloud.cnaf.infn.it:443
[ERROR] curl => API failure
[ERROR] Migration from v1 to v2 failed!
For this reason I have started trying it locally.
The pull from V1 can be performed without auth, while the push on V2 must be performed with auth.

OK, so as a test, just try to do a curl like this:
curl https://registry1:443/v1/search?q=
This is the first curl command that it tries to execute.  You should get JSON output back from the registry, for example:
# curl https://registry.core.dckrindy.io:443/v1/search?q=
{"num_results": 6, "query": "", "results": [{"description": null, "name": "library/nginx"}, {"description": null, "name": "library/hello-world"}, {"description": null, "name": "library/debian"}, {"description": null, "name": "mbentley/hello"}, {"description": null, "name": "mbentley/testssl"}, {"description": null, "name": "demo/docker-demo"}]}

If that works from your host, try to do the same command but from inside the migrator container just to make sure there isn't something screwy going on with being able to access the v1 from the container:
docker run -it --rm docker/migrator curl https://registry1:443/v1/search?q=
And just FYI, if you're just using SSL, you don't need to specify the port :443 as that is assumed but it shouldn't have an impact if you're just running the open source v1 and open source v2.  I've seen some issues where if you're using certain types of auth on a v2 that specifying the port will cause auth failures.

No I have obtained the following error:
curl: (60) SSL certificate problem: unable to get local issuer certificate
I think I have to specify some ssl information.

You might need to use the USE_INSECURE_CURL=true environment variable to get curl to ignore the cert that isn't valid.  I don't think I've added the ability for curl to be able to make use of non-trusted certs from the container.  Otherwise, the certs would need to be CA store inside the container.
You could do that by adding your CA cert into /etc/ssl/certs and running update-ca-certificates and then executing the migrator script.  A quick Dockerfile would make this work without additional changes needing to be made (removing someone creating a PR for this from your wait time):
FROM docker/migrator:latest
COPY mycacert.pem /etc/ssl/certs/mycacert.pem
RUN update-ca-certificates

And then run your resulting image.


Retry failed submissions

Connections to Tachi from some parts of the world are flaky and submissions might silently fail. Add an exponential backoff system to help with this, and if all fails, dump the import to a local JSON file.

https://github.com/beerpiss/saekawa/commit/d35226675971dca88949b6dc2db4da323e84e287


Scrollbars barely visible in light theme

When I use the Material light UI with the Material Syntax, the scrollbars are barely visible and hard to find.

yes, I can't find the scrollbars in dark theme too!

Well, I'll increase contrast on those.


tap_ok 1 is an odd choice

First, let me say that I am big fan of this effort; its the the kind of minimalism that takes skill and creativity to pull off.  "json correctness"

Am I missing something? Again, I do want to stress that I appreciate your work, so apologies for the frustration. Why is an exit status of 0, not considered a valid success? Cheers

Cheers dude! I use this in almost all of my projects, work and otherwise, so the change is much appreciated.


Non-printable character in number format string

How can i fix it?

Under what conditions do you see this? Have you edited or customized any message files? using a different language?
As far as I know there are no non-standard spaces or commas in any of the builtin files, and I have not seen anyone else report this.

My server is in Russian, but I haven't changed anything in the plugin.

Facing the same problem in new server without any plugins.

I use the 1.18.2 paper

Are you using the Russian localizations (/mconfig language RU)?
Are you using a resource pack with a custom font that is missing a comma?

No, i have default settings without changes.
Yes, i using a russian version on my another server but i tested in english version and i got i same problem.

Are you using a resource pack? If so can you turn it off? That doesn't look like the standard MC font.

Without resource pack.

Can you turn off "Force Unicode Font"?
It really should just be a comma, I have no idea why it would be missing from your font. I will double-check myself in-game when I can.

Still same.

Thank you

Can you turn off "Force Unicode Font"?
It really should just be a comma, I have no idea why it would be missing from your font. I will double-check myself in-game when I can.

The format strings are not currently customizable but I will add that as a feature in the next dev build.

Thank you

What version of plugin and paper u have on your demo.elmakers.com?
Cuz there is no problem.

Yes, exactly the same...

Some encoding problem? Idk ..

You said you tested with no plugins? I could see ProtocolLib or ViaVersion or something that messes at the protocol level affecting this, but otherwise I have no way to know. This is between your server and your client, I'm just putting a string with a comma in it.
I think your best bet is to remove the comma in the next dev build, unless you want to keep trying to figure this out.

Oof I just spent some time implementing this but apparently I have already done it, in a different way XD
Try /mconfig messages numbers.integer #

Hahaha you crazy maaaan

Oof I just spent some time implementing this but apparently I have already done it, in a different way XD
Try /mconfig messages numbers.integer #

Will this affect the display of other digits?

Anything considered a currency, yes, but I expect it will be the same problem anywhere. There's no real reason why a comma should work in one place but not any other.
But in the next dev build you could make this change specifically for SP if it ends up causing you problems.

Anything considered a currency, yes, but I expect it will be the same problem anywhere. There's no real reason why a comma should work in one place but not any other.
But in the next dev build you could make this change specifically for SP if it ends up causing you problems.

Thank you, i'll wait for the next dev build!

That is building now:
https://jenkins.elmakers.com/job/MagicPlugin/4196/
But I suggest trying to command I pasted above if you haven't already. I expect you'll want to fix any number displays from the plugin, not just SP.

That is building now:
https://jenkins.elmakers.com/job/MagicPlugin/4196/
But I suggest trying to command I pasted above if you haven't already. I expect you'll want to fix any number displays from the plugin, not just SP.

Wow, already?
Yes, i've tried and it worked!

:C

R.I.P.
Fix hopefully building now
https://jenkins.elmakers.com/job/MagicPlugin/4197/

Yeeey!

Okay! Now.. Where i can customize currency?

Thank you, i've found it;=)

LOL
Problem fixed when i loaded up my server on my Linux VDS and no issues...

Btw, another question off topic.
Is there some placeholders for Magic Arena? Or some integration with holograms?

No, there is not

Hi again! Is there some way i can fix it? Thank you a lot!

Fix what? MagicArenas will not be getting any new features.

Nothing.. I thought about if there was some way i could show leaderboard from Magic Arenas in holograms..


Fix issue #376

Coverage remained the same at 100.0% when pulling 90e80ab5f892dca7493207bdad8b273d8534ecc6 on issue_376 into 6530fafa5d11310222020c459fa8b95ab652bfb0 on master.


Add apng animation support

Apply apng patch to PNG lib, from here: https://github.com/rickytan/libpng-apng
Extend png loader functionality to load animated apng files. If number of frames is not dividable by directions, load as single animation.
PNG_BLEND_OP_OVER is not supported, warn if used, other blending and frame disposals are implemented.

You sure it's needed? Because engine already has .fofrm format, where you describing FPS, frames count and frame names as file paths.

You sure it's needed? Because engine already has .fofrm format, where you describing FPS, frames count and frame names as file paths.

Ah, I missed that somehow :P I guess, main advantage is that it's easier to view apng, as most modern browsers and image viewers support it. Can view directly on github for example.

Okay, I apply code soon, need only make some code cleanup, you use too few empty line breaks.

And add information about APNG to README.md, ThirdParty/README.md

PNG/APNG - png/apng image loader
PNG/APNG - libpng1616 libpng-apng

Run clang-format
https://github.com/cvet/fonline/actions/runs/9620456707/job/26548371248

cd .../Source
clang-format -i Applications/. Client/. Common/. Common/AngelScriptExt/. Server/. Tools/. Scripting/. Frontend/. Singleplayer/. Scripting/AngelScript/.fos Tests/.*

And use clang-format 15.

Can add check for directions number via tEXt field if you think it's better.


Wrong translation key for rules

This line https://github.com/dry-rb/dry-validation/blob/58699acf23d3c101e01662a8633197ca39b68696/lib/dry/validation/messages/abstract.rb#L58 generates translation keys like %{locale}.rules.name for Dry ::Validation::Messages::I18n. And can't find translation with this key. It looks like we should have translation.yml like this
en:
  "%{locale}":
    rules:
      name: Name

For Dry ::Validation::Messages::YAML it works fine, because here we have key % { locale: :en}
https://github.com/dry-rb/dry-validation/blob/58699acf23d3c101e01662a8633197ca39b68696/lib/dry/validation/messages/yaml.rb#L38
So, we need to fix this for Messages::I18n
Also we need to provide ability use namespaces for rules

This was fixed in dry-schema, thus it'll be fixed here in 1.0.0.


Fix Ledger Nano X support for sending transactions

We've gotten reports in Discord that users can authenticate to the Stacks Wallet v4.0.2 with Ledger Nano X but cannot subsequently send transactions successfully.
Ledger's redeployment of the Stacks app for provider 1 instead of 4 doesn't appear to have resolved this issue.

Sending hangs for me upon confirming the transaction on my Ledger Nano X with Stacks Wallet v4.0.2 at this point in the experience:

Sending hangs for me upon confirming the transaction on my Ledger Nano X with Stacks Wallet v4.0.2 at this point in the experience:

As discussed in Slack and to facilitate debugging on our side:

The Ledger app itself is not hanging.. it remains active, however when the user clicks "Accept" there is no action, the click seems to be ignored.
If the user clicks reject. The app responds correctly.

As discussed in Slack and to facilitate debugging on our side:

The Ledger app itself is not hanging.. it remains active, however when the user clicks "Accept" there is no action, the click seems to be ignored.
If the user clicks reject. The app responds correctly.


Problems getting GDAXTradeHistoryParams

I'm trying to list historical trades but I'm having issues with the call to createTradeHistoryParams(),  it returns null:
ExchangeSpecification specification = new ExchangeSpecification(GDAXExchange.class.getName());
specification.setApiKey(apiKey);
specification.setSecretKey(apiSecret);
specification.setExchangeSpecificParametersItem("passphrase", passphrase);
coinbase = ExchangeFactory.INSTANCE.createExchange(specification);
coinbase.applySpecification(specification);
GDAXTradeHistoryParams params = (GDAXTradeHistoryParams) coinbase.getPollingTradeService().createTradeHistoryParams();
So the params here is null.

Hey man did you ever figure this out?
I am running into the same issue.
The createTradeHistoryParams() just returns null

Figured it out for anyone else.
The code below will get your trades and output your very last one.
You have to set the params.setOrderID to something otherwise it will complain about being null.
GDAXTradeHistoryParams params = new GDAXTradeHistoryParams();
params.setOrderId("");
UserTrades trades = gdaxTradeService.getTradeHistory(params);
System.out.println(trades.getTrades().get(trades.getTrades().size()-1));

yes exactly, that's what i ended up doing, sorry i didn't follow up here. so eventually my code became:
            PollingTradeService tradeService = coinbase.getPollingTradeService();
            GDAXTradeHistoryParams params = new GDAXTradeHistoryParams();
            params.setOrderId("-1");

            GDAXFill[] fills = ((GDAXTradeService) tradeService).getCoinbaseExFills(params);
            if (fills != null) {
                boolean atLeastOne = false;
                for (int i = 0; i < fills.length; i++) {
                    GDAXFill fill = fills[i];
                    String tradeId = fill.getTradeId();
                    if (!fillMap.containsKey(tradeId)) {
                        atLeastOne = true;
                        GFill gfill = GFill.from(fill);
                        fillMap.put(tradeId, gfill);
                        String orderId = fill.getOrderId();
                        List<GFill> partials = new ArrayList<>();
                        if (orderIdMap.containsKey(orderId)) {
                            partials = orderIdMap.get(orderId);
                        }
                        partials.add(gfill);
                        orderIdMap.put(orderId, partials);

                        Map<String, Object> r = new HashMap<>();
                        r.put("ts", Instant.now());
                        r.put("gfill", gfill);
                        mapdb.add(tradeId, "r", r);
                    }
                }
                logger.info("fillMap: " + fillMap);
                logger.info("orderIdMap: " + orderIdMap);
                if (atLeastOne) {
                    logger.info("Persist to storage");
                    mapdb.commit();
                }
            }

@unk1911 where do you get the passphrase from?

When you create the API key. The web page asks for a passphrase.

Hey guys, I don't mean to hijack this thread but how exactly are you getting the tick history from GDAX? I am pretty stumped as the page retrieve function has not been set up.

Are you referring to the Get Historic Rates query here? If so, then it does not fit into the common XChange set of method calls, you'd have to implement and access it directly from GDAXMarketDataServiceRaw (it is not currently there).

@madwicket I get it by querying the trades and creating my own tickers from that. Otherwise you could follow @ww3456 's advice.

I have started on @ww3456 advice but have hit a snag and was wondering if I could get some help?
I have added this to GDAX.java
@GET
@Path("products/{baseCurrency}-{targetCurrency}/candles?start={startTime}&end={endTime}&granularity={granularityInSecs}")
GDAXHistoricRates[] getHistoricRates(@PathParam("baseCurrency") String baseCurrency, @PathParam("targetCurrency") String targetCurrency,
@PathParam("startTime") String startTime, @PathParam("endTime") String endTime,
@PathParam("granularityInSecs") String granularityInSecs)
throws IOException;
Added a class of GDAXHistoricRates:
package org.knowm.xchange.gdax.dto.marketdata;
import java.math.BigDecimal;
/**

Created by MadWicket on 7/1/2017.
*/
public class GDAXHistoricRates {

private final Long time;
private final BigDecimal low;
private final BigDecimal high;
private final BigDecimal open;
private final BigDecimal close;
private final BigDecimal volume;
/*  public GDAXHistoricRates(@JsonProperty("time") String time, @JsonProperty("low") BigDecimal low,
@JsonProperty("high") BigDecimal high, @JsonProperty("open") BigDecimal open,
@JsonProperty("close") BigDecimal close, @JsonProperty("volume") BigDecimal volume) {*/
public GDAXHistoricRates(Long time,BigDecimal low, BigDecimal high, BigDecimal open, BigDecimal close, BigDecimal volume) {
this.time = time;
this.low = low;
this.high = high;
this.open = open;
this.close = close;
this.volume = volume;
}
public Long getTime() {
return time;
}
public BigDecimal getLow() {
return low;
}
public BigDecimal getHigh() {
return high;
}
public BigDecimal getOpen() {
return open;
}
public BigDecimal getClose() {
return close;
}
public BigDecimal getVolume() {
return volume;
}
@Override
public String toString() {
return "GDAXHistoricRates [time=" + time + ", low=" + low + ", high=" + high + ", open=" + open + ", close=" + close + ", volume=" + volume + "]";
}
}
Also have added this function to GDAXMarketServiceRaw
public GDAXHistoricRates[] getHistoricRates(CurrencyPair currencyPair, String startTime, String endTime, String granularityInSecs) throws IOException {
return this.coinbaseEx.getHistoricRates(currencyPair.base.getCurrencyCode(), currencyPair.counter.getCurrencyCode(), startTime, endTime, granularityInSecs);
}
When I test the code with:
CurrencyPair btcUSDPair = new CurrencyPair(Currency.BTC, Currency.USD);
String startTime = "2017-07-01T10:00:00.000000-0500";
String endTime = "2017-07-01T11:00:00.000000-0500";
String granularity = "60";
GDAXHistoricRates[] rates = gdaxMarketDataServiceRaw.getHistoricRates(btcUSDPair, startTime, endTime, granularity);
I am getting an error:
Exception in thread "main" si.mazi.rescu.HttpStatusIOException: Can not deserialize instance of org.knowm.xchange.gdax.dto.marketdata.GDAXHistoricRates out of START_ARRAY token
at [Source: [[1498924740,2465.98,2468.06,2465.98,2467.83,1.51111634],[1498924680,2465,2470.49,2468.6,2465,22.22688688000002],[1498924620,2467.58,2472.3,2472.3,2467.58,3.8412693099999995],[1498924560,2471.01,2473.81,2473.81,2471.04,2.601899999999999],[1498924500,2472.8,2474.02,2472.8,2473.76,4.348945669999999],[1498924440,2471.17,2474.99,2474.98,2471.33,6.413041009999999],[1498924380,2472.06,2475,2472.06,2475,0.95145589],[1498924320,2469.99,2472.06,2469.99,2472.06,2.777323000000001],[1498924260,2469.98,2469.99,2469.99,2469.98,3.27080923],[1498924200,2469.99,2469.99,2469.99,2469.99,3.73715842],[1498924140,2469.98,2469.98,2469.98,2469.98,0.4433263],[1498924080,2467.52,2469.98,2467.78,2469.98,6.6533103],[1498924020,2467.52,2469.98,2469.44,2467.52,4.722014950000001],[1498923960,2467.77,2469.99,2469.02,2467.83,18.09031563],[1498923900,2468.95,2469.99,2469.99,2468.95,20.984654690000003],[1498923840,2469.23,2469.99,2469.23,2469.95,0.80937389],[1498923780,2468.61,2469.97,2468.61,2468.95,2.7652663399999997],[1498923720,2468.61,2468.61,2468.61,2468.61,0.8389],[1498923660,2468.61,2469,2469,2468.61,2.6861],[1498923600,2468.85,2469.01,2468.86,2469,0.6688000000000001],[1498923540,2469.01,2469.98,2469.98,2469.01,1.16738877],[1498923480,2469.29,2469.99,2469.98,2469.98,1.82293339],[1498923420,2467.99,2469.99,2469.97,2469.99,2.3856853399999993],[1498923360,2468.74,2469.99,2469.44,2469.99,1.83640219],[1498923300,2468.12,2469.99,2468.99,2468.12,9.15815478],[1498923240,2465.32,2469,2468.89,2468.99,1.97067207],[1498923180,2468.97,2469.11,2469.11,2468.99,0.75413867],[1498923120,2465.21,2469.11,2466.58,2469.07,13.527611269999996],[1498923060,2466.57,2466.58,2466.57,2466.58,6.374597879999998],[1498923000,2465.01,2466.57,2465.39,2466.57,3.5704083599999996],[1498922940,2465.32,2465.47,2465.46,2465.39,5.396296830000001],[1498922880,2464.89,2465.47,2465.24,2465.47,8.66986411],[1498922820,2463.98,2465.96,2465.56,2465.24,4.514513849999999],[1498922760,2463.99,2466.45,2465.24,2465.73,2.73812368],[1498922700,2463.18,2465.22,2463.18,2465.22,1.7727281],[1498922640,2460,2464.28,2463.09,2464.05,4.078915359999999],[1498922580,2461.99,2464.28,2464.24,2464.28,3.3786699499999986],[1498922520,2464.25,2464.27,2464.27,2464.25,2.26559554],[1498922460,2464.07,2465.45,2464.07,2464.28,2.09086203],[1498922400,2461.93,2464.19,2463.54,2464.1,2.84171432],[1498922340,2461.16,2464.42,2464.42,2463.55,4.548074169999997],[1498922280,2458.24,2466.64,2458.24,2464.44,6.322822399999999],[1498922220,2455.34,2458.24,2455.4,2458.19,4.9823014799999985],[1498922160,2455.28,2455.92,2455.9,2455.28,1.33220846],[1498922100,2455.16,2456.99,2455.88,2455.28,2.08494906],[1498922040,2454.65,2455.87,2455.58,2455.85,3.1533982600000003],[1498921980,2454.65,2455.88,2455.88,2454.65,8.257270729999998],[1498921920,2454.65,2455.88,2454.65,2455.88,2.8405079300000002],[1498921860,2454.32,2454.66,2454.32,2454.66,1.5852210500000001],[1498921800,2453.36,2454.62,2453.37,2453.36,2.6746598600000002],[1498921740,2452.93,2454.59,2454.57,2453.45,2.8144810200000006],[1498921680,2454.87,2455.88,2454.87,2455.46,0.7601],[1498921620,2454.47,2454.71,2454.47,2454.68,3.2206431899999997],[1498921560,2454.4,2454.68,2454.4,2454.52,0.94935581],[1498921500,2454.55,2455.8,2455.8,2454.55,0.47332071000000003],[1498921440,2451.51,2455.77,2454.32,2455.77,3.41248868],[1498921380,2454.66,2455.85,2454.66,2455.85,1.72702815],[1498921320,2454.11,2454.66,2454.11,2454.64,2.8339],[1498921260,2450,2454.1,2452.64,2454.1,9.362184749999996],[1498921200,2450.76,2459.35,2459.35,2450.76,22.831026350000005]]; line: 1, column: 2] (through reference chain: Object[][0])
at si.mazi.rescu.ResponseReader.read(ResponseReader.java:104)
at si.mazi.rescu.RestInvocationHandler.mapInvocationResult(RestInvocationHandler.java:169)
at si.mazi.rescu.RestInvocationHandler.receiveAndMap(RestInvocationHandler.java:157)
at si.mazi.rescu.RestInvocationHandler.invoke(RestInvocationHandler.java:120)
at com.sun.proxy.$Proxy11.getHistoricRates(Unknown Source)
at org.knowm.xchange.gdax.service.GDAXMarketDataServiceRaw.getHistoricRates(GDAXMarketDataServiceRaw.java:83)
at org.knowm.xchange.gdax.GDAXMain.main(GDAXMain.java:72)
So I can see that it is reaching out and getting the data but for some reason it is not deserializing the data could I possibly get some tips from the pro's?

https://github.com/timmolter/XChange/issues/1580


removeSound(value) wont remove sound

This function is placeholder right now. Looks like somebody forgot to add it(oops)

Will be fixed in 1.1.0


You can run the TCAV example on the colab notebook

You can run the TCAV example on this colab. solves #42
It helps to understand the functionality of TCAV and data to provide.
Thanks

@googlebot I signed it!

Thanks for this @mugheesahmad ! We'll merge it in, and may possibly make some small tweaks in follow-up PRs or link to it from the readme.


Update index.js

Editing the header

👷 Deploy Preview for fanciful-pothos-5122bc processing.

Name
Link

🔨 Latest commit
9928839a134ddf2fd5a95feebe99ec0943f9f9d8

🔍 Latest deploy log
https://app.netlify.com/sites/fanciful-pothos-5122bc/deploys/65440ed8f500270008d17c5a


Hold Notes Issue

Describe your bug here.
Mind you, if you are modding, please try testing your bug in a clean version of the engine instead, this ensures the bug is actually caused by the engine itself.
After updating to the latest version, something has been weird, whenever I press hold notes and hold onto them my score is not extending and when I miss one thing in the hold note it wont count a miss again until next hold note
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Lua
Which branch of the engine are you using?
Latest (main)
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
NOOOOOOOOOOOOOOOOOOOOOOO

Describe your bug here.
Mind you, if you are modding, please try testing your bug in a clean version of the engine instead, this ensures the bug is actually caused by the engine itself.
After updating to the latest version, something has been weird, whenever I press hold notes and hold onto them my score is not extending and when I miss one thing in the hold note it wont count a miss again until next hold note
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Lua
Which branch of the engine are you using?
Latest (main)
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
NOOOOOOOOOOOOOOOOOOOOOOO

This is not a bug! It's actually a new gameplay option, if you want to disable it, turn this off at the end of the gameplay options:

Ohhhhhhhh
On Fri, Dec 22, 2023 at 5:55 PM ShadowMario @.***>
wrote:

Describe your bug here.
Mind you, if you are modding, please try testing your bug in a clean
version of the engine instead, this ensures the bug is actually caused by
the engine itself.
After updating to the latest version, something has been weird, whenever I
press hold notes and hold onto them my score is not extending and when I
miss one thing in the hold note it wont count a miss again until next hold
note
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Lua
Which branch of the engine are you using?
Latest (main)
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your
changes.
NOOOOOOOOOOOOOOOOOOOOOOO
This is not a bug! It's actually a new gameplay option, if you want to
disable it, turn this off at the end of the gameplay options:
image.png (view on web)
https://github.com/ShadowMario/FNF-PsychEngine/assets/44785097/8b801101-0ea1-4296-a1b9-7e549994dfa6
—
Reply to this email directly, view it on GitHub
https://github.com/ShadowMario/FNF-PsychEngine/issues/13818#issuecomment-1868117331,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYXIAFY4P7IGLKOG3BSDT3DYKYFWTAVCNFSM6AAAAABBAJ7HYKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRYGEYTOMZTGE
.
You are receiving this because you authored the thread.Message ID:
@.***>

This did not solve my problem, Sustain notes still doesen't add to my HP as it did in older versions


0 0 0/1 1/1 * ? * fails

User mausoma<EMAIL_ADDRESS>sends the following message to the owners of Package 'CronExpressionDescriptor'.

Hi, when I generate a cron via http://www.cronmaker.com/ e.g .1x per hour, I can use it in quartz. It is: 0 0 0/1 1/1 * ?  Expression must not have more than 7 parts."

Tested on version 1.18 and 0 0 0/1 1/1 * ? * outputs:

Every hour


Naming mismatch "Data Management zone" vs "Data Management Landing zone"

According to https://github.com/Azure/data-management-zone it is called "Data Management Zone".
In this article it is refereed to as "Data Management landing zone" please make it consistent.

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

ID: ff0d1a85-bf37-c00c-59bd-c468ea36d04a
Version Independent ID: 5b40741a-0064-3718-0a55-018ec4d57f50
Content: Introduction to Data management and analytics scenario - Cloud Adoption Framework
Content Source: docs/scenarios/data-management/enterprise-scale-landing-zone.md
Service: cloud-adoption-framework
Sub-service: scenario
GitHub Login: @mboswell
Microsoft Alias: brblanch

Fixed in PR2869... All docs will be changes from Data Management Zone to Data Management Landing Zone to conform to CAF that a Data Management Zone is a type of landing zone.


Add comments

It is strongly required to add comments! And can be modified and saved!

Add explanation

You want to add comments to the decompiled code using jadx-gui?

This feature already requested at #359 with a detailed description, so I close this as duplicate.

@skylot What about comments on the java code in jadx-gui? That would be nice too, also the possibility to change variable names that are declared inside methods


Add WebAssembly demo

Live demo
Inspired by @nitroxis's WebAssembly demo (https://gitlab.com/nitroxis/jxl-wasm). cc #58

Working:

Loading from the same origin, via Service Worker
Loading from local filesystem
ICC and CICP (which means HDR images are working)

Not working:

Animation
Color management on Firefox

We can force render to sRGB on Firefox, but it's not implemented yet

Some exotic images which may overflow call stack

Perhaps it might be better to create a demos/... folder for demos, another demo could potentially be image-rs interop showcase.

image-rs interop is Rust code, so it can be made as an example binary (inside examples/).

I decided to move web demo into separate repo. I think there's no need to keep this in this repo, since it's quite different from other code, and I felt it's difficult to manage another package manager and lockfile here.
The web demo repository will be uploaded shortly after merging this PR.


Accuracy of saved waveform

Hello,
I'm saving the peaks as JSON -

wavesurfer.on('waveform-ready', function () {
            container.children('.loader').css('width', '0%');
            container.css('background-image', 'none');

            // cache Waveform
            var length = 500;
            var start = 0;
            var end = 500;

            // save Peaks if not exist
            if (!peaks) {

              // save Peaks
              // savePeaks(fileId, wavesurfer.backend.getPeaks(length, start, end));

              // PCM
              var pcmData = wavesurfer.exportPCM(length, 4000, true, start);
              savePeaks(fileId, JSON.parse(pcmData));

            }

          });

Unfortunately the saved waveform is not as accurate as the one which is generated on the fly -
look here:
https://imgur.com/a/RyBVtsS
How ca this be fixed ? There seems to be no parameter ?
Please make sure you provide the following information (if applicable):
Wavesurfer.js version(s):
wavesurfer.js 2.0.5
Browser version(s):
all

Hi @peerfischer ,
the code in ExportPCM contain this line :
accuracy = accuracy || 10000
var arr = [].map.call(peaks, function (val) {                 return Math.round(val * accuracy) / accuracy;             });
You must more increase your accuracy value, peaks sometime contain value with a lot of decimal.
Or perhaps make a new PR to no apply it when it's egal 0 (div 0 is not tested) ?
I hope this can help you

Hello, thanks for thisn hint ! Unfortunately I can set the accurany parameter to any value - it doesnt change anything. I tried values from 10000 - 200000 ?

OK but peaks value look like 0.24094337224960327
with 200000 you have 0.240945
No great difference, but if all value are similar you lots some accurancy. Please, try with<PHONE_NUMBER>00000000 ! and tell us

Hello,
even this setting seems to change nothing - the saved waveform is much less accurate and differs from the inital one. Peal values in JSON seem to be correct like "-0.06634521484375" - perhaps there are some values missing?

I count round about 480 peak values for a track of 1 minute...

Yes perhaps, use the same length to check. See on 'drawBuffer' function witch width is use.

wavesurfer.on('waveform-ready', function () {

    var length = 500;
    var start = 0;
    var end = 500;

    var nominalWidth = Math.round(wavesurfer.getDuration() * wavesurfer.params.minPxPerSec * wavesurfer.params.pixelRatio);

    var pcmData = [wavesurfer.exportPCM(nominalWidth,](url)<PHONE_NUMBER>00000000, true, start);
    savePeaks(fileId, JSON.parse(pcmData));

});

If your save the peaks with the setup from the drawbuffer function ("nominalWidth"), the cached Waveform doesn't fit into the canvas. It is longer than the waveform on the initial loading.
If I save with a fixed lenght value of 500, the cached Waveform fits in, but looks different from the initial loading.

Is it possible to adjust the settings in order that the waveforms look the same?

@pmichaelis , @peerfischer
You have right, ExportPCM don't get the same peaks of the load process without peaks.
To have the same wave, with the same peaks, call the getPeaks function on the backend like this
var pcmData = '[' + wavesurfer.backend.getPeaks(500, 0, 500) + ']';
It's seem to work for me.
Could you test it ?

Hey, thanks for the quick reply.
I was testing with getPeaks before, but couldn't optimize. The save mechanism seems to work, but still there a huge visual differences:

@pmichaelis , can you post your code create wave part with your parameters ?

Hey, thanks!
This is the way I am saving the waveform. I inserted the "getPeaks Advice" form you, yesterday.
// wavesurfer waveform ready
wavesurfer.on('waveform-ready', function () {
container.children('.loader').css('width', '0%');
container.css('background-image', 'none');
// cache Waveform
var length = 500;
var start = 0;
var end = 500;

var nominalWidth = Math.round(wavesurfer.getDuration() * wavesurfer.params.minPxPerSec * wavesurfer.params.pixelRatio);

// save Peaks if not exist
if (!peaks) {

    // PCM
    // exportPCM(length, accuracy, noWindow, start)
    // var pcmData = wavesurfer.exportPCM(length,<PHONE_NUMBER>00000000, true, start);
    var pcmData = '[' + wavesurfer.backend.getPeaks(500, 0, 500) + ']';
    savePeaks(fileId, JSON.parse(pcmData));

}

});

Yes, but the wavesurfer = WaveSurfer.create( ......)

Ah, ok,
wavesurfer = WaveSurfer.create({
    container: '#' + dataId,
    waveColor: '#3aa3d9',
    progressColor: '#3aa3d9',
    hideScrollbar: true,
    backend: 'MediaElement',
    fillParent: true,
    scrollParent: false
});

Sorry, I don't have any more idea. Can you check if your lenght = your dataId container.width = end ?

Ok, thanks for your help so far. I'll check on that. I think this might be a good hint.

It's not an accuracy issue, but it's a number of peaks issue that you need to resolve the size for your visual difference.
If you really want the same visual aspect, you need to have same width and same number of peaks (813 in your case I suppose). Otherwise, I thinks you need to use pixelRatio to drawn all peaks generate on the render wave picture.
It seem difficult to have always same visual aspect on responsive screen where width can change ! The only way can be to have a screenshot, than it's look like a wavesurfer but it's not a wavesurfer ....
I hope you'll can find a solution.

Hmm, having the same problem – in the year 2020 ;-)

Therefore exportPCM still works not as it should be?!
Or do you found a solution, @peerfischer?
Thanks a lot – two years after...

Year 2021 here. Still looking for a solution...

I was able to address this by adjusting the length parameter.
If you use scrollParent: true, the length of the array likely needs to be much larger than 1024.
This worked for me:
const pcm = await wavesurfer.exportPCM(wavesurfer.drawer.width, 10000, true, 0)


[WIP] Lie groups and actions

I've started the implementation of Lie groups and actions, since the previous PR (#25) is a bit stale and I think too big to finish in one go. The main part of the functionality that I would like to have in this PR is mostly done. The code is based on @sethaxen 's code from PR #25 and my earlier attempts at providing an interface for Lie group actions.
A few things to consider:

I've encountered at least one useful monoidal action with Riemannian geometry on a manifold so I'm not totally sure the "group" terminology is perfect.
I'm going to add the translation action here.
translate_diff might be important enough to include here, I'm not sure.
Names translate and Identity might be a little too generic to be used here.
I'll add more tests.

Nice start at first glance. Can we have a symbol for the group action on the manifold, for example ⊕, ⊗ or something like that? I would be in favour of that for readability.

What would actually be the (two) arguments for such a symbol? apply_action has three arguments.

Hm, then apply_action is not the thing I have in mind. To be more precise, for example for the Rotations the group action is concatenation of rotations  or their matrix multipilcation x*yfor short. Not all group actions might have such a nice form so I would like to have a function ⊕(x,y) for the Lie group action like the one just explained.

Do you maybe have compose_left in mind? It also has three argument anyway.
What are x and y in ⊕(x,y)? They can't be just any arrays, we wouldn't know what they represent. Do you want a wrapper/decorator for group elements?

They are points on a manifold, so group elements for Lie groups. the group operation of the lie group is what I want to ⊕

But how do I tell if two 2x2 matrices are from the rotation group or the translation group for R^{2x2}? The group operation is different in both cases.

Ah, well then I was again too stuck in my typed points. You're right – without typed points it's not possible, sad, I would've really liked above syntax.

I think this PR is feature-complete after these recent changes. New features can be added in other PRs. I'll just add some tests to improve the coverage.

What's the long-term plan for supporting right actions? I assume by existence and naming of LeftAction and RightAction there's a plan for AbstractGroupAction to support some typing by direction of action. What if we had AbstractGroupAction{TD<: ActionDirection}?
For TranslationAction, the type parameter can be ignored.
In general, left and right actions can be converted into one another using the inverse. Because the matrix groups all have canonical left actions, I think it makes the most sense to define the default right action in terms of the left.
Pirating the notation for left translation, the left and right actions can be written with their associative properties as
\begin{align}
L_h (L_g (x)) &= h \cdot (g \cdot x) = (h \circ g) \cdot x = L_{h \circ g} (x)\\
R_h (R_g (x)) &= (x \cdot g) \cdot h = x \cdot (g \circ h) = R_{g \circ h} (x)
\end{align}

i.e. applying successive left actions has the same affect as applying successive left translations to group elements and then applying the resulting action, while applying right actions has the same effect but for right translations. We can satisfy the latter property by defining the default right action as the inverse left action of the element, i.e. $R_g (x) = L_{g^{-1}} (x)$. Then,
R_h (R_g (x)) = h^{-1} \cdot (g^{-1} \cdot x) = (h^{-1} \circ g^{-1}) \cdot x = (g \circ h)^{-1} \cdot x = R_{g \circ h)} (x),

and we satisfy the necessary associativity.
Incidentally, for RotationAction in kinematics this is the difference between intrinsic/extrinsic rotations or body-fixed/space-fixed reference frames. If I define a sequence of rotations of a frame F with respect to some global frame O, then they compose by left translation and act via the left action on F. The same sequence of rotations expressed wrt F compose by right translation and act via the kind of right action defined here.

What's the long-term plan for supporting right actions? I assume by existence and naming of LeftAction and RightAction there's a plan for AbstractGroupAction to support some typing by direction of action. What if we had AbstractGroupAction{TD<: ActionDirection}?

Good question, I didn't think about it that much. I like the idea of a type parameter. We also don't currently have action composition and it's certainly necessary for that. I'll implement it in this PR.

I've added composition of actions that respects action direction.

I like the composition of actions!
I think as implemented (with action as a type parameter of AbstractGroupAction), it might make it a bit awkward to define canonical right actions in terms of left (which I think we should have): e.g.
switch_direction(::LeftAction) = RightAction()
switch_direction(::RightAction) = LeftAction()

function switch_direction(A::RotationAction{TM,TSO,TAD}) where {TM,TSO,TAD}
    return RotationAction(A.M, A.SOn, switch_direction(TAD()))
end

function apply!(A::AbstractGroupAction{<:RightAction}, y, x, a)
    G = base_group(A)
    apply!(swap_direction(A), y, x, inv(G, a))
    return y
end

This would require a switch_direction implementation for every action that just switches that type parameter. But the action direction as a type is necessary for composition of actions.

I've pushed some changes regarding left/right rotation actions. I don't really want to go far in this direction, I've only used left actions. BTW, I'm not sure the canonical right action is particularly useful here.

For rotations multiplication by rotation matrix from the right and the canonical right action are not the same thing IIUC

For rotations multiplication by rotation matrix from the right and the canonical right action are not the same thing IIUC

No, they're not. I've detailed here what I believe the right canonical action should be defined as and a common use case. The currently implemented right action on RotationAction is a no-op since it only works for SO(1).
I don't want to hold up this PR. After this is merged, I can submit another PR with the changes I'm thinking of, and we can see if you agree.

As long as all the tests pass and the coverage looks good, this looks good to me.

OK, should I remove my implementation of the right rotation action then or will you handle that in your PR?

Either way doesn't matter. I'll be replacing it in that PR.

Thanks for the review, I think tests and coverage should be OK after the last commit. I'll merge it if tests pass.


A new attempt that stores the reverse of a word against a boolean

Instead of storing pairs of words and their reverse in a map, this attempt stores the reverse of a word and a boolean in a map. When a word is read it is looked up in the map. If it is not found in the map the reverse of the word is created and stored in the map with false. If it is found then the reverse of the word has been seen before and map entry is updated so the word maps to true. The boolean value a word maps to indicates if the reverse of the word has been encountered. This avoids calculating the reverse of the word each time. After the clocks are stopped the map of reverse words to boolean is traversed and the result pairs map populated.

Never mind. This is broken if a word reoccurs after its reverse is found it will be mapped to false and dropped from the results.


Model download is very slow

Hello! I use Open Unmix on colab - Pytorch
But I found that the model download is very slow!
Check https://zenodo.org/ for server locations in Switzerland,
Can you change the model download address? It is recommended to go to github or https://huggingface.co/

It is recommended to convert mp3

Is there any tutorial that can provide conversion? For example, conversion of vocals & accompaniment
thanks!

I acknowledge it's getting slower and slower. Will consider using huggingfaces for at least the umxl model


Pass all props to wrapper, fix #2 (retry)

This updates PR #3 to fix the typescript error: I changed the typing for RenderHookOptions.wrapper to allow React.ComponentTypes which have a type defined for their props -- so now a wrapper component may have props other than children.
With this change, however, it's no longer possible to pass an anonymous function as wrapper and have typescript infer that its children argument is a ReactNode. I searched around for a way to still support this but came up empty: every issue and thread I found on it indicated that the anonymous function (or its props argument) needed to be assigned a type explicitly.
So I've added a typing for the anonymous wrapper function on line 81 of the tests, but if there's a way to accept components with props other than children while still supporting untyped anonymous functions then I would love to learn it.

Everything's working for me locally as well, with the suggested changes.

LGTM!! 🌮 ✨


Make a pass over SITL sensor pipeline and tune models

[ ] delta_wing
[ ] iris
[ ] iris_fpv_cam
[ ] iris_irlock
[ ] iris_opt_flow
[ ] iris_rplidar
[ ] iris_vision
[ ] matrice_100
[ ] matrice_100_opt_flow
[ ] plane
[ ] polaris_ranger_ev
[ ] rover
[ ] solo
[ ] standard_vtol
[ ] tailsitter
[ ] tiltrotor
[ ] typhoon_h480

https://github.com/PX4/Firmware/commits/pr-jenkins_sitl_models

typhoon_h480 working
delta_wing badly broken
iris_opt_flow needs more thought

Some issues I noticed:

tailsitter in the CI mission does the transition and goes back to the previous waypoint before navigating to the landing waypoint -> tests times out because it takes too long
innovation check often fail for fw tests, because of the impact resulting from ground contact during landing
generally innovations become quite large during transitions -> during a transition there are high accelerations and it could be an issue with wrong measurement delay for the ekf or inconsistent sensor data (wrong dt, ...)

@dagar So one sure cause for the failures we see is the fact that the position controller (ever since flight task was merged) is totally unaware of any VTOL related stuff. That means that setpoints are not reset properly after a transition. We need to discuss how a flighttask should support transitions.
The tailsitter failure which happens regularly is actually because after the backtransition the vehicle tries to catch up with the position setpoint. Doing that it loses time and as a result is does not finish the mission in time.

@dagar This is another interesting one. It seems like the vehicle is never able to reach the 2. last waypoint and as a result it keeps circling around it forever.
This could be a real issue. Generally the mission in the CI is very small.

I can't get standard_vtol to fly properly even headless on macOS.
It looses the position estimate, climbs like crazy and then does a failsafe land.
INFO  [logger] Start file log
INFO  [logger] Opened log file: rootfs/fs/microsd/log/2018-11-07/08_23_07.ulg
INFO  [ecl/EKF] EKF aligned, (pressure height, IMU buf: 22, OBS buf: 14)
INFO  [mavlink] partner IP: <IP_ADDRESS>
INFO  [ecl/EKF] EKF GPS checks passed (WGS-84 origin set)
INFO  [ecl/EKF] EKF commencing GPS fusion
INFO  [mavlink] partner IP: <IP_ADDRESS>
[Wrn] [Publisher.cc:141] Queue limit reached for topic /gazebo/default/standard_vtol/gazebo/command/motor_speed, deleting message. This warning is printed only once.
INFO  [commander] Takeoff detected
WARN  [commander_tests] Failsafe enabled: no global position
WARN  [navigator] Global position failure: fixed bank loiter
WARN  [ecl/EKF] EKF GPS fusion timeout - reset to GPS
[Wrn] [Publisher.cc:141] Queue limit reached for topic /gazebo/default/standard_vtol/groundtruth, deleting message. This warning is printed only once.
WARN  [ecl/EKF] EKF GPS fusion timeout - reset to GPS
WARN  [commander] Landing denied, land manually
WARN  [ecl/EKF] EKF GPS fusion timeout - reset to GPS

@julianoes Let me try to replicate it quickly, I flew a few days ago and it was still fine.

@julianoes No issues on Ubuntu. Can you describe what exactly you do, mission?

@RomanBapst @julianoes did specifically mention macOS. FWIW I tried this yesterday on Ubuntu 16.04 in headless mode on a VM and it worked great. But

@hamishwillee @RomanBapst yes you're right it's a macOS specific issue.

Not sure where this task is at, but I've had problems with libgazebo_opticalflow_plugin.so while using gazebo9. Trying to spawn the iris_opt_flow or iris_rplidar gets me a segfault with backtrace:

#0  0x0000000000000000 in ?? ()
#1  0x00007fffd1cc89b8 in cv::Mat::copyTo(cv::OutputArray const&) const () from /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4
#2  0x00007ffef1df5c75 in trackFeatures(cv::Mat const&, cv::Mat const&, std::vector<cv::Point, std::allocator<cv::Point_ > >&, std::vector<cv::Point_, std::allocator<cv::Point_ > >&, std::vector<int, std::allocator >&, int) () from /home/dev/src/Firmware/build/px4_sitl_default/build_gazebo/OpticalFlow/libOpticalFlow.so
#3  0x00007ffef1df30f5 in OpticalFlowOpenCV::calcFlow(unsigned char*, unsigned int const&, int&, float&, float&) () from /home/dev/src/Firmware/build/px4_sitl_default/build_gazebo/OpticalFlow/libOpticalFlow.so
#4  0x00007fff049bcc86 in gazebo::OpticalFlowPlugin::OnNewFrame(unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) () from /home/dev/src/Firmware/build/px4_sitl_default/build_gazebo/libgazebo_opticalflow_plugin.so
#5  0x00007fff049cf900 in boost::_mfi::mf5<void, gazebo::OpticalFlowPlugin, unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>::operator()(gazebo::OpticalFlowPlugin*, unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) const () from /home/dev/src/Firmware/build/px4_sitl_default/build_gazebo/libgazebo_opticalflow_plugin.so
#6  0x00007fff049ce5db in void boost::_bi::list6<boost::_bi::valuegazebo::OpticalFlowPlugin*, boost::arg<1>, boost::_bi::value, boost::_bi::value, boost::_bi::value, boost::_bi::value<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > >::operator()<boost::_mfi::mf5<void, gazebo::OpticalFlowPlugin, unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>, boost::_bi::list5<unsigned char const* const&, unsigned int const&, unsigned int const&, unsigned int const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&> >(boost::_bi::type, boost::_mfi::mf5<void, gazebo::OpticalFlowPlugin, unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>&, boost::_bi::list5<unsigned char const* const&, unsigned int const&, unsigned int const&, unsigned int const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>&, int) () from /home/dev/src/Firmware/build/px4_sitl_default/build_gazebo/libgazebo_opticalflow_plugin.so
#7  0x00007fff049cbbe4 in void boost::_bi::bind_t<void, boost::_mfi::mf5<void, gazebo::OpticalFlowPlugin, unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>, boost::_bi::list6<boost::_bi::valuegazebo::OpticalFlowPlugin*, boost::arg<1>, boost::_bi::value, boost::_bi::value, boost::_bi::value, boost::_bi::value<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > >::operator()<unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>(unsigned char const*&&, unsigned int&&, unsigned int&&, unsigned int&&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) () from /home/dev/src/Firmware/build/px4_sitl_default/build_gazebo/libgazebo_opticalflow_plugin.so
#8  0x00007fff049c811c in std::_Function_handler<void (unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&), boost::_bi::bind_t<void, boost::_mfi::mf5<void, gazebo::OpticalFlowPlugin, unsigned char const*, unsigned int, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>, boost::_bi::list6<boost::_bi::valuegazebo::OpticalFlowPlugin*, boost::arg<1>, boost::_bi::value, boost::_bi::value, boost::_bi::value, boost::_bi::value<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > > >::_M_invoke(std::_Any_data const&, unsigned char const*&&, unsigned int&&, unsigned int&&, unsigned int&&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) () from /home/dev/src/Firmware/build/px4_sitl_default/build_gazebo/libgazebo_opticalflow_plugin.so
#9  0x00007fffedfd4117 in gazebo::rendering::Camera::PostRender() () from /usr/lib/x86_64-linux-gnu/libgazebo_rendering.so.9
#10 0x00007ffff6038d50 in gazebo::sensors::CameraSensor::UpdateImpl(bool) () from /usr/lib/x86_64-linux-gnu/libgazebo_sensors.so.9
#11 0x00007ffff6070d79 in gazebo::sensors::Sensor::Update(bool) () from /usr/lib/x86_64-linux-gnu/libgazebo_sensors.so.9
#12 0x00007ffff60779a5 in gazebo::sensors::SensorManager::SensorContainer::Update(bool) () from /usr/lib/x86_64-linux-gnu/libgazebo_sensors.so.9
#13 0x00007ffff6079ada in gazebo::sensors::SensorManager::Update(bool) () from /usr/lib/x86_64-linux-gnu/libgazebo_sensors.so.9
#14 0x00007ffff7ba4157 in gazebo::Server::Run() () from /usr/lib/x86_64-linux-gnu/libgazebo.so.9
#15 0x0000000000403032 in ?? ()
#16 0x00007ffff62f4830 in __libc_start_main (main=0x402f30, argc=11, argv=0x7fffffffce68, init=, fini=, rtld_fini=, stack_end=0x7fffffffce58)
at ../csu/libc-start.c:291
#17 0x00000000004036a9 in _start ()

@Seanmatthews can you make a separate issue in https://github.com/PX4/sitl_gazebo/ please? Thanks.

@julianoes https://github.com/PX4/sitl_gazebo/issues/292


Bug Fix for Interaction Bar Not Closing on Reply

Sorry about that, my fault entirely but #12 is dead.

Thanks for this, Matt.


Implement TensorBase.long

🚀 Feature
Implement TensorBase.long
Motivation
NeMo Stable Diffusion
cc @tfogal

triage team: AFAICT none of NeMo's use cases for this use the memory_format parameter. maybe we could have a half-implementation of this that errors out when this parameter is used?


Upgrading Python changes it from system-wide installation to user one

Brief description of your issue
Upgrading Python changes it from system-wide installation (in C:\Program Files) to user-specific installation (in C:\Users\User\AppData\Local\Programs\Python).
Steps to reproduce

Install Python, selecting system-wide install (for all users) in installer
Upgrade Python via winget

Expected behavior
Upgrading Python should retain its system-wide installation status,
Actual behavior
Python is now installed for current user only,
Environment
Windows Package Manager v1.1.13405
(с) Корпорация Майкрософт (Microsoft Corporation). Все права защищены.

Windows: Windows.Desktop v10.0.19044.1466
Пакет: Microsoft.DesktopAppInstaller v1.16.13405.0

This issue should be transferred to https://github.com/microsoft/winget-pkgs.

Hmm, according to my testing it did not install to C:\Users\User\AppData\Local\Programs\Python
winget install python.python.3 --version 3.10.1150.0 --scope machine

2022-01-26 13:10:27.114 [CLI ] Installer args: /passive /log "C:\Users\User\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir\WinGet-Python.Python.<IP_ADDRESS>0.0-2022-01-26-13-10-27.114.log" InstallAllUsers=1 PrependPath=1

WinGet-2022-01-26-13-10-25.686.log
Installed to C:\Program Files\Python310
Appdata folder:

winget upgrade python.python.3

2022-01-26 13:15:10.611 [CLI ] Installer args: /passive /log "C:\Users\User\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir\WinGet-Python.Python.<IP_ADDRESS>0.0-2022-01-26-13-15-10.611.log" InstallAllUsers=0 PrependPath=1

Unexpected InstallerSwitch that indicates Current User switch..
WinGet-2022-01-26-13-15-09.252.log
However the C:\Program Files\Python310 folder updated

and C:\Users\User\AppData\Local\Programs\ still do not have a folder

Running the Installer manually after installing it machine-wide via winget indicates that it forces you to update based on your current scope

Installer Switches: https://docs.python.org/3.10/using/windows.html

This same thing happens to me.  You need to run the Python installer with InstallAllUsers=0 to keep it in the system-wide location.
Please fix it, and (tbh) handle system-wide vs. user-folder installations betters.

You should also have a CompileAll=1 flag, as this should be done at installation for performance.


OmniDateTimePicker doesn't respect the Time information in the passted intial Date

Hi, thanks a lot for your package, and happy holidays!
I find that the OmniDateTimePicker won't consider the Time information in my initial DateTime object. Here's an example:
DateTime date = DateTime.now().toUtc().add(const Duration(hours: -11))

final DateTime? dateTime = await showOmniDateTimePicker(
  context: context,
  is24HourMode: false,
  isShowSeconds: false,
  startInitialDate: date,
  startFirstDate: DateTime.now().toUtc().subtract(const Duration(days: 365)),
  startLastDate: DateTime.now().toUtc(),
  borderRadius: const Radius.circular(16),
);

This resulting picker will show the time as the current device time, instead of the date object's time which is 11 hours behind now.
Also, the FirstDate and LastDate time is not respected as a cutoff time for the time spinners.
Also, opening the dialog and then tapping OK without changing anything will cause the resulting DateTime to be equal to the current day and time, regardless of the initial date passed.
I can produce this on Android.

The bug with startInitialDate not being reflected correctly are fixed in v0.0.3
This part I don't quite get it yet, can you provide an example codes for this and include your expected behavior vs current behavior?
"Also, the FirstDate and LastDate time is not respected as a cutoff time for the time spinners."

Thanks a lot, I will open a new issue about it in a few hours, including screenshots to explain the expected behavior vs current behavior


Dataset titles are not highlighted

Looks like EEs names were not indexed in the backend and markdown was not rendered in the browser. It will be fixed in Gemma's next patch release.


Update README.md

Fix a couple spelling errors!

fix #127, thx for your contribution @carterkelly9 !

Merge? :)


UI: Why nativeSchema tab is called JSON?

In the above page, the content in JSON tab is being populated from following aspect of dataset MCE(DatasetSnapshot-> SchemaMetadata-> platformSchema) which has structure like below:
{
              "name" : "platformSchema",
              "type" : [ {
                "type" : "record",
                "name" : "EspressoSchema",
                "doc" : "Schema text of an espresso table schema.",
                "fields" : [ {
                  "name" : "documentSchema",
                  "type" : "string",
                  "doc" : "The native espresso document schema."
                }, {
                  "name" : "tableSchema",
                  "type" : "string",
                  "doc" : "The espresso table schema definition."
                } ]
              }, ..
}

Now the questions is:
Is it compulsory to provide platform schema in JSON format(as in schema docs and also the name of tab in UI)?
My understanding is that platformSchema (or native schema) may or may not be available in json format depending on source type. for example, if schema is in avro, it is by-default JSON. if it is Protobuf, not exactly in JSON.

You are correct. Ideally, we should have called it as RAW schema.
@cptran777, @igbopie  FYI

If we have a consensus on the same, should I proceed with doing the changes and contribute back?

If we have a consensus on the same, should I proceed with doing the changes and contribute back?

If we have a consensus on the same, should I proceed with doing the changes and contribute back?

Please do.

If we have a consensus on the same, should I proceed with doing the changes and contribute back?

Please do.


Google Fit Connector for heart rate

Hi, I am wondering how to retrieve heart rate from Google Fit. I am using the Google fit connector but can only find activity time, steps, and weight.
Thanks very much in advance
Albert

Does anyone have a debug with logging for the code? The code seems to be there for the heart rate. I deployed it to my own project but is getting "Error ID: 8f3af345".

Found the error, it seems that https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate refused to process my request with "returned code 403". The following is what I see on the stackdriver error logs:
Apr 29, 2019, 1:37:06 PM
Debug
[getData, request, { "configParams": { "googleFitDataType": "heart_rate_daily" }, "dateRange": { "endDate": "2019-04-28", "startDate": "2019-04-22" }, "scriptParams": { "lastRefresh": "1556570225472" }, "fields": [ { "name": "HeartRateAvg" }, { "name": "HeartRateMax" }, { "name": "StartTime" } ] }]
Apr 29, 2019, 1:37:06 PM
Error
Request failed for https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate returned code 403. Truncated server response: { "error": { "errors": [ { "domain": "usageLimits", "reason": "accessNotConfigured", "message": "Project<PHONE_NUMBER>80 is not foun... (use muteHttpExceptions option to examine full response) at fetchAggregateData(GoogleFit.js:232) at getAggregateData(GoogleFit.js:257) at unknown function at unknown function at unknown function at unknown function at getData(Code:31)


Write messages to log file

I write a simple solution for the issue #28.
Basically:

Add some log option in settings;
Replace print_message with log calls;
"--debug" option now overrides log level with DEBUG value and adds a handler for write log message both on file and console.

Hi, @marcocaberletti.
Thank you for you pull request.
I will test and review it.

Any news?