Microsoft.TypeScript.MSBuild doesn't work on VS2013

TypeScript Version:
1.7.5 / 1.8.0-beta
Expected behavior:
The package Microsoft.TypeScript.MSBuild must follow Nuget package conventions to be fully compatible with Nuget 2.x and 3.x
In particular props and targets files must be place in the build folder
see https://docs.nuget.org/Create/Creating-and-Publishing-a-Package#import-msbuild-targets-and-props-files-into-project
Actual behavior:
Those files are added into projects using Powershell code
The package as nor content, nor lib, nor build folder and is recognized as a solution package under VS2013 which makes it impossible to be installed on a project.

This only works when the targets and props file have the same name as the package. They don't, so we have to use the powershell scripts to install the targets/props files. Further the scripts remove any old targets/props from the project, which makes moving to NuGet from targets props installed on the machine much cleaner.


Support carriage return without replace

Maybe some issue remains: https://github.com/lichess-org/scalachess/commit/95c941173f0591e27e907937a07bab0722d1f405 (failing test)

Ah, nevermind. My bad: https://github.com/lichess-org/scalachess/commit/46a2d41b9f7e777e7b4d1e6df78328f253a84d44


Poly1305 error with asm on linux-armv4

Poly1305 with asm on linux-armv4 (Raspbian GNU/Linux 8 on raspberry pi2) seems to have an issue that it cannot calculate a correct MAC in a certain condition. make test shows the error as
Test Summary Report
-------------------
../test/recipes/30-test_evp.t           (Wstat: 256 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 1
Files=68, Tests=361, 276 wallclock secs ( 3.94 usr  0.52 sys + 233.18 cusr 12.35 csys = 249.99 CPU)
Result: FAIL
Failed 1/68 test programs. 1/361 subtests failed.

and they are two tests for chacha20-poly1305.
ohtsu@raspberrypi:~/github/openssl$ ./test/evp_test test/evptests.txt
Test line 2958: unexpected error TAG_VALUE_MISMATCH
Expected: 1AE10B594F09E26A7E902ECBD0600691
Got:      0AE1D6731075D9EB2A9375783ED553FF
Test line 2966: unexpected error TAG_VALUE_MISMATCH
Expected: EEAD9D67890CBB22392336FEA1851F38
Got:      26478F50C054F563DBC0A21E261572AA
451 tests completed with 2 errors, 0 skipped

The errors come from Poly1305 as I made self tests with POLY1305_ASM. Some tests of self generated and one test from RFC7539 of  "5*H+L reduction intermediate" are failed.
ohtsu@raspberrypi:~/github/openssl/crypto/poly1305$ gcc -o poly1305 -I../include -DSELFTEST -DPOLY1305_ASM poly1305.c ../../libcrypto.a
ohtsu@raspberrypi:~/github/openssl/crypto/poly1305$ ./poly1305
Poly1305 test #5 failed.
got:      80f8c262a71202d1e29179cbcb5d5a57
expected: 812059a5da198637cac7c4a631bee466

Testing with the current Chrome Canary based on draft-04 show the error of bad record mac.
1996231888:error:1408F119:SSL routines:ssl3_get_record:decryption failed or bad record mac:record/ssl3_record.c:470:

Building with no-asm has no errors on tests and the connection with Chrome Canary works fine so that the issue is caused by poly1305-armv4.S.

I can't reproduce this. Do you get same "got" values all the time? If so, can you post the binary? The one you've compiled with -DSELFTEST...

Yes, I got the same value in the error all the time.
I put a build tar ball of my openssl git repo into https://html5.ohtsu.org/openssl-build-raspi2.tar.gz . Please download it and take a look at it.
The selftest binary is crypto/poly1305/poly1305 on the master branch.
My environment is as below. Please let me know if you need more information.
ohtsu@raspberrypi:~/github/openssl$ uname -a
Linux raspberrypi 4.1.17-v7+ #838 SMP Tue Feb 9 13:15:09 GMT 2016 armv7l GNU/Linux
ohtsu@raspberrypi:~/github/openssl$ gcc --version
gcc (Raspbian 4.9.2-10) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

ohtsu@raspberrypi:~/github/openssl$ as --version
GNU assembler (GNU Binutils for Raspbian) 2.25
Copyright (C) 2014 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or later.
This program has absolutely no warranty.
This assembler was configured for a target of `arm-linux-gnueabihf'.

Hmm... If I gcc -I../include -DSELFTEST -DPOLY1305_ASM poly1305.c ../../libcrypto.a I too get the error, but if I  gcc -I../include -DSELFTEST -DPOLY1305_ASM poly1305.c poly1305-armv4.o it passes. I'm inclined to conclude that poly1305-armv4 module is not the problem by itself. That is poly1305-armv4 can still be a trigger, but it's not really a problem with instruction sequence. Something presumably happens during linking. Either of options work fine elsewhere...

No, as it turns out one NEON instruction was misassembled. Those other options working elsewhere depend rather on the fact that it was previous assembler version assembler involved. And linking with poly1305-armv4.o vs. ../../libcrypto.a worked, because in former case armcap.o wasn't linked, which means that OPENSSL_armcap_P went uninitialized, which means that NEON code path was not exercised. Fix is upcoming...

I've just found that<PHONE_NUMBER>1e25024ffd90bbded44b021877fc59 resolves the issue and all tests are passed.  Thanks.


[Don't merge. FC] Marriage Abroad. Ticket 16

This is a batch of marriage abroad process changes in Poland, United Arab Emirates, Indonesia, Vietnam, Cambodia, Thailand. All commits in this branch have been reviewed in sub-PRs.
This is currently being fact-checked and is not ready to be merged yet. Opening a PR so it doesn't get lost.

@tadast: Does this need to be reviewed again given that it's already been reviewed in sub-PRs?

No, not until we get feedback from fact check at least. Sorry, i should've made it clear in the PR description, I'll update it.

@tadast: Is someone chasing the fact-check on this? I'm getting nervous that this branch has been sitting around so long, especially given the number of changes it includes.

@floehopper I've seen some activity on zendesk: it should soon be ready for Erik to implement the changes originating from FCO feedback.

@tadast: Thanks. /cc @er-ke-de

Rather than over-writing the history in this branch, I've pushed a new branch that updates this pull-request with the recent changes merged in master to:
smart-answers branch: update_country_specific_outcomes_for_marriage_abroad

@erik-eide: I assume you're intending to open a new PR once the new branch is ready. If so, I think I would close this PR.

Yep, still a bit to go on the new branch but will close this one


⚠ Bofrost.at has degraded performance

In d1e347f, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1633 ms

Resolved: Bofrost.at performance has improved in 1ab3160 after 6 minutes.


History Missing!

Hello there,
When the screen goes to screensaver, or reboot the system, all the history gone from the list.
I'm using Fedora 36/Gnome 42 on aarch64/arm64 system.
Thank you.

This extension doesn't save clipboard history between reboots, so this is intentional. Losing data when locking the screen is fixed in version 7.
Thanks for your attention!

thank you


Load jwtClientAuthentication in uaa.yml

By mistake the variable jwtclientAuthentication was used in PR for clientAuthentication.
Documentation explains jwtClientAuthentication as entry

Before I look at this PR, I want to understand the original issue first. See comment.

Thanks @strehle! I personally think that fixing the code to be aligned with the correct case-sensitive field jwtClientAuthentication as documented in our API doc (without being compatible with the incorrect jwtclientAuthentication) is okay, as it can be justified as a bug fix (and not as a breaking change).
What do you think? Are there a lot of adoptions of the incorrect jwtclientAuthentication on your side already?

What do you think? Are there a lot of adoptions of the incorrect jwtclientAuthentication on your side already?

No I am sure, that not many adoptions out with incorrect setting, but with this PR both settings would be used
But I asked me to change this PR so that only the correct setting is used?

What do you think? Are there a lot of adoptions of the incorrect jwtclientAuthentication on your side already?

No I am sure, that not many adoptions out with incorrect setting, but with this PR both settings would be used
But I asked me to change this PR so that only the correct setting is used?

Simply correcting the code to comply with the doc (without being compatible with the incorrect jwtclientAuthentication) would be my preference, as it's technically a bug fix, rather than an intentional field name migration. But if maintaining compatibility with the incorrect field is important to you, I'm okay with the current code too.

I'm okay with the current code too.

Ok, then I would like to stay with current code. In current code jwtClientAuthentication is used first, so no extra step if correct name is used, but for others jwtclientAuthentication would still work


Different size of test data, got different predict answer?!!!

Please make sure that the boxes below are checked before you submit your issue. If your issue is an implementation question, please ask your question on StackOverflow or join the Keras Slack channel and ask there instead of filing a GitHub issue.
Thank you!

[ ] Check that you are up-to-date with the master branch of Keras. You can update with:
pip install git+git://github.com/keras-team/keras.git --upgrade --no-deps

[x] If running on TensorFlow, check that you are up-to-date with the latest version. The installation instructions can be found here.

[ ] If running on Theano, check that you are up-to-date with the master branch of Theano. You can update with:
pip install git+git://github.com/Theano/Theano.git --upgrade --no-deps

[ ] Provide a link to a GitHub Gist of a Python script that can reproduce your issue (or just copy the script here if it is short).

the detail is as follows:
i'm using the RNN model to work on the crop classification, so far from now, everything is just fine, while, today I find an extremely tricky issue,  i use the same sample to train my model, but when i input the model with different size of test sample, the results is different.
for example, i have 60000 test samples, i put all the sample into the RNN model, I got result A.
Then i separate the 60000 samples into 6 groups and each contains 10000 test samples, and i input group 1 to the model, results is same as result A, group 2 also works fine, however, when i try group 3, it is different from result A, and group 4, 5,6 all got different result with A.
i really don't think the test size will affect the final result, but,  i can't figure why and how this could happen?
hope someone could help me
thanks a lot!

ADD: I use dynamic_rnn in Tensorflow to build my model


POC: Show how SignerStore already supports AWS KMS

Add test setup and test to load a signer from AWS KMS (localstack) via SignerStore, with 0 worker code changes.
Run as tox -e local-aws-kms
Change details

Add independent tox environment to init/cleanup localstack, configure ambient AWS KMS credentials, create a test key, and run the test.

Add test to "import" test public key from AWS KMS and configure private key URI - this would typically happen in a key management UI (e.g. RSTUF CLI) - and use SignerStore.get to load the signer.

Notes to reviewer
This is a POC to show how easy the Signer API it makes to integrate arbitrary signer providers. Some blockers for merging are:

Requires #451 (commits included in this PR)
Provides AWS KMS credentials via AWS_* env vars. But the current practise is to only allow RSTUF_* env vars. Should we ask users to provide RSTUF_AWS_* env vars and re-export them?
Adds a single unit test method, which is ran against a 3rd party service. This doesn't fit into the current test architecture, where  3rd party services are consistently mocked in unit tests, and only included in more comprehensive functional tests.

Now that the important blockers are resolved, I think we can actually treat this as AWS KMS support PR. Let me update the PR title/description and mark this ready for review...


1.20.1 Neoforge, Embeddium, Iris Crash while loading some chunks ig

Describe the Bug
When loading terrain the games sometimes crashes
Reproduction Steps
1.Play
2.Move around
3.Crash
...
Expected Result
THe game shouldn't crash
Screenshots and Videos
No response
Crash Report or Log
https://pastebin.com/7uFpAQJa
Operating System
Fedora 39 [Workstation]
What is your GPU?


Feature/timezoneoffsetstring

With this the timezone is created, (a custom timezone), based on a parsed TimeSpan string.
e.g. "01:00:00" would be:

British Summer Time
Central European time
AIX-specific equivalent of Central European Time
Irish Standard Time
Middle European Time
West Africa Time
Western European Summer Time

I have an alternative prepped, that uses a decimal hour offset, but I believe this is more smooth

Evaluate PR #8 before considering this, because this is a branch of that branch, possibly resulting in unwanted upgrades to the master branch.

I performed a push -f because I did a rebase with the master branch.

Hi @frankhaugen. Support for a custom UTC offset is very nice but I think both options, custom UTC offset and system time zone ID, should be accepted. With that in mind I made some changes to your code.
In this PR I also tried to improve the documentation by following your considerations.


Contributions menu: identifier - loading bug

Description: The motion identifiers are not loaded in the contributions menu until the motion menu has been opened.
Reproduction:

open a meeting
open motions > create a motion and take care, that it has an identifier
open the list of speakers of the motion and add yourself as admin on the list.
open participants > contributions menu. Now you should see your contribution with the identifier in the metadata.
Delete cache and reload the website (contributions menu). Now the identifier should not not be visible anymore until the motion module is opened again.

What should happen:
The motion identifiers should load in the contributions menu even without opening the motions module first.

I cannot reproduce this. The identifier (German: "Bezeichner") is in the contribution list before and after cache clear and reload.

Arg, this is already fixed.


Add model summary when using DeepSpeed Stage 3

What does this PR do?
Fixes #12130
Introduces a DeepSpeedModelSummary that includes logic to take out the actual size of tensors + show you the size of partitions made by DeepSpeed. Previously the weights were "0" due to DeepSpeed changing the parameters in place. Now you get something like this:
  | Name  | Type                       | Params | Params per Device
-------------------------------------------------------------------------
0 | ptlm  | T5ForConditionalGeneration | 737 M  | 184 M
1 | layer | Linear                     | 66     | 17
-------------------------------------------------------------------------
737 M    Trainable params
0        Non-trainable params
737 M    Total params

Does your PR introduce any breaking changes? If yes, please list them.
None
Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[x] Did you write any new necessary tests? (not for typos and docs)
[x] Did you verify new and existing tests pass locally with your changes?
[x] Did you list all the breaking changes introduced by this pull request?
[x] Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃
cc @borda @awaelchli @ananthsub @rohitgr7 @SeanNaren @akihironitta

Also fixes: #10291?

Doesn't handle FSDP right now, we can add that after!


fix nodeJS crash when errornous ical is given

Added try catch for parsing the date toISOString to prevent complete application crash on fail.

@peterbraden can this be merged? Would be great to not have to try catch in the application code.

hi, sorry for the slow response - can you fix the merge conflict then I can merge


Refactor map encoding to prep for Go version bump

Refactor old map encoding code to prep for Go version bump and reduce duplicate code required by upcoming PRs.
@dinhxuanvu opened issue and PR that shows impressive results :tada:  (both speedup & memory reduction!):

#467
#468

This PR refactors old code related to map encoding, so new PRs like #468 won't require as much duplicate code.

@dinhxuanvu @x448 Please take a look and let me know if you approve or if changes are needed.
I'd like to merge this PR so PR #468 can take advantage of this and get merged too.   Thanks!


add kkl permits

Hi!
I have a built a small python parser for these docs:
https://github.com/hasadna/israel_tree_removal_permit_scraper/blob/master/doc_parser.py
I don't know if this is useful - but I'll be happy to help with anything (more formats?) if you need.
You can see somewhat normalized results here:
https://github.com/hasadna/israel_tree_removal_permits_csv
and here:
https://github.com/hasadna/israel_tree_removal_permits_csv
Cheers!
Udi


BEAM search 70B llama on tinybox

70B llama uses almost all vram and beam search new buffer allocation would fail due to out of resource.
It would be nice if we can search live with some flags to control buffer allocation. If not, we can have a regular run and log the kernels, and use a separate script to loop through the kernels and beam search them into cache.

see a weird error while trying to beam search llama 34B DEBUG=2 BEAM=2 PYTHONPATH=. python3 examples/llama.py --gen code --size '34B' --temperature 0 --shard 6 --count 10 --prompt "from tinygrad.tensor import Tensor" --timing
   3.08s:       377.80 us          7/  20           86  683    4    2   16    4HW Exception by GPU node-4 (Agent handle: 0x55d987988820) reason :GPU Hang
HW Exception by GPU node-4 (Agent handle: 0x559da9432ce0) reason :GPU Hang
HW Exception by GPU node-4 (Agent handle: 0x55d9a6070cb0) reason :GPU Hang
CLDevice: got 1 platforms and 0 devices
/usr/lib/python3.10/multiprocessing/resource_tracker.py:224: UserWarning: resource_tracker: There appear to be 6 leaked semaphore objects to clean up at shutdown
  warnings.warn('resource_tracker: There appear to be %d '
[1]    112769 IOT instruction (core dumped)  PARALLEL=1 DEBUG=2 BEAM=2 PYTHONPATH=. python3 examples/llama.py --gen code

that CLDevice: got 1 platforms and 0 devices means we are initializing a GPU device?


DRILL-6656: Disallow extra semicolons in import statements.

Due to this jdk bug https://bugs.openjdk.java.net/browse/JDK-8072390, IntelliJ and openjdk 7 and 8 allow extra semicolons in imports. This is technically disallowed by the java spec and results in a compilation issue in eclipse. This resulted in this issue https://issues.apache.org/jira/browse/DRILL-6650. This change adds some checkstyle regexes to prevent a similar mistake from being repeated.
This PR adds the following checkstyle checks:

Disallow lines starting with a semicolon.
Disallow two consecutive semicolons separated by nothing but whitespace.
Disallowing empty statements in java statements. This check does not effect semicolons in imports; however, since we are already fixing semicolons in imports we might as well fix them everywhere.

The first two checks catch semicolons in imports, but as a side effect also detect strange usages of semicolons in the body of a java files. As a result things like the following are disallowed as well:
for (;;
) {
}

or
new Builder()
   .someStuff()
   .thatStuff()
  .build()
;

But I think we should disallow these strange usages of semicolons anyway.

@arina-ielchiieva Please review.

@vvysotskyi addressed review comments.

@vvysotskyi Made additional style changes.

I have noticed that format-maprdb module contains one more checkstyle-config.xml file. Are there any reasons for using one more config file, or they both may be merged?

That's strange. Yeah I think we can get rid of it @vvysotskyi .


ffe-buttons: Anchors not vertically aligned with buttons in button group

Which package is this issue related to?
ffe-buttons
Describe your issue (screenshots welcome!)

The primary button is an a element in the picture above. Swapping the primary button to a button element and changing the secondary button to an a reverses the behavior:

If both are buttons they are aligned correctly:

The same if both are anchors, although it seems there is some extra bottom margin. Maybe missing a reset?

What is the expected behavior?
The buttons should align vertically regardless of element type
What is the actual behavior?
a and button get different vertical heights.
Steps to reproduce

    <button aria-busy="false" aria-disabled="false" class="ffe-button ffe-button--primary">
        Velg minikasko

    </button>

        Tilpass forsikringen selv

Fixed by #88


[vcpkg-tool-meson] build failure

Operating system
centos 7 linux
Compiler
gcc-11
Steps to reproduce the behavior
./vcpkg install vcpkg-tool-meson --only-downloads

./vcpkg install vcpkg-tool-meson --no-downloads

Failure logs
Installing 1/1<EMAIL_ADDRESS>Building<EMAIL_ADDRESS>/home/user/Documents/vcpkg_deployment/vcpkg_no_download/buildtrees/versioning_/versions/vcpkg-tool-meson/17b86f3a18ad63659d4dfbafc194969279a7a4f0: info: installing overlay port from here
-- Installing: /home/user/Documents/vcpkg_deployment/vcpkg_no_download/packages/vcpkg-tool-meson_x64-linux/share/vcpkg-tool-meson/copyright
-- Found Python version '3.8.13 at /opt/rh/rh-python38/root/usr/bin/python3'
CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:212 (message):
  Downloads are disabled, but
  '/home/user/Documents/vcpkg_deployment/vcpkg_no_download/downloads/meson-614d436232d3a86518164cbe2b8af12db3bde009.tar.gz'
  does not exist.
Call Stack (most recent call first):
  packages/vcpkg-tool-meson_x64-linux/share/vcpkg-tool-meson/vcpkg-port-config.cmake:38 (vcpkg_download_distfile)
  buildtrees/versioning_/versions/vcpkg-tool-meson/17b86f3a18ad63659d4dfbafc194969279a7a4f0/portfile.cmake:39 (include)
  scripts/ports.cmake:175 (include)

Additional context
Trying to test --only-downloads and --no-downloads.  This has worked in previous versions of VCPKG, doesn't work now. Works fine when normal install process is used.  The meson download missing is installed if only-downloads isn't used.

Maybe #37585?

No idea, hopefully, but I personally can't test this anymore since I found out that libsystemd is irrevocably broken with centos 7 because it requires a higher kernel version, and older versions don't exist in vcpkg, meaning I have to stick with older versions of vcpkg anyway.  OpenCV now cannot work on Centos 7/Redhat 7 since libsystemd's introduction to vcpkg 6 months ago.

No idea, hopefully, but I personally can't test this anymore since I found out that libsystemd is irrevocably broken with centos 7 because it requires a higher kernel version headers, and older versions don't exist in vcpkg, meaning I have to stick with older versions of vcpkg anyway. OpenCV now cannot work on Centos 7/Redhat 7 since libsystemd's introduction to vcpkg 6 months ago.

How did it work before? Maybe create empty overlay for libsystemd (and probably libmount)?

-- Found Python version '3.8.13 at /opt/rh/rh-python38/root/usr/bin/python3'

Is this recent enough for meson?

OpenCV now cannot work on Centos 7/Redhat 7 since libsystemd's introduction to vcpkg 6 months ago.

I warned about side effects...
But you can replace the vcpkg port with an empty overlay port.

@BillyONeal Do I need to include the vcpkg-port-config.cmake in the portfile of the installing port to make --only-downloads work?

Do I need to include the vcpkg-port-config.cmake in the portfile of the installing port to make --only-downloads work?

AFAICT You need "to make --only-downloads work". This means to invoke code for downloading.
I guess the current version stops at
vcpkg_execute_required_process(COMMAND "${PYTHON3}" --version
            WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}"
            LOGNAME "python3-version-${TARGET_TRIPLET}")

Yeah, it seems like that could get ALLOW_IN_DOWNLOAD_MODE

opened #37768 to reorder the code and put the download before the version check of python.


[Observability] Grafana dashboards for local & cloud environments

Objective
Set the foundation for PATH Grafana dashboards.
Goals

Build out the foundational infrastructural for Grafana dashboards in PATH
Use the same patterns as in poktroll to be consistent across all of Grove's stacks
Clearly document how metrics + logs can be accessed and updated across multiple environents

Deliverables

Foundation

[ ] LocalNet: Ensure Loki, Prometheus, Victoria Metrics and Grafana are part of the stack
[ ] Staging: Ensure Loki, Prometheus, Victoria Metrics and Grafana are part of the stack
[ ] Ensure all dashboards (local and staging) are maintain via IaC in the helm-charts repo

Metrics

[ ] Ensure OS level metrics for each service (PATH, Envoy Proxy, etc...) are accessible in a separate dashboard

[ ] LocalNet (Tilt + Kind)
[ ] PATH (Staging deployment)
[ ] Ask @okdas what he recommends for this. Afterwards, look into this reference as another potential starting point.

[ ] Ensure logs are accesible

[ ] LocalNet (Tilt + Kind)
[ ] PATH (Staging deployment)

Documentation:

Development:

[ ] Document how a backend developer can update the dashboards
[ ] Lookng into adding Makefile targets to streamline this process (if possible); e.g. export and saving json.

Access:

[ ] LocalNet: Document (with links) how anyone can access the LocalNet dashboard
[ ] Staging: Document (with links) how anyone can access the Staging dashboard

Creator: @HebertCL
Co-Owners: @HebertCL @okdas @Olshansk

@HebertCL I've reviewed and edited the deliverables + goals. Please see the before & after as a reference.
👍 if it looks good

@Olshansk regarding the foundation part on this issue:

LocalNet: Ensure Loki, Prometheus, Victoria Metrics and Grafana are part of the stack

Localnet does not use VictoriaMetrics stack, but instead uses the same components taken from poktroll local environment (kube-prometheus-stack + Loki). For the sake of consistency, it should remain the same.

Ensure all dashboards (local and staging) are maintain via IaC in the helm-charts repo

I've talked with @okdas about this approach and the most practical way to handle this to have a set of dashboards for Path's local environment, and a different set of dashboards used for staging and later on, production.
Some reasons to NOT follow single set of dashboards approach:

Data sources across stacks are different. What works for staging will not work for localnet.
Creating a set of dashboards that are able to work both observability stacks would be challenging and time consuming.
A single set of dashboards used across different observability stacks would be more prone to break.
Having the dashboards centralized in a repo other than where we launch our environments, we will need to implement some kind of patch/glue solution to source dashboards.

What I propose to do is the following:

To have localnet dashboards living in Path's repo, and handle the versioning in that same repo.
To have staging/production dashboards living in Infrastructure repo, and handle the versioning in that same repo.
Document how to manage and update these dashboards across both repositories.
Educate engineers whenever dashboards are updated to perform updates on both (following the steps from above) to achieve as-close-as-it-gets parity.

Localnet does not use VictoriaMetrics stack, but instead uses the same components taken from poktroll local environment (kube-prometheus-stack + Loki). For the sake of consistency, it should remain the same.

👍
@okdas Can you confirm where (if at all) we use VictoriaMetrics in poktroll?

Some reasons to NOT follow single set of dashboards approach:

👍
@okdas Can you confirm if we're following the same pattern in poktroll?

What I propose to do is the following:
To have localnet dashboards living in Path's repo, and handle the versioning in that same repo.
To have staging/production dashboards living in Infrastructure repo, and handle the versioning in that same repo.

👍

Document how to manage and update these dashboards across both repositories.

Please create a new page under https://path.grove.city/ dedicated to this.

Educate engineers whenever dashboards are updated to perform updates on both (following the steps from above) to achieve as-close-as-it-gets parity.

I agree with this conceptually but believe it's more of a north star idea than something we're actually going to act on.
Let's aim to have the documentation act on behalf of this by:

Having a walkthrough
Having a copy-pasta cheatsheet example
Having a video example

That way we'll enable anyone to self-educate themselves.
👍 ?

@okdas Can you confirm where (if at all) we use VictoriaMetrics in poktroll?

We don't use VM on LocalNet, but we do have it backing metrics on protocol cluster on GCP (e.g. devnets infra). So yes, I confirm.

@okdas Can you confirm if we're following the same pattern in poktroll?

Yes - it was proven time-inefficient to maintain the same dashboard set for different environments. It will become easier once the code becomes stable. I'm sure we're going to change a lot in the near future, so this is the way to go for now.

@okdas Appreicat the input.
@HebertCL As long as we get those docs in place - let's do it!


Text circuit drawer does not draw CZ correctly

Information

Qiskit Terra version:

qiskit                0.19.2
qiskit-aer            0.5.1
qiskit-aqua           0.7.1
qiskit-ibmq-provider  0.7.1
qiskit-ignis          0.3.0
qiskit-terra          0.14.1

Python version:
Python 3.6.10 :: Anaconda, Inc.
Operating system:
macOS Catalina 10.15.4 (19E287)

What is the current behavior?
CZ gate is drawn with two bullets.
Steps to reproduce the problem
% ipython
Python 3.6.10 |Anaconda, Inc.| (default, May  7 2020, 23:06:31)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.13.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: from qiskit import QuantumCircuit

In [2]: s = 'OPENQASM 2.0;\ninclude "qelib1.inc";\nqreg q[2];\ncz q[0],q[1];'

In [3]: QuantumCircuit.from_qasm_str(s).draw()
Out[3]:

q_0: ─■─
      │
q_1: ─■─

What is the expected behavior?
CZ gate should be drawn using a box and a bullet, similar to CNOT gate:
q_0: ──■──
     ┌─┴─┐
q_1: ┤ Z ├
     └───┘

Suggested solutions
In the implementation here:
https://github.com/Qiskit/qiskit-terra/blob/9e8a3ff8d11f8677ff7e8f397bcc3c7108edaa1f/qiskit/visualization/text.py#L980
CZ should be treated as a normal controlled gate by using BoxOnQuWire: https://github.com/Qiskit/qiskit-terra/blob/9e8a3ff8d11f8677ff7e8f397bcc3c7108edaa1f/qiskit/visualization/text.py#L141
And not Bullet
https://github.com/Qiskit/qiskit-terra/blob/9e8a3ff8d11f8677ff7e8f397bcc3c7108edaa1f/qiskit/visualization/text.py#L392
This can be fixed by removing lines 987-989 and 1012-1013 of qiskit/visualization/text.py that both treat CZ as a special case (twice)! The fact that there is this duplication in the current implementation makes me think that something went wrong...
Happy to contribute a pull request if the behavior I describe above is desirable.

This is expected as CZ is symmetric.

I see. This does arguably make the circuit harder to read, as many sources from the first page of search results for "control z gate" use the boxed version:

https://arxiv.org/abs/1110.2998
https://www.cs.bham.ac.uk/internal/courses/intro-mqc/current/lecture05_handout.pdf
etc.

Some sources use both:

Wikipedia: https://en.wikipedia.org/wiki/Quantum_logic_gate#/media/File:Quantum_Logic_Gates.png
https://threeplusone.com/pubs/on_gates.pdf


Operating system
centos8.5
Description
使用官方镜像en_windows_7_enterprise_with_sp1_x64_dvd_u_677651.iso和cn_windows_7_ultimate_sp1_x64_dvd_677408.iso安装的vin7都没有文件共享

Docker compose
version: "3"
services:
windows:
image: dockurr/windows
container_name: windows
privileged: true
devices:
- /dev/kvm
cap_add:
- NET_ADMIN
ports:
- 28006:8006
- 23389:3389/tcp
- 23389:3389/udp
stop_grace_period: 2m
restart: on-failure
environment:
VERSION: "7e"
MANUAL: "Y"
LANGUAGE: "Chinese"
RAM_SIZE: "16G"
CPU_CORES: "16"
DISK_SIZE: "1024G"
USERNAME: "root"
PASSWORD: "123456"
volumes:
- /data/windata:/storage
- /home/data:/data
- /home/soft/cn_windows_7_ultimate_sp1_x64_dvd_677408.iso:/custom.iso
networks:
winlynet:
ipv4_address: <IP_ADDRESS>
networks:
winlynet:
external: true
Docker log
windows  | iptables v1.8.10 (legacy): can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
windows  | Perhaps iptables or your kernel needs to be upgraded.
windows  | ❯ ERROR: The 'ip_tables' kernel module is not loaded. Try this command: sudo modprobe ip_tables iptable_nat
windows  | ❯ Warning: falling back to usermode networking! Performance will be bad and port mapping will not work.
❯ Windows started succesfully, visit http://localhost:8006/ to view the screen...
Screenshots (optional)
No response

Hi ..
I am running the system perfect, but suddenly i have lost host.lan in windows11. When i boot the docker container i have the next error:
ERROR: The 'tun" kernel module is not available. Try this command: 'sudo modprobe tun' or run the container with 'privileged: true' .....
I have done modprobe tun command with no luck. To enablehost.lan inside windows 11, now i have to modify docker-compose and add privileged: true...
Maybe something regarding a pull docker upgrade ( now using Docker v4.05) or a system upgrade ?

Hi ..
Working adding /dev/net/tun ...
What i do not understand is that before it was working ... and suddenly stops working ..
Thanks ..

sudo modprobe ip_tables iptable_nat


Remove device does not clean up the agent

I dont know if this is a bug or a missing feature but after deleting a device from the web ui I noticed that the docker agent is still running on my client. I think the agent should remove itself when the device was removed.

I think it may be optional, but the remove should be the default option.  If the user wants to keep it on the device he can choose to do so. But this is the opinion based on what I expected first, and thinking on the user experience with other systems this make sense to me, it is what my mind expects to happen.

Yes, I also think if I choose to remove the device it should cleanup the docker container. Would there be a use case for keeping the docker container?

Imagine you remove the wrong device and it is a device that is not easy to have physical access to it. It'll be a problem.
We also have use cases where the agent is not running inside a Docker container, for example running inside an embedded device that was built using the Yocto Project. In the case, the agent cannot be removed (possibly it runs inside a read-only rootfs).
I'd imagine we could "block" a device from adding itself (which could reduce the keepalive interval), and for blocked devices and offer an option to uninstall the agent if, and only if, it is running on Docker.

Maybe a two step approach?

deactivate device / invalidate/block client access
option to delete device (if in state deactivated & can be deleted) - otherwise gray delete option with note that it can't be deleted because X

We did experiment doing it but there are a number of cases it can go wrong. Also, especially embedded devices, it can be stored on read-only storage and we'd need to have different behavior for Docker vs native packages and embedded.
We believe if the user wishes to remove the agent, it can be done using the tunnel itself. Also, we improved the device registration workflow so now the devices return to pending state now.


update packages on server

What is this PR trying to achieve?
Ive been trying to get greenkeeper working for a while and can't.
@gestchild @davidpmccormick any thoughts on how to stay green on the client too?

any thoughts on how to stay green on the client too

Afraid to say this isn't something I've got any familiarity with at all – don't think I'd know where to start.


QUIC Polling Lite

Built on the value API PR.
Fixes https://github.com/openssl/project/issues/418
45816d5b31 BIO: Add SSL poll descriptor type
7d7487a47e QUIC: Add polling API
d0d3fe9dd8 QUIC: Add glossary entry for RIO
0eaa315b95 QUIC RIO: Add frontend SSL_poll implementation
ba4914242d QUIC QSM: Allow bidi and uni incoming streams to be tracked separately
ace50ae836 QUIC APL: Implement SSL_poll backend
322f25d2e7 QUIC: Add manpage for SSL_poll
bc6c655570 make update
e2c889d926 QUIC POLLING: Implement autotick
5c876b6929 QUIC MULTISTREAM TEST: Add test for SSL_poll
4b87151073 QUIC MULTISTREAM TEST: Fix perl warning around envvars

@nhorman Remember, this is built on top of https://github.com/openssl/openssl/pull/23360 so most of these comments pertain to that PR, not this PR. No need to move them, I'll apply them to that PR in due course, but for future reference.

Roger that, my bad

Please rebase

Rebased. Minor tweak in response to @levitte's comment.

confirm approval

Updated

confirm, approval holds

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Merged to master. Thanks for the reviews.

Does QUIC Polling Lite's API support the following calls?
epoll is processed first, then quic poll.
   epoll(tcp, quic)
        |
tcp     |         quic
|-------|----------|
|                  |
recv            SSL_poll(stream1, stream2, listener)
                     |
                     |
             |-------|-------|
         listener stream1  stream2

Does QUIC Polling Lite's API support the following calls? epoll is processed first, then quic poll.
   epoll(tcp, quic)    <--block here
        |
tcp     |         quic
|-------|----------|
|                  |
recv            SSL_poll(accept, stream1, stream2)  <-- nonblock
                     |
                     |
             |-------|-------|
         accept   stream1    stream2

Yes. This is an intended usage pattern.


Plot the variables in different plots based on unit

Visualization of the box-and-whiskers plots would be better if we plotted grouped by the different units
Suggestion to make plotting option for this. Add config flag?

@gallenaxel , are your thesis/CHEP plotting scripts merged to main?


missing type ?  jexcels {any}

Hi how i can get intellisense suggestion in vscode for jexcels?
It alway any !?
Do i made a mistake somewhere ?

how maybe do you have something like this ? i know sometime it work
npm i --save @types/jexcels ?
thanks for any help

npm install --save @types/jexcel


Change findByTitleIgnoreCase to return an array

Change findByTitleIgnoreCase to return an array of books, not just one (see thread: https://github.com/Project-Books/book-project/issues/882). We will also need to have multiple books with the same name so we can properly test this functionality.

Hi knjk04, I would like to work on this issue.

Hi @YashxAnand. apologies for the delay in getting back to you. This issue is already assigned, but feel free to request to be assigned to one of our other, non-assigned issues


Model Checkpoint Improvements

The current checkpoint design needs some improvements.
Format

The on-disk file names should be readable and deterministic instead of random numbers.
For example, if we have two callssave_checkpoint(path, target)
save_checkpoint(path, target)

The second call should fully overwrite the first call. However, in the current implementation with random numbers, we store two copies and the former will never be deleted or used.
We should not store any absolute path

Speed
Due to frequent synchronization and compression, the current save/load speed is very slow. We need to benchmark the performance against the peak bandwidth.
The peak bandwidth of load can be measured by running a jax program that reads np arrays from disk to local GPU memory. Ditto for save. When we save/load distributed arrays with multiple workers, we should also try to get a perfect linear scaling.
The possible ways to improve bandwidth include batching small arrays, batching ray calls, multithreading, and overlapping driver process with worker processes.
The micro-benchmark script can be put under https://github.com/alpa-projects/alpa/tree/main/playground/alpa_micro_benchmark
Features
As a bonus, we want to support partial writing and partial reading. For example, we can save the checkpoints in two separate calls.
# Write layer 1
param_tree_1 = {
  "1": {"kernel": array, "bias": array},
  "2": {"kernel": None, "bias": None},
}
save_checkpoint(path, param_tree_1)

# Write layer 2
param_tree_2 = {
  "1": {"kernel": None, "bias": None},
  "2": {"kernel": array, "bias": array},
}
save_checkpoint(path, param_tree_2)

Ditto for load.
Minors
The aval for replicated arrays is the same
https://github.com/alpa-projects/alpa/blob/a0d1d17ddc444924c27ef11816bc0963750570b9/alpa/serialization.py#L177

I did some benchmark experiments for save/load. I chose three different methods for save/load: (1) flax's checkpoint functions (2) alpa's current checkpoint functions (no compression) (3) np.save/load. All the experiments are conducted both on EFS filesystem and local filesystem (results indicated that EFS can be the bottleneck).
First, to benchmark the peak bandwidth for save/load, I used the above three methods to save/load a 1GB ndarray between GPU and disk.
So I also benchmarked the three methods on a real MLP model (3G params):
    Benchmark results on EFS:
    - flax.save_checkpoint: average run time: 45.19087886810303 seconds, average throughput: 0.5313484040513637 Gbps
    - alpa.save_checkpoint: average run time: 16.15189399719238, average throughput:    1.4860819837013484 Gbps
    - np.save:                         average run time: 20.618193340301513, average throughput: 1.1642373201358331 Gbps

    Benchmark results on local disk:
    - flax.save_checkpoint: average run time: 16.1341721534729, average throughput: 1.4877078603042466 Gbps
    - alpa.save_checkpoint: average run time: 10.663438653945922, average throughput: 2.2509621962263244 Gbps
    - np.save:                        average run time: 20.618193340301513, average throughput: 1.1642373201358331 Gbps

Now the numpy is slower than alpa's tensorstore.
I read the source code of np.save and find that when the target is a python object, numpy will use pickle to serialize the object, but if the target is an array, it will call the fast path. This explains the above two experiments. In the single array case, flax is slow because it uses msgpack (a package for object serialization similar to pickle), alpa is slow because it uses tensorstore, but numpy is fast because it calls the fast pass to save array data directly, without any serialization overhead. In the MLP case, the saving/loading target is a TrainState object, so numpy will use pickle to serialize it, losing the performance.
Conclusion:

object serialization and tensorstore is slow => I will try to implement the resharding feature solely in numpy array
EFS is slow => maybe each host can save part of the model on local disk first, but then the resharding process during loading can be problematic :(

@merrymercy @zhuohan123 Hope for comments ~~

In fact, the performance of tensorstore on EFS is not that bad compared to the peak bandwidth according to the benchmark results. In contrast, EFS may be a worse problem for performance.

I think we can get around tensorstore pretty easily. The only thing needs to be newly implemented is how to save and load sharded tensor with native numpy.
Regarding the speed of EFS, we can write to local disk first and have a background process move it into nfs. I am thinking an API like this:
save(model, nfs_path, local_cache_dir=None)

When local_cache_dir is not None, we can store the model into it first and then move to the nfs.

I like the local disk cache method, but some problems still exist:

The load function can not utilize this idea easily. Should we move the model from EFS into the local disk first, then start loading?
When should the save function return? If it returns as soon as writing into the local disk. Then if the user wants to load the model before the background process finishes moving, problems will occur. If it waits for the background process to complete, the performance is the same as directly writing into EFS because the write bandwidth is the same. I benchmarked the waiting version on a 4G MLP and the result is in line with my expectation (throughput is about 0.7Gbps, the same as no cache version).

Moving to local disk before loading should be done by users beforehand, because there will be no performance gain if we do it by ourselves.
Again, save should return when we finish writing to the local disk, otherwise there will be no performance gain.

Resolved by #487


ConditionCard

we should consider adding an expandable card (like the PopulationCard) that is for the selected condition.
Card will contain:

condition name
definition (from bottom of report)
like Population can expand for more information,
possibly 3 graphs showing change of condition rates 1) by age 2) by sex 3) by race

hold on this until we learn more from legal epi work.


AF-88 release sockjs-dart-client 0.3.4

JIRA: https://jira.webfilings.com/browse/AF-88
Releases that need to go out at the same time (if any):
JIRA and PR's included in this release:
======= sockjs-dart-client 0.3.4 items =======
AF-1874 - Dart 2 compatibility - https://github.com/Workiva/sockjs-dart-client/pull/18
======= end =======
Diff Between Last Tag and Proposed Release: 0.3.3...release-0-3-4

Security Insights
No security relevant content was detected by automated scans.
Action Items

Review PR for security impact; comment "security review required" if needed or unsure
Verify aviary.yaml coverage of security relevant code

Questions or Comments? Reach out on HipChat: InfoSec Forum.

QA +1

[x] Dependency bump only
[x] Dev +1's
[x] CI passes
[x] Dependency scan clean

@Workiva/release-management-pp


Smooth transitions

I'm not sure if possible but would be nice if the transitions were less abrupt when cropping the black bars. Especially for movies like The Dark Knight that have a dynamic aspect ratio, having a smooth cropping operation would be easier on the eyes i.e. when film goes 16:9 => 21:9 the video enlarges gradually

Hello, I didn't include you in https://github.com/Ashyni/mpv-scripts/commit/7828cc71dad30aa374d0da7d80b1aea79b923080 but i think it's the best i can do for now.
read_ahead_mode 1 or 2 provide a better timing, so the change feel less abrupt.

Thanks! Can't test it now, but I will trust that it's fixed/improved.


⚠ Bofrost.lu has degraded performance

In 9ef246e, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 2227 ms

Resolved: Bofrost.lu performance has improved in bcd2b7d after 54 minutes.


Custom Editor Tabs Are Buggy When The Text Editor Is Also Opened

Version: 1.51.1 (system setup)
Commit: e5a624b788d92b8d34d1392e4c4d9789406efe8f
Date: 2020-11-10T23:34:32.027Z
Electron: 9.3.3
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19041
Steps to Reproduce:

Open a file with a custom editor (and don't close it)
Now, open the file again with the default text editor
Click on the tabs of the editors to switch between them

Actual Result
It always jumps to the custom editor tab.
Expected Result
The default text tab should be shown if clicked on its tab.

Duplicate of #111474


fix(@angular-devkit/build-angular): silence Sass compiler warnings from 3rd party stylesheets

With this change we enable quietDeps, which causes the Sass compiler not to emit warnings from a stylesheet that is loaded through load-path.
The --verbose option can be used to opt-out from this behaviour and display all warnings.
Closes #21235

I am currently on Angular version 12.0.0. How can i get this update to get rid of deprecation warnings appearing for sass in carbon-components library ?


[idea] Themable primary colour in simpla-styles/ecosystem

If all Simpla elements define their colors like so:
:host {
  color: var(--simpla-primary-color, --simpla-blue);
}

Rather than just var(--simpla-blue), then users can change the primary color, and hence instantly theme, the whole ecosystem by just setting
html {
  --simpla-primary-color: red
}

In their document. Could be really good, give some personalisation control to the developers, to match a brand and become really seamless. Obviously we can't absolutely enforce this, but it can be a guideline that we uphold in any kind of public registry.

Definitely doing this, though the default --simpla-primary-color should be defined here, to make it easier for element authors.
In simpla-styles
:root {
  --simpla-primary-color: var(--simpla-blue);
}

In element
:host {
  color: var(--simpla-primary-color);
}

In userland
html {
  --simpla-primary-color: red
}

That should work according to the spec, but depends on how the new shady CSS shim behaves when its global.


Is not available at the mobile terminal?

When I use the browser to open the mobile terminal, I found that there is no response, simply can not record sound or video, I would like to ask why?

permission issues . Web browsers have those functionalities.mobiles are personal devices and thus the security levels are high.When u install apps then they ask for that permission tobe in ur mobile and use the camera.Sadly a browser isnt allowed to do that .


Fix lint rules in version 0.50

Ooops I think I reviewed this twice 🙈

I changed this two things.

Sorry for all of this. Please check.

No need to apologize, thanks for a great change!

Welcome.


ContainerRegistryClient update methods do nothing

Package Name: azure-containerregistryclient
Package Version: 1.0.0b7
Operating System: MacOS Monterey 12.1 on M1
Python Version:  3.8

Describe the bug
azure.containerregistry.ContainerRegistryClient has 3 update methods, none of which work. The get/list methods work fine.
To Reproduce
Suppose a repository with the name myrepo exists with the tag mytag at https://myacr.azurecr.io.
Let's attempt to update the last updated time of some objects. NB this fails on any field e.g. name, but last updated time is common to all 3 and easy to understand.
from azure.containerregistry import ContainerRegistryClient, RepositoryProperties, ArtifactTagProperties, ArtifactManifestProperties
from datetime import datetime

client = ContainerRegistryClient("https://myacr.azurecr.io", DefaultAzureCredential(), audience="https://management.azure.com")
now = datetime.now()

# All 3 of these calls run without any exception raised, but nothing changes in ACR
client.update_repository_properties('myrepo', RepositoryProperties(last_updated_on=now, can_delete=True, can_read=True, can_list=True, can_write=True))
client.update_tag_properties('myrepo', 'mytag', ArtifactTagProperties(last_updated_on=now, can_delete=True, can_read=True, can_list=True, can_write=True))
client.update_manifest_properties('myrepo', 'mytag', ArtifactManifestProperties(last_updated_on=now, can_delete=True, can_read=True, can_list=True, can_write=True))

Nothing changes on ACR, even though these calls ran without errors.
I don't believe this is a permissions issue, because various other calls e.g. client.get_repository_properties('myrepo') work fine and return correct values.
Interestingly, errors are raised as expected when e.g. setting a non-existent repo or tag name.
Expected behavior
The properties of the selected object change, or an exception is raised explaining what is wrong.

@YalinLi0312 can you please take a look?

Thanks for the report @theoturner
While @YalinLi0312 digs into the repro - one thing I'm curious if you tried is the keyword arg syntax, i.e. something like this:
client.update_repository_properties('myrepo', can_delete=True, can_read=True, can_list=True, can_write=True)
client.update_tag_properties('myrepo', 'mytag', can_delete=True, can_read=True, can_list=True, can_write=True)

The only updatable properties are the permissions attributes above (this is not documented well and needs to be updated), and I'm wondering if the presence of the last_updated_on field (which I think is automatically set by the service) might be resulting in a silent failure somewhere.....

Hi @theoturner, thanks for reaching out!
Not all properties of XXXProperties object are allowed to update, you could update writable properties such as can_delete, can_read, can_list, and can_write. We'll update the docstring of these functions to be more clear.
Also, you could try something below to see updates:
client.update_repository_properties('myrepo', can_delete=False, can_read=False, can_list=False, can_write=False)
client.update_tag_properties('myrepo', 'mytag', can_delete=False, can_read=False, can_list=False, can_write=False)
client.update_manifest_properties('myrepo', 'mytag', can_delete=False, can_read=False, can_list=False, can_write=False)

Thanks

Thanks @theoturner!
I have opened a PR to get these docstrings improved for clarity.
I think the intention of the name update_properties was to allow the methods to grow should more updatable settings become available.


No module named 'qlib.tests'

❓ Questions and Help
!git clone https://github.com/microsoft/qlib
!python ./qlib/scripts/get_data.py qlib_data_cn --target_dir ./qlib/qlib_data/cn_data
-> Traceback (most recent call last):
File "./qlib/scripts/get_data.py", line 4, in
from qlib.tests.data import GetData
ModuleNotFoundError: No module named 'qlib.tests'

Please  install qlib first by python setup.py install

@aGiant
Your command is form the old version.
Please use the latest command in the index README.md
python scripts/get_data.py qlib_data --target_dir ~/.qlib/qlib_data/cn_data --region cn

setup.py install

Error in Colab:
!python qlib/setup.py install
-->
/usr/local/lib/python3.6/dist-packages/setuptools/dist.py:452: UserWarning: Normalizing '0.6.0.dev' to '0.6.0.dev0'
warnings.warn(tmpl.format(**locals()))
running install
running bdist_egg
running egg_info
creating pyqlib.egg-info
writing pyqlib.egg-info/PKG-INFO
writing dependency_links to pyqlib.egg-info/dependency_links.txt
writing entry points to pyqlib.egg-info/entry_points.txt
writing requirements to pyqlib.egg-info/requires.txt
writing top-level names to pyqlib.egg-info/top_level.txt
writing manifest file 'pyqlib.egg-info/SOURCES.txt'
reading manifest file 'pyqlib.egg-info/SOURCES.txt'
writing manifest file 'pyqlib.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_ext
cythoning qlib/data/_libs/rolling.pyx to qlib/data/_libs/rolling.cpp
creating qlib/data
creating qlib/data/_libs
error: /content/qlib/data/_libs/rolling.pyx

@aGiant
Please install Cython.
Thanks

@aGiant
Please install Cython.
Thanks

Requirement already up-to-date: cython in /usr/local/lib/python3.6/dist-packages (0.29.21)
/usr/local/lib/python3.6/dist-packages/setuptools/dist.py:452: UserWarning: Normalizing '0.6.0.dev' to '0.6.0.dev0'
warnings.warn(tmpl.format(**locals()))
running install
running bdist_egg
running egg_info
writing pyqlib.egg-info/PKG-INFO
writing dependency_links to pyqlib.egg-info/dependency_links.txt
writing entry points to pyqlib.egg-info/entry_points.txt
writing requirements to pyqlib.egg-info/requires.txt
writing top-level names to pyqlib.egg-info/top_level.txt
reading manifest file 'pyqlib.egg-info/SOURCES.txt'
writing manifest file 'pyqlib.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_ext
cythoning qlib/data/_libs/rolling.pyx to qlib/data/_libs/rolling.cpp
error: /content/qlib/data/_libs/rolling.pyx

There some issue with Cython on Python 3.6, Please try python 3.7 or 3.8.
Thanks

installed using python 3.7 but got errors by running examples/workflow_by_code.ipynb.
Have you guys tested the "examples/workflow_by_code.ipynb" notebook?
None same results for "Cumulative Return of groups" as posted on GitHub page and analysis_model.model_performance_graph(pred_label) returns "Spine object has no attribute 'is_frame_like'"...

@aGiant
Please update matplotlab and plotly:
python -m pip install -U matplotlib==3.1.3 plotly==4.12.0

Thanks

@aGiant
Please update matplotlab and plotly:
python -m pip install -U matplotlib==3.1.3 plotly==4.12.0

Thanks

This worked, many thanks 👍


refactor: rename to Vercel

This PR renames ZEIT to Vercel

Merging this in favour of #36 because CircleCI didn't want to run over there for some reason! Thanks both @bukinoshita and @delianides 🎉


some errors about ReinitializeDatabase (C#)

when I  ReinitializeDatabase , the  framework start to create table .
but some times, it doesn't add [RowID] column to the client.
as I know, if a table whithout RowID then can't sync.
I've created 2 tables on the server, test and test2.
when I click ReinitializeDatabase  button
test2 has no [Rowid] column,but test has!
I  add the exist table to sync（call AddTable API) always get this error.
here is the ReinitializeDatabase response content:
we can see about the create table test2 code, it really has no [RowID]!

there is a 'rowid' in the test table:

"00014 test" : "CREATE TABLE "test" ([id] INTEGER ,[name] TEXT  DEFAULT ('NULL') ,[age] INTEGER  DEFAULT (NULL) ,[birthday] DATETIME   ,[RowId] TEXT  DEFAULT ('NULL') ,"MergeUpdate"  INTEGER NOT NULL DEFAULT (0) );",

but,there is not a 'rowid' in the test2 table.

"00007 test2" : "CREATE TABLE "test2" ([id] INTEGER ,[country] TEXT  DEFAULT ('NULL') ,[city] TEXT  DEFAULT ('NULL') ,[code] INTEGER  DEFAULT (NULL) ,"MergeUpdate"  INTEGER NOT NULL DEFAULT (0) );",

I found the reason.
when you use addtable api to add a table to sync ,or change your master db schema.
you should restart tomcat!

As a matter of fact, only when you change your master db schema you need to
restart tomcat (or application). It happens because connection pooling is
used, and it needs to be refreshed.
On Wed, Nov 6, 2019 at 3:05 AM jqrv<EMAIL_ADDRESS>wrote:

I found the reason.
when you use addtable api to add a table to sync ,or change your master db
schema.
you should restart tomcat!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sqlite-sync/SQLite-sync.com/issues/18?email_source=notifications&email_token=ACNU5N3Y6KYY7QAILXQE7HLQSIQ6ZA5CNFSM4JI4PMV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDE7YUY#issuecomment-550108243,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACNU5NYUPDOKTY3B6RDFA7LQSIQ6ZANCNFSM4JI4PMVQ
.

--
Best regards
Tomek Dziemidowicz
E-mail<EMAIL_ADDRESS>Take care of the Environment with us!
Do not print this message or other documents if it is not necessary.

you are right.

Can you share the schema of table test2? Does log contain anything, any
errors?


How to use custom Intercepters with order

I using Spring Boot and write RESTfull services. In my pom.xml I added:
<dependency>
      <groupId>org.zalando</groupId>
      <artifactId>logbook-spring-boot-starter</artifactId>
     <version>1.11.0</version>
</dependency>

I have this intercepter:
@Component
public class MyInterceptor extends HandlerInterceptorAdapter {

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println("DO STUFF");
        return true;
    }
}

And I registred this:
@Configuration
public class TaxiFareMVCConfig implements WebMvcConfigurer {

    private final MyInterceptor myInterceptor;

    @Autowired
    public TaxiFareMVCConfig(MyInterceptor taxiFareRequestInterceptor) {
        this.myInterceptor = taxiFareRequestInterceptor;
    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(myInterceptor);
    }
}

My appliacation.yml:
logbook:
  include:
  - /**
  filter.enabled: true
  format.style: http
  write:
    category: http.wire-log
    level: INFO

Everything works very well, and I see in the logs request and response:
2018-10-22 21:32:42.058  INFO 3756 --- [io-8080-exec-10] http.wire-log                            : Incoming Request: b757850a12ee1796
POST http://localhost:8080/employees HTTP/1.1
content-length: 25
host: localhost:8080
content-type: application/json
connection: Keep-Alive
accept-encoding: gzip,deflate
user-agent: Apache-HttpClient/4.5.5 (Java/1.8.0_152-release)
accept: */*

{"name":"Petya","age":45}
DO STUFF
2018-10-22 21:32:42.079  INFO 3756 --- [io-8080-exec-10] http.wire-log                            : Outgoing Response: b757850a12ee1796
Duration: 21 ms
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Date: Mon, 22 Oct 2018 18:32:42 GMT
Content-Type: application/json;charset=UTF-8

{"name":"VAsya","age":26}

But there is one very big problem for me. I need to get my Interceptor, worked BEFORE logbook to DO STUFF displayed BEFORE the logging request. Really need your help, I do not understand how this can be done?
I want to get the following sequence:
DO STUFF
2018-10-22 21:32:42.058  INFO 3756 --- [io-8080-exec-10] http.wire-log                            : Incoming Request: b757850a12ee1796
2018-10-22 21:32:42.079  INFO 3756 --- [io-8080-exec-10] http.wire-log                            : Outgoing Response: b757850a12ee1796

The logbook integration is implemented as a Servlet filter. Any HandlerInterceptor is part of Spring's internal handler mapping which runs as part of the DispatcherServlet. There is no straightforward way to achieve what you're looking for with those two mechanisms.
One option that I see is to implement your MyInterceptor as a servlet filter as well that you register before the logbook filter.


Adds 'set(isActivated: Bool)' to Constraint

I've got lots of places where I activate one constraint and deactivate another based on some bool, it has been much nicer to use a function that accepts a bool:
let buttonVisible = someCondition
wideConstraint.set(isActivated: buttonVisible)
narrowConstraint.set(isActivated: !buttonVisible)

Or as a diff to show what I mean:
 let buttonVisible = someCondition
-if buttonVisible {
-    wideConstraint.activate()
-    narrowConstraint.deactivate()
-else {
-    wideConstraint.deactivate()
-    narrowConstraint.activate()
-}
+wideConstraint.set(isActivated: buttonVisible)
+narrowConstraint.set(isActivated: !buttonVisible)

Function name was the first that popped in my head, but I was following the update(offset: ..) naming scheme.  Tests included, plus a minor refactor to prepare/make/update–Constraints to delegate identical code to prepareConstraints.

@colinta what do you reckon about a var isActivated: Bool instead? I feel like it's cleaner syntax and we can then also read the state?

Makes sense! I’ll update the PR soon.

I see that there's already a property isActive, that feels like the right place to put this:
    public var isActive: Bool {
        set {
            if newValue {
                activate()
            }
            else {
                deactivate()
            }
        }

        get {
            for layoutConstraint in self.layoutConstraints {
                if layoutConstraint.isActive {
                    return true
                }
            }
            return false
        }
    }

(PR and specs updated)

Thanks @colinta looks good


Basic golangci-lint workflow configuration

Make use of https://golangci-lint.run/ in the CI pipeline.
Config based on https://github.com/golangci/golangci-lint/blob/master/.golangci.yml +disabled failing linters
More linters should be enabled gradually as their problems are fixed
Tested in my fork with:

success, same as this PR: https://github.com/stefanb/rye/pull/2
breaking by enabling a new linter: https://github.com/stefanb/rye/pull/3
breaking by introducing a new codesmell:  https://github.com/stefanb/rye/pull/4 rsulting in automagic code review annotation:

Further configuration is possible as per

https://github.com/golangci/golangci-lint-action
https://golangci-lint.run/usage/configuration/

Hello again. This is great also! I will merge this and if I understand then need to fix the things linters report. And then we can enable more of them and fix / improve more things. Sounds awesome for the quality of code! Thank you!

Enable one linter, open a PR, see errors, fix errors the linter reports, merge.
You can also run linter locally after installing it - see https://golangci-lint.run/usage/install/
then just execute golangci-lint run


feat: Setup github actions for testing, building and releasing.

Is your feature request related to a problem? Please describe
Add github actions for running until tests, building package and releasing package(s) to NPM registry.
Describe the solution you'd like
Github actions for the things I said above.
Describe alternatives you've considered
Have manual processes instead, this is not scalable.

@walmsles
I can create an initial pipeline build for the project.
Questions:

What is the node.js version that is used in the project?
Which are the criteria that trigger the pipeline? E.g : when pull request is do? when merge ?


MultiViewer.MultiViewerforF1 version 1.15.1

[x] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.4 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Silent switches may need to be specified

Could you post the setup log? I couldn't reproduce this in a Windows 11 VM.


Additional instructions for Apple Silicon Users

Trying to deal with building the website using Github Actions, I found a problem related to my local development build being an Apple Silicon Mac.
I found a workaround for this, and I'm sharing and adding the step-by-step to fix the problem, in case you find suitable to include this for the rest of Apple Silicon Mac users :)

Can you verify this @pourmand1376? I don't have access to a Mac.

Hey Guys.
I tested on mac and I really couldn't figure out the issue. There is no issue here.
Here's what I've done.
docker compose pull
docker compose up

Is there any way to replicate your issue?

The issue is not related to local development, but when you try to deploy this website to Github Actions, see here an instance of a failed build when you push your changes from local.
Again, local development is just fine using the docker compose.

Maybe this is related to #2682, #2544?

Can you explain how you updated your Gemfile.lock file and what was the reason?

Maybe this is related to #2682, #2544?

Yes, it seems so. I got those issues before updaing the Gemfile.lock

Can you explain how you updated your Gemfile.lock file and what was the reason?

The way I managed to update the Gemfile.lock is by doing the step-by-step I added on INSTALL.md, I paste this again here:

Connect to your docker container (docker exec -it <container_name> sh)
Run the following commands inside the containerbundle lock --add-platform ruby
bundle lock --add-platform x86_64-linux

Remove Gemfile.lock outside the container (rm -rf Gemfile.lock)
Run bundle install inside the container.
After that, you should have a new Gemfile.lock capable of handling builds for both local and production environments.
Push the new Gemfile.lock and you should be good to go.

The problem here is the following: the first time you run docker compose pull; docker compose up it is populated using the LOCAL development environment, so, it lists and adds the proper items to Gemfile.lock for THAT (local) platform (in my case, ARM-based ones). HOWEVER, it may be the case that the PRODUCTION environment architecture is DIFFERENT from your local one (this is my case, and also the cases on issues #2682, #2554). In this case, you need to rebundle the Gemfile.lock to consider this platform target. Is it clear now?

Somehow its Gemfile.lock is apparently being overwritten and commited to the repo, which I believe it shouldn't. We have Gemfile.lock versioned here and also added to the .gitignore. Also if you look at the versioned Gemfile.lock we have
https://github.com/alshedivat/al-folio/blob/046545983f0864b62e883105955717cbf298561c/Gemfile.lock#L215
which is the version you just locked into.

@0xAdriaTorralba
OK. Thanks for explanation. I think a better workaround is that you don't commit Gemfile.lock to the repository and it remains the same instead of changing it everytime. Does that solve your problem?
For that before any commit do this:
git restore Gemfile.lock

@george-gca And About .gitignore. Adding a file to gitignore won't work if we already have that file tracked in repository.

Thanks for mentioning that. I think we need to add another PR or change this PR somehow to make that change everytime.
We should add this command somewhere to be run after finishing local deployment:
git restore Gemfile.lock

Maybe we should do something like git update-index --assume-unchanged somewhere? Idk if it would solve the issue, since this flag can't be pushed to the repo.

I merged the change since I'm sure that line was problematic and I should've changed that since we've added Gemfile.lock into repository.

I merged my change. It should solve this problem.

This is not needed anymore.


Does not work for me on mac

I put in the path. Tried different ways.  Does nothing.

Are you on windows?

Can I see the path that you put in?

The last path was: /Applications/Visual Studio Code.app

go to terminal and type which code
/usr/local/bin/code

That is exactly what I see:
/usr/local/bin/code

that's the path that you should put in.

Ah! Well that changes everything.  In most cases I have had to give the path to the app that it was trying to communicate with, not to the plugin.  I would suggest making that clear.

yeah, i'll do that. let me finish refactor this open folder in vscode feature first.

This is really helpful, just what I was looking for - thanks!!


Added Arabic equivalents to the denylist

In the Arabic list, I made sure to add multiple spellings of the same word (since most of them are borrowed).

Thank you! I also had someone else interested in supplying French translations. I'm concerned that as the number of translations increases, the runtime will also increase (linearly).
I have an idea for how we could make this work for you and other users without incurring a penalty for other folks. What do you think about adding something like this?
let siteLang = document.documentElement.lang; // current site language
let browserLang = navigator.language; // browser language preference
let translations = {
  'ar': [
    'كوفيد',
    'كورونا'
  ],
  'fr': [
    'épidémie'
  ]
};
// iterate through each language/translation pair
for (let [key, value] of Object.entries(translations)) {
  // if the site uses this language or the browser uses this language
  if (siteLang.startsWith(key) || browserLang.startsWith(key)) {
    // add all the translations to the denylist
    denylist.push(...value);
  }
}

If you have a chance to test that this works for you, I'd hugely appreciate it. I didn't test this code, so there might be a bug :)

That sounds like a good idea. I added the code snippet and tested the extension, it seems to be working fine. By why should we still keep the denylist and fill it? Why not load the list fro, translations corresponding to the language and English can always be the default. 🤔


'profile test, docker' fails with command error(127) .command.sh: line 2: samtools: command not found

Description of the bug
I am trying to run profile test as described at this link  and the test fails with command error displayed below.
Command used and terminal output
Command used:
`nextflow run nf-core/rnaseq -profile test, docker --outdir <externalharddrive>`
terminal output:
: Got an interrupted exception while taking agent result | java.lang.InterruptedException
Error executing process > 'NFCORE_RNASEQ:RNASEQ:PREPARE_GENOME:CUSTOM_GETCHROMSIZES (genome_gfp.fasta)'

Caused by:
  Process `NFCORE_RNASEQ:RNASEQ:PREPARE_GENOME:CUSTOM_GETCHROMSIZES (genome_gfp.fasta)` terminated with an error exit status (127)

Command executed:

  samtools faidx genome_gfp.fasta
  cut -f 1,2 genome_gfp.fasta.fai > genome_gfp.fasta.sizes

  cat <<-END_VERSIONS > versions.yml
  "NFCORE_RNASEQ:RNASEQ:PREPARE_GENOME:CUSTOM_GETCHROMSIZES":
      custom: $(echo $(samtools --version 2>&1) | sed 's/^.*samtools //; s/Using.*$//')
  END_VERSIONS

Command exit status:
  127

Command output:
  (empty)

Command error:
  .command.sh: line 2: samtools: command not found

Work dir:
  /media/annita/TOSHIBA EXT/work/73/e2df6b9538a56f02c4411b0e52cfe9

Tip: when you have fixed the problem you can continue the execution adding the option `-resume` to the run command line

Unexpected error [AbortedException]

 -- Check script '/home/annita/.nextflow/assets/nf-core/rnaseq/./workflows/../subworkflows/local/input_check.nf' at line: 37 or see '.nextflow.log' file for more details

Relevant files
nextflow.logfile.zip
System information

Nextflow version: 21.10.6
Hardware: Desktop
Executor: local
Container engine: Docker 20.10.13
OS: Ubuntu 20.04 VM on windows 10 host
Version of nf-core/rnaseq:  3.6

Hi @annita-louloupi  ! Apologies in the delay in responding. Did you figure out why the pipeline was failing?
It appears to be because you have a space between profiles and the pipeline is unable to use Docker and hence the software commands like samtools aren't found.
It should be -profile test,docker and not -profile test, docker.
PS: If you haven't already it may be worth joining the #rnaseq channel on the nf-core Slack workspace for more real-time help.


Feature/47 update app title

Addressed some issues from #47

Current coverage is 0.00% (diff: 0.00%)

Merging #52 into develop will not change coverage

@@           develop   #52   diff @@
====================================
  Files            1     1
  Lines           20    20
  Methods          0     0
  Messages         0     0
  Branches         0     0
====================================
  Hits             0     0
  Misses          20    20
  Partials         0     0

Powered by Codecov. Last update 8100ef5...78b6365


Enable import from webpack

I managed to do this with just this line
module.exports = pagex;

Nowadays I prefer to do something I learned from React and use in my plain-js files: use component-based architecture. Instead of checking whether the current page is a specific page, do everything around an element. Example in /article/edit/24534:
// Before
pagex('/article/edit/:id', id => { ... });

// Now:
const editor = document.querySelector('.editor');
if (editor) {
  const id = editor.id;
   ...
}

It is a few more characters, but in exchange it is a lot better in many situations. This is similar to browser sniffing (what page you are at) vs feature detection (what you can/should do). I will retrofit what you suggest though.

Note: just bumped it to the 2.3


File Handling in workspaces (available files on root, open files)

I work a lot with vscode. The tool is amazing!
Often I work with different windows / sessions. To switch between different tasks (devops, websites, md-files).
At the moment (vscode 1.37.1) the last session will be restored when I open a new vscode session, that is fine. Session means in that case, open files and Explorer.
I was thinking that "workspaces" can help me to handle different sessions, but that was wrong. Workspace is more for "folders" and "extensions" but NOT for files.
I found also "Allow "files" field in .code-workspace file #45177
My Feature Request would be:

Can a workspace save open files (maybe including the view). So it would be possible to open a workspace and continue working with the open files from last session.
Can a workspace handle files on root, like README.md or .gitignore. Otherwith I have to add "." (as root) to the workspace and not specific folders.

@N7K4 every opened file is associated with a workspace, can you provide steps where this does not work?

On the local machine you are right. But when I use a workspace file under source control or I want to share it with a team member (on a different machine) all files are not listed.


Add a new benchmark data series for prefetching.

Also run benchmarks with the seqscan prefetching (commit f44afbaf62) enabled.

@bayandin does this look sane to you? I also wanted to rename the 'neon-captest' benchmark to 'neon-captest-old', but I was afraid that would break the continuity of the data series.

Is there a way to manually trigger the workflow manually, or do we  need to wait for the cron schedule to trigger it? Could we run the benchmarks more frequently?

Is there a way to manually trigger the workflow manually, or do we need to wait for the cron schedule to trigger it? Could we run the benchmarks more frequently?

open an action workflow page: https://github.com/neondatabase/neon/actions/workflows/benchmarking.yml
Click "Run workflow"
In a popup, you can choose your branch

@bayandin does this look sane to you?

Yep, it makes sense!

I also wanted to rename the 'neon-captest' benchmark to 'neon-captest-old', but I was afraid that would break the continuity of the data series.

No problem, you can rename it, and I'll update the data in the DB.

Is there a way to manually trigger the workflow manually

I forgot to mention that these results won't be published (i.e. won't be visible in Grafana). I created a PR to fix it some time ago: https://github.com/neondatabase/neon/pull/2440 (but didn't get a chance to come back to it and answer a question)


Removing audience from settings, let the content type enabled

Hi,
Just wanted to enable the audience type for testing as I don't really get what is it for. Now I have an Audience content type, available for edition to my end user, whereas I'm not using it.
What's the safe way to revert this?

Hello @ScreamZ,
where you've removed it ? In the file or via the user interface? After initializing, plugin takes values from file and from that point if you would like to get the file properties working you must "Restore" settings via the user interface.

Closing because lack of response.


release-v1.2.0

v1.2.0

Updated dependencies to latest
Updated to use native promises #16

Coverage remained the same at 87.097% when pulling c4fa7aa287aace84767653e93fc9594989b8d83b on develop into 81894178d05aa8c109ec7deefb29175ef0732a72 on master.


Fix HitObject::GetInstanceIndex/ID() for glsl/spirv

Can you run the tests with --emit-spirv-directly?
The failed tests are run with that option on.

Ah, never mind just see your update. I'll try rerun it.

Looks like just a CI issue.


Improvement for k8s.io/docs/reference/kubectl/jsonpath/

Hi,
Thanks for this documentation, it is really helpful.
That being said, we use a syntax which is not documented here :
kubectl get ingress -o jsonpath="{range .items[?(@.metadata.annotations.some.domain/some.annotation==\"our-ingress-class\")]}"

And I'm trying this one out :
kubectl get ingress -o jsonpath="{range .items[?(@.metadata.annotations.some.domain/some.annotation=~/our-ingress-class.*/)]}"

I would have liked to know if this syntax is supported before trying it (and don't have the answer right now).
Thanks again for the awesome docs :)

/kind feature
/priority backlog

It doesn't work, nor does ~=, it fails with the message
error: error parsing jsonpath {range .items[?(@.metadata.annotations.some.domain/some.annotation=~/our-ingress-class.*/)]}, unrecognized character in action: U+002F '/'

Got something by writing the regex as a " escaped string, but I cannot get this regex to match anything:
kubectl get ingress -o jsonpath="{range .items[?(@.metadata.annotations.some\.domain/some\.annotation~=\"/our-ing.*/\")]}{.spec.rules[*].host}{end}"

This page could signpost readers to an external resource about using jsonpath.


Fix check of duplicate network URLs or avoid this check

https://github.com/aeternity/aepp-base/blob/c770181f4787392d19e7df7c707c2e9b0796d106/src/components/NetworkAdd.vue#L19

@davidyuk can you explain or show this bug from a user perspective?

In general, this check is not working, user can add networks with the same URLs.


Set position when using Cumulative Position

I really like the way you added the cumulative position feature, it's really neat and thank you for taking the time to do all of this.
Rather than resetting the position to 0, I'd like to set my own position but am having some trouble implementing the feature and cannot figure out why it won't work as expected.
In the Source file, I added this
int32_t AS5600::setPosition(int32_t pos)
{
  _lastPosition = 0;
  _position  = pos;
  return _position;
}

And in my Arduino sketch, I run this line of code to set the position to begin at "777"
as5600.setPosition(777);

However, when running the AS5600_position example, it will not set to "777" when starting the loop. Here is the full sketch:
#include "AS5600.h"
#include "Wire.h"

AS5600 as5600;   //  use default Wire

void setup()
{
  Serial.begin(115200);
  as5600.begin(10, 9); //ESP32
  as5600.setDirection(AS5600_CLOCK_WISE);  // default, just be explicit.
  delay(1000);
  as5600.setPosition(777); //  NEW CODE to set the initial value to 777
}

void loop()
{
  static uint32_t lastTime = 0;

  //  set initial position
  as5600.getCumulativePosition();

  //  update every 100 ms
  if (millis() - lastTime >= 100)
  {
    lastTime = millis();
    Serial.println(as5600.getCumulativePosition());
  }
}

Any idea what I may be doing wrong? Thanks again

Thanks,
I will try to dive into this asap however some other tasks have Priority (with capital p).

(added syntax highlighting in your post)
Analysis
You set lastPosition to 0 so you create a difference with the absolute internal position of the AS5600 (value)
Then get getCumulativePosition() executes the line _position = _position - _lastPosition + value; (or one of the other three paths)
So it will add the difference.
Example:

assume the AS5600 does not move and internal position was X
execute _position = _position - _lastPosition + value;
=> _position = 777 - 0 + X  ==> 777 + X.

So if the AS5600 did not move you get a wrong value in position.
If the AS5600 did move it would also add the difference, easy to see if it moved from X => X+1
Then _position would become 777 + X + 1;
So I think your function should not change _lastPosition and should be
int32_t AS5600::setPosition(int32_t pos)
{
  _position  = pos;
  return _position;
}

Can you give it a try?

Given that it looks a lot like resetPosition() I think this should be changed to
.cpp
int32_t AS5600::resetPosition(int32_t pos)
{
  int32_t old = _position;
  _position  = pos;
  return old;
}

.h
int32_t resetPosition(int32_t pos = 0);   //  default 0 for backwards compatibility.

Had a quick test, and a minor fix on your code
#include "AS5600.h"
#include "Wire.h"

AS5600 as5600;   //  use default Wire

void setup()
{
  Serial.begin(115200);
  as5600.begin(10, 9); // ESP32    // (my test 14,15)
  //  as5600.setAddress(0x40);     // (my test)

  as5600.setDirection(AS5600_CLOCK_WISE);  // default, just be explicit.
  delay(1000);

  as5600.getCumulativePosition();  // <<<<
  as5600.resetPosition(777); //  NEW CODE to set the initial value to 777   //  <<<  patched your function in **resetPosition()**
}

void loop()
{
  static uint32_t lastTime = 0;

  //  set initial position
  as5600.getCumulativePosition();

  //  update every 100 ms
  if (millis() - lastTime >= 100)
  {
    lastTime = millis();
    Serial.println(as5600.getCumulativePosition());
  }
}

The extra call to as5600.getCumulativePosition(); sets the lastPosition to the position of the internal value of the sensor.
This is not as nice as one would like so I will check how to include the update of lastPosition in resetPosition()

This works, I will create a new branch including this functionality.
.cpp

int32_t AS5600::resetPosition(int32_t pos)
{
  _lastPosition = readReg2(AS5600_RAW_ANGLE) & 0x0FFF;
  int32_t old = _position;
  _position = pos;
  return old;
}

.h
int32_t resetPosition(int32_t pos = 0);   //  default 0 for backwards compatibility.

mmm, as this is a breaking change I must take some time to rethink the consequences.

added the function Int32_t resetCumulativePosition(int32_t position); that resets the internal lastPosition to 0 .
The function resetPosition(int32_t position) does not reset the internal lastPosition.
The difference is subtile and I'll try to explain.

resetCumulativePosition() resets the cumulative value and ignores the movements since last call  to getCumulativePosition().  This is used when one wants to set a new reference point at current position.

resetPosition() resets only the position counter, so the movements since last call to getCumulativePosition() will still be added to the Cumulative position. This is used when one wants to set a new reference point that coincidence with the position of the last getCumulativePosition() call.

Give it a try
#include "AS5600.h"
#include "Wire.h"

AS5600 as5600;   //  use default Wire

void setup()
{
  Serial.begin(115200);
  as5600.begin(10, 9); //ESP32

  as5600.setDirection(AS5600_CLOCK_WISE);  // default, just be explicit.
  delay(1000);
  as5600.resetCumulativePosition(777);   //  <<<<<<<<<<<<<<<<<<
}

void loop()
{
  static uint32_t lastTime = 0;

  //  set initial position
  as5600.getCumulativePosition();

  //  update every 100 ms
  if (millis() - lastTime >= 100)
  {
    lastTime = millis();
    Serial.println(as5600.getCumulativePosition());
  }
}

That appears to work great, I will continue testing it but so far it's working perfectly. Thank you for all work you just did and the work you put into this library. It's very very appreciated.
The reason I requested this feature is to track the step count of my stepper motor. This feature allows me to sync up the AS5600 with the steps of the stepper motor which then makes it extremely easy to detect missed steps on the motor.  It is a very nice feature to have.

Tracking steppers is a good application for this sensor.
I will leave the code as is for now, and look at it tomorrow with a fresh pair of eyes.
No changes are expected and unless there is something breaking I will merge it.
Is the readme file clear enough to understand the difference between the two reset() functions?
If you have remarks I can include them before the merge.
(only if you have time)
Regards,
Rob

PS, please note I used your code as an example. Hope you are OK with that.

Released the 0.3.6 and closed this issue.
Feel free to reopen it if the issue is not solved, or reopen a new one.


Only uses the first four LEDs

I think every function in the app works, but only with the first four LEDs. Sometimes even just the first two! This is a bit of a problem, because my ledstrip is 120 LEDs long... I'm using a WS2812B ledstrip and the LED SPI Controller.
If someone knows what I'm doing wrong, please tell me.

This homebridge is not for addressable led controller

How you even got this working for 4 WS2812B LEDs with this plugin is amazing.

Of 120 led in one strip only 4 turn on?

I'm so sorry. I just noticed this isn't the github of the magichome app... I was just browsing for my problem and came across this.
If anyone is still able to help me, you may totally do that.

I’ll bite. Again this has nothing to do with homebridge-magichome. Keep this in mind.
What LED controller are you using?
How are you connecting your led strip to this controller?
Which specific software are you using?
Please be specific. We’ll get it figured out tho.

Sorry for the late reply (my email doesn't work correctly). I'm using this controller:
https://www.applamp.nl/led-spi-wifi-controller-magic-home-voor-2812-en-28.html
This app:
https://play.google.com/store/apps/details?id=com.zengge.wifi
And these LEDs:
https://www.applamp.nl/dream-color-ws-2812-rgb-digital-led-strip-5-meter.html
The connection is just a little connector that is the same on the controller and the LEDs.
If you don't know what's causing this, don't worry, this is the wrong GitHub after all.

I didn’t realize magichome made controllers for individually addressable LEDs. Cool.
While I can’t help you specifically with this one problem I’ll give you some points to troubleshoot.
1.) Look in the settings of your app for adjusting the number of LEDs attached. Unlike normal LED controllers, individually addressable controllers must know ahead of time how many LEDs there are ahead of time. Look for a setting that says “number of LEDs”.
2.) You might have received the wrong type of LEDs / controller. Ensure you received what you purchased and both the controller and the strip use the same technology. I.e. WS2812. Maybe they sent you a WS2811 strip by accident.
3.) If that doesn’t work, you may need to snip the strip. But only do so in a designated cutting zone. You’ll see copper pads exposed with a line down the middle.
Good luck and post back with results.

Settings were set correctly (120 LEDs)
LEDs are ws2812b, controller should work for both ws2812 and ws2812b
I'm guessing I have to do this if there's a bad contact, but the LEDs work perfectly with an Arduino.

Something I think I didn't tell yet: most of the times it's just the first two LEDs working, but sometimes more. It's kinda random.

Wait wait wait. Set the led size to 5 and see what happens.

When I plug the ledstrip in, all leds flash, then just two stay on. When the colors update, there's a small chance four LEDs go on, but when it updates again, only the first two change.
Basically the same as before, but first there was a very small change six LEDs go on, which now doesn't happen anymore because the size is set to 5.

Again, I really don't want to annoy anyone with this. If it doesn't work, it doesn't work and I'll just try to make something with my esp2866.

My thinking is that while you have 120 LEDs they might be only connected to 1 controller per say... 3 LEDs. So in the settings you’d only list 40 LEDs.
But yeah. Sounds borked


Is this unrelated to building the Unity project?

Is this unrelated to building the Unity project? I want to combine the built Unity project with TouchDesigner to create the final product.

Sorry, but I’m having trouble understanding your question. Just to clarify, this package is not required for building a Unity project, so you should be able to proceed without it.

I close this issue as answered.


Go to source file of the component

Fixes: https://github.com/rangle/batarangle/issues/34

LGTM :+1: