Rename minimint the binary to fedimintd

This is a bit of a subset of #293. I think it is going to be
easier to merge such change in chunks than a one big whole
that generates merge conficts with everything.
And we care about this particular binary name because we're
setting up OCI container builds in Dockre Hub and it's
easier to start with the desired name upfront than change
it later.

Codecov Report

Merging #425 (9b54376) into master (36f56ee) will increase coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #425      +/-   ##
==========================================
+ Coverage   74.52%   74.54%   +0.01%
==========================================
  Files          83       83
  Lines       10515    10515
==========================================
+ Hits         7836     7838       +2
+ Misses       2679     2677       -2

Impacted Files
Coverage Δ

fedimintd/src/bin/configgen.rs
2.08% <ø> (ø)

fedimintd/src/bin/fedimintd.rs
2.94% <ø> (ø)

fedimintd/src/config.rs
65.00% <ø> (ø)

fedimintd/src/consensus/conflictfilter.rs
96.29% <ø> (ø)

fedimintd/src/consensus/debug.rs
96.55% <ø> (ø)

fedimintd/src/consensus/interconnect.rs
87.50% <ø> (ø)

fedimintd/src/consensus/mod.rs
94.92% <ø> (ø)

fedimintd/src/db.rs
100.00% <ø> (ø)

fedimintd/src/lib.rs
78.67% <ø> (ø)

fedimintd/src/net/api.rs
88.18% <ø> (ø)

... and 7 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@justinmoon I've accidentally forced pushed and lost fix in 9da0e23d20d0aa4235e9b090d8e3c43d7e742f07 you've pushed. :facepalm:

Is this superceded by #429 ?

Yes. @justinmoon


Seems to be stuck on checking size of Container Manager?

Have successfully moved all my apps bar Container Manager over to my NVME volume. However, it now appears to be stuck on 'Checking size of Container Manager'.  It appears to be getting stuck here whether I select move or backup.
There is no progress bar or etc appearing.  I have tried several times to move Container Manager using this script with the same problem, although the longest I have let it run is about 1 hour.  Should I be leaving it longer?
I have about 25gb in the Docker folder, which I did earlier move to my NVME volume following this guide.
But Container Manager itself remains on the HDD volume Could that be what is causing the problem?

Went out for a few hours and it was complete, saying that my Container Manager was 2256 GB in size which I think explains the length of time taken.
But I don't think that is correct - there are some containers (like Plex) that have folders that will be big (my film library etc) but I'm trying to keep them pointed toward the original HDD volume.
Is the size estimation including those folders, and if so will that preclude me from moving the Container Manager to my NVME volume which is only 1000 GB in size?

The Plex Media folder totals 4.14 TB so I don't think it is included in the 2256 GB that the script thinks my Container Manager is sized at.

That 2256 GB is the hidden @docker folder (and /var/packages/ContainerManager/target/ which is only 349MB).
I'll add a progressbar for getting package sizes.

By the time it removed 'dangling Dockers', Container Manager was only 94 GB in size.

I should "Removing dangling docker images" before checking the @docker folder size.


🔥 mongo: remove use of internal isDup() function

The official mongo driver now has an API to handle this for us. Refer: https://jira.mongodb.org/browse/GODRIVER-972
Acceptance Criteria

All uses of isDup(err) are migrated to mongo.IsDuplicateKeyError(err)
isDup() internal function removed.

Fixed via v0.28.0


I79 add favicon

Change Summary

Used the SVG logo as the favicon
Added an icon for Safari's pinned tabs feature
Added an icon for iOS
Removed unused assets

Change Form

[x] The pull request title has an issue number
[x] The change works by "Smoke testing" or quick testing
[ ] The change has tests
[ ] The change has documentation

Other Information
Closes #79
Related issue

Resolve #79

Codecov Report

Merging #164 (3291ef6) into main (ab77cec) will decrease coverage by 69.57%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main     #164       +/-   ##
===========================================
- Coverage   87.21%   17.64%   -69.58%
===========================================
  Files          46       12       -34
  Lines         892       17      -875
  Branches        0        4        +4
===========================================
- Hits          778        3      -775
+ Misses        114       14      -100

Flag
Coverage Δ

backend
?

frontend
17.64% <ø> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...models/migrations/0006_subject_topic_delete_tag.py

...remove_topic_question_question_subject_and_more.py

...erver/api/apps/shared_models/models/quiz_models.py

...hared_models/migrations/0005_questionstatistics.py

...er/api/apps/shared_models/tests/test_statistics.py

..._quizstatistics_userstatistics_quiztag_and_more.py

server/api/apps/quizzes/serializers.py

server/api/urls.py

...apps/shared_models/serializers/quiz_serializers.py

server/api/apps/quiz_take/urls.py

... and 48 more

Continue to review full report at Codecov.

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


Update Comment

Codecov Report
Base: 67.91% // Head: 67.91% // No change to project coverage :thumbsup:

Coverage data is based on head (3b6a05b) compared to base (c4b8af2).
 Consider uploading reports for the commit 824357f to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##              dev     #350   +/-   ##
=======================================
  Coverage   67.91%   67.91%
=======================================
  Files          71       71
  Lines        5620     5620
=======================================
  Hits         3817     3817
  Misses       1803     1803

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Version Issues

This package is awesome, but particularly finnicky with version issues relating to mujoco and dm_control. I have to install it in my repo in the following manner to avoid bugs: https://github.com/AlexanderKhazatsky/R2D2
It would be great if it could be made more easily compatible :)

This seems to work for me, and pip does not seem to complain about any specific version incompatibilities.
$ python3 -m venv dmr
$ source dmr/bin/activate
pip install dm_robotics-transformations \
dm_robotics-geometry \
dm_robotics-agentflow \
dm_robotics-manipulation \
dm_robotics-moma \
dm_robotics-controllers \
dm_control

Please could you include more specific details about the issue you're facing?

It does technically install. But then why I try to use the 6 dof cartesian IK I get errors.

Please could you provide a minimal repro and any error messages you get while running it?

Is this still an issue - if not I will close early 2024.


How do I select different airports within the sim?

I did it once, but now I seem stuck with KJFK and there doesn't seem to be anything I can do about it.

@montypython112 You should just be able to click the little switchy-looking button and this dialog will appear where you can scroll and select the airport you want. Is that not working?

It is not, it worked fine earlier, but now I'm getting no response from it

Was it working earlier today?

Just reloaded the page again and it seems to work now, weird.


Implement static fields

This PR implements static fields, i.e., arrays of structures of fixed size. It includes parsing and writing, en- and decoding as well as a unit test.
Besides this, the PR does some janitorial work for DiagDataDictionarySpec: It adds the missing admin_data attribute and it reorders all member attributes to the same order as the corresponding subtags in the XSD.
Andreas Lauser<EMAIL_ADDRESS>on behalf of MBition GmbH.
Provider Information

Please split the two commits in two PRs, it's too much to review changes from both at the same time

Please split the two commits in two PRs, it's too much to review changes from both at the same time

done: #275. Thanks for the nudge.


Clean up UT ipml. Fixes: #2515

Related Issue(s)
nasa/fprime#2515

Has Unit Tests (y/n)
n

Documentation Included (y/n)
n

Change Description
Move the generated UT template files into "test/ut" folder. The ".template" suffix is added to generated cpp/hpp file names.
Rationale
Fixes nasa/fprime#2515.
Testing/Review Recommendations
Create a component and check behavior of "fprime-util impl --ut" with:

missing "test/ut" folder;
existing "test/ut", but empty;
existing "test/ut" with UT real cpp/hpp files;
existing "test/ut" with UT real cpp/hpp files and templates.

Future Work
If/When this PR is merged and released, the tutorials should be updated.

I looked through this, but I hope @thomas-bc will too.

For some reason the tests fail at cloning:

Failed to clone repository: 'https://github.com/fprime-community/fpp'
error: RPC failed; curl 92 HTTP/2 stream 5 was not closed cleanly: CANCEL (err 8)
Failed to clone repository: 'https://github.com/fprime-community/fpp'
clone of 'https://github.com/nasa/fprime.git' into submodule path '/home/runner/work/fprime-tools/fprime-tools/gps-tutorial/fprime' failed
Failed to clone repository: 'https://github.com/google/googletest.git'

At the moment, I don't know what is the issue and how it is related to my change.

It isn't.  Github hosting issue of some form.  The fix is to rerun the failing jobs.


Add execution helpers

Codecov Report
Patch and project coverage have no change.

Comparison is base (fe3775a) 100.00% compared to head (213e5fa) 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##               1.5     #1058    +/-   ##
==========================================
  Coverage   100.00%   100.00%
==========================================
  Files           46        46
  Lines         2652      2414   -238
  Branches       396       354    -42
==========================================
- Hits          2652      2414   -238

Flag
Coverage Δ

foundry
?

production
100.00% <ø> (ø)

reference
100.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
see 29 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


E2: Move findToTable to find library

https://github.com/wiremod/wire/blob/8ae53270ee708b6b9f504c19936dfd91a06943e0/lua/entities/gmod_wire_expression2/core/table.lua#L840-L849
Why does table=findToTable() E2 function exist outside of the Find extension/core?!

That is a very good question!
Also, why do we even have that in addition to findToArray?

oh i see, this was introduced as part of the mtables extension, then that extension replaced the old tables without moving the findTo[M]Table function over to the find extension


Bracket Extension installation failed

Hi Team,
I am trying to install AEM extension in Bracket tool. follwoing the guidance from https://helpx.adobe.com/experience-manager/6-3/sites/developing/using/aem-brackets.html
Installation got failed , we are getting  the response as like in the attachment.
kindly provide the solution to resolve this.

Try removing an extension. Does the same happen?

Removal of extension was working fine, but adding the new extension has an issue.
please guide us to add AEM extension.
Remove-Extension.docx

@selvarajaz Are you not able to install any extension or just the AEM extension?

?Hi Nethi,
we cant be able to install any extension, it always give same error messages as mentioned in the ticket.

