Model training doesn't begin in fraud-detection example

Issue description

issue description:
occurrence - consistent or rare: consistent
error messages: SWCI task reaches maximum wait time for swarm_fd_task
commands used for starting containers:

sudo ./scripts/bin/run-sn -t --rm --name=sn1 --network=host-1-net --host-ip=${HOST_IP} --sentinel --sn-api-port=${SN_API_PORT}      --key=workspace/fraud-detection/cert/sn-1-key.pem --cert=workspace/fraud-detection/cert/sn-1-cert.pem  --capath=workspace/fraud-detection/cert/ca/capath --apls-ip=${APLS_IP}
sudo ./scripts/bin/run-swop -t --rm --name=swop1 --network=host-1-net --usr-dir=workspace/fraud-detection/swop  --profile-file-name=swop1_profile.yaml --sn-ip=${SN_IP} --sn-api-port=${SN_API_PORT} --key=workspace/fraud-detection/cert/swop-1-key.pem  --cert=workspace/fraud-detection/cert/swop-1-cert.pem --capath=workspace/fraud-detection/cert/ca/capath -e http_proxy= -e https_proxy= --apls-ip=${APLS_IP}
sudo ./scripts/bin/run-swci --name=swci1 --network=host-1-net --usr-dir=workspace/fraud-detection/swci --init-script-name=swci-init --key=workspace/fraud-detection/cert/swci-1-key.pem --cert=workspace/fraud-detection/cert/swci-1-cert.pem --capath=workspace/fraud-detection/cert/ca/capath  -e http_proxy= -e https_proxy= --apls-ip=${APLS_IP}

docker logs [APLS, SPIRE, SN, SL, SWCI]:

SWCI
SWCI:25 > ASSIGN TASK swarm_fd_task TO defaulttaskbb.taskdb.sml.hpe WITH 4 PEERS
  Task assigned to TaskRunner
SWCI:26 > SLEEP 30
SWCI:26 > Completed SLEEP for: 30 secs
SWCI:27 > PERFDATA defaultbb.cqdb.sml.hpe
  NAME : defaultbb.cqdb.sml.hpe
  NUM_NODES : 0
SWCI:28 > SLEEP 30
SWCI:28 > Completed SLEEP for: 30 secs
SWCI:29 > PERFDATA defaultbb.cqdb.sml.hpe
  NAME : defaultbb.cqdb.sml.hpe
  NUM_NODES : 0
SWCI:30 > SLEEP 30
SWCI:30 > Completed SLEEP for: 30 secs
SWCI:31 > PERFDATA defaultbb.cqdb.sml.hpe
  NAME : defaultbb.cqdb.sml.hpe
  NUM_NODES : 0
SWCI:32 > SLEEP 30
SWCI:32 > Completed SLEEP for: 30 secs
SWCI:33 > PERFDATA defaultbb.cqdb.sml.hpe
  NAME : defaultbb.cqdb.sml.hpe
  NUM_NODES : 0
SWCI:34 > SLEEP 30
SWCI:34 > Completed SLEEP for: 30 secs
SWCI:35 > PERFDATA defaultbb.cqdb.sml.hpe
  NAME : defaultbb.cqdb.sml.hpe
  NUM_NODES : 0
SWCI:36 > WAIT FOR TASKRUNNER defaulttaskbb.taskdb.sml.hpe
  WAITING FOR TASKRUNNER TO COMPLETE - Maximum wait time is : 120 mins
    #####################################################################################
    #####################################################################################
    #####################################################################################
    #####################################################################################
    #####################################################################################
    #####################################################################################
    other lines of "#"...

  WARNING - Maximum configured SWCI wait time is Over
SWCI:37 >
SWCI:37 > GET TASKRUNNER PEER STATUS defaulttaskbb.taskdb.sml.hpe 0
  NAME : demo
  SWOP_UID : 79bd725d-0cd6-4682-80f9-e51dc61bfa83
  OPERATION_ID :<PHONE_NUMBER>185671369
  PEER_COUNT : 4
  UPDATE_TS : 2024-08-02 17:35:20
  SL_PEER_INDEX : 0
  SL_UID : NA
  SL_PEER_STATUS : RUNNING
  SL_PEER_STATUS_DESC : Created containers to match profile : 4
  SL_PEER_INDEX : 1
  SL_UID : NA
  SL_PEER_STATUS : RUNNING
  SL_PEER_STATUS_DESC : Created containers to match profile : 4
  SL_PEER_INDEX : 2
  SL_UID : NA
  SL_PEER_STATUS : RUNNING
  SL_PEER_STATUS_DESC : Created containers to match profile : 4
  SL_PEER_INDEX : 3
  SL_UID : NA
  SL_PEER_STATUS : RUNNING
  SL_PEER_STATUS_DESC : Created containers to match profile : 4
SWCI:38 >

SL node
2024-08-02 17:35:42,421 : swarm.startSL : INFO : Creating license server
2024-08-02 17:35:42,423 : swarm.startSL : INFO : Setting license servers
2024-08-02 17:35:42,601 : swarm.startSL : INFO : Acquiring floating license<PHONE_NUMBER>:1
2024-08-02 17:35:47,277 : swarm.startSL : INFO : Opening pipes to communicate with user container ...
2024-08-02T17:35:47.278661 /tmp/hpe-swarm/demo.0.0e2011de383cd612.request.pipe: pipe created
2024-08-02T17:35:47.279067 /tmp/hpe-swarm/demo.0.0e2011de383cd612.response.pipe: pipe created

Swarm Learning Version:

Find the docker tag of the Swarm images ( $ docker images | grep hub.myenterpriselicense.hpe.com/hpe_eval/swarm-learning )
2.2.0

OS and ML Platform

details of host OS: Ubuntu 22.04 LTS
details of Swarm learning Cluster (Number of machines, SL nodes, SN nodes): 1 machine with 4 SL nodes

Quick Checklist: Respond [Yes/No]
/- If Multiple systems are used, can each system access every other system?

Is Password-less SSH configuration setup for all the systems?
If GPU or other protected resources are used, does the account have sufficient privileges to access and use them? no GPU
Is the user id a member of the docker group? yes

Additional notes

Are you running documented example without any modification? yes, the fraud-detection
Add any additional information about use case or any notes which supports for issue investigation:

After starting the SWCI node, it runs the build task and then it gets stuck with the swarm task, printing only "#" until the maximum wait time is reached.
NOTE: Create an archive with supporting artifacts and attach to issue, whenever applicable.

Hi  @FrancescaFrattini
I see the swci wait time ( 120mins ) was over,  before the run task is completed.
WARNING - Maximum configured SWCI wait time is Over
So, I suspect  it is taking more than 2hrs to complete this run task.
I would advise you to use the environmental variable "SWCI_RUN_TASK_MAX_WAIT_TIME= while running run-swci script.
For example:
$ sudo ./scripts/bin/run-swci --name=swci1 --network=host-1-net --usr-dir=workspace/fraud-detection/swci --init-script-name=swci-init --key=workspace/fraud-detection/cert/swci-1-key.pem --cert=workspace/fraud-detection/cert/swci-1-cert.pem --capath=workspace/fraud-detection/cert/ca/capath  -e http_proxy= -e https_proxy= --apls-ip=${APLS_IP}  -e SWCI_RUN_TASK_MAX_WAIT_TIME=240
// I hope this helps!

Hi @FrancescaFrattini I see the swci wait time ( 120mins ) was over, before the run task is completed.
WARNING - Maximum configured SWCI wait time is Over
So, I suspect it is taking more than 2hrs to complete this run task.
I would advise you to use the environmental variable "SWCI_RUN_TASK_MAX_WAIT_TIME= while running run-swci script.
For example: $ sudo ./scripts/bin/run-swci --name=swci1 --network=host-1-net --usr-dir=workspace/fraud-detection/swci --init-script-name=swci-init --key=workspace/fraud-detection/cert/swci-1-key.pem --cert=workspace/fraud-detection/cert/swci-1-cert.pem --capath=workspace/fraud-detection/cert/ca/capath -e http_proxy= -e https_proxy= --apls-ip=${APLS_IP} -e SWCI_RUN_TASK_MAX_WAIT_TIME=240
// I hope this helps!

Hi, I've already tries setting the maximum wait time to 2000 mintues but it still goes out of time limits.
In the SL container logs (attached in the original post), it freezes after creating the comunication pipe and it seems like that it can't find the .py file with the model.
Looking inside each container, I can't find the /tmp/test/model containing the .py file: I believe that this is the real issue, but theorically the node should istantiate this folder on its own, I believe.

I would be interested to see the SWOP log and content of swop profile. Could you please provide me the same ?

Here's the SWOP node log
swop_logs.txt
By the way I'm getting same issue as here - https://github.com/HewlettPackard/swarm-learning/issues/134, but the user just closed the issue without providing any solution

Little update: I've tried to run SWOP node with environmental variable SWOP_KEEP_CONTAINERS=true but still experiencing same behaviour as before.
Here I leave complete list of docker containers - I see that there are 4 user-env-tf2.7.0-swop containers which have been exited, but I believe they're the result of the first build task

Thanks for this update..
I see 4 SL nodes  and 4 ML nodes were launched, however existed . Did you check the ML node logs ? what is it saying ?
You may send me the swarmLogCollector output to review.

Another update - I believe to have found the problem - my CPU doesn't support AVX instruction, and when ML nodes got instantiated they are immediately exited with the below warning.

Is there any way for using Tensorflow without AVX?


Add scrolling to tile atlas view

This PR add scrolling to the atlas area in tile editor, which was missing after scrollbars were removed.

It uses the same control scheme as GraphEdit, i.e. wheel to zoom, Ctrl+wheel to scroll vertically, Ctrl+Shift+wheel to scroll horizontally. I used it mostly for consistency, but tbh I don't like this scheme :/ (maybe it's better when you get used to it)
Also there's this hard-coded 32 that I wasn't sure what better to use.

I'm ok for the feature. I agree the control scheme isn't great though but could work for now.
My only request would be to add support for MOUSE_BUTTON_WHEEL_LEFT and MOUSE_BUTTON_WHEEL_RIGHT too. I have such horizontal wheel buttons and it would be quite useful to have support for them. :)

Ok added. I wasn't sure what to do about Shift, so it will just swap horizontal and vertical movement.

Thanks!


[Question]: ITMS-91061: Missing privacy manifest

What is your question?
Hi,
While I was able to upload the app on App Store before 12th November but I was getting a warning on my email. "ITMS-91061: Missing privacy manifest - Your app includes “Frameworks/share_plus.framework/share_plus”, which includes share_plus, an SDK that was identified in the documentation as a privacy-impacting third-party SDK. Starting November 12, 2024, if a new app includes a privacy-impacting SDK, or an app update adds a new privacy-impacting SDK, the SDK must include a privacy manifest file. Please contact the provider of the SDK that includes this file to get an updated SDK version with a privacy manifest. For more details about this policy, including a list of SDKs that are required to include signatures and manifests, visit: https://developer.apple.com/support/third-party-SDK-requirements."
Is there a solution for this so I can update the app as i think it won't allow me anymore to upload without fixing this.
Checklist before submitting a question

