Multi-Class Image Classifier using Deep AutoViML

Article checklist
Attention
Our Peer Reviewer and Content Moderator teams do NOT provide any revisions services. All revisions and edits should be completed on your own forked repo (as to not take up room in the queue) in order for our team to review them all in a timely manner.
ANY ARTICLE SUBMITTED WITH GLARING ERRORS WILL BE IMMEDIATELY CLOSED.

As a rule of thumb - please be sure to only submit articles (pull requests) that are fully polished and ready to be published. Be sure to go through our resources documents for extra and 3rd party (vetted) resources to help improve overall technical writing.

Pre-submission checks

Please ensure that you have only one open topic suggestion (issue) + in-review article (linked pull request) at a time. This will ensure that we complete the review process in a timely manner from inception to publishing

If you have not already, please go over our Resources Page for more tips and tricks on how to improve your overall technical writing so reviews are swifter, increase the chance of a payout and provide more value to our readers.

For first-time contributors and for more details on our submission guidelines, see our Contributing Guidelines.

Formatting and structure checks

[x] Have you used the correct folder and file structure? - see Contribution Guidelines

[x] Is your article properly formatted in Markdown? - see Github Markdown guide

[x] Have you used our preferred heading structure? - H3 (###) and up

[x] Does your article follow any of the suggested structure formats? - see example formats

[x] Is your article over 750 words? - Tool: Wordcounter.net

[x] Is the article you are submitting an in-depth and unique article? Does it go beyond what is in the official docs and what is covered in other blog sites. See these articles as examples.

[x] Does your article provide enough value and detail about your topic? - Articles should be clear, accurate, and fully explained.

[x] Can your article be understood by beginners? - Assume the audience is smart but has no prior exposure to the common terminology in your article.

[x] Have you included a hero image that is 600x400 pixels, under 300KB in size, and have the copyright to use it? - Tools: Pixlr Image Editor for resizing and Unsplash for Creative Commons images

Grammar & plagiarism checks

[x] Have you spellchecked and grammar checked your article? - Tools: Write&Improve - ProWritingAid - Grammarly
[x] Please place your article through a 3rd party plagiarism checker. We suggest using Quetext, this tool is free and has a daily limit. We typically accept articles with 10% or less.
[x] Have you checked your article for readability? - Tool: Hemmingway
[x] Have you added sources for quotes and images that aren't yours?

Technical checks

[x] Are your code snippets properly formatted for syntax highlighting - see Syntax guide
[x] Have you checked your code runs correctly and you've highlighted all necessary dependencies for installation?
[x] Are the software programs and packages you're highlighting in your article up to date, using current versions and not deprecated?

Topic suggestion this closes

Remove the backticks and add the issue number below to link and close your Topic Suggestion (issue) when your article has been published (PR has been merged). See this video for more details.

This closes #6231

Finally, delete the article checklist notes in blockquotes and submit your PR. We look forward to reviewing your article.

Hello @simonndiritu477 ,
Welcome to EngEd program!
Thanks for submitting this PR.
Your PR has entered our reviewing queue. Please wait until a peer-reviewer pings you to get started with the review.
Meanwhile, we suggest you to go through approved PRs/published articles to see if you have missed out anything. This would help us avoid any potential closure of the PR.
Thanks.

Plagiarism check complete

Hello @Dawe-7, I have resized some of the images. But, these images are screenshots of the model's outputs (apart from the hero image), if I further resize most of them to 600X400 px they will not show the desired results.
Thanks.

jumping on this one

@simonndiritu477

cc @Dawe-7
FYI not sure why I could not push my commits to this PR.


Documentation for VerifyExpiresAt is incorrect

The VerifyExpiresAt function for Claims has incorrect or unclear documentation. It states that it will compare the exp claim to cmp, which is indicative of a == comparison, when in reality it does a cmp <= exp comparison.

The same goes for VerifyNotBefore and VerifyIssuedAt


fix: use a linked list for process clearing

- What I did

Switched the process id queue for srv from a dynamically allocated pointer array to a linked-list so memory is managed more effectively

This queue is used to clean up defunct processes - nearly immediately, unless the main thread is the in the middle of handling another request (which is usually a few seconds of delay at most)

- How I did it
- How to verify it
- Description for the changelog
fix: use a linked list for process clearing

cc: @realvarx - Changing to the new parse_control_message approach has created (what I think is) a race condition in non --multi srv:
[ERRO] 2024-07-30 22:06:01.229578 | srv - run | Failed to parse message type
Previously the race condition was only possible with --multi enabled, but now it is occurring with ssh_request since the race condition happens without --multi.

cc: @realvarx - Changing to the new parse_control_message approach has created (what I think is) a race condition in non --multi srv:
[ERRO] 2024-07-30 22:06:01.229578 | srv - run | Failed to parse message type
Previously the race condition was only possible with --multi enabled, but now it is occurring with ssh_request since the race condition happens without --multi.

I didn't see that during my manual testing or cicd. Can you indicate the steps to reproduce? Or does it happen sometimes randomly?

cc: @realvarx - Changing to the new parse_control_message approach has created (what I think is) a race condition in non --multi srv:
[ERRO] 2024-07-30 22:06:01.229578 | srv - run | Failed to parse message type
Previously the race condition was only possible with --multi enabled, but now it is occurring with ssh_request since the race condition happens without --multi.

Following this, I will release v5.6.0 and c0.1.9, replace d:5.5.0 with d:5.6.0 in the e2e tests and raise the minimum C daemon compatibility to d:5.6.0.

cc: @realvarx - Changing to the new parse_control_message approach has created (what I think is) a race condition in non --multi srv:
[ERRO] 2024-07-30 22:06:01.229578 | srv - run | Failed to parse message type
Previously the race condition was only possible with --multi enabled, but now it is occurring with ssh_request since the race condition happens without --multi.

I didn't see that during my manual testing or cicd. Can you indicate the steps to reproduce? Or does it happen sometimes randomly?

Happening randomly

LGTM

Did my own manual test with M2 Air and Linux x64 VPS
v5.5.0 ./sshnp -f @soccer0 -t @soccer99 -r @rv_eu -d jeremyvps
2024-07-31 11:41:28.918720 : Sending daemon feature check request
2024-07-31 11:41:28.918805 : Resolving remote username for user session
2024-07-31 11:41:29.844605 : Resolving remote username for tunnel session
2024-07-31 11:41:29.845382 : Fetching host and port from srvd
2024-07-31 11:41:32.775746 : Received host and port from srvd
2024-07-31 11:41:32.776020 : Waiting for daemon feature check response
2024-07-31 11:41:32.776053 : Received daemon feature check response
2024-07-31 11:41:32.778316 : Required daemon features are supported
2024-07-31 11:41:32.942082 : Sending session request to the device daemon
2024-07-31 11:41:33.016664 : Waiting for response from the device daemon
2024-07-31 11:41:33.624448 : Received response from the device daemon
2024-07-31 11:41:33.632024 : Creating connection to socket rendezvous
2024-07-31 11:41:33.780441 : Starting user session
The authenticity of host '[localhost]:49684 ([<IP_ADDRESS>]:49684)' can't be established.
ED25519 key fingerprint is SHA256:5ZBwC7F9UmJBDpiOo4vkIzyiBMI0sgfoXK++7xUuRUI.
This host key is known by the following other names/addresses:
    ~/.ssh/known_hosts:3: jeremymark.ca
    ~/.ssh/known_hosts:12: [localhost]:56249
    ~/.ssh/known_hosts:13: [localhost]:56272
    ~/.ssh/known_hosts:14: [localhost]:56374
    ~/.ssh/known_hosts:18: [localhost]:54353
    ~/.ssh/known_hosts:19: [localhost]:54572
    ~/.ssh/known_hosts:27: [localhost]:55657
    ~/.ssh/known_hosts:31: [localhost]:221
    (7 additional names omitted)
Are you sure you want to continue connecting (yes/no/[fingerprint])? ^C%

[DEBG] 2024-07-31 15:41:29.604226 | sshnpd | Waiting for next monitor thread message
[DEBG] 2024-07-31 15:41:30.214765 | atclient_monitor | 	RECV: "{"id":"a3a348e3-a45c-487e-aeef-7a858670d964","from":"@soccer0","to":"@soccer99","key":"@soccer99:ping.jeremyvps.sshnp@soccer0","value":"LxOUMaCIAzvu6j+Y/BhcoQ==","operation":"update","epochMillis":1722440490140,"messageType":"MessageType.key","isEncrypted":true,"metadata":{"encKeyName":null,"encAlgo":null,"ivNonce":"ZxKmERmPkSEekjQQqeP/OA==","skeEncKeyName":null,"skeEncAlgo":null}}"
[DEBG] 2024-07-31 15:41:30.214844 | sshnpd | Locked the atclient
[DEBG] 2024-07-31 15:41:30.214916 | connection | 	SENT: "noop:0"
[DEBG] 2024-07-31 15:41:30.246882 | connection | 	RECV: "data:ok"
[DEBG] 2024-07-31 15:41:30.246969 | connection | 	SENT: "lookup:shared_key@soccer0"
[DEBG] 2024-07-31 15:41:30.278389 | connection | 	RECV: "data:dGqHeGlk00BIp0Fj9LG3MXjFXRPpi7HG/wmBRvupQA6G2WqTMENDSjR9afp10Io3MQnyhnEgB0XnhlXMnhj6vCf5BvoynOCxfU8U/rnEtRKD+H3rdxWgEr+343JWqckTMTOacsqiOqfgZ7HytEFWeIE5lhKb2EG/xvnJjBqZDq8mZP83TGI3T5UtGSxY2CI29Zjf330a762ruskf/QeeLaAVFCtDDRKaNAGz3MnDnkQw347gnsPZjvopw0j9I3PyqG9lK5kehm/+/Ha7WH/AmgfPOTDWcWR5BoCNJ+bSTja1/IzzfqwXSvgj54JEXbrAdIggRZsJYEiSQtcXxlBRHw=="
[DEBG] 2024-07-31 15:41:30.292429 | sshnpd | Released the atclient lock
[DEBG] 2024-07-31 15:41:30.292467 | sshnpd | Received message of type: 1
[DEBG] 2024-07-31 15:41:30.292472 | sshnpd | Notification value received: ping
[DEBG] 2024-07-31 15:41:30.292479 | sshnpd | Executing handle_ping
[DEBG] 2024-07-31 15:41:30.292557 | connection | 	SENT: "noop:0"
[DEBG] 2024-07-31 15:41:30.322409 | connection | 	RECV: "data:ok"
[DEBG] 2024-07-31 15:41:30.322501 | connection | 	SENT: "llookup:shared_key.soccer0@soccer99"
[DEBG] 2024-07-31 15:41:30.352679 | connection | 	RECV: "data:GRluAnPbZML0MVUCoq/MWwv0ZVZyRNigrKoeMyn2pZxBujbfPk+KAoGmOmwvEJGsYuplAKZLLreV3QcQxHxUaHQ/weWwXMrgaogJkUlSt99fUAl/vZmK0hG31tnyJ4suEQTJHAUlmc09fy1mLlP/oBZuRLijL9aH0XirGsd7wAoFFuNNaKwhN0Lx8mVjrQNqq4uY39pJuMWAPebLG6uNQk6PZX8GQ9tu15YGerJqRJUsVrXVkPq3jNmRMaMjZWbluz/bzD7b7BK207WqiMv938awGD0qfixPjVg8gY2kY+8uMMXYlVe8eZz4C0LC/egFeEXJkidY2FeNCeJ8oIMtgQ=="
[DEBG] 2024-07-31 15:41:30.368701 | connection | 	SENT: "noop:0"
[DEBG] 2024-07-31 15:41:30.398603 | connection | 	RECV: "data:ok"
[DEBG] 2024-07-31 15:41:30.398697 | connection | 	SENT: "notify:update:messageType:key:priority:low:strategy:all:ttln:86400000:ttl:10000:isEncrypted:true:ivNonce:g3KOSaKHsgF9CCbjLgqnAw==:@soccer0:heartbeat.jeremyvps.sshnp@soccer99:P1bbzutJLaYjmqrWazLjSz/F95hmBgJQj14x0JNGjE3riTP0F6d4XL9yGgUE+8Dj3cbLJeiIyczKxbE7k3TyFUJ2POTvgZyy1NBZskov3C6c91UdednIMRYkTk/AhWEZJBfgYbek1E82Cqi8Ik0Yeq7CqCvEwqTno+9yIqCV1wqVw+aZDsYRfqzqFzF2/zjGisbejrTSwBVzESWZMDT54DfcJ6sKvpsGnEhodZJC2IDRASsUECRItDLujeEf82z+v3iXy3DI2PnSA+AcCpc527sH5ZeBUxQ+FA6W61NgH6f+LXvPUK3GHEQAujOeG6vk"
[DEBG] 2024-07-31 15:41:30.429052 | connection | 	RECV: "data:78799673-c6ff-4c66-846d-75958492c46f"
[DEBG] 2024-07-31 15:41:30.429096 | PING RESPONSE | Released the atclient lock
[DEBG] 2024-07-31 15:41:30.429109 | sshnpd | Waiting for next monitor thread message
[DEBG] 2024-07-31 15:41:33.113273 | atclient_monitor | 	RECV: "{"id":"52c1904a-bf83-4557-b670-55e60eaa25e8","from":"@soccer0","to":"@soccer99","key":"@soccer99:ssh_request.jeremyvps.sshnp@soccer0","value":"tSYxuiiNgdwUqDRGsrSIoqfeQrBsGgYNUvnqiijknHkL4cKakrW8umK5mBjeSz6YP5moKcT8eRDAyp+TXX23gEGyMyG2h8Rk1V0np4CiUpZTAUTsupgbRWqgs7j/JJqLGf+T8pholZKQmCLvxbCB49KAvbBtbn9ouJ3fDV3F25MGKcuxCDya/NJB5xmo7KKedMVFXMJ3AX6H/HDM1SMtiysgxCOhcfgAYN8USJGHL3jaz9zkH7W6QkriOjW2ojts+qdobZLAu2AvYwgaqKzAYGPKQvHDTvdZestgo/oEZA6VeYyAF8LdH87vY2tHp8VL+LQPYee78GgcUZV0SQvKxbnrFozNniR2TsLWrD6xfS6GHbGkRXtgvf+QjMdLSam9ZZ/L2p4cPzssduA96msWE/ejg3vYdOUImuOHEMs3a+FMvz4Ry0vkTPsOzKm5MCRQJyqKL7DYk0mcDsIlUwpfT8gmLqtj+alJWh6Rnv6PN1IHueyXZwKVU0jCI6giRQ61RV3OzhUTiUniRczxJTkiJd7dO3f+NVaGZz+bPVWC9esWtetgfcmoaG1m45fxtkS44Ua01QapQstdnVEeqA1zgBLHpb2pTM0O6v5hBDFus96et8zxgkp3ixuw97JgaeB3YIoeHrlmcnFRghvlpfjWjd0Td6dxPjTfay2Bk2/QdCyDgMlAETeJqPrgRKOpTyMjmayaX32emWXuZxCH8HC5z7vAZTHal1a0iQXTnrfiRnXQpz6k18FL9446JPNzAZOXW6QPsDD9JoCBvP4dQjcIWPAdl1q6G4PO713G6VF+2avqHC3LnFM5D4cSvwyn0MN9HyUKNtfNjeV+DMo7GkFPrxbT2srY1IDXzGlYnxBArmhqKcOSglcKiH8hY/2n5blnwvAMy3JICeLlysIyEDyCewTsxYJd+ZkTHZl5dqbafu8N2HHXKt7miZuS1RIX1JO11p325Rxg6nzy/C8iWYDkXw3PxmzfBLmaEjAP5LHBxW6Weo50Uw7Y2awLa9fZNkm3mf9c0IvZkgzhkWRK+P0tGM9W+ZkZA4J68sSwK1CofykT4NAKa0zIsKhWuOYqEM1Wybi/3koaniytZv+2q2VqHN2kwIXDESiOr9AEo8+iUut6wuzwIpvMMqs/7qp0eatGdE+6n5dtN/E3DKLl90tKyY87nfQ/j25neNyQPw4fYcshORhTBLy1HpFDLuStXThH8z/pmqAKEgTfWHkgxLSW7ybuCC+1T76eoIGkShioRlpeKbf//DBbNLi9w6kQ9u7gTQINijn1YuUSzcHZO/LrXkbVmTsLSmNw03G6+gFL0UsbYVXirtjtg8kQScfukKaNxIi3VQqKV1mpfasJF2Kb8cGAJMn2lhcOaZXs2HVX/fdoP5nDt7AmfRMA7bTgCy+25DFkWhQPDshD8yhWRCmHt94Bi2y/q1+UAF7DE1kEpHdi2K1hJ8iTvJCwJOGr7/mU","operation":"update","epochMillis":1722440493042,"messageType":"MessageType.key","isEncrypted":true,"metadata":{"encKeyName":null,"encAlgo":null,"ivNonce":"b4EEoS789eOad78K1ps34A==","skeEncKeyName":null,"skeEncAlgo":null}}"
[DEBG] 2024-07-31 15:41:33.113394 | sshnpd | Locked the atclient
[DEBG] 2024-07-31 15:41:33.113458 | connection | 	SENT: "noop:0"
[DEBG] 2024-07-31 15:41:33.143587 | connection | 	RECV: "data:ok"
[DEBG] 2024-07-31 15:41:33.143648 | connection | 	SENT: "lookup:shared_key@soccer0"
[DEBG] 2024-07-31 15:41:33.174297 | connection | 	RECV: "data:dGqHeGlk00BIp0Fj9LG3MXjFXRPpi7HG/wmBRvupQA6G2WqTMENDSjR9afp10Io3MQnyhnEgB0XnhlXMnhj6vCf5BvoynOCxfU8U/rnEtRKD+H3rdxWgEr+343JWqckTMTOacsqiOqfgZ7HytEFWeIE5lhKb2EG/xvnJjBqZDq8mZP83TGI3T5UtGSxY2CI29Zjf330a762ruskf/QeeLaAVFCtDDRKaNAGz3MnDnkQw347gnsPZjvopw0j9I3PyqG9lK5kehm/+/Ha7WH/AmgfPOTDWcWR5BoCNJ+bSTja1/IzzfqwXSvgj54JEXbrAdIggRZsJYEiSQtcXxlBRHw=="
[DEBG] 2024-07-31 15:41:33.189493 | sshnpd | Released the atclient lock
[DEBG] 2024-07-31 15:41:33.189542 | sshnpd | Received message of type: 1
[DEBG] 2024-07-31 15:41:33.189547 | sshnpd | Notification value received: {"payload":{"direct":true,"sessionId":"28dee05d-ce71-4d24-af38-638233a495e4","host":"<IP_ADDRESS>","port":39923,"authenticateToRvd":true,"clientNonce":"2024-07-31T11:41:28.916345","rvdNonce":"2024-07-31T15:34:02.419624","encryptRvdTraffic":true,"clientEphemeralPK":"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnOr+b1hqQrJk0RpvxXmxtHlFBclw6VJH1cS4KK+NhzlrFWUzU4irGcEW5y/XS1N5j38cZ7hsdnOo7EAy375+nEU0sbqUSVoYjpCBkvl44tDg188jbeBKCSLye4kYdHDi8pfVlDR//yiODkJKxIMJ3Xaq/Wbkd98IZlkwHupF8Ii/8g9/8WYjLCZqEGlrqGFwr2t89b8n1xLHuIHhrbabp+XIXoT3J+axquCjxxzGZOgpPX8AxQhlA49d3i93E2y0PGHHxu8o2sRVEHRZsDlw82h18gRIeIaFxTT+6SDlkt21SeZBbpoR+QaaQJ4FqbEZZLPgHjB8khvEI8dc9p+1mQIDAQAB","clientEphemeralPKType":"rsa2048"},"signature":"MQC66pDXZrxYLMLjEKt/S/QIKoS7+7sUGzdSCZ+NJOzOm953u9Wx828vbsCvXOFIPxob9qwdSSCakTD/nUPy/+BZtpGqPBxbNK0vTDBO+KoVENPpy3XhyKeEY9BZOrAn9RsVtio+U9YT/TIW08j4t92+rFaOk/PwCPW1rslQzQT8a+wLthDDf965hZpsBWIeto06ksvr4ChiGwvHQQOdbU9Ha0DTQzSSoMoKU9UBAZBRVC/5VY9VRr/6d2WLn0sCOHpUI75kI83WZjQVOEb9NTlkYFk24PBdViImAG6UkxTDmeTitwEE6/RaxztRm9E0RKgDyi1e7xtLHGaggcalBw==","hashingAlgo":"sha256","signingAlgo":"rsa2048"}
[DEBG] 2024-07-31 15:41:33.189567 | sshnpd | Executing handle_ssh_request
[DEBG] 2024-07-31 15:41:33.189678 | connection | 	SENT: "noop:0"
[DEBG] 2024-07-31 15:41:33.219744 | connection | 	RECV: "data:ok"
[DEBG] 2024-07-31 15:41:33.219821 | connection | 	SENT: "plookup:bypassCache:true:all:publickey@soccer0"
[DEBG] 2024-07-31 15:41:33.307144 | connection | 	RECV: "data:{"data":"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoIFOnmCE1b4bZCBfbajiwg3GXqW8syOJhx/5bhvxKA8I21U1IlKVw8CQ3mLSNQl4+R1cWUrhjvw1EYBtTQdQgr5EF72bXB8k+mCoXHqu7YzyD04ECdc6GFPZrzAH2TgvkYHTuOytXCye4tHr/4pZxah1NjNwH7ULt78JQIl/me6NjSTBRh6F/AdpXy1ZCR5vO8KuXY14JVhwWSZZvSli/gAIDyTmudimjvlHpI9wdxmht91WSZAsJpORZAZAm9WtCsAbyH8ggUbXlzhwNqtSnqbe5JeoK+I5fxn3ISRygF3uSncknmd2okcs5nILWb0CafJi8w7n7RsbMnmn3vjfCwIDAQAB","metaData":{"createdBy":"@soccer0","updatedBy":"@soccer0","createdAt":"2024-02-26 14:18:11.849Z","updatedAt":"2024-02-26 14:19:00.302Z","status":"active","version":2,"ttl":86400000,"isBinary":false,"isEncrypted":false},"key":"public:publickey@soccer0"}"
[DEBG] 2024-07-31 15:41:33.307773 | SSH_REQUEST | verify_envelope_signature (success)
[DEBG] 2024-07-31 15:41:33.330659 | RUN SRV | Starting srv with command: srv -h <IP_ADDRESS> -p 39923 --local-port 22 --local-host localhost --rv-auth --rv-e2ee
[INFO] 2024-07-31 15:41:33.331185 | srv - run | Configuring encrypter/decrypter for srv
[INFO] 2024-07-31 15:41:33.331432 | srv - run | Starting socket to socket srv
[INFO] 2024-07-31 15:41:33.331616 | srv - run | Initializing connection for side a
[INFO] 2024-07-31 15:41:33.331815 | srv - side | Doing tcp connect to localhost:22
[INFO] 2024-07-31 15:41:33.340570 | srv - run | Initializing connection for side b
[INFO] 2024-07-31 15:41:33.340708 | srv - side | Doing tcp connect to <IP_ADDRESS>:39923
[DEBG] 2024-07-31 15:41:33.330504 | SSH_REQUEST | Appended the srv process id node to the end of the process queue[DEBG] 2024-07-31 15:41:33.351747 | connection | 	SENT: "noop:0"
[DEBG] 2024-07-31 15:41:33.382464 | connection | 	RECV: "data:ok"
[DEBG] 2024-07-31 15:41:33.382557 | connection | 	SENT: "llookup:shared_key.soccer0@soccer99"
[DEBG] 2024-07-31 15:41:33.413888 | connection | 	RECV: "data:GRluAnPbZML0MVUCoq/MWwv0ZVZyRNigrKoeMyn2pZxBujbfPk+KAoGmOmwvEJGsYuplAKZLLreV3QcQxHxUaHQ/weWwXMrgaogJkUlSt99fUAl/vZmK0hG31tnyJ4suEQTJHAUlmc09fy1mLlP/oBZuRLijL9aH0XirGsd7wAoFFuNNaKwhN0Lx8mVjrQNqq4uY39pJuMWAPebLG6uNQk6PZX8GQ9tu15YGerJqRJUsVrXVkPq3jNmRMaMjZWbluz/bzD7b7BK207WqiMv938awGD0qfixPjVg8gY2kY+8uMMXYlVe8eZz4C0LC/egFeEXJkidY2FeNCeJ8oIMtgQ=="
[INFO] 2024-07-31 15:41:33.415165 | srv - run | Starting threads
[INFO] 2024-07-31 15:41:33.415484 | srv - run | Sending auth string
rv started successfully
[DEBG] 2024-07-31 15:41:33.428231 | connection | 	SENT: "noop:0"
[DEBG] 2024-07-31 15:41:33.458439 | connection | 	RECV: "data:ok"
[DEBG] 2024-07-31 15:41:33.458683 | connection | 	SENT: "notify:update:messageType:key:priority:low:strategy:all:ttln:86400000:ttl:10000:isEncrypted:true:ivNonce:BNVbd/4ox4a4ahE67xDL5w==:@soccer0:28dee05d-ce71-4d24-af38-638233a495e4.jeremyvps.sshnp@soccer99:B+ePUUNdloY7CK8BhiGGRXrdDMgRId8nuGH0HXgN330ECBWjg3pgMw0c2cQ0Gy7fKgbN/J5PRAxtT8PAAifwqntKldJgu9GamEk5ttdOFnpDAiKIms9oLbSN7A55OkaK0iGVIeheivas4ip0wA4AYcrpQawjxoh1v5uzg9tyerXsEfPGzbXS36TbPx+/TDEWB1P0/pDMU3JLpRdNKLBiODsbSsrwyCvRJsXx3mpMNQL8AbWCABrAohosGYOREkm0g8qJg0MXSC80K10oR/h4GYQ2D6Gm2Y5ZOV4hV4x6suoX9Oza20ZF6QTctvSA+srCMVh/wp64g2GbBDlHLocaOQ27jGeeZyec815ENZcurGobXOWtmItSBBkK5PExzK95YaTFsPjJwYfRfmyx8BWMxOaqNoX5QSpF3rwTlzZmrxJo49/KJRb75OcvG9Goj5Jm3J/DA8fm/rTZpbUeLX6pevVqkDO/z8hQHoc65WykknBGqxUPZrtqkKqGJuMiuigWXg0FB4vFsUqVqXJ5hkkd8NueUwilXkzk0xtKWZEQ1HBoOgz2aOpwnlZgq1jltq746loJ11vdGhT7wJJO2s4skgL5I9aejBjxKrbXHbrErnJdHjWFP7s2YafL9WDxIjdybqRLuY7U3G5QqizMrRGPvVakTvUSUwxTCpqGmRch8URLXZV5Ty9gW3acVKT0TGu8+Aqls8lCu5vs35pszGN0tBGP/3SpGFcnfZnvguNef6rLEW1iW/DyWVHNTcIgAGryoH+LZrkdq72hwrKvLtYev0cmKQf8OxDZoMMIJbl6hr9jyjeDI4CWY6VtcpmiSCbSEgE9q9Nm20s7/u0ILjcP8M1Q8O2ferFUHLVuCVAdx+ou25kUoAIe2b+2tYYTQ+9ClgTReKXhjFFfzMFDY0vJfiKoxhgzAlrlNdTGqYjCj1zpQP89GBY8ps0sumFoAITAiHLYIhazkD8MRLgJCyCEZCrs/1AV36zY4V68CkHw1G6DQbZfAZPjiAONbbc5Yb9TIglqPrAz4EvBO62NTmtk+qtq1Iw7RR/rtofys+rmJWtylrb77X0htSNA/TQAqvpRDRRFKQcrE8lNkBnfbQvaEVQdgg3uC3xdLf40EdL3T91mEYsAQKI9r2zM9/LM6FoAUB1zn8KWCBQ1uyhb3bBe/zfpPPIrw3RI4na3ca3DmmTRbrns7gz4eRpi8/Y7WLmYvkVNb0Ij6dkp2/AcgERhH1RyhhOMCOBTULl2gcKTw88afkBWagwLoXxQTOds2bMztv1UR8qcc4m4SupMJHSxNpz1gIMTek9FJ7Bw/UpGEn2SniyT8L551eqkmnVUHKblvYeVJCiDXwRbiOfFOzUlj/UY78AXEQAQ8dbk3TlP81N+RLccoZ7to8AnaeK8fmIJEEDtXw72+OHgACuIXHl079IqPoeOWce5grMz8BFMsClAQgE5GehgyFgswJaF1utWgj2Ax+/4vYEPE8dmMcmajrmfO9HLOmMIqSQq/wr07DcYLAE+K4c0M649Ulxmw8QYCrGUOsbjN9jg9v8EbQlkoa6ZBZAs8l4F6jLX8MwLNdZ1ZR0XJ+BhEmbHb3tvb3Ty6dZ1qhLhOMk47SvUV8msUdN7O39MAKWHm7MTt/j9tEty2HgqtQzpw4a75pqddd9b"
[DEBG] 2024-07-31 15:41:33.489841 | connection | 	RECV: "data:a21d82b1-b9d4-49f7-a2c9-9f5c4f2c70e5"
[DEBG] 2024-07-31 15:41:33.489888 | SSH_REQUEST | Released the atclient lock
[DEBG] 2024-07-31 15:41:33.489963 | sshnpd | Waiting for next monitor thread message
[INFO] 2024-07-31 15:41:35.649518 | sshnpd | Exited main loop
[DEBG] 2024-07-31 15:41:36.493061 | atclient_monitor | Read nothing from the monitor connection: -26624
[DEBG] 2024-07-31 15:41:36.493112 | sshnpd | Received message of type: 4
[DEBG] 2024-07-31 15:41:36.493190 | connection | 	SENT: "noop:0"
[DEBG] 2024-07-31 15:41:36.523999 | connection | 	RECV: "data:ok"
[DEBG] 2024-07-31 15:41:36.524051 | sshnpd | Waiting for next monitor thread message
[DEBG] 2024-07-31 15:41:38.536920 | atclient_monitor | 	RECV: "{"id":"-1","from":"@soccer99","to":"@soccer99","key":"statsNotification.@soccer99","value":"914","operation":"update","epochMillis":1722440498466,"messageType":"MessageType.key","isEncrypted":false,"metadata":null}"


NIFI-10674 Block evaluateELString from reading Sensitive Parameters

Summary
NIFI-10674 Blocks the evaluateELString() function from accessing Sensitive Parameter Values.
Changes include new unit tests that run evaluateELString() with and without Sensitive Parameter references to illustrate intended behavior.
Additional changes include cleaning up several unused and unnecessary expressions in test classes.
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[X] Apache NiFi Jira issue created

Pull Request Tracking

[X] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[X] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[X] Pull Request based on current revision of the main branch
[X] Pull Request refers to a feature branch with one commit containing changes

Verification
Please indicate the verification steps performed prior to pull request creation.
Build

[ ] Build completed using mvn clean install -P contrib-check

[ ] JDK 8
[ ] JDK 11
[ ] JDK 17

Licensing

[ ] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[ ] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[ ] Documentation formatting appears as expected in rendered files

@exceptionfactory curious where this actually rears its ugly head in live systems.

That's a great question @MikeThomsen. I would be surprised if this scenario occurs in deployed systems, given the required interpolation of Parameter References is strings subsequently evaluated through evaluateELString(). The evaluateELString() function is in a unique category, so these changes are more to align the implementation with expected uses.

Thanks @exceptionfactory. I think this does prevent exactly what the Jira describes, and this is good to address. But I don't think it goes far enough, actually. This function actually has the ability to sidestep authorization to the Parameter Context itself. When a user sets a processor's properties, if any property references a parameter, we have an authorization check that the user making the change has read permissions to the parameter context. But consider if a user wanted to sidestep it using a value of:
${literal('#'):append('{'):append('myParameter'):append('}'):evaluateELString()}

Now, the framework has no way to detect that hey, this is actually referencing a parameter. So it doesn't do any validation checks. We need to completely disable this function from accessing any parameters at all.

Thanks for the feedback @markap14!
Good point about indirect parameter references, I agree that blocking all Parameter access from evaluateELString() provides the best solution.
I renamed the delegating EvaluationContext implementation to ParametersDisabledEvaluationContext and updated the unit tests for non-sensitive parameters.

Thanks @exceptionfactory. Changes look good, unit tests are helpful, all completed successfully. +1 will merge to main.


Sema: Relax witness availability check

We were checking that the witness is at least as available as
the intersection of the protocol and the conforming type.
In the case where the conformance is defined in an extension,
this should actually be the intersection of the protocol and
the availability of the extension.
Fixes rdar://problem/74114880.

@swift-ci Please smoke test


rare content

Make some content text more rare by applying a skewed random number distribution to the array element selection.  Start with "std::uniform_real_distribution" from inside , and square the number to create a float that is skewed small. Then multiple that by the length of the array and convert to integer.  The first element will be about 7 times more likely than the last.

This would make a nice helper function.  I would also like it if it took a defaulted parameter for the power of the skew.  Don't forget to put this default in the header, not the function definition.


increase aks subnet size and node count

seeing 3 tests failing from LZ failing to create. seeing issues running tests locally (probably I need to configure local postgres in some way which I'm not doing/finding in the docs rn), so will come back to this tomorrow


OHRI-274 Form Render UX Improvements

JSON Input:

Final Schema:

@pirupius how does the Final schema look like now?

@samuelmale it's the second screenshot attached to the PR description

@pirupius how does the Final schema look like now?


Short class naming inside package

I propose mandatory full name of class (except %Library package)
Set obj = do ##class(Sample.Person).%New(initexpresion)

instead of
Set obj = do ##class(Person).%New(initexpresion)

Agreed that fully expanded class-names should be used. Though in general I'd prefer we to fully qualify even %Library classes.

I've changed my ind and agree on short name for %-classes (because in majority of my code I did not write it fully-quialified till the moment :) )
I'll put this to optional part though, because I don't want to be so much restrictive.


58 export file not found

Summary
This PR changes several things:

there was used an undocumented parameter --csvFile which is removed by this PR
all logs are now sent to stdout and a log file.
all unnecessary Promise.done() are now removed

Fixes #58

Coverage increased (+0.01%) to 94.695% when pulling a4e22a7b2cea20a5e4c6f46a236113096c762c90 on 58-export-file-not-found into 598c7736d6d81d834fe908fe844b123e50e3dc5a on master.

Coverage increased (+0.01%) to 94.695% when pulling a4e22a7b2cea20a5e4c6f46a236113096c762c90 on 58-export-file-not-found into 598c7736d6d81d834fe908fe844b123e50e3dc5a on master.

Because this part of the code should send all logs to stdout + log file - https://github.com/sphereio/sphere-order-export/pull/59/files#diff-aadbce70aafd9c24a90394c4146d53c0R41

Coverage increased (+0.03%) to 94.716% when pulling a2d8774b0e4a116840c23c3ba19b30d51d3da53d on 58-export-file-not-found into 598c7736d6d81d834fe908fe844b123e50e3dc5a on master.

Coverage increased (+0.03%) to 94.716% when pulling a2d8774b0e4a116840c23c3ba19b30d51d3da53d on 58-export-file-not-found into 598c7736d6d81d834fe908fe844b123e50e3dc5a on master.

Coverage decreased (-0.1%) to 94.542% when pulling fd19741c0c3c11f5f3646bc2dd0ebc6b45d251ef on 58-export-file-not-found into 598c7736d6d81d834fe908fe844b123e50e3dc5a on master.

Coverage decreased (-0.1%) to 94.542% when pulling fd19741c0c3c11f5f3646bc2dd0ebc6b45d251ef on 58-export-file-not-found into 598c7736d6d81d834fe908fe844b123e50e3dc5a on master.

Coverage decreased (-0.1%) to 94.542% when pulling 8823c84c9d63839233f663427440d79f10f7454b on 58-export-file-not-found into 598c7736d6d81d834fe908fe844b123e50e3dc5a on master.

thx


[BUG] oneapi/ccl.hpp: No such file or directory.

Describe the bug
The builds on conda-forge have been failing since deepspeed=0.14.1 for CUDA 11.8 and 12.0 with an error like fatal error: oneapi/ccl.hpp: No such file or directory. Originally reported at https://github.com/conda-forge/deepspeed-feedstock/pull/56#issuecomment-2062611899.
To Reproduce
Steps to reproduce the behavior:

Go to https://github.com/conda-forge/deepspeed-feedstock/pull/57 and clone the branch
Run python build_locally.py locally, select the option with CUDA 11.8 and Python 3.9
See error below

Expected behavior
A clear and concise description of what you expected to happen.
CUDA builds work as expected.
ds_report output
Please run ds_report to give us details about your setup.
Note, this isn't the exact report for the conda-forge CI device, I copied this from the CPU build logs
--------------------------------------------------
DeepSpeed C++/CUDA extension op report
--------------------------------------------------
NOTE: Ops not installed will be just-in-time (JIT) compiled at
      runtime if needed. Op compatibility means that your system
      meet the required dependencies to JIT install the op.
--------------------------------------------------
JIT compiled ops requires ninja
ninja .................. [FAIL]
--------------------------------------------------
op name ................ installed .. compatible
--------------------------------------------------
deepspeed_not_implemented  [NO] ....... [OKAY]
deepspeed_ccl_comm ..... [NO] ....... [OKAY]
deepspeed_shm_comm ..... [NO] ....... [OKAY]
cpu_adam ............... [NO] ....... [OKAY]
fused_adam ............. [NO] ....... [OKAY]
--------------------------------------------------
DeepSpeed general environment info:
torch install path ............... ['$PREFIX/lib/python3.9/site-packages/torch']
torch version .................... 2.3.0.post101
deepspeed install path ........... ['$PREFIX/lib/python3.9/site-packages/deepspeed']
deepspeed info ................... 0.14.3, f492cfc, HEAD
deepspeed wheel compiled w. ...... torch 0.0
shared memory (/dev/shm) size .... 64.00 MB

Screenshots
Truncated traceback from https://dev.azure.com/conda-forge/feedstock-builds/_build/results?buildId=953875&view=logs&j=bb1c2637-64c6-57bd-9ea6-93823b2df951&t=350df31b-3291-5209-0bb7-031395f0baa1&l=3486:
2024-06-12T22:49:04.3043574Z   building 'deepspeed.ops.comm.deepspeed_ccl_comm_op' extension
2024-06-12T22:49:04.3043994Z   creating build/temp.linux-x86_64-cpython-39
2024-06-12T22:49:04.3053293Z   creating build/temp.linux-x86_64-cpython-39/csrc
2024-06-12T22:49:04.3054113Z   creating build/temp.linux-x86_64-cpython-39/csrc/cpu
2024-06-12T22:49:04.3054729Z   creating build/temp.linux-x86_64-cpython-39/csrc/cpu/comm
2024-06-12T22:49:04.3071806Z   /home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_build_env/bin/x86_64-conda-linux-gnu-cc -Wno-unused-result -Wsign-compare -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/include -fPIC -O2 -isystem /home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/include -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/include -fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/work=/usr/local/src/conda/deepspeed-0.14.3 -fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p=/usr/local/src/conda-prefix -isystem /usr/local/cuda/include -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/include -isystem /usr/local/cuda/include -fPIC -I/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/work/csrc/cpu/includes -I/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/lib/python3.9/site-packages/torch/include -I/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/lib/python3.9/site-packages/torch/include/torch/csrc/api/include -I/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/lib/python3.9/site-packages/torch/include/TH -I/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/lib/python3.9/site-packages/torch/include/THC -I/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/include/python3.9 -c csrc/cpu/comm/ccl.cpp -o build/temp.linux-x86_64-cpython-39/csrc/cpu/comm/ccl.o -O2 -fopenmp -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_gcc\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1016\" -DTORCH_EXTENSION_NAME=deepspeed_ccl_comm_op -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17
2024-06-12T22:49:08.2062484Z   csrc/cpu/comm/ccl.cpp:8:10: fatal error: oneapi/ccl.hpp: No such file or directory
2024-06-12T22:49:08.2067800Z       8 | #include <oneapi/ccl.hpp>
2024-06-12T22:49:08.2068222Z         |          ^~~~~~~~~~~~~~~~
2024-06-12T22:49:08.2068507Z   compilation terminated.
2024-06-12T22:49:08.2182741Z   error: command '/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_build_env/bin/x86_64-conda-linux-gnu-cc' failed with exit code 1
2024-06-12T22:49:08.6174937Z   error: subprocess-exited-with-error
2024-06-12T22:49:08.6176666Z
2024-06-12T22:49:08.6188012Z   × python setup.py bdist_wheel did not run successfully.
2024-06-12T22:49:08.6227487Z   │ exit code: 1
2024-06-12T22:49:08.6240717Z   ╰─> See above for output.
2024-06-12T22:49:08.6252920Z
2024-06-12T22:49:08.6264017Z   note: This error originates from a subprocess, and is likely not a problem with pip.
2024-06-12T22:49:08.6271330Z   full command: /home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/bin/python -u -c '
2024-06-12T22:49:08.6272043Z   exec(compile('"'"''"'"''"'"'
2024-06-12T22:49:08.6277838Z   # This is <pip-setuptools-caller> -- a caller that pip uses to run setup.py
2024-06-12T22:49:08.6283726Z   #
2024-06-12T22:49:08.6284428Z   # - It imports setuptools before invoking setup.py, to enable projects that directly
2024-06-12T22:49:08.6289287Z   #   import from `distutils.core` to work with newer packaging standards.
2024-06-12T22:49:08.6289949Z   # - It provides a clear error message when setuptools is not installed.
2024-06-12T22:49:08.6295383Z   # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so
2024-06-12T22:49:08.6295837Z   #   setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning:
2024-06-12T22:49:08.6301077Z   #     manifest_maker: standard file '"'"'-c'"'"' not found".
2024-06-12T22:49:08.6307069Z   # - It generates a shim setup.py, for handling setup.cfg-only projects.
2024-06-12T22:49:08.6307810Z   import os, sys, tokenize
2024-06-12T22:49:08.6314125Z
2024-06-12T22:49:08.6314907Z   try:
2024-06-12T22:49:08.6320956Z       import setuptools
2024-06-12T22:49:08.6321316Z   except ImportError as error:
2024-06-12T22:49:08.6325049Z       print(
2024-06-12T22:49:08.6326023Z           "ERROR: Can not execute `setup.py` since setuptools is not available in "
2024-06-12T22:49:08.6335095Z           "the build environment.",
2024-06-12T22:49:08.6335348Z           file=sys.stderr,
2024-06-12T22:49:08.6338543Z       )
2024-06-12T22:49:08.6338832Z       sys.exit(1)
2024-06-12T22:49:08.6339045Z
2024-06-12T22:49:08.6339554Z   __file__ = %r
2024-06-12T22:49:08.6340070Z   sys.argv[0] = __file__
2024-06-12T22:49:08.6340336Z
2024-06-12T22:49:08.6340562Z   if os.path.exists(__file__):
2024-06-12T22:49:08.6340835Z       filename = __file__
2024-06-12T22:49:08.6341059Z       with tokenize.open(__file__) as f:
2024-06-12T22:49:08.6341411Z           setup_py_code = f.read()
2024-06-12T22:49:08.6341621Z   else:
2024-06-12T22:49:08.6341993Z       filename = "<auto-generated setuptools caller>"
2024-06-12T22:49:08.6342280Z       setup_py_code = "from setuptools import setup; setup()"
2024-06-12T22:49:08.6342576Z
2024-06-12T22:49:08.6342895Z   exec(compile(setup_py_code, filename, "exec"))
2024-06-12T22:49:08.6343569Z   '"'"''"'"''"'"' % ('"'"'/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/work/setup.py'"'"',), "<pip-setuptools-caller>", "exec"))' bdist_wheel -d /tmp/pip-wheel-v4pibtb1
2024-06-12T22:49:08.6344021Z   cwd: /home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/work/
2024-06-12T22:49:08.6344416Z   Building wheel for deepspeed (setup.py): finished with status 'error'
2024-06-12T22:49:08.6348857Z   ERROR: Failed building wheel for deepspeed
2024-06-12T22:49:08.6349126Z   Running setup.py clean for deepspeed
2024-06-12T22:49:08.6349635Z   Running command python setup.py clean
2024-06-12T22:49:10.9424015Z   No CUDA runtime is found, using CUDA_HOME='/usr/local/cuda'
2024-06-12T22:49:10.9498275Z   [WARNING] Torch did not find cuda available, if cross-compiling or running with cpu only you can ignore this message. Adding compute capability for Pascal, Volta, and Turing (compute capabilities 6.0, 6.1, 6.2)
2024-06-12T22:49:10.9509931Z   DS_BUILD_OPS=1
2024-06-12T22:49:17.9894660Z   Install Ops={'deepspeed_not_implemented': 1, 'deepspeed_ccl_comm': 1, 'deepspeed_shm_comm': 1, 'cpu_adam': 1, 'fused_adam': 1}
2024-06-12T22:49:18.0269777Z   version=0.14.3, git_hash=f492cfc, git_branch=HEAD
2024-06-12T22:49:18.0270870Z   install_requires=['hjson', 'ninja', 'numpy', 'nvidia-ml-py', 'packaging>=20.0', 'psutil', 'py-cpuinfo', 'pydantic', 'torch', 'tqdm']
2024-06-12T22:49:18.0278897Z   ext_modules=[<setuptools.extension.Extension('deepspeed.ops.comm.deepspeed_not_implemented_op') at 0x7ff248dbe460>, <setuptools.extension.Extension('deepspeed.ops.comm.deepspeed_ccl_comm_op') at 0x7ff248dbe4c0>, <setuptools.extension.Extension('deepspeed.ops.comm.deepspeed_shm_comm_op') at 0x7ff248dbe520>, <setuptools.extension.Extension('deepspeed.ops.adam.cpu_adam_op') at 0x7ff16dd51b80>, <setuptools.extension.Extension('deepspeed.ops.adam.fused_adam_op') at 0x7ff16dd51d90>]
2024-06-12T22:49:18.0651351Z   running clean
2024-06-12T22:49:18.0714575Z   removing 'build/temp.linux-x86_64-cpython-39' (and everything under it)
2024-06-12T22:49:18.0715596Z   removing 'build/lib.linux-x86_64-cpython-39' (and everything under it)
2024-06-12T22:49:18.1133919Z   'build/bdist.linux-x86_64' does not exist -- can't clean it
2024-06-12T22:49:18.1143315Z   'build/scripts-3.9' does not exist -- can't clean it
2024-06-12T22:49:18.1151899Z   removing 'build'
2024-06-12T22:49:18.1171105Z   deepspeed build time = 0.08735942840576172 secs
2024-06-12T22:49:18.5956605Z Failed to build deepspeed
2024-06-12T22:49:18.5973299Z ERROR: Could not build wheels for deepspeed, which is required to install pyproject.toml-based projects
2024-06-12T22:49:18.5973660Z Exception information:
2024-06-12T22:49:18.5986009Z Traceback (most recent call last):
2024-06-12T22:49:18.5993394Z   File "$PREFIX/lib/python3.9/site-packages/pip/_internal/cli/base_command.py", line 180, in exc_logging_wrapper
2024-06-12T22:49:18.5993851Z     status = run_func(*args)
2024-06-12T22:49:18.5994316Z   File "$PREFIX/lib/python3.9/site-packages/pip/_internal/cli/req_command.py", line 245, in wrapper
2024-06-12T22:49:18.5995399Z     return func(self, options, args)
2024-06-12T22:49:18.5999462Z   File "$PREFIX/lib/python3.9/site-packages/pip/_internal/commands/install.py", line 429, in run
2024-06-12T22:49:18.5999708Z     raise InstallationError(
2024-06-12T22:49:18.6006202Z pip._internal.exceptions.InstallationError: Could not build wheels for deepspeed, which is required to install pyproject.toml-based projects
2024-06-12T22:49:18.6010801Z Removed build tracker: '/tmp/pip-build-tracker-gvbib0oo'
2024-06-12T22:49:20.4656669Z Traceback (most recent call last):
2024-06-12T22:49:20.4664375Z   File "/opt/conda/bin/conda-build", line 11, in <module>
2024-06-12T22:49:20.4669893Z     sys.exit(execute())
2024-06-12T22:49:20.4670437Z   File "/opt/conda/lib/python3.10/site-packages/conda_build/cli/main_build.py", line 590, in execute
2024-06-12T22:49:20.4677725Z     api.build(
2024-06-12T22:49:20.4678886Z   File "/opt/conda/lib/python3.10/site-packages/conda_build/api.py", line 250, in build
2024-06-12T22:49:20.4685860Z     return build_tree(
2024-06-12T22:49:20.4691479Z   File "/opt/conda/lib/python3.10/site-packages/conda_build/build.py", line 3638, in build_tree
2024-06-12T22:49:20.4708481Z     packages_from_this = build(
2024-06-12T22:49:20.4713969Z   File "/opt/conda/lib/python3.10/site-packages/conda_build/build.py", line 2506, in build
2024-06-12T22:49:20.4714313Z     utils.check_call_env(
2024-06-12T22:49:20.4724506Z   File "/opt/conda/lib/python3.10/site-packages/conda_build/utils.py", line 405, in check_call_env
2024-06-12T22:49:20.4729616Z     return _func_defaulting_env_to_os_environ("call", *popenargs, **kwargs)
2024-06-12T22:49:20.4730205Z   File "/opt/conda/lib/python3.10/site-packages/conda_build/utils.py", line 381, in _func_defaulting_env_to_os_environ
2024-06-12T22:49:20.4735612Z     raise subprocess.CalledProcessError(proc.returncode, _args)
2024-06-12T22:49:20.4736400Z subprocess.CalledProcessError: Command '['/bin/bash', '-o', 'errexit', '/home/conda/feedstock_root/build_artifacts/deepspeed_1718232254780/work/conda_build.sh']' returned non-zero exit status 1.
2024-06-12T22:49:30.4784588Z
2024-06-12T22:49:30.5793301Z ##[error]Bash exited with code '1'.
2024-06-12T22:49:30.5974127Z ##[section]Finishing: Run docker build

System info (please complete the following information):

OS: Ubuntu 22.04.4
GPU count and types [e.g. two machines with x8 A100s each]: 1 NVIDIA GPU
Interconnects (if applicable) [e.g., two machines connected with 100 Gbps IB]: N/A
Python version: 3.9
Any other relevant info about your setup: None

Launcher context
Are you launching your experiment with the deepspeed launcher, MPI, or something else? No
Docker context
Are you using a specific docker image that you can share?
quay.io/condaforge/linux-anvil-cuda:11.8
Additional context
Add any other context about the problem here.
The builds have been failing in these PRs as well:

deepspeed 0.14.2 - https://github.com/conda-forge/deepspeed-feedstock/pull/57#issuecomment-2078635322
deepspeed 0.14.3 - https://github.com/conda-forge/deepspeed-feedstock/pull/62

Thanks @weiji14 for opening this to track.

Hello, any update on this issue?

Follow the instructions here to install:
conda install -c https://software.repos.intel.com/python/conda/ -c conda-forge oneccl-devel

Solved this problem.

Thanks so much @SnzFor16Min for pointing me to that oneccl-devel package (which is also on the conda-forge channel at https://anaconda.org/conda-forge/oneccl-devel/files). As a temporary workaround, I've managed to build deepspeed=0.14.4 at https://github.com/conda-forge/deepspeed-feedstock/pull/63 by adding oneccl-devel to the host dependencies.
That said, I'm still unsure if this issue should be closed, because this Intel oneAPI Toolkit should only be used for CPU builds and not CUDA (GPU) builds no? As mentioned at https://github.com/conda-forge/deepspeed-feedstock/pull/56#issuecomment-2065192465:

Do we need to get that oneapi/ccl.hpp file from somewhere? Don't quite get it since these are CUDA (GPU) builds, not CPU builds.

@weiji14 - It looks like this comes from the Intel extensions for pytorch, but we shouldn't need that, and some DeepSpeed tests should have caught that. I'll take a look soon to see if I can tell why we are hitting this here.

Will leave this up to @loadams and the deepspeed team to resolve.

I'm no expert in building DeepSpeed, but as I see DS_BUILD_OPS=1 in the traceback, perhaps @weiji14 you should check if the building script was also pre-compiling CPU ops (e.g., DS_BUILD_CPU_ADAM). This is mentioned in the DeepSpeed documentation, which might require oneAPI libraries even if it's a GPU build.

Ah yes, the DS_BUILD_OPS=1 flag is set at https://github.com/conda-forge/deepspeed-feedstock/blame/b0193a708c3f1f6864e2a85f7cbdf92ee3bf39ff/recipe/build.sh#L4-L6, and DS_BUILD_CPU_ADAM might be enabled as a result (I haven't check those build flags for almost a year). Maybe it doesn't hurt to compile with the CPU ops enabled even on CUDA?

@weiji14 - this should be fine to add to the dependencies, it should not cause any issues on the CUDA builds.
Also it should be fine to leave DS_BUILD_OPS=1, That should have all ops enabled, including the CPU ops.
I'd say lets leave this open for now, and I'll check back to confirm we have no issues reported from users, and we can also confirm the flow works with the next DeepSpeed release.

C:\ComfyUI\ComfyUI\custom_nodes\EasyAnimate>conda install -c https://software.repos.intel.com/python/conda/ -c conda-forge oneccl-devel
Channels:

https://software.repos.intel.com/python/conda
conda-forge
defaults
Platform: win-64
Collecting package metadata (repodata.json): done
Solving environment: failed

PackagesNotFoundError: The following packages are not available from current channels:
“Is this package no longer installable?”

@delock, can you help with this?

@whois206 - I had no problems running the command that you listed:
(base) test@deepspeed:~$ conda install -c https://software.repos.intel.com/python/conda/ -c conda-forge oneccl-devel
Channels:
 - https://software.repos.intel.com/python/conda
 - conda-forge
 - defaults
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/deepspeed/miniconda3

  added / updated specs:
    - oneccl-devel

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    _libgcc_mutex-0.1          |      conda_forge           3 KB  conda-forge
    _openmp_mutex-4.5          |            2_gnu          23 KB  conda-forge
    certifi-2024.8.30          |     pyhd8ed1ab_0         160 KB  conda-forge
    impi_rt-2021.14.0          |        intel_790        52.6 MB  https://software.repos.intel.com/python/conda
    intel-cmplr-lib-rt-2025.0.0|       intel_1169        38.3 MB  https://software.repos.intel.com/python/conda
    intel-cmplr-lib-ur-2025.0.0|       intel_1169         5.6 MB  https://software.repos.intel.com/python/conda
    intel-cmplr-lic-rt-2025.0.0|       intel_1169          20 KB  https://software.repos.intel.com/python/conda
    intel-sycl-rt-2025.0.0     |       intel_1169         5.1 MB  https://software.repos.intel.com/python/conda

I do notice one thing in your logs is that your platform is win64 - do you have a Windows node?  And if so, could you let us know what accelerator you are trying to use?

I read the initial description.   From ds_report it looks like @weiji14 is reporting a non-CUDA system (the ops in ds_report) indicates CPU accelerator are selected.  Is this intended?
If running on CPU is intended, this is the guide for install dependencies for Intel CPU.
https://github.com/microsoft/DeepSpeed/blob/master/docs/_tutorials/accelerator-setup-guide.md#installation-steps-for-intel-architecture-cpu
If you only run DeepSpeed on single machine, the steps above should be enough.   I'm wondering why the system wants to build deepspeed_ccl_comm with oneCCL, this is usually optional.  And by default, DeepSpeed only attempts to build deepspeed_ccl_comm when oneccl-binding-pt is installed.
For @whois206 's question, I need to check whether there are oneccl-devel package for Windows.  Will answer later.

@whois206 oneccl-devel package does not have Windows support.  I checked oneCCL product page https://www.intel.com/content/www/us/en/developer/tools/oneapi/oneccl-download.html, there seems no Windows system download package.


Rancher-NFS: Protocol not supported

Rancher Versions:
Server: CentOS 7.3.1611 (3.10.0-514.el7.x86_64)
healthcheck: 0.2.3
ipsec: holder/0.9.4
network-services: 0.8.11 (metadata) / 0.5.3 (network-manager)
scheduler: 0.7.5
kubernetes (if applicable):
Docker Version:
Docker version 17.03.0-ce, build 3a232c8
OS and where are the hosts located? (cloud, bare metal, etc):
Bare metal
Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)
Single node
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Cattle
Steps to Reproduce:
Install NFS server
$ yum -y install nfs-utils nfs4-acl-tools

$ systemctl enable nfs-server.service
$ systemctl start nfs-server.service

$ mkdir -p /volumes/hdd/nfs-exports

$ vi /etc/exports

/volumes/hdd/nfs-exports *(fsid=0,rw,async,no_root_squash,no_subtree_check)

$ exportfs -a

In Rancher
Go to Catalog -> Rancher NFS
Provide NFS server (xxx.xxx.xxx.xxx) and Mount directory (/volumes/hdd/nfs-exports).
Launch!

Create a Docker container and mount a volume using rancher-nfs driver

Results:
VolumeDriver.Create: Failed mount -o ,nfsvers=4 xxx.xxx.xxx.xxx:/volumes/hdd/nfs-exports /tmp/659w2: mount.nfs: Protocol not supported
Isn't can't be reproduced when mounting on the host (CentOS 7) so it seems a problem in the rancher-nfs container.

I've resolved my issue. I changed /volumes/hdd/nfs-exports to /volumes/hdd/nfs in the /etc/exports and changed the directory hierarchy to /volumes/hdd/nfs/exports. Then I changed the mount directory of rancher-nfs from /volumes/hdd/nfs-exports to /exports and it was working as expected!


Appengine plugins: Migrate GCR image to Artifact Registry

Soon Container Registry is deprecated.
As I understand changes for building and deploying gcloud need to use Artifact Registry repository path for the image, but I can't find a way to change this in the config.
Is any way to use Artifact Registry with this plugin? Or plans to support Artifact Registry?

Thank you for report. We'll work on this. As per https://cloud.google.com/container-registry/docs/deprecations/container-registry-deprecation, GCP projects that use Container Registry stops working March 2025 (next year).

Please refer to b/326385335 for the fix.

Can you please explain what is b/326385335?
Any link?
Thanks


SCM: too many "Publish Changes" buttons in multi root workspace

Opening a multi root workspace from folders that are not published, I find the look is pretty overwhelming now:

//cc @lszomoru @misolori

Even the single repo case is soo much more noisy now. There is the bold "vscode" title with a bunch of command and opposed to that a ton of whitespace above that

after
before

@jrieken I think that's caused by the change to the default for the scm.alwaysShowRepositories setting.

Thanks @gjsjohnmurray !

@bpasero did you consider opting out of the new button with "git.showUnpublishedCommitsButton": "never" ?

I know there is a setting but this is the default experience I am worried about for all users.

default experience I am worried about for all users.

Same goes for the default of scm.alwaysShowRepositories - we pride ourself to have minimal UI, little borders/chrome etc and this seems like an unneeded complication of things

Same goes for the default of scm.alwaysShowRepositories

Fair point. OTOH I recall at least one issue raised by someone who hadn't spotted the status bar panel and couldn't work out how to switch branch.
Re the new action button, maybe hide it when multiple repos are being displayed. Or give the user an easy way to turn it off on the spot.

There also seems to be glitch with unicode characters

Just so it's clear, this issue is about the "publish changes" button and #134015 is about the default experience for the SCM view

Instead of the big blue action buttons, could the git extension use the prompt text of the input box to guide the user? The guidance is mostly useful at a point where there are no staged changes, so the user doesn't have any reason to type text into the input box.
For example, instead of:

we could have:

(I mocked this up using developer tools and didn't find a way to put the actual cloud-upload codicon into the prompt)

Instead of the big blue action buttons, could the git extension use the prompt text of the input box to guide the user?

For bonus points, make the prompt text sensitive to whether or not there is an upload/sync button above. That way we could revert the controversial recent change that has made scm.alwaysShowRepositories true by default, and instead rely on the prompt text to draw a new user's attention to the status bar panel contributed by the built-in git extension.

Another option I hacked out of CSS just now:

Basically just taking the existing status bar text and making it close to the SCM input (it always feels weird to do my commit stuff in one area of the screen then need to go to a totally different area to sync/publish/whatever)


[CAT-660] Update integration tests

This resolves a good portion of the integration test issues. Will follow up in ticket with remaining failing tests.

lgtm. Some suggestions for the next PR: I would consider creating an IndicoTestBase class that holds the setup code so you can inherit from it and not duplicate the setup in each test. Also, I would suggest renaming IndicoConfigs class to IndicoTestConfigs


Ariving /play/forest doesn't grant moveXY() for Peasant Protection

In the level, you are required to stay close to the peasant, but there is no way to move next to it!

Just in case, the problem is that the boots are not adequate =)

I've made it so that it requires the proper boots equipped to do this level.


OSL client dont work

I need to ask, about this overlay.
Overlay works after vanguard enters to LOL?
I tried to install OSL overlay, but OSL client didn't want to start.
I tried to start, when i was observer

Hi
Here's the link to the fix : Fix OSL-Client

Thank you, that resolved my problem, but now i have problem with liveEvents data. Do you have idea how can i resolve this one?

This is normal, live event API are removed by riot link
I work on new version of application but it takes time ;)


use random ports in tests

already in a commit waiting for merge: https://github.com/maidsafe/quic-p2p/pull/14/commits/86188ac073011db65a4ae42a1b392a3b7ebd51d7


[Docs] fix pattern rowspan

Notes for Reviewers
This PR fixes #
Fix a simple error in docs caused by rowspan
https://docs.meshery.io/reference/mesheryctl

Signed commits

[ ] Yes, I signed my commits.

🚀 Preview for commit 29f5cdfddd7c70a77fc0a5308479e0183ee7951b at: https://66a8c5b18dcdc7398471e6dd--meshery-docs-preview.netlify.app

@dusdjhyeon let's discuss this PR during the Meshery dev meeting call, if you would. Please add it as an agenda item to the meeting minutes.


Resolves an issue where Pixeltable fails to resolve function references in metadata

Resolves an issue where Pixeltable fails to resolve function references in metadata.
If a table contains a computed column with a udf, loading metadata will throw an exception unless either:

the udf is in pixeltable.functions, or
the udf is fully imported in init.py through every ancestor module.

This change is


Use custom Jitsi server in application

Hello,
I am using custom Matrix server and want to use custom Jitsi server.Like "https://scalar.vector.im" sever is used in it.
I want to change the following line with my custom URL but not able to do.
String url = "https://scalar.vector.im/api/widgets/jitsi.html?confId=" + confId + "&isAudioConf=" + (withVideo ? "false" : "true") + "&displayName=$matrix_display_name&avatarUrl=$matrix_avatar_url&email=$matrix_user_id";
Is it possible?
Is any other installation required without Jitsi for this change?
which step should I follow to achieve this function?
Thanks in advance..:)

@webcluesdev
We hard-coded the value because it was our only jitsi server.
You could make your own fork.

Thank you. I found the solution.

@webcluesdev
can you share the research + solution?.
we are up to have our own Jitisi meet server
Ivan

@webcluesdev Can you share your solution?

@webcluesdev Can you share your solution? And how to you set up your own Jitsi server？


minor wording fix, updated example

Just fixed some wording issues and updated the example to use the promise based syntax of WebdriverIO

Thanks!


Add Zipkin integration on STTP level

Brave libraries allow for integration with selected http clients https://github.com/openzipkin/brave/tree/master/instrumentation . Backends like asynchttpclient or akka are missing. Idea is to implement integration on STTP level: https://github.com/openzipkin/brave/blob/master/instrumentation/http/README.md .

Done in 1.1.6


fix(cpp) fix xor_eq keyword highlighting

The xor_eq keyword is not highlighted starting from hljs 11.0.0. It looks
like it's just a typo in the keyword name.
Version 11.0.0 (jsfiddle):

Version 10.7.1 (jsfiddle):

Changes

Removed extra , from xor_eq keyword.

Checklist

[x] Added markup tests, or they don't apply here because...
[x] Updated the changelog at CHANGES.md

@deniskovalchuk Thanks so much!


go-zero with gray publish

i want use go-zero as a micro-service framework， does it has Full-link gray publish examples

You can achieve this by using service discovery or k8s multiple deployments with same service.


[BUG] Compiling AD Plugin failing since several packages are missing

Describe the bug
Compiling the Opensearch AD plugin fails on several missing packages errors.
The main packages that are getting a "does not exist" error after running ./gradlew :build on the AD plugin are org.apache.commons.lang3.*. This results in error: cannot find symbol for code that uses the imported packages. When further inspecting the code on the IDE. Different imports of packages such as org.opensearch.test.OpenSearchIntegTestCase, org.opensearch.common.unit.TimeValue,  org.opensearch.common.xcontent.NamedXContentRegistry, org.opensearch.common.xcontent.XContentParser
opensearch.jobscheduler.spi.JobSchedulerExtension can't be resolved, however this isn't shown when AD build workflow fails.
To Reproduce
Steps to reproduce the behavior:

Clone the AD plugin repo from main
run ./gradlew :build
See compile error

or re-run this workflow: here
Expected behavior
AD plugin should be compiled and built
Screenshots
Failing workflow example: here

Host/Environment (please complete the following information):

OS: [Linux 5.4.156-94.273.amzn2int.x86_64
Opensearch 1.3.0 snapshot used

Additional context
There has been no changes to AD that seemed to cause this issue and AD CI has started to fail the past few days on some packages that should be imported from opensearch.

@amitgalitz thanks for reporting this. Could you also add details on the version of OpenSearch you are seeing problems with?
I assume 1.2.* is fine?

@amitgalitz thanks for reporting this. Could you also add details on the version of OpenSearch you are seeing problems with? I assume 1.2.* is fine?

The workflow we have right now actually uses 1.3.0

@amitgalitz could you try including org.apache.commons:commons-lang3:3.9 explicitly in AD build.gradle dependencies?
Looks like only a couple of plugins have been using it in OpenSearch but it's not imported across the project.
The next question which pops on to my mind is, how did this work for OpenSearch releases < 1.3.0.
My best guess is that it being imported by a transitive dependency.
./plugins/repository-hdfs/build.gradle:  api 'org.apache.commons:commons-lang3:3.7'
./plugins/ingest-attachment/build.gradle:  api 'org.apache.commons:commons-lang3:3.9'
./plugins/repository-azure/build.gradle:  api 'org.apache.commons:commons-lang3:3.4'

Checked AD 1.2.4, the dependency org.apache.commons:commons-lang3 is introduced by opensearch-job-scheduler-spi. But seems it's removed from opensearch-job-scheduler-spi-1.3.0.

Checked AD 1.2.4, the dependency org.apache.commons:commons-lang3 is introduced by opensearch-job-scheduler-spi. But seems it's removed from opensearch-job-scheduler-spi-1.3.0.

That makes sense. Thanks @ylwu-amzn !
Closing this.


Test that applications return descriptive error messages

(from this discussion: https://mastodon.social/@benpate/111161976484128397 )

Just this: there are tons of ways that an API call can fail, but most Fediverse software just returns something unhelpful, like 500 Internal Server Error.

For production software, that’s probably reasonable, but a well-written test suite should help people debug, not just tell them about the bug.

So if I have a voice, a test suite should really return errors like: “this message was not accepted because it is missing a ‘name’ field.”

Not sure what exactly we can do about this here, but let's record it anyway.
Also the follow-up in the thread:

Nomad returns delivery reports indicating the disposition of a message once it hits the server and let's normal people examine the reports for any message they send. We needed this years ago because Diaspora silently dropped 1/3 of all communications and we needed to be able to prove the issue wasn't our software's fault. The assumption was that site operators of that period were often high school kids that couldn't read or interpret log files, so this let us find federation issues without involving them.

It would be no small feat getting this kind of thing standardised and adopted in ActivityPub, but we do provide feedback of the http error code for all sites -- and if something is stuck in the queue, one can see the results of the individual delivery attempts. Nomad sites provide much more detailed answers of what happened - lack of permission, filter/blocking rule, duplicate, recipient not found, delivered, etc...

Duh.


Use getError() for Guzzle CurlException

Issue #124
The getResponse() method is not a valid method for Guzzle's
CurlException class. getError() seems to be doing the trick,
though.
Further, the getError() method doesn't have a getBody() member
function. It just returns the error.
Signed-off-by: Elliot Voris<EMAIL_ADDRESS>

@ElliotFriend this conflict with this change that I just merged, which I believe is similar #83. Can you take a look and update your pull request if it's still needed?

I just saw that, and I'll give it a check now. Thanks!

Under the same conditions (no connection to the internet), I'm seeing a brand new error:
elliot@ransford ~/Development/Pantheon/cli $ bin/terminus auth login<EMAIL_ADDRESS>Your dashboard password (input will not be shown):
Logging in as<EMAIL_ADDRESS>PHP Warning:  vsprintf(): Too few arguments in /home/elliot/Development/Pantheon/cli/php/class-terminus.php on line 204
Error:

Although, from what I can tell, both $params and $message are both set. I found out that the Terminus::error call that I'm catching is line 164 here: https://github.com/pantheon-systems/cli/blob/master/php/class-terminus-command.php#L164

I rebased from master, as the changes provided by @jbutkus were a lot better than mine. Then, Terminus::error started giving me an error.
The pull request now reflects a fix to that issue.


Support for GCM Unregister

I'd like to see support for these messages being handled by the library: http://developer.android.com/google/gcm/adv.html#unreg
Mostly the ability/option to automatically delete a GCM Client upon receipt of NotRegistered the message.

https://github.com/jleclanche/django-push-notifications/pull/158

This should be fixed in 1.3.0. We handle NotRegistered now.


Test windows

There are errors event before starting the tests:
#=== ERROR while compiling stringext.1.4.3 ====================================#
# opam-version         1.3.0~dev (98188f141dbeb429258f2b2c00f6240d0af02b84)
# os                   win32
# command              ocaml setup.ml -test
# path                 C:/cygwin/home/appveyor/.opam/4.03.0+mingw64c/build/stringext.1.4.3
# exit-code            1
# env-file             C:/cygwin/home/appveyor/.opam/4.03.0+mingw64c/build/stringext.1.4.3\stringext-296-853f15.env
# stdout-file          C:/cygwin/home/appveyor/.opam/4.03.0+mingw64c/build/stringext.1.4.3\stringext-296-853f15.out
# stderr-file          C:/cygwin/home/appveyor/.opam/4.03.0+mingw64c/build/stringext.1.4.3\stringext-296-853f15.err
### stdout ###
# ......................................
# Ran: 38 tests in: 0.00 seconds.
# OK
### stderr ###
# [...]
# File ".\setup.ml", line 1831, characters 16-35:
# Warning 3: deprecated: String.uncapitalize
# Use String.uncapitalize_ascii instead.
# File "setup.ml", line 5847, characters 11-28:
# Warning 3: deprecated: String.capitalize
# Use String.capitalize_ascii instead.
# File "setup.ml", line 5848, characters 11-30:
# Warning 3: deprecated: String.uncapitalize
# Use String.uncapitalize_ascii instead.
# Fatal error: exception Sys_error("C:\\cygwin\\home\\appveyor\\.opam\\4.03.0+mingw64c\\build\\stringext.1.4.3\\_build\\oUnit-stringext.split_trim_left == split |> trim_left-APPVYR-WIN#00.log: Invalid argument")
# W: Test 'test_stringext_qcheck' fails: Command 'C:\cygwin\home\appveyor\.opam\4.03.0+mingw64c\build\stringext.1.4.3\_build\lib_test\test_stringext_qcheck.native' terminated with error code 2
# E: Failure("Tests had a 50.00% failure rate"

This is tracked in https://github.com/rgrinberg/stringext/issues/7
And:
#=== ERROR while compiling mirage-fs-unix.1.2.1 ===============================#
# opam-version         1.3.0~dev (98188f141dbeb429258f2b2c00f6240d0af02b84)
# os                   win32
# command              make test
# path                 C:/cygwin/home/appveyor/.opam/4.03.0+mingw64c/build/mirage-fs-unix.1.2.1
# exit-code            2
# env-file             C:/cygwin/home/appveyor/.opam/4.03.0+mingw64c/build/mirage-fs-unix.1.2.1\mirage-fs-unix-296-722625.env
# stdout-file          C:/cygwin/home/appveyor/.opam/4.03.0+mingw64c/build/mirage-fs-unix.1.2.1\mirage-fs-unix-296-722625.out
# stderr-file          C:/cygwin/home/appveyor/.opam/4.03.0+mingw64c/build/mirage-fs-unix.1.2.1\mirage-fs-unix-296-722625.err
### stdout ###
# Testing FS_impl.
# [...]
[OK]                write            0   write_not_a_dir.
[OK]                write            1   write_zero_bytes.
[OK]                write            2   write_contents_correct.
[OK]                write            3   write_at_offset_within_file.
[OK]                write            4   write_at_offset_past_eof.
[ERROR]             write            5   write_overwrite_dir.
[OK]                write            6   write_at_offset_is_eof.
[OK]                write            7   write_at_offset_beyond_eof.
[OK]                write            8   write_big_file.
# The full test results are available in `_build/_tests`.
# 3 errors! in 0.078s. 36 tests run.
### stderr ###
# W: Test 'fs_unix' fails: Command 'C:\cygwin\home\appveyor\.opam\4.03.0+mingw64c\build\mirage-fs-unix.1.2.1\_build\lib_test\test_fs_unix.byte' terminated with error code 3
# E: Failure("Tests had a 100.00% failure rate")
# make: *** [Makefile:13: test] Error 1

Which is tracked by https://github.com/mirage/mirage-fs-unix/issues/22

Rebased, hopefully the tests will now run properly on Windows.

Fixed various issues with windows and ocaml-git in https://github.com/mirage/ocaml-git/pull/197 https://github.com/mirage/ocaml-git/pull/193/files and https://github.com/mirage/ocaml-git/pull/187 and now the tests pass on my windows VM. We will see if that makes Appveyor happy...

Tests on windows are green! But it now takes 25 to run, so not sure we really want this on every PR.


fix: accept invites as member is ok

Took a stab at fixing https://github.com/ssb-ngi-pointer/go-ssb-room/issues/299.

Ah, the smell of a perfect PR for something I've been procrastinating on... Thank you!
(I'm on mobile now, will check on my computer later)

:tada:


feat: add release action

Note, this will release main. Can we merge your other changes into main? Once this is done we can hopefully just trigger the workflow...

[x] Give repo access to API_TOKEN_GITHUB
[x] Restrict actions to those created by Greenroom and Github only
[x] Require approval before running GitHub actions

Maybe nuke the existing CI steps as well?


Add linux variants

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

There seems to be some missing dependencies for aarch64, better to add openscenegraph to the migrator so all the PRs are handled automatically see https://github.com/conda-forge/conda-forge-pinning-feedstock/pull/6112 .

It's good to learn that there is an automated way. Closing this PR. Thanks!


Company page, Requirement for how many contacts use app

If any company having 10 contacts, then User want to know how many contacts having App,
so please add column which show tick, refer below image for exp.

Yes good feature

available on badge of contact

i think we need to add badge  to contact in this view


Add ServiceType SERVICE_NO_CHANGE

I agree with @vbfox that adding the value to each of the 3 enum's is probably the way to go.

What it means that the SERVICE_NO_CHANGE is not part of the declared API ?

@aluferYochay It looks from your commits that you're not sure how to get the build to work. I have two suggestions:

Use the Format Document command in VS. That generally trims the whitespace and formats the code so that StyleCop is happy and should help you get the build to pass.
Use the build.ps1 script in the root of the repo to check that the build will succeed before committing and pushing. It should give you a pretty accurate idea of whether it will work without having to run appveyor.

Squash your commits and force push when you get it working so we get a reasonably clean set of commits to merge.

Thank you for your contribution, @aluferYochay

Hi
I have few errors when running the build script, different from "not part of the declared API.."
out.txt
Can you advice on how to resolve ?

Did you run build.ps1 without parameters, or did you run it with -Restore at least once?

I ran it with restore..

Hmmm... I don't know what the problem would be then. I'm preparing a commit to fix the remaining issues.

Thank you for your contribution, @aluferYochay


Microbatch Config Validation

Resolves #10709

Problem

We either don't validate configs for microbatch models or validate them during execution. We need parse-time validation to ensure that required fields are present and typed correctly:

batch_size (day, hour, month, year)
lookback (int)
event_time (str)
begin (datetime)

Additionally, any inputs to a microbatch model that have an event_time config must have that event_time config be a string.
Solution

implement parse-time  validation as part of final manifest validation since we need all ref/sources resolved to scan inputs of microbatch model.

Checklist

[x] I have read the contributing guide and understand what's expected of me.
[x] I have run this code in development, and it appears to resolve the stated issue.
[x] This PR includes tests, or tests are not required or relevant for this PR.
[x] This PR has no interface changes (e.g., macros, CLI, logs, JSON artifacts, config files, adapter interface, etc.) or this PR has already received feedback and approval from Product or DX.
[x] This PR includes type annotations for new and modified functions.

schemas PR: https://github.com/dbt-labs/schemas.getdbt.com/pull/58


Modelling Settings: subnet mask required  in IP when importing app servers

If you import app servers via csv file in the modellinge settings it is only possible if you include the suffix for the subnet mask (e.g. '<IP_ADDRESS>/32'). It should be possible to import appservers without that suffix (e.g. '<IP_ADDRESS>')

Unfortunatlely this is not reproducible on my maschine.
My test files:
appserver2 - Kopie.csv
appserver2.csv

The reason for this might be, that I forked from the main branch instead of the develop branch. We found the bug when discussing a coding test. I am currently applying for a job at cactus. So this confusion might be due to my rookie mistake, sorry.

Von: Luca Weidmann @.>
Gesendet: Dienstag, 10. Dezember 2024 10:32
An: CactuseSecurity/firewall-orchestrator @.>
Cc: Robin-Smets @.>; Author @.>
Betreff: Re: [CactuseSecurity/firewall-orchestrator] Modelling Settings: subnet mask required in IP when importing app servers (Issue #2700)
Unfortunatlely this is not reproducible on my maschine.
My test files:
appserver2 - Kopie.csvhttps://github.com/user-attachments/files/18076495/appserver2.-.Kopie.csv
appserver2.csvhttps://github.com/user-attachments/files/18076496/appserver2.csv
firefox_fvBYoTIMst.png (view on web)https://github.com/user-attachments/assets/c746d4a4-6986-48c2-a5cb-b01324d1264c
—
Reply to this email directly, view it on GitHubhttps://github.com/CactuseSecurity/firewall-orchestrator/issues/2700#issuecomment-2530999311, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BAN2ASSLJ23BE2B6QMSPKT32E2YL3AVCNFSM6AAAAABTERM6AKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMZQHE4TSMZRGE.
You are receiving this because you authored the thread.Message ID: @.***>

Hello Robin,
that would explain the issue. i'll check the main branch against my test files and will let you know if i can confirm that the problem still exists there.

The reason for this might be, that I forked from the main branch instead of the develop branch. We found the bug when discussing a coding test. I am currently applying for a job at cactus. So this confusion might be due to my rookie mistake, sorry.

I did a new install on a debian maschine with the current main branch and i can confirm the problem with still exist there. Will now close this issue as this will be solved within the next few PRs.


Proper checking of unboxing in binary trees

Our previous checking of when unboxing may occur for an operand of a binary expression was incorrect.  It both missed unboxing cases and also sometimes checked for unboxing where none would occur.

Pull Request Test Coverage Report for Build #982

0 of 0   changed or added relevant lines in 0 files are covered.
24 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.03%) to 92.751%

Files with Coverage Reduction
New Missed Lines
%

../nullaway/src/main/java/com/uber/nullaway/dataflow/AccessPath.java
3
94.74%

../nullaway/src/main/java/com/uber/nullaway/NullAway.java
21
95.52%

Totals

Change from base Build #981:
-0.03%

Covered Lines:
5054

Relevant Lines:
5449

💛  - Coveralls


Installation failed

Environment info
Operating System:
Ubuntu 16.04 lts
Package used (python/R/jvm/C++):
python
xgboost version used:
0.6
If installing from source, please provide
http://xgboost.readthedocs.io/en/latest/build.html

Please provide more details according to the issue template. At the very minimum provide the error output.


Ibex simple system cannot simulate with timing flag in Verilator

Observed Behavior

We synthesized the Ibex core using Yosys and when it is simulated with --timing flag in verilator (in .core file), then the simulation fails throwing an error "Active region did not converge".  Can you please shed some light on this and advise me how to debug this issue?
Expected Behavior

Steps to reproduce the issue

With the synthsized netlist, the Ibex simple system "Hello World" program is run with the -no-timing flag and it runs perfectly
With the synthesized netlist, the same program with -timing flag throws error "Active region did not converge"

My Environment

EDA tool and version:

Verilator version :- 5.018 and 5.026
Operating system:

Cent OS 7
Version of the Ibex source code:

So to confirm you're trying to run a gate-level simulation of Ibex within the simple system environment using Verilator?
The line referred to in the error: https://github.com/lowRISC/ibex/blob/3937e484da24a09ae97820b2defe9a85fd7cea4e/examples/simple_system/rtl/ibex_simple_system.sv#L35
Is just the top-level reset input so this doesn't tell you much (other than whatever is causing the problem is likely related to reset logic)
I'd note the simple system C++ top-level was written for older versions of Verilator and may not work correct with Verilator v5 with timing enabled, so that could be the problem. Otherwise I suspect this isn't an inherent issue in the Ibex RTL but something to do with the netlist you have or the cell library. It could be caused by a synthesis issue, a bug in the cell library or a bug in Verilator.

The line number 35 for me points to the top level module

Since I cannot debug with this method, I will try to debug the issue using a mixed multi-modal simulation of RTL and Gate level to pinpoint the issue. Please recommend other ways to debug.


prompt theme not loaded after login

Setting the theme like
prompt giddie

after login works fine and I have set it in .zpreztorc like this:
zstyle ':prezto:module:prompt' theme 'giddie'

but a new login always just shows the percent sign and not the chosen prompt theme.
Versions:

zprezto: 9539341e1 from Nov 24
zsh: 5.0.7

for any readers of this story: on Mac, the Terminal app iTerm can just be switched to report xterm-256colors in the Preferences/Profiles//Terminal tab. Works nicely!


v1.2.0 Roadmap

Roadmap for v1.2.0

Issue
Status

Add support for generating IAsyncDisposable implementations.
Planned

Future

#5

This issue would be for in the future, to migrate from github actions to the workflow normally used by the .NET Foundation member projects (when this project becomes a full member in the future)

Set up arcade versioning (and set the generator project's IsShipping to true, but set test project to NonShipping).
Maybe utilize arcade testing as well?
use common engineering directory that normally exists for .NET Foundation projects.
Migrate to Issue Forms.

Alright, I have been busy with things lately, however I will be getting to implementing the new version soon.


Need suggestions to work with motor (MongoDB async driver)

My app structure (simplified):
app/
   templates/
   __init__.py
manage.py

app/__init__.py
from japronto import Application
from motor.motor_asyncio

client = motor.motor_asyncio.AsyncIOMotorClient()
db = client.mydb

async def index(request):
    result = await db.find_one()
    print(result)
    return request.Response(text=str(result), mime_type='text/html')

def create_app():
   app = Application()
   app.router.add_route('/', index)

manage.py
from app import create_app

if __name__ == '__main__':
   app = create_app()
   app.run(debug=True)

When I ran it, I got an exception:
RuntimeError: Task <Task pending coro=<pkg() running at  .../app/__init__.py:64> cb=[Pipeline._task_done()]> got Future <Future pending cb=[_chain_future.<locals>._call_check_cancel() at /miniconda/envs/flecom/lib/python3.6/asyncio/futures.py:407]> attached to a different loop

I suspect putting client = motor.motor_asyncio.AsyncIOMotorClient() inside index would work, but that would create new connections for every request. Reusing connection would be more preferable.

Try this:
from japronto import Application
from motor.motor_asyncio

def create_app():
   app = Application()
   event_loop = asyncio.get_event_loop()
   client = motor.motor_asyncio.AsyncIOMotorClient(io_loop=event_loop)
   db = client.mydb
   async def index(request):
      result = await db.find_one()
      print(result)
      return request.Response(text=str(result), mime_type='text/html')
   app.router.add_route('/', index)

@vladz Thank you for your response. I tried and still got RuntimeError: Task ... got Future <Future pending cb=[_chain_future.<locals>._call_check_cancel() at ... attached to a different loop.

And if you change the code for this one?
import asyncio
from japronto import Application
from motor.motor_asyncio

def create_app():
   app = Application()
   event_loop = app.loop  # <<--
   client = motor.motor_asyncio.AsyncIOMotorClient(io_loop=event_loop)
   db = client.mydb
   async def index(request):
      result = await db.find_one()
      print(result)
      return request.Response(text=str(result), mime_type='text/html')
   app.router.add_route('/', index)
   app.run()

The idea is to catch a event_loop from japronto and use it in motor.

What you are doing will result in undefined behavior because Japronto is a forking server and if you set your loop up in the parent process and then fork things will go terrible wrong. There is no official API to do it at the moment.

If you really want to hack you can override: https://github.com/squeaky-pl/japronto/blob/master/src/japronto/app/init.py#L159. This function i s called from new process already, you can grab  the loop after this is configured and setup your mongodb driver there.

@squeaky-pl Thank you for comments.


Don't ignore /site/package.json

Working with this repo I realised that site/package.json is checked in but ignored for quite some time now.
And as dependencies and npm runs are triggered from there I assume this is not intended to be ignored from changes.

thanks!


User should log in with Github

[ ] Disable authentication requirements on server
[ ] Set up a Github app token
[ ] Configure Firebase for Github
[ ] Create login status widget
[ ] Auth service to manage state

Assigned to @jteplitz602 because he already has this in progress.


where Tapo hubs must be added by IP address?

There is no config.json sample to add this plugin to HB.
Can you help me?

You can use the UI to configure the plugin: see Plugin Config menu.
Bellow you can find a sample config.
{
    "devices": [
        "<IP_ADDRESS>"
    ],
    "email": "*****",
    "password": "****",
    "platform": "KasaHub"
}


handle limited pagesize in data tables

Pagesize will be limited to 1000.

Changed limit to 10000 to allow for client side filtering, except for list_addresses and list_entities (bulk endpoints).


Evidence of finding in output

Overview
Forgive me if this is already present, I can't find it documented anywhere, I am also not wildly experienced with Kubernetes so this may be obvious to others but not for the uninitiated.
At the moment Kubescape gives a neat reference for where it found the issues it is reporting, but, it would be really helpful to have direct evidence of any failures.
Problem
My use case is to provide digestable reports identifying areas of improvement, however, I am required to validate all findings with direct evidence.  This is for two reasons: to ensure that there are no false positives; and to ensure corrective action can be directly evidences by a change within the environment.  At the moment, Kubescape gives lots of very well formatted material, but, it can be difficult to identify how it came to it's conclusions.
Solution
Kubescape could have an extra flag that enabled the user to see relevant configuration / evidence / data, or even identify any locally cached data and a regex with which the user could find the relevant sections.
Alternatives
Kubescape could suggest kubectl or similar command that exposes the relevant data.  That way the user could choose to run the extra command and interrogate the data that way.
Additional context
None that I can think of.

@felix-caboff Did you consider scanning with the --verbose flag?
e.g.
kubescape scan framework all --verbose

I share the same need as @felix-caboff: in addition to the example I provided through #1714, I also have by example cases where "c-0012 Applications credentials in configuration files" is reported for deployments where only secrets are used, no hardcoded credentials, so it is complicated to confirm the issue without actual and detailed evidences! (even with the --verbose option)
The promise of Kubescape and Armo looked really promising in docs and videos but so far not really efficient in practice without real evidences.

@felix-caboff @jfallot   I can't agree any more with you. I have met a simiar problem through https://github.com/kubescape/kubescape/issues/1737. Now I think kubescape really should consider to provide evidence part in the scan result. The benefit is very obvious. It can help us to avoid false positives and also make sure the correction is right.


[Feat] There should be multiple UserPlaneIPResourceInformation fields in the structure of PFCPAssociationSetupRequest

Issue Description
May be UPF has multiple nic，represent n3 n6 and cp interface in TS 29.244， UPF response Association with multiple UserPlaneIPResourceInformation，so there should be multiple UserPlaneIPResourceInformation fields in the structure of PFCPAssociationSetupRequest
What's the version are you using
free5gc 3.0.4
Is your feature request related to a problem? Please describe.
func (dataPath *DataPath) ActivateTunnelAndPDR(smContext *SMContext)，which should select access，core，N6 interface fill in PDR and FAR
Describe the solution you'd like
The structure of PFCPAssociationSetupRequest in message.go file，like this
type PFCPAssociationSetupRequest struct {
NodeID                         *pfcpType.NodeID                         tlv:"60"
RecoveryTimeStamp              *pfcpType.RecoveryTimeStamp              tlv:"96"
UPFunctionFeatures             *pfcpType.UPFunctionFeatures             tlv:"43"
CPFunctionFeatures             *pfcpType.CPFunctionFeatures             tlv:"89"
UserPlaneIPResourceInformations []*pfcpType.UserPlaneIPResourceInformation tlv:"116"
}
Need to modify other using UserPlaneIPResourceInformation

This UserPlaneIPResourceInformation IE does not contain the type of interface (N3, N6, N9)  and it will be removed in R16, so we decided to use pre-configuration on the SMF.

got it !
R15 Association Response in TS 29.244 8.2.2, response from UPF like this:
User Plane IP Resource Interface: CP-function
    Network Instance: N4
       Source Interface: CP-functino

User Plane IP Resource Interface: Access
   Network Instance: N3
       Source Interface: Access

User Plane IP Resource Interface: SGI-LAN/N6-LAN
   Network Instance: N6
       Source Interface: SGI-LAN/N6-LAN

Network Instance can rename
R16 remove UserPlaneIPResourceInformation IE


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_617yf49mth/clone/recipe/meta.yaml:20: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_617yf49mth/clone/recipe/meta.yaml:47: missing_dev_url: The recipe is missing a dev_url
ERROR: /tmp/abs_617yf49mth/clone/recipe/meta.yaml:47: missing_documentation: The recipe is missing a doc_url or doc_source_url
WARNING: /tmp/abs_617yf49mth/clone/recipe/meta.yaml:47: missing_description: The recipe is missing a description
ERROR: /tmp/abs_617yf49mth/clone/recipe/meta.yaml:47: missing_license_family: The recipe is missing the about/license_family key.
Errors were found

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_67xi74zqv_/clone/recipe/meta.yaml:20: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_67xi74zqv_/clone/recipe/meta.yaml:47: missing_license_family: The recipe is missing the about/license_family key.
WARNING: /tmp/abs_67xi74zqv_/clone/recipe/meta.yaml:47: missing_description: The recipe is missing a description
ERROR: /tmp/abs_67xi74zqv_/clone/recipe/meta.yaml:47: missing_documentation: The recipe is missing a doc_url or doc_source_url
ERROR: /tmp/abs_67xi74zqv_/clone/recipe/meta.yaml:47: missing_dev_url: The recipe is missing a dev_url
Errors were found


ARROW-16120: [Python] ParquetDataset deprecation: change Deprecation to FutureWarnings

+ suppressing some additional warnings when running the tests

+1


Regression: when selecting a footnote in MetadataEditor an exception occurs

Seems the selectionState reducer is not robust agains custom selection types.


The use of chef bootstrap script by default

I've opened an issue as I would like to discuss if it's necessary to have chef boostrap script by default? To me this caused a bit of confusion and I've done some PRs when I realised that only ruby and gems is required.
I've noticed this was also discussed on separate issues (e.g. #71 ), but as I did not want to start asking questions / giving input on unrelated issue, I thought a separate one might be worth.
My suggestion would be to not use chef bootstrap script by default and switch to at least using assets/install.sh. I've seen that people already mentioned on #71 that they would like to drop the chef requirements and I would strongly agree with this.
Main reason why I am suggesting it is:

Salt has support on a lot of different platforms. A lot more than chef. Attaching this formula to chef directly, limits on what OS this cna be run at.

My suggestion:

Remove chef bootstrap script from defaults
Make sure out assets/install.sh script supports all the platforms we aim to support. I did a few PRs and can do a few more if we have a list of platforms we want to support before the switch.

As this software is used to enable use of Salt in Kitchen, most users don't need Chef, so by default its installation could be disabled. Eventually an option to enable it could be useful.

👍 I'd love to get rid of the chef step.

I have an idea that could be helpful and wouldn't break any backwards compatiblity:

We set the default script to assets/install.sh and make sure to maintain it.
In assets/install.sh, if that file cannot find any defined platform, it could fallback to using the chef's installer.

The link to a current chef's installed can always be documented and anyone needing this would be free to choose using it.
Question is, do we need to fallback to use the chef or not? Is there at least someone depending on chef being actually installed by this formula, that could share on why it's needed?

@ek9 this sounds good to - want to make a PR for that?

Happy to! I will sort this out later today.

A bit lat, but PR is in :)


Alpine bump to 3.8 base

Fixes #9058

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: costinm
If they are not already assigned, you can assign the PR to them by writing /assign @costinm in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Hi @JukieWalsh. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

I signed the CLA @googlebot

Added commit to Dockerfile.go_generate_dependency to minimize build layers

/assign @linsun


Woodcutting Plugin - Respawn Timer not showing for regular Trees

Type
Other
Operating System
Windows
OS Version
Windows 10
Bug description
This could just be me misremembering, but whenever I am cutting basic trees, there is no respawn timer when I have the plugin configured and enabled. The timer will show up for other trees such as Oak, but not basic trees. Maybe I'm just misremembering and there wasn't ever a timer for those, but figured I'd ask.
Screenshots or videos
No response
RuneLite version
RuneLite version: 1.8.29
Launcher version: 2.4.2
Logs
No response

Regular trees have a respawn rate of 35.4 - 58.8 seconds. Which is why they do not get a respawn count down on them as it's unknown.
All other trees have a fixed respawn rate.

ah, gotcha. I was indeed just misremembering it. thanks!


Latex Interpretation

Howdy,
plot2svg doesn't seem to recognize some LaTeX interpretation. I assume this happened because of the evolution of version 2014b.
Best,
Hasan

just wanted to let you know about the first release of fig2svg:
https://github.com/kupiqu/fig2svg
please give it a try and if the issue is still there please report


Add documentation for input/keys

There's a bunch of mouse/keyboard input things that aren't well documented and defined.
Dear self, go look through the code and make a comprehensive document of which keys cause what behaviors in all the various console modes.

This could likely be cross referenced against Microsoft/Terminal since the code's all there.


[Backend][Plugin] Flink/Beam plugin using FLinkOperator

Why would this plugin be helpful to the Flyte community
Ability to run Flink offline jobs (for backfilling, or feature creation) on Flyte.
Type of Plugin

[ ] Web Service (e.g. AWS Sagemaker, GCP DataFlow, Qubole etc...)
[x] Kubernetes Operator (e.g. TfOperator, SparkOperator, FlinkK8sOperator, etc...)
[ ] Customized Plugin using native kubernetes constructs
[ ] Other

Can you help us with the implementation?

[ ] Yes
[ ] No

Additional context
This will leverage flinkk8soperator

This is being worked on by Spotify

This is being worked on by Spotify


Arguments for app

It would be nice to be able to add arguments to an app. E.g "autoruns -e"

I will look for the possibility of doing that though some UI modifications may be needed. This will most likely come after updates to customization of the UI to avoid conflicts while updating. Currently a workaround on the current release is not possible due to it not being updated for shortcuts. However if you are building from source which has the features to support shortcuts, you can create a shortcut to the application and apply the argument manually. After that you can add that shortcut to the taskbar group. Sorry for any inconvenience!

I posted the same request in #36 because I wanted to add shortcuts for some windows features, like:

Windows Updates (command: C:\Windows\explorer.exe ms-settings:windowsupdate)
Windows Store (command: C:\Windows\explorer.exe ms-windows-store:)
Hyper-V-Manager (command: C:\WINDOWS\System32\mmc.exe C:\WINDOWS\System32\virtmgmt.msc)

My plan is to add these (and other related applications) in one group and then execute all apps within this group with one click (as suggested in #35).
I know I can create lnk files for these special applications, but it should be usable and comfortable for all users.
So please allow parameters.

My current concern is that the icon of the physical application itself won't be the one the user would want. I guess it would be a good time to also implement ( #13 ) fully but I will have to figure out a way to adapt the current system for such uses. But yes I will consider and will be looking into allowing arguments to be added. The customization of icons will most likely come later depending on how things go during development.

In <IP_ADDRESS> you allow parameters and this is working perfectly!

In <IP_ADDRESS> you allow parameters and this is working perfectly!

A @OLLI-S pointed out support for start arguments has been added in the latest release!


ensure ValidationError is itself an acceptable pydantic type

Initial Checks

[X] I have searched Google & GitHub for similar requests and couldn't find anything
[X] I have read and followed the docs and still think this feature is missing

Description
It should be possible to do something like this:

from pydantic import BaseModel, ValidationError
class Error(BaseModel):
    error: ValidationError
    success:bool = False

class Success(BaseModel):
    result: str
    success: bool = True

# So a rust type Result type or typescript Discriminated Union
Result = Success | Error

e: Result = compute()
send_result_to_client(e.json())

Affected Components

[ ] Compatibility between releases
[ ] Data validation/parsing
[X] Data serialization - .model_dump() and .model_dump_json()
[ ] JSON Schema
[ ] Dataclasses
[ ] Model Config
[ ] Field Types - adding or changing a particular data type
[ ] Function validation decorator
[ ] Generic Models
[ ] Other Model behaviour - model_construct(), pickling, private attributes, ORM mode
[ ] Plugins and integration with other tools - mypy, FastAPI, python-devtools, Hypothesis, VS Code, PyCharm, etc.

Specifically, I have had to create this model in order to include the error details in my API objects
class PydanticValidationErrorDetails(BaseModel):
    ctx: Optional[dict] = Field(
        default=None,
        title="Context",
        description="An optional object which contains values required to render the error message.",
    )
    input: dict[str, Any] = Field(
        title="Input", description="The input provided for validation."
    )
    loc: tuple[str | int] = Field(
        title="Error Location", description="The error's location as a list."
    )
    msg: str = Field(
        title="Error Message", description="A human-readable explanation of the error."
    )
    type: str = Field(
        title="Error Type", description="A computer-readable identifier of the error type."
    )
    url: str = Field(
        title="URL", description="The URL to further information about the error."
    )

For the moment, I'm handling errors in custom code, or I'd also have created a Type Adapter.