From: Prashanth Nethi<EMAIL_ADDRESS>Sent: Tuesday, February 20, 2018 10:20 AM
To: adobe/brackets
Cc: V, Selvaraj (Cognizant); Mention
Subject: Re: [adobe/brackets] Bracket Extension installation failed (#14116)
@selvarajazhttps://github.com/selvarajaz Are you not able to install any extension or just the AEM extension?

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/adobe/brackets/issues/14116#issuecomment-366866191, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Ai0OZl5fP1Eytn3TpVMC9vI1FNqlvVs5ks5tWk8IgaJpZM4SG3y7.
This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not the intended recipient(s), please reply to the sender and destroy all copies of the original message. Any unauthorized review, use, disclosure, dissemination, forwarding, printing or copying of this email, and/or any action taken in reliance on the contents of this e-mail is strictly prohibited and may be unlawful. Where permitted by applicable law, this e-mail and other e-mail communications sent to and from Cognizant e-mail addresses may be monitored.

@selvarajaz Could you open Developer tools from Debug -> Show Developer Tools, click the Console tab, and check for any errors there? Please post the messages here so that we can take a look at what might be going wrong.

Hi Team,
Here with I have attached my error report from developer console.
From: Venkatachalam, Selvaraj (Cognizant)
Sent: Tuesday, February 20, 2018 1:27 PM
To: 'Prashanth Nethi'<EMAIL_ADDRESS>Subject: RE: [adobe/brackets] Bracket Extension installation failed (#14116)
Hi Nethi,
Here with I have attached my error report from developer console.
Thanks
Selvaraj V.
GDD Business Services
Cognizant | A Service Provider to AstraZeneca Pharmaceuticals
[cid:image003.png@01D17580.D207DF50]selvaraj.venkatachalam<EMAIL_ADDRESS><EMAIL_ADDRESS>From: Selvaraj.V<EMAIL_ADDRESS><EMAIL_ADDRESS>Sent: Tuesday, February 20, 2018 1:20 PM
To: Venkatachalam, Selvaraj (Cognizant) <selvaraj.venkatachalam<EMAIL_ADDRESS>Subject: Fw: [adobe/brackets] Bracket Extension installation failed (#14116)

From: Prashanth Nethi <notifications<EMAIL_ADDRESS>Sent: Tuesday, February 20, 2018 12:33 PM
To: adobe/brackets
Cc: V, Selvaraj (Cognizant); Mention
Subject: Re: [adobe/brackets] Bracket Extension installation failed (#14116)
@selvarajazhttps://clicktime.symantec.com/a/1/DfI-Kt17d9xGXxIGqBbpNJipT4IGV8gJ4RWAXEehceQ=?d=_SUcl5RWKz2-ejyLZsZEfstLuYgS3DsKyhMlffM84FE6X0yTAW2ze4tZ-rK3roZmmdoPrcxgpXUsAF1JjR2EZJuh5pkO4PjZu2N5jxSc4eOT_u57bZAynSSQvcMRH4ZbqmHhTeD0Zf6mddW-A6ZzbyTN4ZJRcZSKAPv2tf9jU8sorBODkhsTZZYOy570-zrvndacuA1epRXq1ApBYhySRSmNh_Z2b_uMK5dVpmPB5fYjZSwxU8VAIs25zrJr6gdUT_dtpRiHSxML1OXJQmvc9h8LaIEhO_8Z1Lay5PWgphoktDT1S4fJOOVaG4_ZpKT8g2WJnOwSIWrwgWZhXicsuP2mdC5Yb8c1SSA_N0KoMOrTJGUTKXyTIw7hNkL_WiCDih11srTer1ABEA1XjXq0OCrryMlX&u=https%3A%2F%2Fgithub.com%2Fselvarajaz Could you open Developer tools from Debug -> Show Developer Tools, click the Console tab, and check for any errors there? Please post the messages here so that we can take a look at what might be going wrong.

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://clicktime.symantec.com/a/1/xzsqFAOLze6DPYziaDXraYN1zDCuFJSLjsLTXiBWtW4=?d=_SUcl5RWKz2-ejyLZsZEfstLuYgS3DsKyhMlffM84FE6X0yTAW2ze4tZ-rK3roZmmdoPrcxgpXUsAF1JjR2EZJuh5pkO4PjZu2N5jxSc4eOT_u57bZAynSSQvcMRH4ZbqmHhTeD0Zf6mddW-A6ZzbyTN4ZJRcZSKAPv2tf9jU8sorBODkhsTZZYOy570-zrvndacuA1epRXq1ApBYhySRSmNh_Z2b_uMK5dVpmPB5fYjZSwxU8VAIs25zrJr6gdUT_dtpRiHSxML1OXJQmvc9h8LaIEhO_8Z1Lay5PWgphoktDT1S4fJOOVaG4_ZpKT8g2WJnOwSIWrwgWZhXicsuP2mdC5Yb8c1SSA_N0KoMOrTJGUTKXyTIw7hNkL_WiCDih11srTer1ABEA1XjXq0OCrryMlX&u=https%3A%2F%2Fgithub.com%2Fadobe%2Fbrackets%2Fissues%2F14116%23issuecomment-366884906, or mute the threadhttps://clicktime.symantec.com/a/1/K8QQF_KjGJP6wLYCD3EM0_Vax-RlZ6HM-DPaXYYP0Tc=?d=_SUcl5RWKz2-ejyLZsZEfstLuYgS3DsKyhMlffM84FE6X0yTAW2ze4tZ-rK3roZmmdoPrcxgpXUsAF1JjR2EZJuh5pkO4PjZu2N5jxSc4eOT_u57bZAynSSQvcMRH4ZbqmHhTeD0Zf6mddW-A6ZzbyTN4ZJRcZSKAPv2tf9jU8sorBODkhsTZZYOy570-zrvndacuA1epRXq1ApBYhySRSmNh_Z2b_uMK5dVpmPB5fYjZSwxU8VAIs25zrJr6gdUT_dtpRiHSxML1OXJQmvc9h8LaIEhO_8Z1Lay5PWgphoktDT1S4fJOOVaG4_ZpKT8g2WJnOwSIWrwgWZhXicsuP2mdC5Yb8c1SSA_N0KoMOrTJGUTKXyTIw7hNkL_WiCDih11srTer1ABEA1XjXq0OCrryMlX&u=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAi0OZuK5zVKTZFx3EgoCcOh25tXlu3Xyks5tWm5BgaJpZM4SG3y7.
This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not the intended recipient(s), please reply to the sender and destroy all copies of the original message. Any unauthorized review, use, disclosure, dissemination, forwarding, printing or copying of this email, and/or any action taken in reliance on the contents of this e-mail is strictly prohibited and may be unlawful. Where permitted by applicable law, this e-mail and other e-mail communications sent to and from Cognizant e-mail addresses may be monitored.

Hi Team,
Any update on my request

Hi Team,
Could you give an update on this request

Hi Kevin,
Here with I have attached my error report from developer console.
Could you provide whether can i able to install the AEM extension or not?
Answer to this request :
@selvarajazhttps://github.com/selvarajaz Could you open Developer tools from Debug -> Show Developer Tools, click the Console tab, and check for any errors there? Please post the messages here so that we can take a look at what might be going wrong.

From: KevinP<EMAIL_ADDRESS>Sent: Friday, February 16, 2018 5:21 PM
To: adobe/brackets
Cc: V, Selvaraj (Cognizant); Author
Subject: Re: [adobe/brackets] Bracket Extension installation failed (#14116)
Try removing an extension. Does the same happen?

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/adobe/brackets/issues/14116#issuecomment-366215846, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Ai0OZprBOTnPTwGS9UAj2LbWiHIY2OzZks5tVWulgaJpZM4SG3y7.
This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not the intended recipient(s), please reply to the sender and destroy all copies of the original message. Any unauthorized review, use, disclosure, dissemination, forwarding, printing or copying of this email, and/or any action taken in reliance on the contents of this e-mail is strictly prohibited and may be unlawful. Where permitted by applicable law, this e-mail and other e-mail communications sent to and from Cognizant e-mail addresses may be monitored.

@selvarajaz Looks like the node service is failing on your system. I am not sure why though. Do you have tough firewall restrictions/restrictions on being able to open new local port, that listens to http requests?

Hi,
I am facing the same issue while installing the AEM Brackets extension : Installation Failed. Cannot connect to the server.

Hi Guys, I am facing the the same problem as well.Can anyone show me a way to install the extensions in the Brackets... It is showing internal error.

Facing Same problem
Unknown installation error extensionManager domain is undefined
[Launcher] uncaught exception at top level, exiting. Error: ENOENT: no such file or directory, open 'C:\Users\abcd\AppData\Local\Temp\brackets11884-11196-1gwj19s.zauz93sor'
    at Error (native)

Got this message from developer console.

So, no solution for this install thing?

As said @selvarajaz it's just a permission issue.
You can solve it changing the owner of the Brackets config folder:
As root:
debian@user:/home/user# cd /home/user/.config/
debian@user:/home/user# chown user Brackets/

I was able to resolved it by connecting to internet without proxy settings. It worked fine.

Hello team,
I have solved this issue only removing some old extensions!
I hope my solution would help you :)


Add comments to webpack build file

I think the file is pretty simple, do you have any specific comments in mind?


Error when creating OneDriveClient

When I try to create a client in order to work with OneDrive from an app, the IDE doesn't recognise DefaultCallback  as a Class or Interface. I've tried changing it to ICallback, but then I get:

incompatible types: void cannot be converted to IOneDriveClient

when creating the OneDriveClient.
Have I to import any extra library?

@David-Llop Just replace example login code with this:
OneDriveClient.Builder oneDriveClientBuilder = new OneDriveClient.Builder().fromConfig(oneDriveConfig);
oneDriveClientBuilder.loginAndBuildClient(activity, callback);

@panovvitalik Thanks, I've just tried and works great


[FMI deployment] task environment python executable simlink to server python leads to issues

For automatic task collection: I run into an error where the python executable of the tasks can't be found: This leads to a task execution error that isn't caught well and shows up in the server terminal
Traceback (most recent call last):
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/__init__.py", line 174, in submit_workflow
    output_dataset.meta = await process_workflow(
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_slurm/__init__.py", line 284, in process_workflow
    output_dataset_metadata = await async_wrap(_process_workflow)(
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/common.py", line 306, in async_wrapper
    return await loop.run_in_executor(executor, pfunc)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_slurm/__init__.py", line 249, in _process_workflow
    output_task_pars_fut = recursive_task_submission(
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_common.py", line 552, in recursive_task_submission
    task_pars_depend_future = recursive_task_submission(
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_common.py", line 552, in recursive_task_submission
    task_pars_depend_future = recursive_task_submission(
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_common.py", line 552, in recursive_task_submission
    task_pars_depend_future = recursive_task_submission(
  [Previous line repeated 2 more times]
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_common.py", line 596, in recursive_task_submission
    this_task_future.result()
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/concurrent/futures/_base.py", line 440, in result
    return self.__get_result()
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/concurrent/futures/_base.py", line 389, in __get_result
    raise self._exception
fractal_server.app.runner.common.TaskExecutionError: ('Traceback (most recent call last):\n  File "BASEPATH_SERVER/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_common.py", line 261, in call_single_task\n    _call_command_wrapper(\n  File "BASEPATH_SERVER/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_common.py", line 171, in _call_command_wrapper\n    raise e\n  File "BASEPATH_SERVER/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/_common.py", line 165, in _call_command_wrapper\n    result = subprocess.run(  # nosec\n  File "BASEPATH_SERVER/fractal-server-1.1.0a1/lib/python3.9/subprocess.py", line 501, in run\n    with Popen(*popenargs, **kwargs) as process:\n  File "BASEPATH_SERVER/fractal-server-1.1.0a1/lib/python3.9/subprocess.py", line 947, in __init__\n    self._execute_child(args, executable, preexec_fn, close_fds,\n  File "BASEPATH_SERVER/fractal-server-1.1.0a1/lib/python3.9/subprocess.py", line 1819, in _execute_child\n    raise child_exception_type(errno_num, err_msg, err_filename)\nFileNotFoundError: [Errno 2] No such file or directory: \'TASKS/task-envs/.fractal/fractal-tasks-core0.8.1/venv/bin/python\'\n', 2, 'No such file or directory')

The core part appears to be this:
FileNotFoundError: [Errno 2] No such file or directory: \'/Path/TO/task-envs/.fractal/fractal-tasks-core0.8.1/venv/bin/python\'\n', 2, 'No such file or directory')

When checking in that venv/bin folder, it appears that the python executable is a sim-link (I think. When checking with ls-la, it's shown as python ->  Path/to/local/python/on/server/from/task/env/.conda/envs/fractal-server-1.1.0a1/bin/python) to the python executable of the fractal server python, but there's an issue with that python sim-link (it's underlined in black, text in red & blinking in my console).

Why would the Python executable be a simlink to the server Python?
Could that be changed, because the server Python is supposed to be a local Python executable on the server machine, which is not accessible from the cluster
Any idea why the sim-link may already be broken? When I try to manually activate the task environment from local machine that runs the server, it activates. But which python returns /usr/bin/python

This happens reproducibly.

The reason this error is not caught well seems to be in how the exception string was supposed to be formed:
Traceback (most recent call last):
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/uvicorn/protocols/http/h11_impl.py", line 407, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/uvicorn/middleware/proxy_headers.py", line 78, in __call__
    return await self.app(scope, receive, send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fastapi/applications.py", line 270, in __call__
    await super().__call__(scope, receive, send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/applications.py", line 124, in __call__
    await self.middleware_stack(scope, receive, send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/middleware/errors.py", line 184, in __call__
    raise exc
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/middleware/errors.py", line 162, in __call__
    await self.app(scope, receive, _send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/middleware/cors.py", line 84, in __call__
    await self.app(scope, receive, send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/middleware/exceptions.py", line 79, in __call__
    raise exc
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
    await self.app(scope, receive, sender)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 21, in __call__
    raise e
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
    await self.app(scope, receive, send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/routing.py", line 706, in __call__
    await route.handle(scope, receive, send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/routing.py", line 276, in handle
    await self.app(scope, receive, send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/routing.py", line 69, in app
    await response(scope, receive, send)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/responses.py", line 170, in __call__
    await self.background()
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/background.py", line 43, in __call__
    await task()
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/starlette/background.py", line 26, in __call__
    await self.func(*self.args, **self.kwargs)
  File "BASEPATH.conda/envs/fractal-server-1.1.0a1/lib/python3.9/site-packages/fractal_server/app/runner/__init__.py", line 200, in submit_workflow
    exception_args_string = "\n".join(e.args)
TypeError: sequence item 1: expected str instance, int found

This can be triggered by errors related to not having the python executable as above

One thing I still need to test: Running the server not from a local server python environment, but from one on the shared filesystem (which we wouldn't want to do long-term, but may be useful for debugging this and we anyway have one that's being used by Fractal-server)

Ok, if I run the server from a Python environment on the share, I don't run into this issue.
The tasks still use an environment where the Python executables are simlinked to the ones from the server environment. But those simlinks no work, because they are both on the same share. In that case, the workflow actually runs :)

Ref:

https://github.com/fractal-analytics-platform/fractal-server/issues/538

This can be triggered by

Missing end of the comment?

Why would the Python executable be a simlink to the server Python?

This is venv behavior: it creates a whole independent environment, but only for the python interpreter that is currently used to call venv. That is, it does not create a new python interpreter (hence, for instance, you cannot select a different ptyhon version). This differs from conda, which also has its own python interpreter for each env (hence you can select any version).
To make it clear:
tommaso@exact:/tmp$ python3 -m venv venv

tommaso@exact:/tmp$ ls -la venv/bin/python3
lrwxrwxrwx 1 tommaso tommaso 16 Mar 14 11:17 venv/bin/python3 -> /usr/bin/python3

Now, I can see that this is possibly a problem in the FMI setup, where the fractal-server python is not visible to the users running tasks on the remote slurm nodes.
I don't have a solution ready, yet. Let's re-discuss it.
(great that you could try fractal over there, Joel, and raise relevant issue - thanks)

Missing end of the comment?

My bad. Should have been: "This can be triggered by errors related to not having the python executable as above" (fixed now)

I don't have a solution ready, yet. Let's re-discuss it.

Let's briefly discuss tomorrow how we want to proceed on this question :) As said, we have a workaround to test things by running the server also from the share, but that shouldn't be a requirement long-term (I think).

Agreed. The best candidate solution at the moment would be to rely on FRACTAL_SLURM_WORKER_PYTHON, when it is set.
The scope of this variable is exactly to define an interpreter that can be seen from users running tasks on remote nodes. What if we also used it to create the task environments and pip-install the tasks? In principle those environments are also meant for the same use (i.e. they should be available for users on the remote slurm nodes). This change would probably go into the get_python_interpreter function, in tasks/collection.py.

Yes, that would make sense to me. In the case where we need to have a different python available on the cluster, the FRACTAL_SLURM_WORKER_PYTHON is intended to solve this :)
I'd be happy with exploring a solution like that. Long-term, we may want to think about additional flexibility to task collection (what if I need e.g. a specific Python version), but that doesn't need to be something we tackle here :)

For the record, the fix of using FRACTAL_SLURM_WORKER_PYTHON for creating venvs and pip-installing tasks is not a complex one (see https://github.com/fractal-analytics-platform/fractal-server/pull/658/commits/e1526cc02ffa57be93390fc85c01421db3ff8921). What turns out to be a bit complex is testing in the docker-slurm CI - in progress.

@jluethi is there still something to improve in the current FMI setup, after the new Python-interpreters configuration changes? If not, let's close this one.

The whole issue of linking Pythons has been resolved with the explicit task base Pythons. As far as I can judge, this is all solved now :)


CDS-45146 Azure Artifacts added

https://harness.atlassian.net/browse/CDS-45146
Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ x] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

https://harness.atlassian.net/browse/CDS-45146

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app


Recommendation: Right-Click Copy Image

I love keybase and think it has a bright future but not being able to right click an image and copy to my clipboard is a big deal breaking right now.

YES! That would be awesome. As a workaround I use Flameshot on Linux or Greenshot on Windows to simply take a screenshot.
Sadly it seems Keybase doesn't have support anymore and rarely there are any updates :(


Filipino Translation for the Project

Good Day!
I have been a contributor of Filipino Translations for open-source projects for the sake of Filipino developers, and I am being rewarded by Utopian.io. May I know if you need this kind of translation for your project? It would be my pleasure to help you. Thank you.
Have a nice day!

@caratzky interesting, that's impressive. Your collaboration here is greatly needed,why not create an issue on what you did would like to work on. Do you mind starting a Filipino transcript on this #251 or #292 ?

Isn't there an already-made English Transcript? I would love to start the translation now

@caratzky there is or there are. Please follow up the issues on #251 you would get the link to the English transcript there. @ICA3DaR5 is still working on a more concised error free version of it though in #292, wonder if he is done yet with it, that would have been the best transcript to work on to reduce the work load of trying to rightly correct errors in the early English transcript.

@caratzky
Here's the link again.

@BelovedAquila I'll watch the video with the English transcript one more time tomorrow, and I'll call it a day!

There are still corrections to be done on the current transcript. I've watched the video and followed word after words. It's 80% good. Just few more corrections to be done.

Welcome @caratzky . Please specify  the Source  of documents   you want to translate  on the issue  you created

Actually I already translated almost all translatable files in this project @kaka56

For 1 language only

Edit your issue and make mention  of the project  you translated on the issue. Here is an example
M> Translate /rchain/rholang/doc/* to Italian#367

@ also paste the link of the project  you translated .

ok, I see no comment has been made since feb 16 so I assume this is abandoned.


Possibility of templates/abstract jobs (that are not executed)

Description
In our project (https://github.com/oamg/leapp-repository) we have currently number of jobs, with unfortunately chained definitions. In general, imagine that job definition 21 inherits from job definition 20, etc..... till 1. Which is madness, when we need to remove some jobs in the middle or from the start... or when you want to change something on one of thos jobs.
From that point, I came up with idea to create an abstract jobs (templates), which would not be triggered at all, but could provide all important fields/values for the real jobs/tests, to make it shorter. E.g.:
jobs:
- &my-abstract-job
  job: tests
  ... other generic repeating values ...

- my-real-job
  <<: *my-abstract-job
  trigger: pull_request
  ...test specific values...

The problem is that Packit does not allow me to do anything like that (it requires trigger), but this "abstract" job should never be executed as it's really just a template.
Our tests would be much easier to maintain if we could do something like that. Regarding the current proposal, what about to introduce e.g. possibility to specify trigger: ignore or something like that (none?) . Packit would know the particular job should be ignored always (triggered never ever) and in all "real" tests we would specify trigger: pull_request (or whatever other valid expected value). E.g.:
jobs:
- &my-abstract-job
  trigger: ignore
  job: tests
  ... other generic repeating values ...

- my-real-job
  <<: *my-abstract-job
  trigger: pull_request
  ...test specific values...

Without such a feature only other options we have (based on what I am aware now) are:

reduce the readability of tests - using always full definitions of each job
reduce the maintainability of tests - chained definitions as we have now
waste money - keep "abstract" jobs to execite always (deploy new machine, run couple of ~40min long test)

I also thought about having basic tests already defined instead of abstract tests, but the problem is that we will have to continously update it, as we will be dropping old tests over time and creating new one. And I want to prevent the situation when the values and even the order of tests is actually unsorted over time. I would like to rather omit the maintainance burden.
Benefit
The possibility of "abstract"/template jobs can help to:

reduce the lenght of jobs definition
reduce the maintainance burden
create new tests, based on the template

Importance
It's not blocking us, but current shape of our tests is not ideal and it creates a burden to manage them in this way. With abstract jobs, I would be able to remove / add tests without the need to affect any else. Right now it's not possible - unless we start to write full jobs definitions again - which we would like to omit also. Full jobs definitions creates also maintainability burden, when we need to change parameters for groups of tests.
Workaround

[ ] There is an existing workaround that can be used until this feature is implemented.

Participation

[ ] I am willing to submit a pull request for this issue. (Packit team is happy to help!)

Resolved in #2234


Why the results of new backtest and old backtest are so different?

I set the thresh to 0 in old backtest and keep other parameters the same as those in the new backtest, but the results are so different from each other that I can't believe they are generated from the same pred_score.  Any reasons for that? Which one is correct?

@yieldbook we are creating docs for the new version of backtesting.
Please check out the commit for future details.
Thanks


Create 0000-01-02-ceydabegumdag.md

layout: slide
title: "Welcome to our second slide!"
Your text
Use the left arrow to go back!

ı don't have any idea abaout what ı am doing in there


Stemcell for Ubuntu 16.04

Several clients are interested in seeing their stuff running on Ubuntu 16.04 now that it is officially released. Can we please add an Ubuntu 16.04 stemcell.
Thanks!
~Wayne

Related list topic<EMAIL_ADDRESS>

Folks ... do we have any update on this?  Wondering if work has already started to build 16.04 stemcells and if so do we have any release timeline in place.
Thanks.

@rishigits this is pretty low on our priority list, since we are on the LTS stemcell version + upgraded LTS kernel (4.4). as of now i don't believe garden team or container networking teams are asking for a newer kernel. out of curiosity, what feature in 16.04 are you waiting for?

@cppforlife I am interested in getting Cloud Foundry running on s390x (Linux on Z systems) but s390x only supports xenial. I already tried building a compatible stemcell but ran into issues midway.  Issues were mostly related to BOSH unable to connect to ssh services running inside 16.04 stemcell.  I did not spend too much time to investigate as I thought if x86 xenial stemcell comes out it will be easier to model it for this platform.

@cppforlife It would be nice to switch to 16.04 to make sure everything is systemd compatible sooner than later. 14.04 is only good until 2019 -- 2 more years from now. The longer it takes to get the 16.04 stemcell, the less time people working under Cloud Foundry have to port everything over and make sure it's compatible.

+1 on support for Ubuntu 16.04.2 LTS

There is a PR for 16.04 stemcells: https://github.com/cloudfoundry/bosh-linux-stemcell-builder/pull/20, we aim to get in the next supported stemcell line.

xenial v40 is on bosh.io. light stemcells coming tomorrow.


Hub connection

Describe the bug
I can't get Bluetooth device readings directly from the gateway itself. I've configured the device ID of the BT devices to match the original ones, I'm using the gateway's IP and token and I've specified the BT device's own model.
Expected behavior
I'd really like for direct fetch of readings to work.
Debug log
Similar errors happen with both lumi.sensor_smoke.mcn02 and cgllc.clock.dove. The token and IP seem to work for the gateway connection itself.
I've enabled detailed debug log for the cgllc.clock.dove and "user ack timeout" seems to be the bane of all BT devices.
[4/3/2024, 2:40:25 AM] [homebridge-miot] [Mi Alarm Clock] (Protocol) Start handshake x.y.z.q
[4/3/2024, 2:40:25 AM] [homebridge-miot] [Mi Alarm Clock] (Protocol)  x.y.z.q <- (0) {"method":"get_properties","params":[{"did":"blt.4.xxxxxxxxxxx","siid":2,"piid":1},{"did":"blt.4.xxxxxxxxxxx","siid":2,"piid":2}],"id":3622}
[4/3/2024, 2:40:25 AM] [homebridge-miot] [Mi Alarm Clock] (Protocol)  x.y.z.q<- !1�Z✂s\f�
[4/3/2024, 2:40:25 AM] [homebridge-miot] [Mi Alarm Clock] (Protocol)  x.y.z.q -> Data: {"id":3522,"error":{"code":-9999,"message":"user ack timeout"},"exe_time":4000}
[4/3/2024, 2:40:25 AM] [homebridge-miot] [Mi Alarm Clock] (Protocol)  x.y.z.q -> Message: {"id":3522,"error":{"code":-9999,"message":"user ack timeout"},"exe_time":4000}

Additional context
I've tried adding the hub (lumi.gateway.mgl03) to both DE and CN location alongside the Bluetooth devices, but all I end up with are still ACK errors if the hub is used. Forced connection through Mi Cloud does work, but that has been too unreliable (I'd really like to get rid of those pesky zero readings) so I'd really like to use a local direct connection.

The first question would be if you are able to connect to the hub using a local connection and read properties from it? You could try doing that with the propertyMonitor. That would confirm at least that the connection to the hub is working.

Yes, the hub's own connection seems to work directly.

Then I guess maybe how you entered the devices in the config might be wrong?
The error which you get usually comes up when the device does not respond, but that can have multiple reasons...

@merdok
I've tried debugging it further.
The tokens seem to be correct? It never gets as far if either the IP, device ID or the token is different. The gateway is also visible and usable in the Mi Home app.
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Start handshake x.y.z.q
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Call x.y.z.q: miIO.info - {"timeout":5000,"retries":3} - {}
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Start handshake x.y.z.q
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- (2) {"method":"miIO.info","params":{"timeout":5000,"retries":3},"id":2013}
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- !1 ✂r
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q -> Data: {"id":2013,"result":{"life":13840,"uid":6188204199,"model":"lumi.gateway.mgl03","token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","ipflag":1,"miio_ver":"0.0.9","uptime":13858,"mac":"xx:xx:xx:xx:xx:xx","fw_ver":"1.5.6_0001","hw_ver":"Linux","bootloader_ver":"c0271a6705c2c64d3d582abe7356fa46","miio_client_ver":"4.3.2","VmPeak":12608,"VmSize":12608,"VmRSS":1904,"MemFree":16848,"ap":{"ssid":"xxxxxxxxxx","bssid":"28:80:23:3B:AF:F0","rssi":"-38","freq":2412},"netif":{"localIp":"x.y.z.q","mask":"<IP_ADDRESS>","gw":"x.y.z.q"},"miio_times":[13839,17,8,12675]},"exe_time":1}
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q -> Message: {"id":2013,"result":{"life":13840,"uid":6188204199,"model":"lumi.gateway.mgl03","token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","ipflag":1,"miio_ver":"0.0.9","uptime":13858,"mac":"xx:xx:xx:xx:xx:xx","fw_ver":"1.5.6_0001","hw_ver":"Linux","bootloader_ver":"c0271a6705c2c64d3d582abe7356fa46","miio_client_ver":"4.3.2","VmPeak":12608,"VmSize":12608,"VmRSS":1904,"MemFree":16848,"ap":{"ssid":"xxxxxxxxxx","bssid":"28:80:23:3B:AF:F0","rssi":"-38","freq":2412},"netif":{"localIp":"x.y.z.q","mask":"<IP_ADDRESS>","gw":"x.y.z.q"},"miio_times":[13839,17,8,12675]},"exe_time":1}
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Device found! Setting up miot device from local connection!
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Device firmware: 1.5.6_0001
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Full device info:
{
  "life": 13840,
  "uid":<PHONE_NUMBER>,
  "model": "lumi.gateway.mgl03",
  "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "ipflag": 1,
  "miio_ver": "0.0.9",
  "uptime": 13858,
  "mac": "xx:xx:xx:xx:xx:xx",
  "fw_ver": "1.5.6_0001",
  "hw_ver": "Linux",
  "bootloader_ver": "c0271a6705c2c64d3d582abe7356fa46",
  "miio_client_ver": "4.3.2",
  "VmPeak": 12608,
  "VmSize": 12608,
  "VmRSS": 1904,
  "MemFree": 16848,
  "ap": {
    "ssid": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "bssid": "xx:xx:xx:xx:xx:xx",
    "rssi": "-38",
    "freq": 2412
  },
  "netif": {
    "localIp": "x.y.z.q",
    "mask": "<IP_ADDRESS>",
    "gw": "x.y.z.q"
  },
  "miio_times": [
    13839,
    17,
    8,
    12675
  ]
}
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Found device model lumi.gateway.mgl03 does not match specified model lumi.sensor_smoke.mcn02! Some services might not work correctly!
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Connected to device: lumi.gateway.mgl03
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Doing initial property fetch.
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Preparing property poll!
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Splitting properties into chunks. Number of chunks: 1. Chunk size: 14
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Chunks:  [
 [
  "smoke-sensor:status",
  "battery:battery-level"
 ]
]
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Call x.y.z.q: get_properties - [{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}] - {}
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Start handshake x.y.z.q
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- (2) {"method":"get_properties","params":[{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}],"id":2014}
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- !1 ✂ j
[4/27/2024, 9:28:43 PM] [homebridge-miot] [Mi Smoke Detector 2] Successfully saved device info!
[4/27/2024, 9:28:47 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Start handshake x.y.z.q
[4/27/2024, 9:28:47 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- (1) {"method":"get_properties","params":[{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}],"id":2114}
[4/27/2024, 9:28:47 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- !1✂  $
[4/27/2024, 9:28:51 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Start handshake x.y.z.q
[4/27/2024, 9:28:51 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- (0) {"method":"get_properties","params":[{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}],"id":2214}
[4/27/2024, 9:28:51 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- !1✂
[4/27/2024, 9:28:55 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- Reached maximum number of retries, giving up get_properties - [{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}]
[4/27/2024, 9:28:55 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- Error during send! (timeout) Call to device timed out | Request: {"method":"get_properties","params":[{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}],"id":2214}
[4/27/2024, 9:28:55 PM] [homebridge-miot] [Mi Smoke Detector 2] Error on initial property request! Error: Call to device timed out
[4/27/2024, 9:28:55 PM] [homebridge-miot] [Mi Smoke Detector 2] Starting property polling.
[4/27/2024, 9:29:55 PM] [homebridge-miot] [Mi Smoke Detector 2] Preparing property poll!
[4/27/2024, 9:29:55 PM] [homebridge-miot] [Mi Smoke Detector 2] Splitting properties into chunks. Number of chunks: 1. Chunk size: 14
[4/27/2024, 9:29:55 PM] [homebridge-miot] [Mi Smoke Detector 2] Chunks:  [
 [
  "smoke-sensor:status",
  "battery:battery-level"
 ]
]
[4/27/2024, 9:29:55 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Call x.y.z.q: get_properties - [{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}] - {}
[4/27/2024, 9:29:55 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Start handshake x.y.z.q
[4/27/2024, 9:29:55 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- (2) {"method":"get_properties","params":[{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}],"id":2215}
[4/27/2024, 9:29:55 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- !1✂ !
[4/27/2024, 9:29:59 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Start handshake x.y.z.q
[4/27/2024, 9:29:59 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- (1) {"method":"get_properties","params":[{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}],"id":2315}
[4/27/2024, 9:29:59 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- !1✂  ~
[4/27/2024, 9:30:03 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) Start handshake x.y.z.q
[4/27/2024, 9:30:03 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- (0) {"method":"get_properties","params":[{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}],"id":2415}
[4/27/2024, 9:30:03 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- !1 ✂  +
[4/27/2024, 9:30:07 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- Reached maximum number of retries, giving up get_properties - [{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}]
[4/27/2024, 9:30:07 PM] [homebridge-miot] [Mi Smoke Detector 2] (Protocol) x.y.z.q <- Error during send! (timeout) Call to device timed out | Request: {"method":"get_properties","params":[{"did":"blt.3.xxyyzzqqxxyyy","siid":2,"piid":1},{"did":"blt.3.xxyyzzqqxxyyy","siid":3,"piid":1}],"id":2415}
[4/27/2024, 9:30:07 PM] [homebridge-miot] [Mi Smoke Detector 2] Poll failed 1 times!
[4/27/2024, 9:30:07 PM] [homebridge-miot] [Mi Smoke Detector 2] Poll failed! Error: Call to device timed out

This behaviour seems to be consistent with BLE devices that are constantly connected and smoke detectors that only seem to periodically push updates to the gateway. The device also seems to work if I force cloud connection.
I read https://github.com/merdok/homebridge-miot/issues/202 but I think I've tried it all.

Yeah i guess that you would need to use the cloud as some devices require it, so i think that we have the case here.


sync forks

Description
合并两个分支

 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 your contribution @Galileo2017 . But its not clearly exactly what is this about.


decompressing Snappy encoded RecordBatch fails

getting error:
 snappy: corrupt input (expected valid offset but got offset 20545; dst position: 0)

changing to another compression like lz4 works fine.

seems the bug occurs when the batch is compressed with snappy 'framing' turned on.
this is the code from kafka-go client.
when x.framed is set to true, it will cause the decoder in kafka-protocol-rs to crash.
seems its set to true by default for all popular kafka clients including the cannonical java client.
func (c *Codec) NewWriter(w io.Writer) io.WriteCloser {
	x, _ := writerPool.Get().(*xerialWriter)
	if x != nil {
		x.Reset(w)
	} else {
		x = &xerialWriter{writer: w}
	}
	x.framed = c.Framing == Framed
	switch c.Compression {
	case FasterCompression:
		x.encode = s2.EncodeSnappy
	case BetterCompression:
		x.encode = s2.EncodeSnappyBetter
	case BestCompression:
		x.encode = s2.EncodeSnappyBest
	default:
		x.encode = snappy.Encode // aka. s2.EncodeSnappyBetter
	}
	return &writer{xerialWriter: x}
}


Remove SSL feature (and openssl/security-framework dependencies)

The Problem
The current problem is that the openssl crate has released versions 0.9.x, and hyper is depending on 0.7.x. That by itself isn't an issue, but since the openssl crate has openssl-sys as a direct dependency, the old openssl version does become a problem for many people. Cargo only allows one version to exist in the whole dependency graph for any -sys crate. So the real pain comes from when people want to use other libraries that depend on a newer version of openssl, and also depend on hyper. They are then left in a situation where their dependency graph wants both openssl-sys at version 0.9.5 and 0.7.14 (versions as of this writing), and that is illegal.
Attempts to Fix the Things
The suggestion so far has been that people could turn off the ssl feature of hyper, thus removing the openssl optional dependency. If people needed TLS, the suggestion has been to use the better client library, reqwest, which does this exact process: disables hyper/ssl, and provides a client using rust-native-tls. hyper has always been generic over TLS implementations, thanks to SslClient and SslServer traits. Sounds simple, right?
Well, it gets worse. Say you do exactly that: you replace your client usage with reqwest. But say you also have a server component to your app, using some other framework, such as iron, or nickel, or something newer. Those frameworks likely depend on hyper, and did not disable the ssl feature. So now, your dependency graph wants hyper both with and without openssl. And since reqwest (or whichever other library) also depends on openssl, but at 0.9.x, we have the conflict again. And the problem with this conflict, is that it is out of the users' control to fix it, because you cannot alter features of dependencies of dependencies.
Well then, why not just upgrade openssl! Well, there are different problems with doing that. Upgrading openssl will be a breaking change, so the minor version number must increase (while hyper is 0.x, if it were 1.x, then we'd need to go up to 2.0!). Sometimes that is needed, but the cost must always be considered. Every breaking version increase for hyper has meant disruption through the ecosystem. It takes a while for all other libraries to update their internal dependency on hyper. That means a time period when trying to combine some libraries will fail, because rustc will treat the 2 different versions as completely different (as they are).
But so what, why not just upgrade this time? The problem is that every single time openssl has a breaking change, that will require hyper to also have a breaking change. So the disruption will occur to the entire hyper ecosystem each time openssl must break an API. Perhaps that slows down to a crawl at some point, and maybe we reconsider then.
Also, hey! The openssl may not be the best default dependency. In fact, rust-native-tls is probably a better default, since it works better for Windows and macOS, and fixes certificate verification on Windows. However, there's a couple downsides with using that as the default as well. First, it still depends on -sys crates, and young ones at that (@sfackler clarified that on Windows and macOS, there wouldn't be an issue, but there still would be on Linux), so breaking changes in those brings us back to the version bump hell mentioned above. Second, it doesn't yet expose all the things that you can currently do with openssl, such as alter verification rules, adjust cipher suites, etc. Probably fine for a default, but it means people who need those things would need to disable hyper's ssl feature anyways, and then they run into the potentially tricky depedency graph juggling abyss that we're currently in right now.
The Solution
Hm, it seems the root of the problem is having such a fundamental dependency, an http crate, depending on a -sys crate. So, let's rip it out! The SslServer and SslClient traits will stay in, so it is still super easy to plug in some TLS. But this allows hyper to exist peacefully, while the various TLS implementations do their own thing. This allows other libraries to determine for themselves what version and even what implementation of TLS they wish to use. If you need an HTTPS client, you can use reqwest, which easily handles this upgrade (I've already checked locally). Other server frameworks can either make a choice on TLS, or they can punt the decision further up the stack, by also being generic over SslServer.
There already exists hyper-openssl, and I've reserved hyper-tls which will soon provide an excellent-for-most-people non-blocking HTTPS connector and accepter.
The 0.10.x already has this done, and it seems to work fine. I've tested that reqwest easily updates to this (it took no code changes, just a Cargo.toml change).

I think this is a reasonable approach.
One minor nit: the -sys crates used by schannel and security-framework don't have the same limitations as openssl-sys, since they're linking to system libraries and don't need to worry about the double-link issue.

I appreciate the forward looking nature of this issue.

This'd also require dropping the dependency on the cookie crate, right?

I really like this idea. I think that switching to a design that allows users to supply an SslServer or SslClient of their choosing should alleviate the problems I've had.
I think @seanmonstar has stumbled on something that seems somewhat fundamental to crate design.  If you could, it would be a huge help for other crates also using openssl directly to have a detailed reference of the changes that would be made to resolve this issue so that they can emulate the approach.

@sfackler good point, I've now removed the cookie and solicit crates from the 0.10.x branch, since they both had optional dependencies to openssl.
@zsck The excellent hyper-openssl crate documentation shows how simple it is to add in openssl 0.9 support into your crate.

I didn't mean so much "could you explain how to add openssl support" rather "could you document the design considerations that others could follow to implement a similarly 'generic over SslClient' approach".

I plan on making this release later today. I've tested the 0.10.x branch myself, but if anyone else wants to try it or comment about what will be released, now's the time.

Below is the changelog currently expected for the release:

Features

client:

change ProxyConfig to allow HTTPS proxies (14a4f1c2)
remove experimental HTTP2 support (d301c6a1)

lib:

remove SSL dependencies (2f48612c)
remove serde-serialization feature (7b9817ed)

header: remove cookie dependency (f22701f7)

Breaking Changes

There is no more hyper::http::h2.
(d301c6a1)

The Cookie and SetCookie headers no longer use the
cookie crate. New headers can be written for any header, or the ones
provided in hyper can be accessed as strings.
(f22701f7)

There is no longer a serde-serialization feature.
Look at external crates, like hyper-serde, to fulfill this feature.
(7b9817ed)

hyper will no longer provide OpenSSL support out of the
box. The hyper::net::Openssl and related types are gone. The Client
now uses an HttpConnector by default, which will error trying to
access HTTPS URLs.
TLS support should be added in from other crates, such as
hyper-openssl, or similar using different TLS implementations.
(2f48612c)

Usage of with_proxy_config will need to change to
provide a network connector. For the same functionality, a
hyper::net::HttpConnector can be easily created and passed.
(14a4f1c2)

Release is done, docs up, crate published, changelog at https://github.com/hyperium/hyper/releases/tag/v0.10.0

Awesome, thanks for your work on this @seanmonstar! :1st_place_medal:


Update vim-crystal repository URL

Link
https://github.com/vim-crystal/vim-crystal
Checklist

[ ] - Shard is at least 30 days old.
[ ] - Shard has CI implemented.
[ ] - Shard has daily/weekly periodic builds (ideally with Crystal latest and nightly).

I moved vim-crystal to new organization. This PR updates the repository URL.

Thank you


"Open with Windows Terminal" Broken Path

Windows Terminal version
1.11.3471.0
Windows build number
10.0.22000.527]
Other Software
No response
Steps to reproduce
Right click in a folder and click "Open With Windows Terminal" and try running a program that you exported in PATH.
Expected Behavior
The application or command to run.
I exported a program in PATH and it works just fine if you run cmd manually, but if ran when opening the terminal using "Open With Terminal", it is not found.
Actual Behavior
'...' is not recognized as an internal or external command,
operable program or batch file.

Is the Terminal already running when you open a new tab via the Explorer context menu? (If so, this is probably a riff on #1125).
If this is a "cold launch" (there aren't any other running Terminal windows), then this is at the very least #12602. (Maybe #11777 is related? but that seems less likely)


bazel: remove deprecated bazel prefixes in docker CI

The build emits a warning when you use bazel.-prefixed CI commands.
Commit Message: bazel: remove deprecated bazel prefixes in docker CI
Additional Description: The build emits a warning when you use bazel.-prefixed CI commands.
Risk Level: Low
Testing: I have invoked commands with a bazel. prefix and observed warnings that went away when it was removed.
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A
@phlax I was advised to ping you for review.

/retest


How to disconnect the user from rat other then going into tskmgr and disabling also that should be a feature if u want to disable tskmgr or not same with enabling it

ye we got a better rat rn called knight rat, this is the source, just change the config to this and fill in the fields:
btoken = "PUT YOUR BOT TOKEN INTO THESE BRACKETS"
prefix = "PREFIX FOR THE COMMANDS, LEAVE BLANK IF YOU DONT WANT TO USE A PREFIX"
userid = "PUT YOUR OWN USERID INTO THIS IF YOU WANT TO BE PINGED"
channelid = "CHANNELDID THE BOT SENDS THE NEW CONNECTION MESSAGE TO"

after you have did that run the following commands into a cmd terminal in the folder where the python file is located
python -m pip install -U pyinstaller
if that command does not work, just use this one:
pip install -U pyinstaller
if it still doesn't work, please check for python in your path, pip and python generally correctly installed
now run the final command to compile the python file into an EXE:
pyinstaller --onefile main.py --noconsole -n NOTAVIRUS
replace the main.py with the filename of the rats source like knight_rat.py
this process could take a few minutes and when you get the finish message the final exe file will be in the dist directory called NOTAVIRUS.exe
hope i could help you! check the commands of that tool with [prefix]help
this rat got some more options and a quit command, but also just something too play and not really a thing that gets credentials, for that you may use Rose-Injector
but i am working on knight to bring more features to it that are really useful & funny 😀
(to make the file run every time at startup you will need to use the startup command before
the client system may confuse you too, everytime you run a command you need to include all or the clientid like:)
screenshot all // collects a screenshot of all victims desktop and sends it to your discord channel where you executed the command from
webcam 952845 // collects a webcam picture of the victim with the clientid 952845 and sends the image to discord
keylogger 142140 10 // starts the keylogger and writes all keys pressed into one file, dumps it to your channel after 10 seconds and deletes the keylogs file
lmk if you experience any issues. :)


Write an SLA for Your Own API

"Imagine that Beff Jezos, your boss, came to tell you that from next week, your MiniTwit API will become one of the products that your company will sell to third-party developers who want to implement their own frontend.
Obviously, these clients, would need some guarantees before they start paying for your API. What guarantees can you offer? Write an SLA for your API. Add it as SLA.md to your repo and add it to also to the misc_urls.py under the corresponding "SLA" section."

[x] write SLA that is realistic

[x] add url to to the SLA in misc_urls.py under SLA section in the lecture_notes devOps repo: misc_urls.py

might want to draw inspiration from the SLA's found in prep. material this week:

https://cloud.google.com/translate/sla

https://azure.microsoft.com/en-us/support/legal/sla/machine-learning-service/v1_0/

Currently writing a draft

This issue is now closed. A pull request with link to the SLA has been made


Update run-a-background-task-on-a-timer-.md

The formatting is broken. Pulling the line back to see if the code block will then render properly.
See https://docs.microsoft.com/en-us/windows/uwp/launch-resume/run-a-background-task-on-a-timer-

@TylerMSFT,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

Leave a comment

Trying this a different way.


capitilization is not consistent for file paths on windows in setbreakpoints message

VSCode Version:1.1
OS Version: windows 10

Steps to Reproduce:

start a debug session
add a bp
Breakpoint message will likely contain uppercase drive letter
Delete bp
Breakpoint message will now contain lowercase drive letter

NOTE: I am working around this in our debug adapter. This causes an issue because we have collections of source files that contain bps in the c++ and c# debug adapters. These keys are not found in this case because of the casing mismatch.

This seems like our internal uri class sometims converts drive letter to uper case and sometimes not.
@jacdavis I am not able to reproduce this though, can you please provide steps with some example file so I can investigate into this further to see when this is happening. When I tried I always got the lowercase driver letter. Thanks!

Install mingw
write c++ app for mingw using gcc. Compile with -g
Open folder in vscode. you will need a recent build of the c++ extension.\cpvsbuild\drops\MDDDebugger\CppTools\latest\Extension
Start debugging. with a bp set
The first bp message will have a lower case c: any second message will have an upper-case driver letter.

Dup of https://github.com/Microsoft/vscode/issues/22740


add Changeset.validation_specs/1

Joeé:
This is just the first part of the stuff we talked about. I wanted to check it was inline with your expectations.
I called it Changeset.validation_specs because I felt that plain validations implied the running of them.
Let me know if its OK and I'll finish it off.
Dave

Thanks @pragdave. I have merged it locally as validations and also added constraints.


Create DOIs for Xsuite packages

Hi,
As mentioned in the meeting, would be very nice to have these for the Xsuite ecosystem.
I leave a link to the same MAD-X issue: https://github.com/MethodicalAcceleratorDesign/MAD-X/issues/1106

Done, upcoming releases should have a DOI


Add an option for safeUp and safeDown

It will be great if you add a checkbox on the migration form for setting safeUp and safeDown.

How to do that?? I don't think that's possible.. Do you have any idea on how to do that? It'll be cool though if it can..

OH! I get what you mean..
It's not that hard.. I'll add it..

Thanks! Sorry it takes so long just..


Extensions Don't Work After Insiders Update

Issue Type: Bug
I am using the insiders edition. It updated to the newest version just recently. I noticed that none of my installed extensions seem to work after the update. I can uninstall the extension and then that extension will work afterwards sa shown here:
For this particular extension I am showing uses source control but since none of the extensions seem to work anymore,  Visual Studio Code's Source Control just shows a category for changes as shown here:
When using this particular extension GitLens, it would show categories for Commits, Repositories, File History, Branches, Remotes, Stashes, Tags, Search & Compare as shown here:
If I close Visual Studio Code then the installed and enabled extensions get faded as if I disabled them as shown here.
VS Code version: Code - Insiders 1.60.0-insider (49af1cbe00271ac2ea36cfc5f7352fe31a7b0094, 2021-08-06T06:41:50.275Z)
OS version: Windows_NT x64 10.0.19042
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz (4 x 2904)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
7.90GB (2.22GB free)

Process Argv
--crash-reporter-id 14115fb5-c4f3-456d-a2da-8b22431f1a75

Screen Reader
no

VM
0%

Extensions (8)

Extension
Author (truncated)
Version

dart-code
Dar
3.25.1

flutter
Dar
3.25.0

gitlens-insiders
eam
2021.7.1905

vscode-html-css
ecm
1.10.2

remote-wsl
ms-
0.58.2

tabnine-vscode
Tab
3.4.21

vim
vsc
1.21.5

JavaScriptSnippets
xab
1.8.0

A/B Experiments
vsliv695:30137379
vsins829:30139715
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
pythonvspyt602:30291494
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492:30256197
vstes627:30244334
pythonvspyt639:30291487
pythontb:30258533
vsc_aacf:30263846
pythonptprofiler:30281269
vshan820:30294714
pythondataviewer:30285072
pythonvsuse255:30319630
vscod805cf:30301675
pythonvspyt200:30323110
vsccppwt:30312692
pythonvssor306:30340298
bridge0708:30335490
pygetstartedt:30346833

duplicate of https://github.com/microsoft/vscode/issues/130219

duplicate of #130219

Thank you. I tried searching the issues if someone posted this already. I couldn't find it.


fix(tools): helper utils

I was a bit late reviewing https://github.com/freeCodeCamp/freeCodeCamp/pull/39556, so I created a PR instead.

@ojeytonwilliams Thanks for catching that throw mistake.  That was something I added last night after noticing nothing prevented a number between 1 and 20 (inclusive).  I had the logic backwards.
Also, I forgot about padStart.  That function's original design was to be based off of the longest existing number of digits.  Once I changed to 3, I just kept the original code I had.  padStart is perfect for this.  Thanks again.

No probs - I randomly discovered padStart because I'd heard the story of left-pad :smile:


HPA support for PyTorch Elastic

1. Background
use training-operator/examples/pytorch/elastic/imagenet/imagenet.yaml  to HPA for Pytorch elastic
2.ScaleUp and PytorchJob always in running state
Jobs list:

PytorchJob.Status:

HPA.status:

in this case, worker3 which scale up by HPA is pendding first, due to NotEnounghResources, and scheduled until worker0-2 is Successed。 this let PytorchJob always in Runing state,  and workder3 in Running and Restart to communicate to worker0

Which image are you using ?  Is this always reproducible?

build image myself from the master branch. yes

Does this happen when you get into a situation with "NotEnounghResources"  ?What about the normal situations?  Is it the situation that underlying elastic job got completed but Pytorchjob doesn't show succeeded ?

1.yes.
2.if all pods scheduled and completed, the pytorchjob will change to compeleted.
3.No, it appears when part of pods completed and another pendding or failed, and Pytorchjob doesn`t show succeeded. But actually the training has been completed.

When we use PyTorch Elastic(eg. https://github.com/kubeflow/training-operator/blob/master/examples/pytorch/elastic/imagenet/imagenet.yaml):

first worker replicas is two.
HPA scale the worker replicas to 4.
Due to some reasons(like NotEnounghResources), worker-2 is not running.
Other workers completed (including worker-0), worker-2 cannot connect to worker-0.

# kubectl get pod
elastic-example-imagenet-worker-0   0/1     Completed           0                3h16m
elastic-example-imagenet-worker-1   0/1     Completed           0                3h16m
elastic-example-imagenet-worker-2   1/1     Running             20 (5m13s ago)   3h15m
elastic-example-imagenet-worker-3   0/1     Completed           0                3h15m

# kubectl logs elastic-example-imagenet-worker-2 -p
[E socket.cpp:860] [c10d] The client socket has timed out after 60s while trying to connect to (elastic-example-imagenet-worker-0, 23456).
Traceback (most recent call last):
  File "/opt/conda/lib/python3.10/site-packages/torch/distributed/elastic/rendezvous/c10d_rendezvous_backend.py", line 155, in _create_tcp_store
    store = TCPStore(
TimeoutError: The client socket has timed out after 60s while trying to connect to (elastic-example-imagenet-worker-0, 23456).

pytorchjob is still running because the success criteria are not met.
https://github.com/kubeflow/training-operator/blob/aae672fc47f17144576cae3f01de90157ed37279/pkg/controller.v1/pytorch/pytorchjob_controller.go#L435-L460

Support successPolicy on pytorchjob can fix it:

SuccessPolicyAllWorkers  - pytorchjob now default success policy.
SuccessPolicyChiefWorker - the job is succeeded if  worker 0 completed.
@johnugeorge @tsuiot  WDYT.

This is related to bug in reporting success for Elastic runs.
Related: https://github.com/kubeflow/training-operator/issues/1711#issuecomment-1379247991

For Elastic mode, if worker0 completes, we default to setting the pytorchjob  to Succeeded？

Yes. I think, if any worker succeeds, we can mark it succeeded.

@tsuiot Can you try the fix from #1752

Yes.

@tsuiot  Is there any problem with the test?
I tested it myself and the job shows succeeded. @johnugeorge
$ kubectl get pod
NAME                                READY   STATUS             RESTARTS          AGE
elastic-example-imagenet-worker-0   0/1     Completed          0                 19h
elastic-example-imagenet-worker-1   0/1     CrashLoopBackOff   188 (2m39s ago)   19h
elastic-example-imagenet-worker-2   0/1     Completed          0                 19h
elastic-example-imagenet-worker-3   0/1     Completed          0                 19h
$ kubectl get pytorchjob
NAME                       STATE       AGE
elastic-example-imagenet   Succeeded   19h

1.the pytorchJob change to Succeeded with #1752
2.new worker pod in running and restart, and should we delete the pods scaled and not in normal status when pytorchJob Succeeded?

2.new worker pod in running and restart, and should we delete the pods scaled and not in normal status when pytorchJob Succeeded?
PytorchJob.RunPolicy.CleanPodPolicy defines the policy to kill pods after the job completes.(the deafut value is None for PytorchJob).
https://github.com/kubeflow/training-operator/blob/aae672fc47f17144576cae3f01de90157ed37279/pkg/apis/kubeflow.org/v1/pytorch_defaults.go#L66-L72

But in the comments of common, the default value is Running, which is ambiguous.
type RunPolicy struct {
	// CleanPodPolicy defines the policy to kill pods after the job completes.
	// Default to Running.
	CleanPodPolicy *CleanPodPolicy `json:"cleanPodPolicy,omitempty"`

@tsuiot  you can set PytorchJob.RunPolicy.CleanPodPolicy to Running and try again.
@johnugeorge  should we set pytorjob CleanPodPolicy default to Running?

/LGTM

We can fix the comment for now.  It is better to keep consistent for all jobs.


USSR (SU)

Need to add this historical flag.

See: http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Exceptional_reservations

This was just added by SueDNymme++.


Template code in css file

This line is not treated as template code:
https://github.com/victoriadrake/hugo-theme-introduction/blob/45db8e96dbeb0a8697bb1173b74f4be04dbefe99/assets/sass/_fonts.sass#L1
And generates a "broken" main css file. The template code is falsely in the generated css file:
src: local("Nunito Sans Regular"),local("NunitoSans-Regular"),url({{ with resources.Get "fonts/NunitoSans/NunitoSans-Regular.ttf" }}{{.Permalink}}{{ end }}) format("woff2");

Fixed with pull request #285.


Sablier

Revision checks

[x] Used smart contracts were audited.
[x] Your Safe App include a manifest.json file at the root with the required data.
[x] The app can be loaded as a custom Safe App in the Apps section of https://app.safe.global.
[x] The app auto-connects to the Safe.
[x] You are able to trigger and execute one transaction with a Safe.
[x] RPC requests are optimized (not triggering many requests in a very short time period).

Name/Description
Type

Name change: change the Safe app's name from "Sablier V2" to "Sablier"

Compatible Networks
Audit document
https://github.com/sablier-labs/audits
Code for review
https://github.com/sablier-labs/v2-core
IPFS hash/App URL
https://app.sablier.com

It's done.

Thank you! 🙏


Computing one key of a dask graph result in computing all keys

This example :
import dask

def a():
    print("=> func a called")
    return 1

def b():
    print("=> func b called")
    return 2

dsk = {
    "a": (a,),
    "b": (b,),
}

res = dask.get(dsk, "a")
print("Result:", res)

used to give this output with dask 0.18.2 :
=> func a called
Result: 1

but now it gives this output with dask 0.19 :
=> func a called
=> func b called
Result: 1

where the call of func b is unexpected.
This example has been tested on :

ubuntu 16.04 with python 3.6.2
mac os x 10.13.1 with python 3.6.5 and python 3.7.0

You probably want to use dask.optimization.cull
On Wed, Sep 5, 2018 at 8:49 AM, Frédéric Matigot<EMAIL_ADDRESS>wrote:

This example :
import dask
def a():
print("=> func a called")
return 1
def b():
print("=> func b called")
return 2
dsk = {
"a": (a,),
"b": (b,),
}
res = dask.get(dsk, "a")print("Result:", res)
used to give this output with dask 0.18.2 :
=> func a called
Result: 1
but now it gives this output with dask 0.19 :
=> func a called
=> func b called
Result: 1
where the call of func b is unexpected.
This example has been tested on :

ubuntu 16.04 with python 3.6.2
mac os x 10.13.1 with python 3.6.5 and python 3.7.0

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

We used to cull automatically in the local schedulers, but not in the distributed scheduler. Since all dask collections apply cull automatically, we settled on never culling in the schedulers in #3856. Apologies for the backwards incompatible change here, your code should be fixed with culling manually:
>>> from dask.optimization import cull
>>> dask.get(cull(dsk, 'a')[0], 'a')
=> func a called

Anything else to discuss here or is this good to close?

I'm a bit worried that this behaviour is quite counterintuitive, in my very simple scenario it seems strange to have to "optimise" something in order to avoid to call all the functions :/. Anyway, I will call cull manually, thanks for the tip !


micro snap is outdated

root@snapsnap:~# snap info micro
name:      micro
summary:   "A modern and intuitive terminal-based text editor"
publisher: zy
contact<EMAIL_ADDRESS>description: |
  Micro is a terminal-based text editor that aims to be easy to use and
  intuitive, while also taking advantage of the full capabilities of modern
  terminals.

commands:
  - micro
tracking:      beta
installed:     master (1) 3MB -
refreshed:     2016-12-16 22:59:55 +0000 UTC
channels:
  latest/beta: master (1) 3MB -

Specifications
# micro --version
Version: 0.0.0-unknown
Commit hash: Unknown
Compiled on Unknown

OS: Ubuntu 16.04 in LXD
Terminal: dumb
There is a build service at - https://build.snapcraft.io/ - maybe it can help?

Still outdated. :(

I'm not really sure how to update it... I see on build.snapcraft.io that the builds have failed, but I don't really understand why and I don't see how to debug (I tried to do a build from my computer, but it tells me I don't have lxd installed even though I installed it following the instructions).
Here is the end of the build log in case anyone can help:
Downloading 'core.snap'  97%
Downloading 'core.snap'  98%
Downloading 'core.snap'  99%
Downloading 'core.snap' 100%
Traceback (most recent call last):
  File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 243, in main
    builder.pull()
  File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 180, in pull
    env=env)
  File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 100, in run_build_command
    ["/bin/sh", "-c", command], echo=echo, get_output=get_output)
  File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 71, in chroot
    subprocess.check_call(cmd)
  File "/usr/lib/python2.7/subprocess.py", line 541, in check_call
    raise CalledProcessError(retcode, cmd)
CalledProcessError: Command '['/usr/bin/sudo', '/usr/sbin/chroot', '/home/buildd/build-SNAPBUILD-55582/chroot-autobuild', 'linux64', '/bin/sh', '-c', 'cd /build/b68dc646faa0c5dccca78d8c5d88c0fa-xenial && env LANG=C.UTF-8 https_proxy=http://snap-proxy.launchpad.net:3128 SNAPCRAFT_LOCAL_SOURCES=1 SNAPCRAFT_SETUP_CORE=1 http_proxy=http://snap-proxy.launchpad.net:3128 GIT_PROXY_COMMAND=/usr/local/bin/snap-git-proxy snapcraft pull']' returned non-zero exit status 1
Revoking proxy token...
RUN: /usr/share/launchpad-buildd/slavebin/scan-for-processes ['scan-for-processes', 'SNAPBUILD-55582']
Scanning for processes to kill in build /home/buildd/build-SNAPBUILD-55582/chroot-autobuild...
RUN: /usr/share/launchpad-buildd/slavebin/umount-chroot ['umount-chroot', 'SNAPBUILD-55582']
Unmounting chroot for build SNAPBUILD-55582...
RUN: /usr/share/launchpad-buildd/slavebin/remove-build ['remove-build', 'SNAPBUILD-55582']

It will be easier to help with references to official docs and with commands executes to build snaps locally.

Command to build snap locally:
snapcraft clean
snapcraft

@zyedidia https://forum.snapcraft.io/t/consistent-downloading-core-snap-build-errors-with-launchpad/1299 - should be resolved now, looks like a problem with launchpad.

You can now always install a nightly version of micro (the latest version) with sudo snap install micro --classic --edge.


Group listMembers URI error

I can't get group listMembers because URI of listMembers API is wrong.
https://www.googleapis.com/admin/directory/v1/groups/groupKey,share%40g.xxxxxx.com/members:
(404) Resource Not Found: groupKey' in ./vendor/src/Google/Http/REST.php:110
It should be
https://www.googleapis.com/admin/directory/v1/groups/share%40g.xxxxxx.com/members
./src/Google/Utils/URITemplate.php
248           $value = implode($list_sep, $values);
if I change it like this
$value = $values[1];
URI is OK and I can get response.

I'm getting a similar error, but not sure if its the same cause, and the fix you mention above isn't resolving my issue.
Error calling GET https://www.googleapis.com/admin/directory/v1/groups/groupname%40domain.com/members: (404) Resource Not Found: groupKey
In URITemplate.php, changing
          $value = implode($list_sep, $values);
          if ($value == '') {
            return false;
          }

to
          $value = implode($list_sep, $values[1]);
          if ($value == '') {
            return false;
          }

doesn't resolve the problem for me - same error.
I haven't actually tried this call in a while, so I'm not sure the last time it worked properly, but I don't believe it was caused by a change on my end...
FWIW, the API test also returns the same error "Resource Not Found: groupKey":
https://developers.google.com/admin-sdk/directory/v1/reference/members/list#try-it

I also had the same issue.
You're probably passing groupKey within optional parameters array. listMembers method is expecting groupKey to be first parameter and optParams array - as second parameter.
Proper request should look like:
putenv("GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json");

$client = new Google_Client();
$client->useApplicationDefaultCredentials();
//@param $account - service account email
$client->setSubject($account);
$client->addScope(Google_Service_Directory::ADMIN_DIRECTORY_GROUP);

$service = new Google_Service_Directory($client);

$groupKey = $directory_group_id;
$optParams = array(
  'maxResults' => 1000
);

$results = $service->members->listMembers($groupKey, $optParams);

It looks like a member of our great community answered your questions. Thanks Community! Please feel free to reopen if you have any more questions.


the speed limits in Town04

CARLA version:  0.9.15
Platform/OS: ubuntu
Problem you have experienced: Regarding the speed limits in Town04, why are the speed limits so high? There are no speed limits for roads after Road_ID52. Is there an issue?
Code:
xodr_content = self.map.to_opendrive()
root = ET.fromstring(xodr_content)
speed_limit = None
for road in root.iter('road'):
print(f"Road ID: {road.attrib['id']}, Name: {road.attrib['name']}, Length: {road.attrib['length']}")
for speed in road.iter('speed'):
speed_limit = float(speed.attrib['max']) * 3.6  # 转换为 km/h
print(f"Speed limit: {speed_limit} km/h")
Result:

For the roads that have a speed limit, I think the values are already in km/h and not in m/s, so you get the wrong values when multiplying by 3.6.

Hello, as GoodarzMehr says, the speeds in Carla are applied in km/h and not in m/s, by changing this data the speeds should match well

Hello, this solved your question? the issue will be closed, in any case if something happens feel free to reopen the issue


Remove p2p.BaseService & co

Also remove cancel_token from our dependencies

@carver I couldn't change https://github.com/ethereum/trinity/blob/d95a7775c98f048a6770ddbbaa9ca4358e3abcc5/tests/core/task-queue-utils/test_task_queue.py#L69 to not use a CancelToken, and since it's not a trivial test I thought I'd check with you first before I rewrite it and we accidentally end up with a test that doesn't test what it should. Do you think we can easily change it so that we can drop cancel_token from our deps or should I just leave it for now?

@carver I couldn't change
https://github.com/ethereum/trinity/blob/d95a7775c98f048a6770ddbbaa9ca4358e3abcc5/tests/core/task-queue-utils/test_task_queue.py#L69
to not use a CancelToken, and since it's not a trivial test I thought I'd check with you first before I rewrite it and we accidentally end up with a test that doesn't test what it should. Do you think we can easily change it so that we can drop cancel_token from our deps or should I just leave it for now?

Yeah, it may take a bit of work. Chaining isn't used here, so it wouldn't be that hard to add a small internal version of the cancel token in utils that has a limited, similar API. No objection to removing.

I don't think it's worth investing the time to implement a simpler CancelToken in trinity just for this test, so I'd rather keep the dependency and leave the test unchanged for now


Failure to compile when using gmp backend.

Hello! Thank you for making this library. We are trying to use libpaillier with the GMP backend (as we have measured this backend to be faster than the others). We used to specify this dependency in our Cargo.toml as:
libpaillier = { version = "0.5", default-features = false, features = ["gmp"] }

However this no longer works. We currently get this compilation error:
error[E0599]: no method named `to_string_radix` found for struct `rug::Integer` in the current scope
  --> /home/user/.cargo/registry/src/index.crates.io-6f17d22bba15001f/unknown_order-0.6.0/src/gmp_backend.rs:46:18
   |
46 |     |b: &Bn| b.0.to_string_radix(16),
   |                  ^^^^^^^^^^^^^^^ method not found in `Integer`
error: could not compile `unknown_order` (lib) due to 4 previous errors

Cargo tree (our library is called tss-ecdsa):
rug v1.24.0
└── unknown_order v0.6.0
    └── libpaillier v0.5.0
        └── tss-ecdsa v0.0.0 (/home/user/Programming/tss-ecdsa)

This error happens because rug v1.24 changes to_string_radix to have a feature cfg on std:
    #[cfg(feature = "std")]
    #[inline]
    pub fn to_string_radix(&self, radix: i32) -> String {

I believe default-features = false is turning off the std feature. So the compiler cannot find this function.
It works if I specify rug a separate dependency:
libpaillier = { version = "0.5", default-features = false, features = ["gmp"] }
rug = { version = "1.24.0"}

But we don't actually directly use rug. It took me a while to understand what was happening. Please let me know if there is a better way to specify our libpaillier or you consider this a bug on unknown_order or rug?
Thanks.

I believe this has been fixed now in 56e64ebcc04bee17a42323e56dac1dfc65c7f02f


fix(TDI-45418):Upgrade Jackson libraries

What is the current behavior? (You can also link to an open issue here)
https://jira.talendforge.org/browse/TDI-45418
What is the new behavior?
Please check if the PR fulfills these requirements

[ ] The commit message follows Talend standard
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features) ?
[ ] The code coverage on new code >75%
[ ] The new code does not introduce new technical issues (sonar / eslint)

What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build / CI related changes
[ ] Other... Please describe:

Does this PR introduce a breaking change?

[ ] Yes
[ ] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
Other information:

Pull request test result: failure :x:


Handshake Error on Android webview with Sec-WebSocket-Protocol

Bug description:
When I connect the websocket on ESP8266 with Ethernet.h library (not the LWIP one), it works great from the Desktop chrome browser. But when the same page is accessed from Android webview, it shows this error in logcat:
"WebSocket connection to 'ws://<IP_ADDRESS>:81/' failed: Error during WebSocket handshake: Response must not include 'Sec-WebSocket-Protocol' header if not present in request: /537.36
To Reproduce:
Open a websocket from a page inside the Android webview
The following is seen in the handshake logs:
Line #0] GET / HTTP/1.1
[Line #1] Host: <IP_ADDRESS>:81
[Line #2] Connection: Upgrade
[Line #3] Pragma: no-cache
[Line #4] Cache-Control: no-cache
[Line #5] Upgrade: websocket
[Line #6] Origin: http://vii.co.in
[Line #7] Sec-WebSocket-Version: 13
[Line #8] User-Agent: Mozilla/5.0 (Linux; Android 9; SMART TV Build/PPR2.180905.006.A1; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Safari/537.36
[Line #9] Accept-Encoding: gzip, deflate
[Line #10] Accept-Language: en-US
[Line #11] X-Requested-With: com.viiui
[Line #12] Sec-WebSocket-Key: zucC9T5fkNmL6wvK3tuzcw==
[Line #13] Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
[Line #14]
Expected behavior:
The web socket should connect
Environment:

OS: Windows
OS version: 10
react-native version: AOSP Android (dont have the exact version)
react-native-webview version: don't have that data now

Solution:
I comment out the following lines in WebSocketServer.cpp in the _acceptRequest function
//COMMENTED BY KAUSHAL

// if (protocol[0] != '\0') {
// // NOTE: Up to 26 characters for protocol value
// snprintf_P(
// buffer, sizeof(buffer), (PGM_P)F("Sec-WebSocket-Protocol: %s"), protocol);
// client.println(buffer);
// }
Then the android webview websocket works!


Update lfx membership script

Changes proposed ✍
What
copilot:summary

copilot:poem
Why
How
copilot:walkthrough
Checklist ✅

[ ] Label appropriately with Feature, Improvement, or Bug.
[ ] Add screenshots to the PR description for relevant FE changes
[ ] New backend functionality has been unit-tested.
[ ] API documentation has been updated (if necessary) (see docs on API documentation).
[ ] Quality standards are met.

@sausage-todd thank you so much Misha!
And that's a very valid point with "Individual - No account", I'm now excluding it.
Updated the PR


Listing mode like ls -la

Hi! I modified things a little to add a mode to show files in a list, with permissions, user and file size.
Like this:
-rwxrwxrwx     user      6 KB       lsicons.py
I also made python 2 and 3 compatible and linted it by pep8.

Wow! It looks like you've spent some time preparing this, and the code looks great! I really like that you added -la mode, and that you linted. Thank you so much!

No prob! Thanks for merging!
2016-12-11 10:53 GMT-03:00 illinoisjackson<EMAIL_ADDRESS>
Merged #1 https://github.com/illinoisjackson/better-ls/pull/1.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/illinoisjackson/better-ls/pull/1#event-889575363, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABcigSZQRDksnTazi9xwZ9wcpDSQuHBEks5rHAB0gaJpZM4LJT8k
.


Issue with Install

Hi
I'm trying to Install this package but am getting the error below. I've used the tool before with other clients but now getting this issue with a new client, unfortunately I am not much of a coder so this has thrown me.
Any ideas?
This app can't be installed.
There are problems that prevent this package from being installed.
Dependent class is invalid and needs recompilation: dlrs.rollupsummariesselector: line 30, column 46: Invalid type: fflib_SObjectSelector	managetrigger: Dependent class is invalid and needs recompilation: dlrs.rollupsummariesselector: line 30, column 46: Invalid type: fflib_SObjectSelector
(LookupRollupSummariesReadOnly) In field: apexClass - no ApexClass named fflib_SObjectSelector found	LookupRollupSummariesReadOnly: In field: apexClass - no ApexClass named fflib_SObjectSelector found

I've also had the same error appear when trying to install from the app exchange. Is there supposed to be another way of installing the app?

I'm wondering if it is a licence issue the current client I am working on doesn't have enterprise licence only has Salescloud Professional

I'm on enterprise and still get the error.

OK, thanks, that rules that out then.....

Do you have any of the other fflib utilities installed manually (not using the package)?
This error is just saying that one of your classes is no longer compiling. If you go to Setup --> Develop --> Apex Classes, and then sort the list by Status, at least one of them should say "Invalid".
Try to edit and save that file; If it saves, great, try to install DLRS again. If it doesn't save, due to an issue with syntax, then you'll need to fix that first.
Let me know if that helps.

This is most odd, fflib_SObjectSelector is a core part of the package and will not have been left out. The tool doesn't work on Professional edition, but i see thats not 100% the use cases here. Are you guys running Winter'16 sandboxes by any chance?
Having unmanaged / manually installed fflib classes in your org should not conflict with packaged versions as they are isolated by namespace.
This smells like a platform bug.

@wes1278  Thanks for the tip, but unfortunately I'm not able to find any Apex Classes with an Invalid status in my Dev or live org.
@afawcett  I'm not, my sandbox is Summer '15. I tried the install again today just to check if anything had changed and received the same error. Thanks for looking into it, I'm itching to use your tool.

Its really odd, my only next port of call would be to raise a Salesforce Case tbh. Given its only in your org, its probably best you do that and relay what they say here? Is that ok?

Totally. Thanks dude. I'll let you know what goes on with it.

Hey, so I was able to install the package today. I'm assume it was fixed with your most recent release? Not totally sure though. The app is working beautifully, thanks a ton for providing it.

Ah good, your welcome! :+1:


Crash when using @Priority

I had rules executing, but when I try to use @Priority to order them, I get the following crash when adding the rule to the engine:
java.lang.reflect.UndeclaredThrowableException
at com.sun.proxy.$Proxy21.getPriority(Unknown Source)
at org.easyrules.core.RuleProxy.compareTo(RuleProxy.java:111)
at org.easyrules.core.RuleProxy.invoke(RuleProxy.java:103)
at com.sun.proxy.$Proxy21.compareTo(Unknown Source)
at java.util.TreeMap.compare(TreeMap.java:1294)
at java.util.TreeMap.put(TreeMap.java:538)
at java.util.TreeSet.add(TreeSet.java:255)
at org.easyrules.core.DefaultRulesEngine.registerRule(DefaultRulesEngine.java:81)
This is on version 2.5.0

Actually, I think the issue may be a private access modifier on the class.  I changed it because the IDE was complaining.  I'll verify and then post back.

Ok, @priority is working now that I changed the rule classes back to public to work with reflection.