[X] I searched issues in this repository and couldn't find such bug/problem
[X] I Google'd a solution and I couldn't find it
[X] I searched on StackOverflow for a solution and I couldn't find it
[X] I read the README.md file of the plugin
[X] I am using the latest version of the plugin
[X] All dependencies are up to date with flutter pub upgrade
[X] I did a flutter clean
[X] I tried running the example project

It seems that you didn't actually search the repo and just checked the checkmark.
There is no such issue in plugins anymore.


Re-evaluate requirements files

As it stands currently, we have two requirements files.

requirements.txt - which houses the requirements to for working on the application
requirementst-test.txt - which houses the requirements for testing the application, sans Django, as it is expected to be installed via tox.

The issue is that there is not a single file to begin all development activities. As a developer, you must install both requirements.txt and requirements-test.txt in order to run the tests and work on the app. Furthermore, we also have overlapping dependencies, namely lxml.
Here are some examples:
Scenario 1

clone
pip install -r requirements.txt
./runtests.py

Outcome: Fails because test requirments are not installed.
Scenario 2

clone
pip install -r requirements-test.txt
./runtests.py

Outcome: Fails because Django is not installed.

This was fixed with the initial release.


Binaries v2.2.0 in downloads area do not include the Jar file for Java bindings

The binaries of Tigl v2.2.0 available here https://github.com/DLR-SC/tigl/releases (I'm using win64) do not include the Jar file necessary to use the Java bindings.
It seems to me a bit of an overhead having to recompile all from sources (and getting the third part libraries in place) in order to generate the Jar and test the JavaDemo.java.
Cheers

@agodemar This is indeed a bug and was not intentional. Self compiling the binaries should not be required.
We'll release 2.2.1 very soon as a bug fix, which will again include the java bindings,

This should be addresses for:

[ ] The Jenkins release jobs
[ ] The Appveyor builds


Thread pool NUMA/cache optimization

The thread pool could be made even more performant if each future tended to stick to a specific thread. That approach would be better for caching, because it makes it more likely that data can be reused from the cache. And it makes it better suited for processors with NUMA, like Threadripper or server processors. NUMA stands for non-uniform memory access and it means that the memory access time depends on the memory location relative to the processor, i.e. the connection from a memory stick is faster to one set of cores than it is to others. This optimization should lead to better performance. Only way to find out is to try it :)
(ATM this is not a priority. It's meant as a challenge for anyone that seeks one 🙂)

I'm sure you are already aware, but I will post for any who comes across this issue and is curious.
There already is a future executor / thread pool that has good structure for NUMA and cache optimization: tokio-threadpool


[WebExt] browser API docs tasks, Fx 70

Trello: https://trello.com/c/LBJWI3hD/229-browser-api-enhancements-fx-70
Acceptance criteria

[ ] Expose captive portal status (historic)

[x] "encoding" parameter not parsed in custom search engine overrides (looks like a pretty quick fix) (historic)

It looks as though the issue was fixed, that the encoding parameter is now parsed and validated, and there is a merged pull request for BCD. Am I missing something here? What else needs to be documented?

@chrisdavidmills If the AC are satisfied, please close this issue.

Assigning @rebloor so he can check this.

Made an information needed request for Expose captive portal status (historic).

@chrisdavidmills  I have written a draft of the MDN content for Expose captive portal status (historic) here and made a request for information on the bug.  Do you think this API warrants a new example web extension? Could it be incorporated into any of the existing ones? I've not had any inspiration in that regard.

@rebloor it'd be best to ask the associated engineers for advice on this — I'm not hugely knowledgeable on WebExtensions. If it makes sense to create a new one (even a really simple template that users can build on?), that would be fine with me.

Pinged the developer on the Bugzilla ticket re the need for an example

Documentation for captivePortal is now up, pending approval of compatibility data.

Compatibility data for captivePortal has now been published.


Created NPM scripts in package.json to replace current build commands (and added Drafts support).

& Added Intellij system files to .gitignore
Changes

Created npm run commands for the build, development, and publish features of the theme.

bin/setup -> npm run setup
bundle exec jekyll serve -> npm run local
bin/deploy -> npm run publish

Added the --drafts flag to bundle exec jekyll serve so draft articles will work.

Rationale
Changes to the commands (like adding --drafts) can occur without the user having to change the command they run. They run npm run local and behind the scenes the maintainers can update that command's function as needed.
Instead of having to remember longer commands or file paths, just run npm run <the thing you want> and it Shall Be Done for you. This was more of a pet peeve of mine.
Testing
This is not platform-dependent and all commands have been tested to work successfully.
Concerns
NPM has some standard commands (publish is one of them). If you run npm publish on this repo, the command will fail and give an error message that will lead the user down a red herring. They won't know that the command they want is npm run publish. The fix would be to rename the commands to any keyword that is not in the list of scripts, but I really like the word publish for the action that is happening. It probably makes more sense to make it npm run deploy, though.

At first I thought the commands were executed by npm itself in javascript or something cross-platform, but it seems like the only thing happening is you now have an alias for each command using npm. Can you elaborate a bit? :)
At seems that this is what you wanted:
https://github.com/migueldemoura/migueldemoura.com/blob/master/bin/console

Yup, just aliases. Little nicer to run for users in my opinion. It's what I use on my blog and thought I'd push that upstream. If there's no interest, I can close this PR and push one that solely has the --drafts addition. That should definitely be merged in to allow rendering of draft articles locally.

Yep, that is pretty cool. Since we already require npm anyway, this could indeed be simpler.
You seem to have investigated this pretty throughly; do you know any way of replacing the shell scripts with something cross-platform (i.e., that works on windows without WSL)? That would be really great for windows users.

I don't think we're going to find something easily cross-platform. I imagine a Powershell script is what you would want to use for Windows, though. I am not very familiar, but this seems like a good place to start: https://gist.github.com/noelmace/997a2e3d3ced0e1e6086066990036b16. I'd be happy to look into it more in a new issue, although I don't know how quickly I would be able to get into it.
You could get into a dev ops tool like Ansible that could make the install cross-platform, but even as simple as Ansible is it feels like too heavy-handed a solution for this. If you want to look into that I could write up an Ansible playbook pretty quickly.

@arikalfus I like it! Can you also update the post with the setup instructions please?

re: Ansible - that's a terrible idea forget I said that.
@nielsenramon What setup instructions are you talking about? I replace the old commands in the README with these new ones.

@arikalfus, I think he's talking about this:
https://github.com/nielsenramon/chalk/blob/master/_posts/2017-12-23-introducing-chalk.md

Ah, right! Updated

@arikalfus Thanks a lot!


Plane Ellipsoid gives results from rotational Ellipsoid

There is no difference between an elliposoid with the "Figure of Rotation" parameter set to "Yes" or to "Plane". Both times the result is the same as if the parameter was always set to "Yes".
If the parameter is set to "Plane", the beam should be focused vertically only.
Here is a RML file and the result (only correct if the parameter is set to "Yes").
Ellipsoid.rml.txt
EllipsoidPlane.rml.txt

In this simple set-up the multiplot result is ok.


Collection with no documents subscribe event not being triggered

When i have an collection that has no documents and i try to subscribe it, the subscribe event is never being triggered.
this.afs.collection<ItemsInterface>('items')
    .valueChanges()
    .subscribe((items) => {console.log(items)})

I want to show on my application an message something like that: "No items found". Does anyone have any tips on how to handle that?
Version info
Angular: 4.1.3
Firebase: 4.5.0
AngularFire: 5.0.0-rc.1
Ionic: 3.6.0

@rodrigoreal This bug was fixed in the last release. Can you upgrade and let us know if it works?

Thanks, it is working now.


Minor updates on readme

dlopen and dlsym are declared in Ctypes as well. Ctypes.dlopen and Ctypes.dlsym are different from the ones in module Otter.

Then I guess the declaration is broke. I got
function MLIR.CAPI.IR.dlopen/2 is undefined or private

The declaration is in the ctypes_demo.ex file, and if you'd like to use the invoke version, then they should be declared in your module as well. Just like how you extern them in a header file.
  extern dlopen(:c_ptr, c_ptr, s32)
  extern dlsym(:c_ptr, c_ptr, c_ptr)

If you'd like to use the NIF version of them, then you need to call Otter.dl* functions.
Ctype.dlopen is obtained by Otter.dlopen and Otter.dlsym. Just like the sin and cos functions in Ctypes, dlopen and dlsym are functions that can be dlsym'ed as well.

Now I get it, thanks for the explanation.

No worries! I'll add these notes in the readme file.


site down?

Just tried to use your site today and it appears to be offline http://rst.ninjs.org/

Now works


FR:+ Add empty line at the beginning of the page

It would be great to have an option to always have an empty line at the beginning of every file.
If you use notes for task managements, in order to quick create a task on top of the note having an empty space as fist line allows you to click there and start typing, instead of having to first bring everything down one line.
Very useful also on mobile, if you use the Quick Create/Edit Task command. You can open the file, start that command and it will create the task in that first empty line. Without the empty line instead, starting that command will edit the task in the fist line.
Please include an example where applicable:
This is the first line of a file

This is the fist line of a file

Hey @metalmarco , could you not use custom regex for this? Something like the following probably would do:
Regex find: ^([^\n])
Regex replace: \n\n$1
Regex Flags: m
This should look at the start of a file and add a blank line if one is not present (test this yourself to verify I did not mess up my regex). But I think this should satisfy what you are looking for.

I am going to close this since I have not heard back on this issue. We can reopen the issue if there is further discussion to be had around this.


Vickel: Watch (?-i:yprkbwrh)(?#tinyurl.com)

Vickel requests the watch of the watch_keyword (?-i:yprkbwrh)(?#tinyurl.com). See the MS search here and the Stack Exchange search in text, in URLs, and in code.

(?-i:yprkbwrh)(?#tinyurl.com) has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


pyzed.slSensorsData has no attirbute MagnetometerData

Preliminary Checks

[X] This issue is not a duplicate. Before opening a new issue, please search existing issues.
[X] This issue is not a question, feature request, or anything other than a bug report directly related to this project.

Description
Hi I recently upgraded the SDK to version 3.7.2 for Jetpack 4.4 on an Nvidia Jetson Xavier NX and encounter the following error when trying to access the Magnetometer using the example python script.  pyzed.slSensorsData has no attirbute MagnetometerData
Steps to Reproduce
Installed this package: https://download.stereolabs.com/zedsdk/3.7/l4t32.4/jetsons
Used code in tutorial 7: Getting Sensors Data
Expected Result
Returned Magnetometer readings
Actual Result
pyzed.slSensorsData has no attirbute MagnetometerData
ZED Camera model
ZED2
Environment
Nvidia Xavier NX
arm64
Jetpack version is 4.4-b144
Python version is 3.6.9
Cuda version is 10.2.89

Anything else?
No response

Hello, are you talking about this tutorial ?
On my setup it runs correctly.
Maybe you just have a typo somewhere ?
you should write sensors_data.get_barometer_data() and not sensors_data.MagnetometerData.
If that's not the issue, can you share your code ?

I'm not sure where I got the method from, but the tutorial you linked worked perfectly.

The code I was using was found on this page https://www.stereolabs.com/docs/sensors/magnetometer/

Thank you for the report ! We'll change this as soon as we can.
Have a great day
Antoine


Crashes when no email client is installed

When no email client is installed (rare cases, I know, but better to cover all bases) the intent to send feedback via email (ContributionsListFragment.java:109) gives an ActivityNotFoundExeception so the app crashes.

See PR #116

Fixed by #116


Added inheritance validation

Added validation option for derived class in a class.
Example:
var validator = new TestValidator(v => {
  v.RuleFor(x => x.Vehicle.Title).NotNull();
  v.RuleFor(x => x.Vehicle).AddInheritance(i => {
    i.Include<Car>(b => { b.RuleFor(m => m.IsElectric).Must(x => x); });
    i.Include<Bike>(b => { b.RuleFor(m => m.HasBell).Must(x => x); });
  });
});

validator.Validate(new Person { Vehicle = new Bike() { HasBell = true, Title = "My awesome bike" } });

public class Person {

  (...)

  public IVehicle Vehicle { get; set; }

}

public interface IVehicle {
  string Title { get; set; }
}

public class Car : IVehicle {
  public string Title { get; set; }
  public bool IsElectric { get; set; }
}

public class Bike : IVehicle {
  public bool HasBell { get; set; }
  public string Title { get; set; }
}

Thank you for the suggestion, but this isn’t something that is currently on the roadmap for FluentValidation for either the 8.x series or 9.0, so this is something that will need discussion before deciding if it’s something we want to support, and if we do what the design should look like.
Generally when contributing to open source projects it’s better to open an issue to engage the maintainers in discussion first, before going ahead and implementing new features as there are often additional design and maintenance decisions that need to be made before development can begin.
Happy to use this PR to springboard the discussion on this, but I’m currently finishing up the 8.5 release so it’s unlikely I’ll have time to give this proper thought until after that.

I have created a feature request for this PR: #1237


Fixed typo in verifier_contract.adoc

@thomasd16 Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

Codecov Report

Merging #579 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #579      +/-   ##
============================================
- Coverage     60.96%   60.93%   -0.03%
  Complexity     1715     1715
============================================
  Files           199      199
  Lines          6799     6799
  Branches       1040     1040
============================================
- Hits           4145     4143       -2
- Misses         2071     2073       +2
  Partials        583      583

Impacted Files
Coverage Δ
Complexity Δ

...loud/contract/stubrunner/AetherStubDownloader.java
61.19% <0%> (-1.5%)
29% <0%> (ø)

...ntract/stubrunner/spring/StubRunnerProperties.java
69.09% <0%> (ø)
22% <0%> (ø)
:arrow_down:

Continue to review full report at Codecov.

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

@thomasd16 Thank you for signing the Contributor License Agreement!

@thomasd16 you have to fix the conflicts


Server Groups and Connections not able to be added to Workspace Settings via UI

I'm finding there is no way to add a Server Group or Connection to Workspace Settings via the UI. The default is to save them to the User Settings and if you want to share these you have to manually copy them to the Workspace Settings.
This need to manually copy them to the settings then has flow on effects like needing to reload the Servers list (via search) or even restart SQLOPS in some cases (like in the case of Saved Connections list in the Connections Dialogue) before the connections from the Workspace Settings are available.

SQL Operations Studio Version: 0.25.4

Steps to Reproduce:

Start sqlops and open a folder (e.g. c:\test-db)
From the menu select "Save workspace as"
Create a new Server Group called "Test Server Group" via the UI. There is no option to make this a workspace setting not a user setting. It will be in User Settings as per default.
Open the settings and locate the configuration for the Server Group in User Settings. Cut that setting from the json and paste it in notepad or something temporary.
Switch to Workspace Settings
Find the "datasource.connectionGroups" setting and click the edit icon to copy it to settings.
Paste the configuration of the Server Group copied earlier to add the "Test Server Group" to your workspace. However, rename the group to "Test Server Group Workspace"
Save and close the settings
Notice that the Servers list does not reflect this change, but still shows the old group name.
Refresh the Servers list by typing in the search box, then delete what you have typed. The Servers list will now show the correct group name.
Add a connection to the server group "Test Server Group Workspace"
Open Settings and notice that the connection has been added to user settings even though the group belongs to workspace settings
Follow a similar approach as earlier to manually move the connection from user settings to workspace settings but make sure to change it's database name or display name to track the changed settings in the UI.
Again notice that Servers list does not update until after a search.

As mentioned this also impacts the Save Connections list in the Connection Dialogue. You can test that by creating a .sql file and clicking the connect button. It will reflect what the Servers list shows, but this may not be up to date.
Let me know if you need more info.

I think this process has become even more confusing with v1.0.0 of Azure Data Studio.
Here is a scenario I just experienced that is completely broken.

Create a new folder at the command line
Open folder with azuredatastudio .
Open up workspace settings with ctrl+shift+p -> Preferences: Open Workspace Settings
Type datasource.connectionGroups in the search box and click the pencil to copy that setting to the workspace settings file (old settings editor UI).
See nothing change in your workspace settings file, which the UI is showing as .vscode/settings.json
Realize there is a new settings file created under .azuredatastudio/settings.json
Accept the fact that using the settings editor UI is broken and hand edit the .azuredatastudio/settings.json adding a connection group
Reload Azure Data Studio
See no Connection Groups in the Servers side panel
Assume this UI is super broken and add the same connection group setting to .vscode/settings.json
Reload Azure Data Studio
See no Connection Groups in the Servers side panel
Investigate other options, trying File -> Save Workspace As creating a new .code-workspace file in the current directory
Realize this creates yet another settings file with settings copied from either .vscode/settings.json or .azuredatastudio/settings.json
Reload Azure Data Studio
See no Connection Groups in the Servers side panel

Either the documentation doesn't explain that none of these scenarios are supported and provides clarification on why there are 3 ways to store settings with this application or this UX is just plain broken and left up to the user to discover.
This seems like it will be an awesome product (I want it to be awesome!) but right now the corners are very sharp.
I'm happy to provide any additional details about the above process.

@seangwright thanks for reporting this. I was able to reproduce it, and it looks like we're not handling things quite right when we have folders open that aren't part of a workspace
Things seem to work well for me if I save the workspace (file > save workspace as) and open that workspace specifically. In that case my workspace settings seem to behave correctly. If possible I'd recommend trying that approach for now as a workaround while we look into it

Ok cool I'll give that a try. Thanks.
I'm a longtime user of VS code and given the shared platform / UX with ADS when patterns 'I already know' turn out to not work it's confusing and frustrating.

@MattIrv I deleted the .vscode/ and .azuredatastudio/ folders, opened ADS from the taskbar (not cmd) and then went to File -> Open Workspace and selected my db-azure.code-workspace file which has the following config in it
{
	"folders": [
		{
			"path": "."
		}
	],
	"settings": {
		"datasource.connectionGroups": [
			{
				"name": "Group 1",
				"id": "8bb8...",
				"parentId": "C777...",
				"color": "#85AE72",
				"description": "Group 1 Servers"
			},
			{
				"name": "ROOT",
				"id": "C777...",
				"color": "#85AE72",
				"description": "Group 1 Servers"
			}
		],
		"datasource.connections": [
			{
				"options": {
					"connectionName": "dev",

				},
				"groupId": "8bb8...",
				"providerName": "MSSQL",
				"savePassword": true,
				"id": "8408..."
			}
		],
        }
}

No Connection Groups display. Nothing changes.
I reload ADS via ctrl+shift+p -> Reload Window and still no Connection Groups are displayed.
Are there steps I can run from an empty folder that will guarantee I can configure settings that will be shared for anyone who opens that folder (as a repo via git clone) on their machine with ADS?
It would probably be helpful if I explained my goal: I want to share db widgets, connections, servers and queries with all devs at my company via a single source controlled repository.

@seangwright did you manage to get this working? I have the same issue, can't load connections groups from workspace. Wondering if you solved it with a work around?

@john1452 I did not get it working. I stopped using ADS because I never got any feedback here.

I just returned to the idea of shared workspace settings in ADS... still running into the same issues.
The docs on this topic are very light and the UX inside ADS for creating shared settings is still not intuitive at all.
sigh... maybe next year.

I had an old Azure Data Studio client, unfortunately did not capture the version.
In this version I was not able to add connections.
After updating to 1.25.2, at first the connections were not persisted.
Then I created a workspace as suggested.
Suddenly connections got persisted.
And now it seems workspaces are not required anymore. I can just create connections.
I think it would be good to refactor the Connection experience:

In the Connect dialog, introduce a button "Create connection";
Only when this is clicked, query for name and group which both can have sensible defaults;
When saved, switch to a Connect from stored connection experience;
When connected and it is not yet saved, offer the option to save the current connection.

I had an old Azure Data Studio client, unfortunately did not capture the version.
In this version I was not able to add connections.
After updating to 1.25.2, at first the connections were not persisted.
Then I created a workspace as suggested.
Suddenly connections got persisted.
And now it seems workspaces are not required anymore. I can just create connections.
I think it would be good to refactor the Connection experience:

In the Connect dialog, introduce a button "Create connection";
Only when this is clicked, query for name and group which both can have sensible defaults;
When saved, switch to a Connect from stored connection experience;
When connected and it is not yet saved, offer the option to save the current connection.


Description Needs to be Part of 'Quick Add'

As part of the 'Quick Add' functionality, the user should be able to add a description. This is not a required field.
Visual Design

@mindreeper2420 Can you provide the mobile design for same

@smahil the mobile view does not have the description field due to spacing and usability restrictions. Future iterations will look at mid-tier screens that will have more room.

Can we close this issue?

@sanbornsen If fixed, I'd attach the PR that fixes this bug, and then I'd be fine with closing it. @michaelkleinhenz @joshuawilson is this a good method for verifying bugs? Attaching the merged PR?

@mindreeper2420 I agree.
Fixed in #253


Dont overwrite input files

I was trying to generate some C# code, I set the outputExtension to ".cs". It overwrote my original input files. Had to spend 3 hours fixing decompiled sources from last debug build!!!
Please put a check so that the template will not overwrite any files that it used for input, or at least allow it as a setting for the template.

Resolved in 1.8.0


Decompiler: Unable to initialize the DecompilerInterface

Describe the bug
Every function presents the following when attempting to decompile it:
  Decompiler: Unable to initialize the DecompilerInterface: Could not register program:
  XML processing error: Expecting <case_pcode>, <addr_pcode>, <default_pcode>, or <size_pcode>

Environment (please complete the following information):

Ghidra Version: 10.2_DEV f57cf98f5648c22dd486cc77354d342a63d58622

Additional context
I'm sure this is related to the recent cleanup of the decompiler-side xml processing. Unfortunately the "Debug Function Decompilation" isn't working but hopefully the error is enough to track it down. It is a custom processor implementation which can be seen at https://github.com/astrelsky/RL78_sleigh. View at your own risk. (It may be hazardous to your health).
Related to #4380

Should be fixed by 89b8a59e99d0e9d200595a0d66264b6b21bedfbf


Upgrade electron dependency to latest

Is it an actual bug?
This one rides the line between bug and feature request. I would like to know how large the effort will be to upgrade the electron dependency to a recent (if not the latest) version. v6 is quite old. It would be nice to be able to build this for macOS on M1 Apple Silicon, but versions of electron in v6 are not available for that platform (obviously).
Did you check if the bug has already been reported?
Yes, not reported yet as far as I could see.
Describe the bug
Cannot complete "yarn install" due to missing version of electron for macOS M1 Apple Silicon. Recent versions of electron support M1.
To Reproduce
Run "yarn install" on macOS on M1.   Get the following output:
Downloading tmp-32668-0-electron-v6.1.12-darwin-arm64.zip
Error: GET https://github.com/electron/electron/releases/download/v6.1.12/electron-v6.1.12-darwin-arm64.zip returned 404
/Users/spurlock/Downloads/sleek-1.0.3/node_modules/jest-electron/node_modules/electron/install.js:53
  throw err
  ^

Error: Failed to find Electron v6.1.12 for darwin-arm64 at https://github.com/electron/electron/releases/download/v6.1.12/electron-v6.1.12-darwin-arm64.zip
    at Request.<anonymous> (/Users/spurlock/Downloads/sleek-1.0.3/node_modules/nugget/index.js:169:61)
    at Request.emit (node:events:365:28)
    at Request.onRequestResponse (/Users/spurlock/Downloads/sleek-1.0.3/node_modules/request/request.js:1059:10)
    at ClientRequest.emit (node:events:365:28)
    at HTTPParser.parserOnIncomingClient [as onIncoming] (node:_http_client:621:27)
    at HTTPParser.parserOnHeadersComplete (node:_http_common:127:17)
    at TLSSocket.socketOnData (node:_http_client:487:22)

Expected behavior
"yarn install" should be able to complete.
Desktop (please complete the following information):

OS: macOS 11.3 on M1 Apple Silicon
Version of sleek: 1.0.3 source
Source: Github

@intrepidsilence , sleek is using Electron 12.0.5, I don't know why yarn wants to install v6. For whatsoever reason it is mentioned in the yarn.lock file. Can you try deleting that file and do the yarn install again?

@intrepidsilence , i stumbled about the solution to your issue. In package.json there is a "devDependency" named "jest-electron", which is depending on Electron 6.
You can try to install the modules like this yarn install --production
This should skip installing the devDependencies.

@ransome1 Sorry this took so long for me to get back to.  I tried it:
yarn install --production
yarn install v1.22.10
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[4/4] 🔨  Building fresh packages...
✨  Done in 9.46s.

As a side-related question to this bug, what are you using to compile for macOS? Can you turn on cross-compile for Universal binaries?

@intrepidsilence, that looks like a success, I would say. Were you able to build?
As for your question: I use Github CI, which provides a MacOS environment in which Electron Builder compiles the Mac app and puts it into the dmg container.
Let me take a quick look into Electron Builders' documentation if we can configure it to build for different architectures too. Based on your initial bug report I assume your Mac is having an arm64 architecture?

@intrepidsilence, can you check this test release, if the universal binaries (two were built) work on your M1 Mac? https://github.com/ransome1/sleek/releases/tag/v1.0.3-3

I tested the test release. It runs and is indeed native Apple Silicon in the universal binary. I noticed there are two macOS downloads so I grabbed both the zip and the dmg. They both run. They also both have an issue where they do not seem to have the normal keyboard shortcuts for macOS like CMD+Q to Quit the app. Quit doesn't even show up in the App Menu. I have to right-click on the Dock icon and select quit there. So, this bug report can be closed but  guess another one needs to be opened?

@ransome1 - Also, as always, thank you for the continued efforts and such fast turn-around.

I tested the test release. It runs and is indeed native Apple Silicon in the universal binary. I noticed there are two macOS downloads so I grabbed both the zip and the dmg. They both run. They also both have an issue where they do not seem to have the normal keyboard shortcuts for macOS like CMD+Q to Quit the app. Quit doesn't even show up in the App Menu. I have to right-click on the Dock icon and select quit there. So, this bug report can be closed but guess another one needs to be opened?

Hi @intrepidsilence, is it only the CMD+Q shortcut that doesn't work, or are you having difficulties with the other shortcuts as well?

@ransome1 It looks worse than the but it is hard to tell everything.  However, I do have more info.
When I run the app it opens a window correctly. The sleep menu item then has these options:
Open todo.txt CMD+O
Create todo.txt
Close  CMD+W
If I close the window with the top windows gadget close button the window disappears but sleek is still running in the Dock (small dot under it).
If I clock the sleek icon in the doc I get a new window, but this time not rendered correctly (empty and white instead of dark theme) and an error modal pops up:
A JavaScript error occurred in the main process

Uncaught Exception:
TypeError: Object has been destroyed
at IpcMainImpl.<anonymous> (/Applications/sleek.app/Contents/Resources/app.asar/src/main.js:525:20)
at IpcMainImpl.emit (events.js:327:22)
at Object.<anonymous> (electron/js2c/browser_init.js:161:9692)
at Object.emit (events.js:315:20)

If I close the error modal requestor, in the sleek menu item I now see the following items:
Open todo.txt CMD+O
Create todo.txt
Close  CMD+Q
Hope this helps.


Failed to execute nerdctl commit commands at the same time

k8s 1.21.9 containerd 1.3.7 nerdctl 0.18.0
If two commit command are performed at the same time, one succeeds but the other one fails with a digest already exists error message.
Committed different pods created with the same base image, and assigned different image names and tag.
time="2022-08-29T16:40:14+09:00" level=warning msg="Image lacks label "nerdctl/platform", assuming the platform to be "linux/amd64""
time="2022-08-29T16:40:14+09:00" level=fatal msg="failed to export layer: snapshot "sha256:738a919f97cf7edfe7a17bbc6058ab8a79539400e6f6c084ddd4c0a2829bbfb3-parent-view": already exists"

There is another use-case where we see the same error which happens when we commit a contianer and the commit is interrupted and when we retry the commit we see the error failed to export layer: snapshot \\"sha256:5ca359d74c4d65ad7dc2fc1013b3cccfa921f9000395ac846fd06a37c9a1a67e-parent-view\\": already exists. I think this happens because there is no garbage collection of the bolt KVs and the error is thrown here in containerd's bolt module

I think if we listen for any interrupt or kill signals and gc any useless KVs when any commit is interrupted before completion, this error can be prevented

I had the same problem, looks like concurrent commit image deadlock.

We are expecting to have commits happening at the same time as a very common use case ;  does this problem always occur when two commits run at the same time on a give system?

Confirming this is still a problem, albeit with different symptoms.

FATA[0000] failed to pause container: cannot pause a paused container: unknown

Reading code, none of this is safe wrt concurrency.
We need a lock mechanism to prevent concurrent operations like commit.


mention-selection should insert @| and not just @

if a new person joins with the same name, how can Zulip know which is the correct reference?
(in theory, IDs should always be used, but since auto-complete is used 99% of the time, I believe this would solve the problem in practice)
( I noticed this while working on #20614, didn't want to forget or make a big deal about it... cc @timabbott  )

I don't think there's a bug here; today, we insert the ID if and only if the name would be ambiguous because multiple users have the same name.  Once the message is sent, it is rendered with the ID of the user who was mentioned in the HTML.

(I'd recommend bringing up questions like this in #issues in chat.zulip.org for discussion before opening a GitHub issue)


Backup etcd

Signed-off-by: Sergii Golovatiuk<EMAIL_ADDRESS>

ci check this

@holser can you follow up with a documentation PR about what triggers a backup and some general guidance/links for recovery?

Sure, documentation and refactoring are on the way in next patch.


Is max_pool Chanel wise?

❓ Questions & Help
The function global_max_pool is channel-wise, as mentioned in the docs.
Are the functions max_pool and max_pool_x channel-wise, as well, or do they consider the whole features across all dimensions and compare across all dimensions at the same time? Reading the docs I am not sure if they do or not.
Thanks for your help.

Both max_pool and max_pool_x apply max pooling channel-wise, similar to the global_max_pool method.


check if L1TBMTFConverter is still needed

check if L1TBMTFConverter is still needed or if the bmtf sends the correct format now.

Not needed anymore for eta scale conversion, but since currently the muons come on bx -3 but are expected on bx 0 by the ugmt emulator the converter is used to shift the muons to bx 0.

taken out of sequence


Setup paths after variables have been initialized

base:  #372
Fix: #453 #472
Set PATH after __zplug::core::core::variable

環境変数が宣言される前にPATHを追加しようとしてたので変更
@b4b4r07 確認お願いします

Arigatou @39e , this is taking quite a long while now to resolve.

I merged this P-R so please try it.
39e/zplug
But I also edited other parts

My apologies if any of this is duplicate information...
A brand-new zplug install after rm -rf ~/.zplug:
$ tr ':' '\n' <<< "$PATH" | grep zplug
/home/tlambiris/.zplug/bin
$ env | ag "ZPLUG_(HOME|ROOT)"
ZPLUG_ROOT=/home/tlambiris/.zplug
ZPLUG_HOME=/home/tlambiris/.zplug

Immediately opening a new terminal:
$ tr ':' '\n' <<< "$PATH" | grep zplug
/home/tlambiris/.zplug/repos/zplug/zplug/bin
$ env | ag "ZPLUG_(HOME|ROOT)"
ZPLUG_ROOT=/home/tlambiris/.zplug/repos/zplug/zplug
ZPLUG_HOME=/home/tlambiris/.zplug

My zshrc setup can be found in it's entirety here: https://github.com/tonylambiris/dotfiles/
Thanks in advance.

Latest commit seemed to have fixed this for me:
New terminal:
$ tr ':' '\n' <<< "$PATH" | grep zplug
/home/tlambiris/.zplug/repos/zplug/zplug/bin
/home/tlambiris/.zplug/bin

$ env | ag "ZPLUG_(HOME|ROOT)"
ZPLUG_HOME=/home/tlambiris/.zplug
ZPLUG_ROOT=/home/tlambiris/.zplug/repos/zplug/zplug

$ which fzf
/home/tlambiris/.zplug/bin/fzf

@ELLIOTTCABLE Thank you for understanding me!
Yeah, if there is those who can understand zsh script and want to contribute to zplug, I'm thinking of adding as a maintainer. This may make the development of zplug more rich. By the way, while I was out of this project, I have seen various OSS communities. Especially the development process of projects such as Kubernetes and Istio seems to be mature awfully. The same is true for Mac's package manager, Brew. I would like to refer to them and would like to improve the development process of zplug. Thank you :-)

@b4b4r07 cool! It's always excellent to learn from the greats of our communities.
Feel free to reach out on Twitter or Freenode (both places, same name as here), if you want to chat more.


Add brew provider

Hi!
I added brew provider to suggest how to install OpenSSL on macOS.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks for the PR - LGTM! @billabt are you happy with this?

Still in Norway 😎.
But change looks good. 👍


add StandardOutput to systemd

As proposed in wildfly/15.0.1/docs/contrib/scripts/systemd/wildfly.service.

Coverage remained the same at 74.798% when pulling 9074465fa68e70f37f44b582e406e01797d35d67 on bc-bjoern:systemd into e9523a5890fbc8e4daa9a0d5c7b61225821782f6 on biemond:master.


fix(curriculum): correct typo from 'cick' to 'click'

Checklist:

[x] I have read and followed the contribution guidelines.
[x] I have read and followed the how to open a pull request guide.
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #57653

This PR corrects a typo in the freeCodeCamp\curriculum\challenges\english\25-front-end-development\workshop-storytelling-app\671fafbae959c048d82bac8d.md file, changing "cick" to "click".

Hi @saurav-sinha-3141. Congrats on your first pull request (PR)! 🎉
Thank you for your contribution to the page! 👍
We are happy to accept these changes and look forward to future contributions. 📝


Getting matrix size 0x87 while training

OS: Ubuntu 16.04
Environment: Local using pip
I have some wav files which are appended together using pydub and then raw file is made from the wav file like this:
sox joinedFile_clean.wav --bits 16 --encoding signed-integer --endian little ../clean.raw
sox joinedFile_noisy.wav --bits 16 --encoding signed-integer --endian little ../noisy.raw

then the raw files are being passed to denoise_training like this:
./denoise_training clean.raw noisy.raw count > training.f32

but the output I am getting is:
matrix size: 0 x 87
Can anyone tell me why is this issue happening? Am I converting it correctly to raw? The inference is working fine.

Your count should be set 50000 or 500000.The problem can be solved.

Having the same issue, has anybody solved it?

I now understand. For anyone else, you must specify and integer for count, Jeremy suggests 50000 or 500000, in the ./denoise_training command. So for example:
./denoise_training clean.raw noisy.raw 50000 > training.f32

You must set the maxCount refers to src/denoise.c. The code will generate maxCount frames in loop.


HHH-12782 Test and fix for circularity detection

This is a fix for https://hibernate.atlassian.net/browse/HHH-12782
I noticed that it will also fix https://hibernate.atlassian.net/browse/HHH-10842 and it seems like it could also fix https://hibernate.atlassian.net/browse/HHH-13085 which is why I added @gbadner

@beikov, in general, I like the approach, and I believe that it does fix HHH-13085. I like this approach better than what I did in my PR for that issue. Thanks for bringing my attention to this.
IIUC, the "other" table will usually be the table referenced by the association's foreign key. It might be a different table, if the foreign key actually references a secondary table, or a subclass table. I believe the information is there to get the correct table in all cases, but I'm not sure it's really worth it. I think what you have should work.
My biggest concern is that this fix adds extra join(s)) for lots of tests, and for at least some of them, the join adds no value.
I've only looked at a the first couple of tests that generate different SQL so far, but here are some examples where we really don't want to add an extra join.

Eager, bidirectional one-to-one association

In org.hibernate.jpa.test.association.AssociationTest.testBidirOneToOne, when loading an Incident entity, the eager bidirectional associationm,Incident#incidentStatus / IncidentStatus#incident, only requires 1 join, because Hibernate loads IncidentStatus#incident from the session.
The "before" SQL is:
select incident0_.id as id1_0_0_, incident0_.incidentStatus_id as incident2_0_0_,      incidentst1_.id as id1_1_1_ from Incident incident0_  left outer join IncidentStatus incidentst1_      on incident0_.incidentStatus_id=incidentst1_.id where incident0_.id=?
The "after" SQL is:
`select incident0_.id as id1_0_0_, incident0_.incidentStatus_id as incident2_0_0_,
incidentst1_.id as id1_1_1_,
incident2_.id as id1_0_2_, incident2_.incidentStatus_id as incident2_0_2_
from Incident incident0_
left outer join IncidentStatus incidentst1_
on incident0_.incidentStatus_id=incidentst1_.id
left outer join Incident incident2_
on incidentst1_.id=incident2_.incidentStatus_id
where incident0_.id=?
The left outer join back to Incident is unnecessary.

The "before" SQL:
select tags0_.person_id as person_i3_1_0_, tags0_.id as id1_1_0_, tags0_.id as id1_1_1_,      tags0_.description as descript2_1_1_, tags0_.person_id as person_i3_1_1_  from Tag tags0_  where tags0_.person_id=?
The "after" SQL:
select tags0_.person_id as person_i3_1_0_, tags0_.id as id1_1_0_, tags0_.id as id1_1_1_,     tags0_.description as descript2_1_1_, tags0_.person_id as person_i3_1_1_,      preupdaten1_.id as id1_0_2_, preupdaten1_.lastUpdatedAt as lastupda2_0_2_,      preupdaten1_.name as name3_0_2_  from Tag tags0_  left outer join Person preupdaten1_      on tags0_.person_id=preupdaten1_.id  where tags0_.person_id=?
The left outer join to Person is unnecessary.
I'm sure a lot of differences I'm seeing are due to these 2 cases.
Could you try to refine your approach so that joins are not added in these cases? If you can do that, I can see if here are other cases where an added join is unnecessary.


[WIP] Support special characters in reporting of Custom Attributes

fixes https://github.com/ManageIQ/manageiq/issues/10482 point 1
Purpose
Reporting with custom attributes was broken when CustomAttribute#name contains some special characters as "." or "/".
This PR is fixing in UI : clicking on filter tab in report definition and in report generation.
The common thread is basically that we have couple method which processing(and expecting) attributes (defined report) with form (for example)
Vm.hosts.disks-name
and when we have virtual custom attribute it has form
Vm.virtual_custom_attribute_manage.org/kurbenetes so it is failing in some parsing method.
So I found such parsing methods and I added here some "IFs" for handling virtual custom attributes (https://github.com/ManageIQ/manageiq/pull/11112/commits/794b9867a959744e3f90d672a5995e22afd90a9a, https://github.com/ManageIQ/manageiq/pull/11112/commits/84a855deaea7462d9aa8a8b852fe0a608de86105,  https://github.com/ManageIQ/manageiq/pull/11112/commits/69c85ee66970688a90834da759532acdfa06c1b0)
I needed to change also regex in MiqExpression::Field to parse it, and I solved by prefix(https://github.com/ManageIQ/manageiq/pull/11112/commits/6fbce18e993364777ff0c885876f4a6ccddbfb1f).

At this moment I am allowing to have basically "whatever" in name of custom attribute and I didn't any issue with it maybe we should limited it. ?

If we will limited it how I should tackle with custom attributes which contains forbidden characters ? (Don't display it at all ? )

cc @imtayadeway
@miq-bot assign @gtanzillo
fyi @cben @alongoldboim

@miq-bot remove_label wip

@miq-bot add_label reporting, bug

@imtayadeway Can you review and let me know if you're ok with it? Thanks.

@miq-bot add_label wip

Works well with OSE labels :+1:
cc @cben

for #10482 point 2, change this line to if af[0].include?(":") && !af[1].include?(CustomAttributeMixin::CUSTOM_ATTRIBUTES_PREFIX) # Not a base column or equivalent

@zeari broken link, you mean this line ?

@zeari broken link, you mean this line ?

yes

@miq-bot remove_label wip

done by other referenced PRs.


Support for Linux and GitHub Actions

Fix compiling for Linux through SPM
Add GitHub Actions (checks on Linux, macOS 10 and macOS 11)

Kudos to https://github.com/SwiftDocOrg/Markup as I've copied much of their setup.
It works well in my testing, though I had to disable a part of Document.swift when running on Linux as that lead to compile failures. I'm not sure what the impact of that is, though the tests all succeed.
Closes #46 and  #113

Just noticed that #115 is exactly about the part that I disabled on Linux.


Add Aayush Dutt as a community member

**Current Behavior
@aayushdutt is a new community contributor.
Desired Behavior
A profile for @aayushdutt should be created and visible on /community.**

This is so cool! :smiley:

I think something went wrong
https://meshery.io/contributors/aayush-dutt/

Looks like some invalid yaml. A fixed has been pushed.
On Thu, Apr 30, 2020 at 10:17 PM Aayush Dutt<EMAIL_ADDRESS>wrote:

I think something went wrong
https://meshery.io/contributors/aayush-dutt/
[image: image]
https://user-images.githubusercontent.com/25280541/80779127-4e147c80-8b88-11ea-9626-0766dbfb1c5d.png
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/layer5io/meshery.io/issues/171#issuecomment-622228651,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZYKEFHBNOV6CEUOCKOMALRPI5N7ANCNFSM4MTLWL7A
.

@aayushdutt here you go
https://meshery.io/contributors/aayush-dutt/


Refactor data persistence to library project SimpleDB

User story
As a software developer,
I want to refactor the 'data persistence' from the Chirp.CLI into a separate library project: SimpleDB,
to improve the structure of the code and thereby enhance its readability and maintainability.
Acceptance criteria

Single Responsibility Principle: Code should be abstracted into reusable components.
Dependency injection: Appropriate use of Interfaces to reduce coupling.

Definition of Done (DoD)

All team members are comfortable with the changes introduced during refactoring.
The refactoring doesn't cause any errors.

Done!


Unable to extract Initial JS player n function name

Checklist

[X] I'm reporting a bug unrelated to a specific site
[X] I've verified that I'm running yt-dlp version 2022.01.21. (update instructions)
[X] I've checked that all provided URLs are alive and playable in a browser
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Description
while downloading a playlist there was this error message printed before downloading every video of that playlist. (the download was successful).
yt-dlp -f 249,243 https://youtube.com/playlist?list=PLE3MtMBjMVLezj0KQmJFbw6gWLZhpfuo4

Verbose log
yt-dlp --verbose -f 249,243 https://youtube.com/playlist?list=PLE3MtMBjMVLezj0KQmJFbw6gWLZhpfuo4
[debug] Command-line config: ['--verbose', '-f', '249,243', 'https://youtube.com/playlist?list=PLE3MtMBjMVLezj0KQmJFbw6gWLZhpfuo4']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, err utf-8, pref UTF-8
[debug] yt-dlp version 2022.01.21 [f20d607b0]
[debug] Lazy loading extractors is disabled
[debug] Python version 3.10.2 (CPython 64bit) - Linux-5.15.18-200.fc35.x86_64-x86_64-with-glibc2.34
[debug] exe versions: ffmpeg 4.4.1 (setts), ffprobe 4.4.1
[debug] Optional libraries: Cryptodome, mutagen, sqlite, websockets
[debug] Proxy map: {}
[debug] [youtube:tab] Extracting URL: https://youtube.com/playlist?list=PLE3MtMBjMVLezj0KQmJFbw6gWLZhpfuo4
[youtube:tab] PLE3MtMBjMVLezj0KQmJFbw6gWLZhpfuo4: Downloading webpage
[debug] [youtube:tab] Final URL: https://www.youtube.com/playlist?list=PLE3MtMBjMVLezj0KQmJFbw6gWLZhpfuo4
[youtube:tab] PLE3MtMBjMVLezj0KQmJFbw6gWLZhpfuo4: Downloading API JSON with unavailable videos
[download] Downloading playlist: Statics
[youtube:tab] playlist Statics: Downloading 19 videos
[download] Downloading video 1 of 19
[debug] [youtube] Extracting URL: https://www.youtube.com/watch?v=uAzpUfTeS5E
[youtube] uAzpUfTeS5E: Downloading webpage
[youtube] uAzpUfTeS5E: Downloading android player API JSON
[youtube] uAzpUfTeS5E: Downloading player cdb8d439
WARNING: [youtube] nsig extraction failed: You may experience throttling for some formats
n = iqhPXWLKL0Ali1P ; player = https://www.youtube.com/s/player/cdb8d439/player_ias.vflset/en_US/base.js
uAzpUfTeS5E: Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/yt_dlp/extractor/youtube.py", line 2412, in _decrypt_nsig
    self._player_cache[player_id] = self._extract_n_function(video_id, player_url)
  File "/usr/lib/python3.10/site-packages/yt_dlp/extractor/youtube.py", line 2433, in _extract_n_function
    funcname = self._extract_n_function_name(jscode)
  File "/usr/lib/python3.10/site-packages/yt_dlp/extractor/youtube.py", line 2421, in _extract_n_function_name
    return self._search_regex(
  File "/usr/lib/python3.10/site-packages/yt_dlp/extractor/common.py", line 1186, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
yt_dlp.utils.RegexNotFoundError: Unable to extract Initial JS player n function name; please report this issue on  https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see  https://github.com/yt-dlp/yt-dlp  on how to update. Be sure to call yt-dlp with the --verbose flag and include its complete output.
 (caused by RegexNotFoundError('Unable to extract \x1b[0;94mInitial JS player n function name\x1b[0m; please report this issue on  https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see  https://github.com/yt-dlp/yt-dlp  on how to update. Be sure to call yt-dlp with the --verbose flag and include its complete output.')); please report this issue on  https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see  https://github.com/yt-dlp/yt-dlp  on how to update. Be sure to call yt-dlp with the --verbose flag and include its complete output.
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, codec:vp9.2, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), acodec, lang, proto, filesize, fs_approx, tbr, vbr, abr, asr, vext, aext, hasaud, id
[info] uAzpUfTeS5E: Downloading 2 format(s): 249, 243
[debug] Invoking downloader on "https://rr2---sn-nu5gb5ux-q5je.googlevideo.com/videoplayback?expire=1643881932&ei=bFH7YaGeOZCw1AaGx7aQCA&ip=<IP_ADDRESS>&id=o-AKhnLsd-XdWL8c_SG_uLpR27SCPCWG975RpINwMahzs3&itag=249&source=youtube&requiressl=yes&mh=bC&mm=31%2C29&mn=sn-nu5gb5ux-q5je%2Csn-n0hhpujvh-q5j6&ms=au%2Crdu&mv=m&mvi=2&pl=24&initcwndbps=856250&vprv=1&mime=audio%2Fwebm&gir=yes&clen=7389762&dur=1236.841&lmt=1620732709207504&mt=1643859903&fvip=5&keepalive=yes&fexp=24001373%2C24007246&c=ANDROID&txp=5311224&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AOq0QJ8wRgIhAL_5yOIlawE1k76mUNHqGWeSvf_g4Ve8tHGSo11qeddbAiEAuHGqj8a_Himvd-Z0JSjWqeSLVrxVP4vYUHse5qXzjtY%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRAIgXy-PAQ1RY3B-TtVgS0mZr6Gt6EqaNWUQeU2Twa9QcBkCIBaueD_tLjTy2-KjVAjQ6DZ5VK9B9YuQ-OUnugiQyJ9Y"
[download] Destination: Statics Part 1 (Introduction) [uAzpUfTeS5E].webm
[download]  14.0% of 7.05MiB at 760.85KiB/s ETA 00:08^C
ERROR: Interrupted by user

I've searched the bugtracker for similar issues including closed ones. DO NOT post duplicates

duplicate of https://github.com/yt-dlp/yt-dlp/issues/2569 https://github.com/yt-dlp/yt-dlp/issues/2575 https://github.com/yt-dlp/yt-dlp/issues/2576 https://github.com/yt-dlp/yt-dlp/issues/2588 https://github.com/yt-dlp/yt-dlp/issues/2602
Already fixed in master, downloads should not be impacted.

@coletdjnz sorry, I was in hurry, didn't think this could happen to others as well.


added UpdatePc tests

I have added 5 tests for UpdatePc function. I could not add tests with negative offsets because the offset should be uint64. In case there is any way to address this, please point it out and I'll add negative offset test variants too.
Also while I was writing tests, I noticed a potential bug. Based on the Cairo whitepaper, in the case of JNZ (conditional relative jump), the next_pc should be pc + op1 not pc + res , so I fixed that too. If I understood incorrectly please lmk.

the next_pc should be pc + op1 not pc + res , so I fixed that too. If I understood incorrectly please lmk.

I think they are the same, because when jzn -> res = op1

In case there is any way to address this, please point it out and I'll add negative offset test variants too.

Offsets can be negative, but it is express according to Field Elements for example, -1 would be:
x =<PHONE_NUMBER>666131213697322783095070105623107215331596699973092056135872020480

Because operations with felt are made modulus a prime P where P = x + 1. Then x + 3 = 2, for example

Don't worry about negative offset nonetheless, I am fixing them as part of a feature I am working on

the next_pc should be pc + op1 not pc + res , so I fixed that too. If I understood incorrectly please lmk.

I think they are the same, because when jzn -> res = op1

Do you mean in the update res part of the pseudo code res = op1? If so, isn't that when pc_update is case 0,1 or 2?

Do you mean in the update res part of the pseudo code res = op1? If so, isn't that when pc_update is case 0,1 or 2?

You were right from the beginning, it was a bug, good catch! I think it should be already patched in main


Cannot use module with dynamic import since Vite 4.3

Describe the bug
When I import the npm package verovio since Vite 4.3 I will get an error Failed to resolve entry for package. Probably this error occurs because there is a dynamic import statement in verovio/wasm-hum (which is created by Emscripten):
const{createRequire:createRequire}=await import("module");

For reference also see: https://github.com/nuxt/nuxt/issues/21578
Reproduction
https://stackblitz.com/edit/github-rjaduf?file=src%2Fpages%2FHome.vue
Steps to reproduce
Run npm i && npm run dev
Change Vite to ~4.2.0 in package.json if you want to see what the output should actually look like.
System Info
System:
    OS: Linux 5.0 undefined
    CPU: (8) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 0 Bytes / 0 Bytes
    Shell: 1.0 - /bin/jsh
  Binaries:
    Node: 16.14.2 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 9.4.2 - /usr/local/bin/npm
  npmPackages:
    @vitejs/plugin-vue: latest => 4.2.3
    @vitejs/plugin-vue-jsx: latest => 3.0.1
    vite: ~4.3.0 => 4.3.9

Used Package Manager
npm
Logs

Click to expand!
[vite] Internal server error: Failed to resolve entry for package "/home/projects/github-rjaduf/node_modules/.vite/deps". The package may have incorrect main/module/exports specified in its package.json.
  Plugin: vite:asset-import-meta-url
  File: /home/projects/github-rjaduf/node_modules/.vite/deps/verovio_wasm-hum.js?v=a0235862
      at packageEntryFailure (file://file:///home/projects/github-rjaduf/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:23434:11)
      at resolvePackageEntry (file://file:///home/projects/github-rjaduf/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:23431:5)
      at tryCleanFsResolve (file://file:///home/projects/github-rjaduf/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:23095:28)
      at tryFsResolve (file://file:///home/projects/github-rjaduf/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:23042:17)
      at TransformContext.transform (file://file:///home/projects/github-rjaduf/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:41919:32)
      at Object.transform (file://file:///home/projects/github-rjaduf/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:42971:44)
      at async loadAndTransform (file://file:///home/projects/github-rjaduf/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:53437:29)

Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Note that this only seems to be a problem in development mode.

https://vitejs.dev/guide/features.html#glob-import

Thank you for this link @Shyam-Chen. Since the code is generated by Emscripten in my case (via the verovio package), it won't be possible to use glob import. As written in the Vite documentation: This is a Vite-only feature and is not a web or ES standard. So it wont by possible to implement this directly into Emscripten. Any other idea how to get around this issue?

https://github.com/vitejs/vite/pull/12616 seems related, but this is only a warning for production. Running npm run build on a nuxt project with this setup will throw
Module "module" has been externalized for browser compatibility, imported by "~/node_modules/verovio/dist/verovio-module-hum.mjs". See http://vitejs.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details

which seems correct. In production everything works as expected because the mentioned dependency (verovio/wasm-hum) has a conditional statement that only imports import("module") when running the script in a Node.js context, but not in the browser. This module is created by Emscripten.
However, if I run this in development mode with npm run dev I get the same error as mentioned above. You can check this out in the reproduction repository.
Internal server error: Failed to resolve entry for package "~/node_modules/.vite/deps". The package may have incorrect main/module/exports specified in its package.json.
  Plugin: vite:asset-import-meta-url

I researched a bit and found that the error is thrown in packages/vite/src/node/plugins/resolve.ts packageEntryFailure() which is called in resolvePackageEntry():
https://github.com/vitejs/vite/blob/45c6f3b7601afcb8fccf25864703ee6b50a10da8/packages/vite/src/node/plugins/resolve.ts#L1072-L1084
Why would this fail in development mode but in production it works with the mentioned warning? I'd be happy to improve this issue when I get some help where to start debugging. Maybe @chaxus or @patak-dev have more informations about this?
I could not find an issue other than #12616 that is related to this in the Vite 4.3 changelog. But I already tested that with Vite ~4.2.0 everything work just fine.

Adding optimizeDeps.exclude = ['verovio'] may be a workaround?

Thank you @vitto32, this fixed it for my development setup! I'm not sure though if I should keep this issue open since this could still be improved in Vite I guess, but as well in Emscripten.

I have a similar problem.
We have a package that uses a dynamic import in one of the functions.
What worked for me was to re-import the module that our package was importing in the final function.
optimizeDeps.exclude = ['verovio'] made no difference for me.

Duplicate of https://github.com/vitejs/vite/issues/14169#issuecomment-1688335497


feat: AggregatedMeasureData is resposible for creating OutgoingMessages

…sages

Description

References

#0000

Codecov Report

Merging #453 (eaa99c5) into main (21978a1) will decrease coverage by 68.10%.
Report is 141 commits behind head on main.
The diff coverage is 15.14%.

@@             Coverage Diff             @@
##             main     #453       +/-   ##
===========================================
- Coverage   83.07%   14.97%   -68.10%
===========================================
  Files         456      416       -40
  Lines       10418     7938     -2480
===========================================
- Hits         8655     1189     -7466
- Misses       1438     6730     +5292
+ Partials      325       19      -306

Files Changed
Coverage Δ

...ivedMessages/ArchivedMessageGetDocumentListener.cs
0.00% <ø> (ø)

.../ArchivedMessages/ArchivedMessageSearchListener.cs
0.00% <0.00%> (ø)

source/Api/Configuration/InboxMessageMetadata.cs
0.00% <0.00%> (ø)

...ation/Middleware/Correlation/CorrelationContext.cs
66.66% <ø> (ø)

...uration/Middleware/UnHandledExceptionMiddleware.cs
0.00% <0.00%> (ø)

source/Api/Configuration/SystemTimer.cs
0.00% <ø> (ø)

source/Api/EventListeners/InboxEventListener.cs
0.00% <0.00%> (ø)

...rce/Api/EventListeners/IntegrationEventListener.cs
0.00% <0.00%> (ø)

...essages/RequestAggregatedMeasureMessageReceiver.cs
0.00% <0.00%> (ø)

...equestAggregatedMeasureTransactionQueueListener.cs
0.00% <0.00%> (ø)

... and 151 more

... and 328 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Looking forward to your codes!

As the title says :)

期待您更新代码

Looking forward to your codes!

Looking forward to your codes!

Looking forward to your codes!


[WIP] Build wheels automatically in CI environment

Summary
Right now when it's time to push a relase of qiskit-terra we have to
manually build wheels for all our supported environments because we
included compiled code in the project. This involves setting up a proper
environment with portable librariers and compilers in Linux, Windows,
and Mac OSX with all 3 versions of python we support. Then manually
building the 9 wheels necessary to publish on pypi. However we install
qiskit-terra from source every day multiple times in all these
environments in our CI. There is no reason this manual step needs to
exist and we can just leverage CI to do our wheel building when it's
time to do a release.
This commit adds initial support for building our wheels in travis
(for linux and osx) and appveyor (for windows). It leverages the
cibuildwheel project to automate the wheel building. This will ensure we
setup the proper environment for all 3 python versions on all 3
environments (for example pulling in the manylinux docker container on
linux).
Building off this in the future it should only be necessary to push a tag on
release and the automation will take care of building all the release artifacts
and pushing them to pypi.
Details and comments
Things to do still:

[ ]  Find a place to upload to for testing travis wheels locally (appveyor stores
artifacts) for verification
[ ] Setup automation around tag pushes to avoid building wheels on every
PR and/or push event.

Ok, 2/3 of the builds are working now. Mac OSX is still failing because it's ignoring the skip env var and trying to build python 2.7.
Since appveyor allows artifact uploads you can see download the results of those wheel builds here: https://ci.appveyor.com/project/Qiskit/qiskit-sdk-py/builds/22931221/job/j3fllycet9nvo4k1/artifacts
After fixing OS X the next step is to find a place to upload the travis builds so we can locally test the output from everything to verify this does the right thing.

This is great, Aer comes next :)

Ok, all the wheel builds are completing successfully now. The next test is to setup some external cloud storage for travis to upload the output to so we can verify the output is as we expect. Once that manual verification is complete we can change the job config to only run the wheel builds on the stable branch and on tag pushes upload to pypi.

Still need to add the appveyor logic bits to make it only run wheel builds on tags, but this is almost ready

I think the appveyor side is correct, but it won't be triggered except for on a tag so I won't know until release.

Oh, I'm being silly. I can just remove the tag conditional to test it. I'll switch this back to WIP test that and only remove the WIP until it works as expected.

Great job Matthew, I'm reviewing this because I want to implement something similar in Aer.

Ok, this should be ready to go I think. I can't test the twine upload to test.pypi.org bits until we actually push a tag unfortunately (we'd be able to if we had dev versions, as discussed in #1796 ). But at least the wheel builds look as though they're working as expected.
The workflow for release with this should be tag 0.8 (and push to github). Then we should be able to download the wheels from https://test.pypi.org/project/qiskit-terra/#files after the builds finishm inspect/test them and then push them with an sdist to the real pypi.


invalid syntax test cases cause panic

First off, thanks for writing this excellent blog post on structuring and testing procedural macros! I really like the way it's broken down in to parsing, analysis, intermediate representation, and code generation. I am currently attempting to implement a procedural macro of my own following this structure but I've run into an issue that is probably more specific to proc-macro-error than it is your guide, but I thought it would be worth raising as an issue here anyway before I start trying to dig into that codebase.
The issue is with writing test cases to validate what happens when the parsing stage encounters invalid syntax. I imagine that tests for the analysis stage could be similarly affected, but I haven't made it that far yet in my own macro implementation :upside_down_face:. (I also wasn't intentionally trying to test invalid syntax, I just haven't made it far enough in my parse implementation for the syntax i'm targeting to be properly parsed.)
So the problem is that the parse function calls proc-macro-error macros like abort and abort_call_site which results in a panic in tests that validate error cases since according to its docs:

This attribute MUST be present on the top level of your macro (the function annotated with any of #[proc_macro], #[proc_macro_derive], #[proc_macro_attribute]).

To illustrate with an example, here is a contrived test that I created in a clone of this repo:
zsh/3 3540 [148]  (git)-[main]-% git diff
diff --git a/src/parse.rs b/src/parse.rs
index 5572a87..709b66b 100644
--- a/src/parse.rs
+++ b/src/parse.rs
@@ -51,4 +51,18 @@ mod tests {
             ),
         );
     }
+
+    #[test]
+    fn invalid_syntax() {
+        parse(
+            quote!(ident),
+            quote!(
+                #[inline]
+                #[precondition(x <>> == 0)]
+                fn even_to_odd(x: u32) -> u32 {
+                    x + 1
+                }
+            ),
+        );
+    }
 }

(basically just the existing parse::valid_syntax test with a simple ident argument added in the first positional passed to parse)
The docs for proc_macro_error indicate an argument that can be passed to the called allow_not_macro (eg #[proc_macro_error(allow_not_macro)], but that comes with the caveat:

Pay attention: the function this attribute is applied to must return proc_macro::TokenStream.

This is problematic since the parse example in your tutorial relies on proc_macro2::TokenStream.
Anyway, like I mentioned earlier I don't think this is necessarily a problem with this tutorial but thought it would be useful to mention in case any other bright-eyed wannabe Rustaceans find themselves dealing with a similar situation. I'll probably dig into the proc-macro-error crate after submitting this issue to see if it's possible for #[proc_macro_error(allow_not_macro)] to accept proc_macro2::TokenStream as well as proc_macro::TokenStream.
Thanks again for the great tutorial!

Okay I'm thinking about this a bit more after looking through the proc-macro-error code base and realize that #[proc_macro_error] is very much dependent on the argument and the return types of the macro function being proc_macro::TokenStream and it doesn't make sense to try forcing it to support fn parse(args: TokenStream, item: TokenStream) -> Ast or fn invalid_syntax().
Now I'm instead looking into trying to write a testmacro that can have #[proc_macro_error] applied to it in invalid syntax test cases. If that doesn't pan out, I think it's probably best to just define invalid syntax macros as ui/integration tests.
:facepalm: and now I'm seeing that's exactly what you cover in the diagnostics section. Sigh. This is what I get for being terrible at reading instructions and trying to fit Rust learning into an hour a night every other night for a few weeks a year...


feat!: auto extract exports

resolve #103
Todo:

[x] Support PackagePreset
[x] Global Cache
[ ] Package.json's meta.unimport field support

Breaking changes:

Internal context type change
generateTypeDeclarations, getExports become async

I guess we could have it for now, and leave meta.unimport for another PR with a more detailed design?


Error when training with a single variable

This is great work!
I found that when setting max_dim=1, i.e., training with only a single variable, the model throws an error. The model only runs without errors when max_dim is increased to 8. Why is this happening, and how can I make modifications to address this?

Thanks @Chris-city. Could you provide more context about your goal? Can you provide the stacktrace w.r.t. error? Did you plan to pre-train a model with only univariate data? If so, I would suggest create the arrow data in univariate format, no need to change max_dim. There are some very high-dimensional dataset in lotsa_v1, max_dim is designed to sample  multivariate-dataset with reasonable ndim for pre-training. you can found it from line 64 in resample.py


Is it possible to only pick the first entries of an RSS feed?

Lets say I want to get get the greatest posts of reddit from the last 24hours. But I only want to get the top 5 - but the feed returns 20 posts.
So I'd love to prune the results. Is that possible right now?

I think that should be doable using a combination of a RssAgent and a DelayAgentz. Set remembered_id_countto0in theRssAgentso that it always emits the whole feed. In theDelayAgentsetmax_emitted_eventsto5andkeepto oldest. If you ensure theDelayAgentruns after theRssAgent` it should always return the latest 5 feed entries.


For nubs.

Hello There smarter ppl than me.

I'm at the part where i installed python,and wanted to start pokecli but it just popps and doesn't stay to let me write stuff in it.
Halp pls.
Thanks for it in forward.

Do you have a skype or a method of contact I can help you get it working I am pretty sure I know what your issue is someone else had this issue with another bot I could help you just hard to explain here.

Thanks dankmemes, my skype is needmorecake, gonna be up on it in like half an hour if it's okay for you.

@DaniQQ  Sounds good.

i need halp too

@comfortedbasher Skype etc?

Help me please. My skype is: REFHOST

@TheGoldenXY Added.

https://github.com/PokemonGoF/PokemonGo-Bot/wiki/Installation


Research: improve T-Addr support

Improve the processing of transactions with transparent inputs or outputs. This correlates with the tasks in:
https://github.com/zcash/librustzcash/issues/215
Particularly the question around
How will the SDK handle transparent transaction information downloaded from lightwalletd?

For a given transaction we need to:

iterate over all inputs to check whether this transaction spends any of our UTXOs
iterate over all outputs to collect all that match any of our t-addrs
decrypt all shielded outputs and find and process those that match our wallet (including TXs that we've sent)

Timeboxed:
2 days

split out some of this work into https://github.com/zcash/librustzcash/issues/270


Make a demo video

[ ] Define the storyline
[ ] Film
[ ] Edit
[ ] Upload
[ ] Link to ROS tutorial page
[ ] Share with Google sponsors

I think this one can be closed too

I agree. But I suggest deleting the old one and pasting here a link to the final one for completeness, then closing the issue.

New video's link: https://youtu.be/kR_cJSCLBTg

Old video was removed from youtube.


Fixes bug where users could not accept invitations to plans

Updated devise's invitation to set a default first/last name, and to default the org to the inviter's org.
Updated form users are driven to after following invitation link to ask users to fill in name and org

will close and PR development


Not specifying containers throws Exception

15/10/28 15:12:19 INFO client.ConfiguredRMFailoverProxyProvider: Failing over to rm2
Abnormal execution:/ by zero
java.lang.ArithmeticException: / by zero
at org.elasticsearch.hadoop.yarn.util.YarnUtils.yarnAcceptableMin(YarnUtils.java:113)
at org.elasticsearch.hadoop.yarn.util.YarnUtils.minMemory(YarnUtils.java:103)
at org.elasticsearch.hadoop.yarn.compat.YarnCompat.resource(YarnCompat.java:71)

This happens as well when I omit the containers=12 parameter
More about it here.

Is there any work around on this?  I can't even really see with what is causing this.

I believe the issue comes into play when I am using fine-grain scaling running Yarn on the Myriad project. For Fine Grain scaling, we set a property "yarn.scheduler.minimum-allocation-vcores" to be 0.  Where that comes into play is that in
https://github.com/elastic/elasticsearch-hadoop/blob/master/yarn/src/main/java/org/elasticsearch/hadoop/yarn/util/YarnUtils.java
On Line 107 we have:
private static int yarnAcceptableMin(Configuration cfg, String property, int value) {
int acceptedVal = Integer.parseInt(cfg.get(property));
if (acceptedVal >= value) {
return acceptedVal;
}
    if (value % acceptedVal != 0) {
        return acceptedVal * Math.round(value / acceptedVal);
    }
    return value;
}

Where I believe the value that I set to 0 ends up being in the acceptedVal variable, causing a divide by 0. Thus, I believe we should update the es-yarn code to check if that value is 0 and then know that we are above the the accepted value if we are > 0 rather then doing a divide operation here. This value CAN be 0, and thus we shouldn't divide by 0.
(I  can read Java, but I am not a programmer, so I am hesitant to write code to fix it...)
The good news is for this, we should be able to work around by setting the value to something >0 in the short term, but longer term we should address this.


Noon

add solarNoon
This is within a couple of minutes of values from
https://www.esrl.noaa.gov/gmd/grad/solcalc/ at the same longitude.
This module's sunrise and sunset calculations are likewise within a
couple of minutes to values from that site.
closes https://github.com/intractable/horizon/issues/3

Thanks for doing this!


two official versions of a package?

What's the problem this feature will solve?

I have 2 branches of my pypubsub project: master branch is for python 3+; and branch 3.4 is for python 2.7. However I cannot see a way in pypi.org of indicating that there is more than one official version available. E.g. if you go to https://pypi.org/project/PyPubSub/3.4.0/ you can see the red indicator. I don't really want it to be red because the 2 branches are mutually exclusive. Also if you search for pypubsub in pypi, the one you hit is the master, ie 4, there is no indication that 3.4 exists.
Describe the solution you'd like

Anything really, that allows a second official branch of a package to exist and be found in pypi search.
Additional context

If you're using the python_requires, you'll be able to restrict installs based on the installer's Python version, so Python 3+ users won't see your 3.4.x releases, and Python 2 users won't see your 4.x.x releases when installing.
Another alternative would be to create a separate package entirely, e.g. PyPubSub-2 for the 2.7 branch.
I think it's unlikely we'd remove the red "Newer version available" indicator. We generally want people to upgrade to the latest versions when available, which includes potentially migrating from a 2.x release to 3.x.

Good to know, I do use python_requires. I'll consider the separate package approach.
How about, then, that in the pypa site, the user can filter on python versions? Then if they were in the search, only packages that satisfy the chosen python version would get shown, and if they went to pypubsub the Newest Version would show the latest for the version of Python they selected. If they didn't select a Python version they would get the current behavior.

Got it, so to give an example if I'm understanding correctly:
A search for "Django" with the Programming Language :: Python :: 2 classifier selected like this should:

still show Django as the top result (even though the last release doesn't support Python 2)
should link to https://pypi.org/project/Django/1.11.20/ instead (the last release which does support Python 2)

This would be a bit challenging because we only consider the latest metadata in our search results, in order to keep the index as up-to-date as possible. This would require retaining multiple "old" versions of a package in the index, and potentially de-duplicating them if multiple match the search.


v3.4.0

This change is

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 69.95%. Comparing base (204bb50) to head (972e060).

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #258   +/-   ##
=======================================
  Coverage   69.95%   69.95%
=======================================
  Files         379      379
  Lines       31767    31767
  Branches     4454     4454
=======================================
  Hits        22223    22223
  Misses       8510     8510
  Partials     1034     1034

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Improve nested if

Short Description:
Imporve nested if

merge conflicts

@douglascamata Resolved

@douglascamata Updated

@NamPNQ I'm getting these with the latest commit:
Traceback (most recent call last):
  File "C:\PokemonGo-Bot\pokecli.py", line 494, in <module>
    main()
  File "C:\PokemonGo-Bot\pokecli.py", line 62, in main
    bot.start()
  File "C:\PokemonGo-Bot\pokemongo_bot\__init__.py", line 54, in start
    self._setup_api()
  File "C:\PokemonGo-Bot\pokemongo_bot\__init__.py", line 289, in _setup_api
    self.update_inventory()
  File "C:\PokemonGo-Bot\pokemongo_bot\__init__.py", line 397, in update_inventory
    if {"item_id", "count"}.issubset(set(item_info.keys())):
AttributeError: 'NoneType' object has no attribute 'keys'

Oops, my mistake, tks @migolo


Suggest to add a getMonthName() feature

Is your feature request related to a problem? Please describe.
I suggest to add a getMonthName() function.
Describe the solution you'd like
Calling getMonthName() would return the name of the month in English.
It could also be possible to imagine a language such as "en", "fr" or "de" to be passed as a parameter (Example: getMonthName(fr)) to provide the month name in local language.
Describe alternatives you've considered
Alternative could be to set-up a array containing the month names and refer to this array with its index.
For example month[0] would return "Jan" or month[11] would return "Dec".
Additional context
Congrats' on this library, I think it is super useful and straight to the point. Thanks for the work provided.

Hey @clemcg! Thanks for your kind words and suggestion. I think that's a great idea, and have gone ahead and implemented it, and released the newest version to NPM.
You can check out the new docs for this function on this page, but I've sort of meshed both of your ideas together.
getMonthName(local, index, short);

If you don't include any arguments, then it defaults to en locale, the current month's index, and short set to false, which means it will return the full month name.
Alternatively if you have a particular month in mind, then you can include an index for it. Note that whenever you include an index, you must include a locale too.
 getMonthName("en", "3") // April

You can check out a live example of this new function near the last line of this StackBlitz
Let me know if you had something else in mind, or feel free to submit a PR. Thanks again!

Awesome ! It's super cool ! Congrats' 👍


Update working-group.md to add section about reporting working group members

Add section about reporting working group members

PR Summary
Add a section on how to report working group members for abuse. Report Content should be used when the maintainers' attention is urgently needed.
PR Context

PR Checklist

[ ] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[ ] Summarized changes
[ ] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[ ] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[ ] None
OR
[ ] Experimental feature(s) needed

[ ] Experimental feature name(s):

User-facing changes

[ ] Not Applicable
OR
[ ] Documentation needed

[ ] Issue filed:

Testing - New and feature

[ ] N/A or can only be tested interactively
OR
[ ] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[ ] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.
OR
[ ] I have considered the user experience from a tooling perspective and opened an issue in the relevant tool repository. This may include:

[ ] Impact on PowerShell Editor Services which is used in the PowerShell extension for VSCode
(which runs in a different PS Host).

[ ] Issue filed:

[ ] Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features.

[ ] Issue filed:

[ ] Impact on PSScriptAnalyzer (which provides linting & formatting in the editor extensions).

[ ] Issue filed:

[ ] Impact on EditorSyntax (which provides syntax highlighting with in VSCode, GitHub, and many other editors).

[ ] Issue filed:

@SteveL-MSFT please take another look.


ESLint doesn't seem to work (there are no errors or warnings no matter what I do)

This is an .eslintrc.json file local to a project I just made:
{
    "env": {
      "browser": true,
      "es6": true
    },
    "extends": [
        "eslint:recommended",
        "standard"
    ],
    "globals": {
      "Atomics": "readonly",
      "SharedArrayBuffer": "readonly"
    },
    "parserOptions": {
      "ecmaVersion": 2019,
      "sourceType": "module"
    },
    "rules": {
      "indent": [
        "error",
        2,
        {
          "SwitchCase": 1,
          "VariableDeclarator": "first"
        }
      ],
      "linebreak-style": [
        "error",
        "windows"
      ],
      "quotes": [
        "error",
        "double"
      ],
      "semi": [
        "error",
        "always"
      ],
      "eqeqeq": [
        "error",
        "always",
        {
          "null": "ignore"
        }
      ],
      "no-implicit-coercion": [
        "error",
        {
          "allow": [
            "!!"
          ]
        }
      ],
      "no-throw-literal": "error",
      "prefer-promise-reject-errors": "error",
      "require-await": "error",
      "camelcase": "error",
      "eol-last": "error",
      "new-cap": "error",
      "no-negated-condition": "warn",
      "no-var": "error",
      "prefer-const": "error"
    }
  }

I installed ESLint and babel-eslint locally (though I do also have both globally; VS2019 uses the global ESLint) and I also have the VS Code ESLint Extension enabled.  And this is my JS code:
"use strict";

function createList() {
    const unorderedList = document.createElement("ul");
    let listItemContent;
    while (listItemContent = prompt("Enter a list item; press \"Cancel\" to stop")) {
        const listItem = document.createElement("li");
        listItem.textContent = listItemContent;
        unorderedList.append(listItem);
    }
    document.body.append(unorderedList);
}

createList();

I tried changing the first line inside the createList function to
let unorderedList = document.createElement("ul");

but no error was given.  What's going on?  Is there something I need to do in order for ESLint to work?  It at least works on VS2019.

@DragonOsman does the validation happen correctly when you use eslint in the terminal. If this is the case can you please provide me with a GitHub repository I can clone that demos what you are experiencing.

How do I test this?  And here's the link to the GitHub repository.

Open a terminal and run eslint in it.

I tested it and running .\node_modules\.bin\eslint .\scripts\script.js in a terminal on the workspave folder doesn't report any problems either. So I think this is not a eslint extension problem. Closing the issue.


feat: case sensitive as function, next result

Case sensitivity is not fixed when setting up the plugin, but can be changed, e.g. with checknox
A result index is added so that the current item can be referenced
Thanks to the index, you can omit the current result when replacing it, it may be styled differently
When an element is replaced or omitted, the page will scroll to the next result

hey @sirsimon, I mistakenly force pushed to your sirsimon:main branch while adding a commit of my own. Here are the files that you chaned, would you mind commiting them to your main branch and making another PR?
Sorry for the trouble.
Here are the files: https://gist.github.com/sereneinserenade/849b21d59b477b4913bc26ce77ee9a39


Develop DatumaroBinaryFormat to export/import the dataset header & DatasetItem

Summary

Ticket no. 104650
Develop DatumaroBinaryFormat to export/import the dataset header & DatasetItem (annotations are not completely finished and the subsequent PR will cover more)

How to test
The added tests in this PR cover the changes.
Checklist

[x] I submit my changes into the develop branch
[x] I have added description of my changes into CHANGELOG
[x] I have updated the documentation accordingly
[x] I have added tests to cover my changes
[x] I have linked related issues

License

[x] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
[x] I have updated the license header for each file (see an example below)

# Copyright (C) 2023 Intel Corporation
#
# SPDX-License-Identifier: MIT

There are some duplicates from previous PRs. Could you separate them first?

It's ready for review now.

@chuneuny-emily, @yunchu
I added https://github.com/openvinotoolkit/datumaro/pull/828/commits/454b22c84add680e8201dfd3503ff1dd52b66079 because of the recent CI failure: https://github.com/openvinotoolkit/datumaro/actions/runs/4289888756/jobs/7473354523.
This is because our test_utils.py depends on tfds.testing.mock_data but our testing environment doesn't have the dependency of tfds.testing.
https://github.com/openvinotoolkit/datumaro/blob/1e6761b82f85bb60506d2987139301b172cb5513/datumaro/util/test_utils.py#L353
After this time, I think that it would be good to move test_utils.py from ./datumaro to ./tests and explicitly make a testing (dev) environment requirements under ./tests, e.g. ./tests/requirements.txt`.