Posting a file doesn't work

Selecting POST, and posting a file to a server.
Clicking on the "Files" tab and add any file and give it a name.  Sending the request does not send the file contents as a multipart-form request, and does not send the file data.
Expected outcome
A post should be created, similar to a form post, as a multipart-form request with the file information attached.
Actual outcome
Here is how I have set up the request.

Here is what was sent (captured using Wireshark)
POST /api/import HTTP/1.1
HOST: <IP_ADDRESS>
accept: application/json
content-length: 0

The "content-type" header was not added as it says it would, and the content length is 0, and there is no file information being sent
Versions
App: <IP_ADDRESS>5-stable
Chrome: 57.0.2987.133
Platform: Windows (10)
Steps to reproduce

Select POST
Click on the Files tab and add a file
No file is sent in a post

Probably related to #981

Hi,
This is actually duplicate of the #945
Because it's a huge bug (in Chrome this time, not the app) that affects core of the application I'm still working on it.
I'm closing as a duplicate but subscribe to referenced bug for updates.


drivers: pinctrl: mec5: Microchip MEC5 HAL based pinctrl driver

Add a pinctrl driver for Microchip MEC5 HAL based chips.

@gmrull @albertofloyd
I hope this is final update for MEC5 HAL based PINCTRL driver.  The request to remove the "no change" enum item is only in this driver keeping this change MEC5 specific.


GDPR - Save push notification settings

@expose(('api', )) does not have a GenericRESTRequestHandler.getCurrentRequest() line @rest
So add a way we can get the original request of that call

can be tested on user_export branch for rogerthat-backend and gdpr for android
Then goto settings and check or uncheck on push notifications


Support sending data via Stdin

Example:
cat test.js | prettier

This has the nice side effect of allowing easy vim integration, as you can do something like:
autocmd FileType javascript set formatprg=prettier

Then you can use gq in order to format.

Sounds good to me. Anyone want to do this?

I took a stab at a fix, let me know what you think.


Hover instance type refinement broken in Luau-LSP

It looks like Instance type refinement broke in Luau-LSP, but hover types are still working correctly in Roblox Studio. Attached below is screenshot of Luau-LSP v1.34.0 in VSCode.

Here is a screenshot of the expected hover type behavior in Roblox Studio's code editor.

Here is my test code.
local obj: unknown = workspace
assert(typeof(obj) == "Instance")
local test: string = obj.Name

This seems to be broken since Object became the root class of Instance, causing this check to fail:
https://github.com/luau-lang/luau/blob/e6bf71871a6b9f601545dba8a42ce89c6069675c/Analysis/src/TypeInfer.cpp#L6404-L6405
We can add in a root tag here


DNS validation fails even though TXT record created

I am setting up Let's Encrypt on IIS on Server 2012. As the server is behind a firewall I'm using the DNS option. I have two scripts that create and delete DNS entries. I can confirm that the TXT DNS entry is created on all our DNS servers, yet the validation fails. Here is the debug output. I've changed my server and domain name. (I hit the rate limit on the main letsencrypt server so I'm using the staging one, but it didn't work on either.)
I commented out the line in the batch file that deletes the DNS entry so I could confirm that it had created it. There's also a Null reference exception at the end.
[DBUG] Scanning IIS site bindings for hosts
[DBUG] Loading signer from C:\Users\paulm\AppData\Roaming\letsencrypt-win-simple\httpsacme-staging.api.letsencrypt.orgdirectory\Signer
[DBUG] Getting AcmeServerDirectory
[DBUG] Send GET request to https://acme-staging.api.letsencrypt.org/directory
[DBUG] Loading registration from C:\Users\paulm\AppData\Roaming\letsencrypt-win-simple\httpsacme-staging.api.letsencrypt.orgdirectory\Registration
[INFO] Authorize identifier: myserver.domainname
[DBUG] Send POST request to https://acme-staging.api.letsencrypt.org/acme/new-a
uthz
[INFO] Authorizing myserver.domainname using dns-01 validation (DnsScript)
[INFO] Script e:\win-acme.v<IP_ADDRESS>\create-dns.bat starting with parameters myserver.domainname _acme-challenge.myserver.domainname aITg0xQyqVu-e9EBb4eBGfnnltUOmhXGuEW-yDmwFd4
[INFO]
powershell -file ./create-dns.ps1 myserver.domainname _acme-challenge.myserver.domainname aITg0xQyqVu-e9EBb4eBGfnnltUOmhXGuEW-yDmwFd4

[INFO] Answer should now be available at _acme-challenge.myserver.domainname
[DBUG] Submitting answer
[DBUG] Send POST request to https://acme-staging.api.letsencrypt.org/acme/chall
enge/neEVIrD5cxNSkIFjYv1sV0_hxl7s2kmAl1S560_PwkE/117496814
[DBUG] Refreshing authorization
[DBUG] Send GET request to https://acme-staging.api.letsencrypt.org/acme/authz/
neEVIrD5cxNSkIFjYv1sV0_hxl7s2kmAl1S560_PwkE
[EROR] Authorization result: invalid
[INFO] Script e:\win-acme.v<IP_ADDRESS>\delete-dns.bat starting with parameters myserver.domainname _acme-challenge.myserver.domainname
[INFO]
E:\win-acme.v<IP_ADDRESS>>rem powershell -file ./delete-dns.ps1 myserver.domainname _acme-challenge.myserver.domainname

[DBUG] NullReferenceException: NullReferenceException {Message="Object referenc
e not set to an instance of an object.", Data=[], InnerException=null, TargetSit
e=Boolean MoveNext(), StackTrace="   at System.Linq.Enumerable.<SelectManyIterat
or>d__17`2.MoveNext()\r\n   at System.Linq.Enumerable.Count[TSource](IEnumerable
`1 source)\r\n   at PKISharp.WACS.Program.OnRenewFail(AuthorizationState auth)\r
\n   at PKISharp.WACS.Program.Renew(ILifetimeScope renewalScope, ScheduledRenewa
l renewal)\r\n   at PKISharp.WACS.Program.CreateNewCertificate(RunLevel runLevel
)\r\n   at PKISharp.WACS.Program.<>c.<MainMenu>b__0_1()\r\n   at PKISharp.WACS.P
rogram.MainMenu()\r\n   at PKISharp.WACS.Program.Main(String[] args)", HelpLink=
null, Source="System.Core", HResult=-2147467261}
[EROR] NullReferenceException: Object reference not set to an instance of an ob
ject.

To be clear: are you creating public dns records that match the public FQDN of the certificate you're trying to create?

They aren't public, they are only on the DNS servers behind the firewall. Is DNS not the right approach to use behind a firewall?

Let's Encrypt only issues certificates for public DNS names.

@LBegnaud is right, you can't use Let's Encrypt for internal domains. You might want to look into the options there are for a Windows domain controller to issue certificates that are trusted by joined peers and clients.


Support the special single element version of lists

GraphQL support single element lists to be written as if they were an object. Ie, these are equivalent:
data: { progress: { create: [{ message }] } }

data: { progress: { create: { message } } }

It would be great if the generated binding could support this as well

@sorenbs As far as I can see, this only applies to input types, right?


Update sol tech colab users

Correct "added_by" format and add Team email distribution

closing/reopening to kick github actions

closing/reopening to kick github actions


Basic network examples should support all networks by default (IPv6-only, dual-stack, and IPv4-only) (IDFGH-12195)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report
The basic network examples are configured to only support IPv4 by default. Multiple steps are required to fully support IPv6, such as IPv6-only networks, which include having to turn off IPv4.
Such complex re-configuration for the specific network type should not be required for a basic example.
The examples should by default support all network configurations simultaneously, without needing reconfiguration, i.e.
similar how a phone or laptop works, with all network types enabled and available, but optional.
If IPv6 is available then an IPv6 address should be acquired, and if IPv4 is available then an IPv4 address should be acquired,without either of them becoming mandatory. The appropriate network should then be used to simultaneously be able to connect to  IPv6, IPv4, and dual stack destinations, if possible. (Some combinations are not possible, e.g. an IPv4 only network can't reach an IPv6 only destination, see the table below)
Supporting IPv6 does not mean making it mandatory, only available to used if needed.
Destination address selection, e.g. in DNS resolution, should be based on the source addresses available. (e.g. following RFC 6724)
Expected behaviour by network type and destination server (with default configuration):

Network / Destination
IPv6 server
Dual-stack
IPv4 only

IPv6 with DNS64
IPv6
IPv6
NAT64

IPv6 only
IPv6
IPv6
unreachable

Dual stack with DNS64
IPv6
IPv6
NAT64

Dual stack (1)
IPv6
IPv6
IPv4 (3)

IPv4 only (2)
unreachable
IPv4 (3)
IPv4 (3)

IPv6 (and IPv4) refer to (generally) public addresses (including IPv6 ULA)
(1) Typical configurations are dual stack without DNS64/NAT64
(2) In an IPv4 only network, an endpoint will still have a link-local IPv6 address
(3) For many networks IPv4 connectivity will be via NAT44.
Endpoints will usually have a single IPv4 address, and multiple IPv6 addresses with both link-local and one (or more) public IPv6 addresses. The public IPv6 address of a destination is only used if the source has a public IPv6 address available.
Consequences
Lack of a simple example, that works like normal devices, i.e. supports IPv6 if available but does not make it mandatory, creates a barrier to then building upon examples to create real-world applications with IPv6 support.
e.g. Having a basic example that works out of the box with all networking configurations would help avoid issues like #12275 and #13173 where people cannot get alternative configurations working.
Additional details -- Connection - HTTP request example
Specific issues where the existing example fails:

IPv6 can be configured, but by default only assigns a link-local address, ignoring network configuration
Additional configuration is required to enable, however even when IPv6 addresses are assigned they are not used

DNS lookup in the sample is IPv4 only, so IPv6 address destinations are not used
Changing to AF_UNSPEC doesn't fully work either, because IPv4 addresses are given priority (not following RFC 6724)
If you turn on IPv6, enable addresses, and change the DNS lookup, then IPv6 is used, but only for IPv6-only destinations.

When IPv6 is configured, it becomes mandatory, i.e. the sample won't proceed on an IPv4 only network
IPv4, configured by default, is also mandatory, i.e. the sample won't proceed on an IPv6 only network
There is no configuation UI for IPv4, so it is difficult to turn it off for an IPv6-only network
Even then IPv6-only has no DNS options enabled by default, so still doesn't work.
If you manually turn off IPv4, turn on IPv6, enable IPv6 addresses, enable IPv6 DNS, and change the DNS lookup, then you can get IPv6 only networks working, but only for IPv6 only destinations.

For a dual stack destination, you have to change DNS lookup to be AF_INET6

Because turning on an option (IPv4 or IPv6) also makes that option mandatory, there is no generic configuration that can be used across all network types.
It should be possible to turn options on but have them all optional, and they should be on by default, so that one example (with default config) works with all network types. i.e. both IPv4 and IPv6 should be on, but optional.

The http_request example has been updated to supported all network types by checking the currently available addresses and then looking up both IPv6 and IPv4 as needed.
However HTTP is not secure, and so real world applications will usually want to use HTTPS.
The same solution can not be used for the https_request example, as thehost name needs to be passed into the TLS handling code. It can't pass in an IP address, as the name is needed to validate the certificate.
Resolution of the name to address is then handled inside the TLS components, and does not take into account available address so does not work for all network types.
Additional issue has been raised for this library (not example) problem, https://github.com/espressif/esp-idf/issues/13255

A fix for the basic HTTP example has been provided in pull request: https://github.com/espressif/esp-idf/pull/13250
This fix only changes example code (no library change), so is limited in scope.  The example also configures the default settings to support all 5 network types and all 3 destination server types, i.e. all 13 of the reachable examples work with the default example configuration.

The getaddrinfo() system call in lwIP within ESP-IDF has a limitation when using AF_UNSPEC, as it defaults to returning only an IPv4 address in dual-stack mode.
This issue has been addressed in commit e2ae81a101da18dc28fef1db3a76039cf4629d82.
When enabled, the behavior is now consistent with Linux, supporting both IPv4 and IPv6 resolutions as expected.
However, the feature is currently disabled by default.
To enable it, you can turn on the CONFIG_LWIP_USE_ESP_GETADDRINFO option. This can be configured in the menuconfig under:
Component config -> LWIP -> DNS -> Enable esp_getaddrinfo() instead of lwip_getaddrinfo()


what UC Davis data-science related slack organizations and channels are there?

on ucdavis.slack.com, #datalab and #datascience and #hpc might be useful! #spatial is great for GIS interested folk.

datalab is a community channel for datalab and data science interests
hpc is for hpc users at UC Davis
cloud-computing
datascience is largely quiet, replaced by datalab channel
spatial focuses on GIS
wids = women in data science
dataanddonuts is the operational/business campus community
_women-in-technology
machine-learning - largely not being used
r_code_review - largely not being used, replaced by D-RUG's Discourse
will add more...


Update SPIRV-Cross to latest version.

MSL: Handle descriptor aliasing of raw buffer descriptors.
MSL: Do not attempt to alias push constants.
MSL: Report unsupported 64-bit atomics.
MSL: Add more keywords to reserved set.

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


PJit example of ImageNet

Description of the model to be implemented
ResNet18
Dataset the model could be trained on
tensorflow_datasets mock_data, e.g.
with tfds.testing.mock_data(num_examples=128):
    ds = tfds.load('imagenette', split='train')

Specific points to consider

The existing ImageNet example uses pmap. It is not trivial to replace pmap with pjit in the existing example. A pure pjit example would be great to learn from.
The example should be functional also on a GPU host for the benefit of the broader community.

Reference implementations in other frameworks
https://github.com/google/flax/blob/main/examples/imagenet/imagenet.ipynb

Hi @mattiasmar, we were considering of adding the WMT example with PJIT instead, since many people working on large language models are interested in it (and the models in language are usually much bigger than in vision). Would that work for you as well?

Yes, WMT would be a good example. A request only: Could you enter the pjit as high up in the code as possible? As a user I want to pjit as a large part as possible of my model/program. Ideally I would like to use pjit only once in my program.


changelog updates for 1.34.1

The existing release notes were not complete.
I will self-merge it, because there is not much to review here 😀

FWIW the build failure was transient - I re-run it again and it was green, but the status was not reported back https://dev.azure.com/omnisharp/Builds/_build/results?buildId=723&view=results


spellcheck.yml update

This PR is no longer required. Need to use reusable workflow for spellcheck. So closing this PR.


Add a new file format: ASDF as input source catalog.

Feature request
Support ASDF file format
Before submitting
Please check the following:
Roman source catalog will be generated with ASDF file format. It would be very helpful to have HATS to support ASDF file format in addition to parquet file format. We plan to use HATS to perform Roman catalog spatial search.
Related links:
https://github.com/asdf-format/asdf
https://github.com/asdf-format/tutorials

@nevencaplar Per our discussion today, I created a new issue to address ASDF file format support. Please feel free to reach out if you have any additional questions regarding this request. It will be very important feature to support our Roman catalogs.

@sshen-stsci thank you for the idea! Since ASDF is a very flexible standard, it would help if you could provide some example data files with a realistic schema.

Thank you, @hombit! Our calibration team is working on producing new set of asdf files as part of their new data release. They will be available in couple weeks. It might be better for us to wait for the new release of the catalog ASDF files. I will send it over when it is available.

We created an example ASDF reader a few months ago, using a very small example file. Please find the reader implementation, and some explanatory text here:
https://github.com/lincc-frameworks/notebooks_lf/blob/main/hipscat_analysis/asdf/asdf_reader.py
https://github.com/lincc-frameworks/notebooks_lf/blob/main/hipscat_analysis/asdf/asdf.ipynb
With current import code, and little custom code on your side (provided above), this is already supported with existing tools.
We do not have plans to support storing HATS in any format other than parquet.

Ok, in discussion with @sshen-stsci, this ticket should be: `Given the sample Roman input file, verify we can import it'


Bug 1804812: fix(deployment): deployment spec hash

Description of the change:
Use deployment spec hash for determining if change is needed on cluster
DeepDerivative will miss cases where values are removed, because an
empty value is treated as unchanged.
This adds some duplication to the apiservice handling, but I avoided doing any serious refactoring to ensure this cherry picks cleanly.
Motivation for the change:
We had been using deep derivative to compare the operator's view of what the deployment should be to the cluster's. But that has a lot of edge cases (zero values for ints, unsetting previously set values), so instead we just store a hash of the deployment spec on the resulting deployment and recalculate it when we need to compare.
Reviewer Checklist

[ ] Implementation matches the proposed design, or proposal is updated to match implementation
[ ] Sufficient unit test coverage
[ ] Sufficient end-to-end test coverage
[ ] Docs updated or added to /docs
[ ] Commit messages sensible and descriptive

/retest

/retest

/retest

/retest

/retest lgtm

/retest
/lgtm

/retest

/retest

/retest

/retest

/retest

/retest

/refresh

/retest

/retest

/lgtm
Thanks for answering my questions.

/cherry-pick release-4.4


grunt build-dist fails during grunt-browserify

I'm seeing this issue with master and develop branches. This seems to be a relatively recent regression.
Running "browserify:dist" (browserify) task
>> Error: Cannot find module 'bluebird' from '/var/build/depot/ldap/authelia/dist/client/src/lib/firstfactor'
Warning: Error running grunt-browserify. Use --force to continue.

Aborted due to warnings.

With grunt --force, it fails for another reason:
Running "browserify:dist" (browserify) task
>> Error: Cannot find module 'bluebird' from '/var/build/depot/ldap/authelia/dist/client/src/lib/firstfactor'
Warning: Error running grunt-browserify. Used --force, continuing.
>> Error: Cannot find module 'bluebird' from '/var/build/depot/ldap/authelia/dist/client/src/lib/u2f-register'
Warning: Error running grunt-browserify. Used --force, continuing.
Fatal error: Callback was already called.

Hello @khimaros , I guess npm dependencies are not resolved correctly on your workstation. #174 should fix this issue. I've just committed my package-lock.json since the build works on my machine.

As mentioned in #174 , this issue seems to be due to bluebird not being defined as a dev dependency.
The deployment command given in the README (npm install --only=dev) is supposed to be tested during integration test phase but the test seems to be incorrect... I will fix it soon.
Thank you for the report.

#177 should fix the issue.


Uncaught Error: ENOENT: no such file or directory, lstat '~/Applications/Atom.app/Contents/Resour...

[Enter steps to reproduce:]

atom . on the terminal

Atom: 1.21.1 x64
Electron: 1.6.15
OS: Mac OS X 10.12.6
Thrown From: Atom Core
Stack Trace
Uncaught Error: ENOENT: no such file or directory, lstat '/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources'
At fs.js:902

Error: ENOENT: no such file or directory, lstat '/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources'
    at fs.lstatSync (fs.js:902:18)
    at Object.fs.lstatSync (ELECTRON_ASAR.js:244:16)
    at realpathSync (fs.js:1542:21)
    at Object.fs.realpathSync (ELECTRON_ASAR.js:331:24)
    at toRealPath (module.js:130:13)
    at Function.Module._findPath (module.js:178:22)
    at Module._resolveFilename (module.js:468:25)
    at Module._resolveFilename (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/electron.asar/common/reset-search-paths.js:35:12)
    at Function.get_Module._resolveFilename (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/src/module-cache.js:354:58)
    at Module.require (/app.asar/static/index.js:40:43)
    at require (internal/module.js:20:19)
    at customRequire (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/static/<embedded>:96:26)
    at get_KeyboardLayoutManager (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/node_modules/keyboard-layout/lib/keyboard-layout.js:7:65)
    at get_manager (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/node_modules/keyboard-layout/lib/keyboard-layout.js:16:42)
    at getCurrentKeyboardLayout (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/node_modules/keyboard-layout/lib/keyboard-layout.js:32:17)
    at Object.getCurrentKeymap (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/node_modules/keyboard-layout/lib/keyboard-layout.js:22:31)
    at exports.keystrokeForKeyboardEvent (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/helpers.js:244:66)
    at KeymapManager.module.exports.KeymapManager.keystrokeForKeyboardEvent (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:467:20)
    at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:347:30)
    at WindowEventHandler.module.exports.WindowEventHandler.handleDocumentKeyEvent (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:100:42)
    at HTMLDocument.<anonymous> (/Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:3:65)

Commands
     -0:24.6.0 tree-view:show (atom-workspace.workspace.scrollbars-visible-always)

Non-Core Packages
atom-clock 0.1.15
atom-easy-jsdoc 4.12.4
atom-liquid-snippets 0.3.0
atom-ternjs 0.18.3
autoclose 0.0.2
autocomplete-modules 1.7.2
autocomplete-paths 2.12.0
busy-signal 1.4.3
double-tag 0.9.0
editorconfig 2.2.2
emmet 2.4.3
file-icons 2.1.13
gruvbox 1.0.7
highlight-selected 0.13.1
intentions 1.1.5
language-babel 2.75.1
language-liquid 0.6.0
language-pug 0.0.21
language-viml 1.1.6
linter 2.2.0
linter-js-standard 4.0.2
linter-stylelint 4.0.2
linter-ui-default 1.6.10
no-title-bar 1.11.3
persistent-undo 1.3.0
pigments 0.40.2
project-manager 3.3.5
relative-numbers 0.8.0
standard-formatter 2.8.0
termination 0.6.1
vim-mode-plus 1.9.1
vim-mode-plus-keymaps-for-surround 0.2.1
warn-before-quitting 0.1.7
Zen 0.18.0

Thanks for the report - can you confirm if this is a fresh install or if you hit this error after updating?
Also, it looks like you've installed Atom on a external drive?   Does /Volumes/Seagate/mike3run/Applications/Atom.app/Contents/ exist?

@rsese this was after an update, it hasn't happened after that time.
I do have my home folder in a separate HDD although is internal as well so that path is correct.

My computer is a Hackintosh I built with 1 SSD and 2 HDDs all internal.
Just to clarify the whole multiple drives situation 😄

My computer is a Hackintosh I built with 1 SSD and 2 HDDs all internal.
Just to clarify the whole multiple drives situation 😄

lol thanks for clarifying :v:

I do have my home folder in a separate HDD although is internal as well so that path is correct.

Hmmm, I'm confused why we're getting a path not found error if Volumes/Seagate/mike3run/Applications/Atom.app/Contents/Resources exists.

@rsese this was after an update, it hasn't happened after that time.

Oh sorry just to clarify this part, do you mean you see the error once after an update but haven't seen it since then?

Oh sorry just to clarify this part, do you mean you see the error once after an update but haven't seen it since then?

That is correct, after the update Atom restarted but didn't showed up so I did atom . on a folder and the error popped right up, I rebooted and that error has not happened ever again


Enable support for React 18, bump Gatsby to v5

Description
We are long overdue for supporting React 18. The challenge is that bumping to React 18 and testing with it on our docs site also requires bumping Gatsby from v4 to v5 and gatsby-plugin-mdx from v3 to v5, which introduces a ton of breaking changes to how Gatsby and MDX work.
These upgrades have been attempted before in https://github.com/openedx/paragon/pull/2774 and https://github.com/openedx/paragon/pull/2767 but so far nobody has been able to finish the work up. I'm thinking we need to bite the bullet sooner or later and get it sort out.
Deploy Preview
https://deploy-preview-3367--paragon-openedx-v23.netlify.app/
Status
Working:

Paragon build (npm run build)
Paragon in general (the components on the docs site work as normal - see preview above)
Most of the docs site
Most lint checks
Fully backwards compatible (still supports React 16 & 17)

Not working:

Test suite (I have it down to 16 failing tests. Mostly there are just simple changes related to react-testing-library's newer userEvent API, and then the tests will be passing again.)
Some "Foundations" pages on the docs site (see below)
stylelint is not passing (tons of warnings)

Manual testing
Run the gatsby site locally with the command cd www and rm -rf .cache && NODE_OPTIONS=--max-old-space-size=16384 npm run start
Issues and solutions

[ ] Some of the "Foundations" pages (the ones that use MDX, not TSX, like Layout , are not rendering with the correct layout. Some fix is required (see related work in https://github.com/openedx/paragon/pull/2767 which has some code related to this)

‼ help solving this would be appreciated ‼

[x] Currently, gatsby is running out of memory when trying to run npm run start. I thought I had solved this with GATSBY_CPU_COUNT=4 (f67d1f75262c2632288428ed132aeaf6c35a93e9) but it no longer seems to be helping (even if lowered down to 1). I think the memory usage depends on how much has been cached, so clearing the cache always requires a lot more memory. For now the only workaround is to run it with NODE_OPTIONS=--max-old-space-size=16384 npm run start but allocating 16GB each time is not feasible.

Note that npm run build-docs seems to be working fine, and the "deploy preview" build of this PR works fine too.
Solved! By @brian-smith-tcril who found that adding DEV_SSR/FAST_DEV will avoid the issue.

[ ] This PR necessarily bumps the version of sass used via transitive dependencies. Will this version bump cause issues for Paragon consumers (if we change the sass code to the new version)? e.g. see 958f61708796741bb87e37b9ba20610155556316

‼ help answering this would be appreciated ‼

[ ] Upgrading sass means instead of e.g. map-get(...) we are encouraged to use @use "sass:map"; and map.get(...) - done via 958f61708796741bb87e37b9ba20610155556316 but this may need to be reverted, see question above.
[ ] Stylelint is not passing - haven't investigated this yet.
[ ] Test cases need to be updated - started with e.g. c5ca0a5f83116b18a37df5ac617d49c703c0463d and 1942f03acc34335b20b69ae3e5690f04e400be32 but haven't finished
[ ] Horizontal padding, font sizes, and other minor changes are seen on pages like the Button component docs.

Compare new Button page to old Button page
‼ help investigating this would be appreciated ‼

[x] Many other sass deprecation warnings related to import etc. have been suppressed for now: 6946d67e0b64bf21d07ec33e1c9c3baea1064607 we probably can't address this properly without a major bootstrap upgrade
[x] GraphQL syntax has changed in some cases, resulting in a bunch of deprecation warnings - solved with 2dd6935c5d5236704bee9a0ddebdf5c6c00af97c
[x] The { and < characters must now be escaped in markdown - solved with 0f6004fd8d124eb0ae361b68ff55150e8d5af8d0
[x] The childMdx API is no longer available - gatsby-plugin-mdx no longer allows rendering multiple MDX documents in one page. I worked around this by adding react-markdown and rendering the props descriptions as plain markdown (they don't use MDX anyways) - 48aa67020e9154ef99439b769b1e0fe126d4ce62
[x] Some Gatsby/rehype plugins can only be imported as ESM - so I had to convert the Gatsby config to ESM 60e534c082a1254af99b68c9be59c7e586ab99fb
[x] Code blocks in Markdown no longer pass in attributes like live automatically, so I had to add rehype-mdx-code-props in 11b760541652dcafefb91e99bf6cfa7c180b7e18
[x] Supporting <PropsTable> as an MDX component was tricky because it requires some context from the parent JSX component, which was being inlined as a local variable resulting in lint warnings: "Do not define components during render". It turns out that the props tables in question, on this Data Views page are already present in the usual place at the end of the document anyways. So I think it's more consistent to just remove support for this element from that page (remove the duplicate props tables) and avoid having to re-engineer PropsTable to better support context for this one very questionable use case. Done with c92a1a2d20249e5c8c59dc3743994bf6882d080e
[x] update imports for 'renderHook' (now part of @testing-library/react) - 53500ee19c3f6d3760a5bdf556ec11c6282a82aa

Thanks for the pull request, @bradenmacdonald!
What's next?
Please work through the following steps to get your changes ready for engineering review:
:radio_button: Get product approval
If you haven't already, check this list to see if your contribution needs to go through the product review process.

If it does, you'll need to submit a product proposal for your contribution, and have it reviewed by the Product Working Group.

This process (including the steps you'll need to take) is documented here.

If it doesn't, simply proceed with the next step.

:radio_button: Provide context
To help your reviewers and other members of the community understand the purpose and larger context of your changes, feel free to add as much of the following information to the PR description as you can:

Dependencies

This PR must be merged before / after / at the same time as ...

Blockers

This PR is waiting for OEP-1234 to be accepted.

Timeline information

This PR must be merged by XX date because ...

Partner information

This is for a course on edx.org.

Supporting documentation
Relevant Open edX discussion forum threads

:radio_button: Get a green build
If one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green.
:radio_button: Let us know that your PR is ready for review:
Who will review my changes?
This repository is currently maintained by @openedx/paragon-working-group.  Tag them in a comment and let them know that your changes are ready for review.
Where can I find more information?
If you'd like to get more details on all aspects of the review process for open source pull requests (OSPRs), check out the following resources:

Overview of Review Process for Community Contributions
Pull Request Status Guide
Making changes to your pull request

When can I expect my changes to be merged?
Our goal is to get community contributions seen and reviewed as efficiently as possible.
However, the amount of time that it takes to review and merge a PR can vary significantly based on factors such as:

The size and impact of the changes that it introduces
The need for product review
Maintenance status of the parent repository

:bulb: As a result it may take up to several weeks or months to complete a review and merge your PR.

After reading through a ton of https://github.com/gatsbyjs/gatsby/issues/36899 and trying a few things I found https://github.com/gatsbyjs/gatsby/issues/36899#issuecomment-1318680725 and managed to get the dev server running.
bsmith@aximdev:~/code/paragon$ git diff
diff --git a/www/gatsby-config.mjs b/www/gatsby-config.mjs
index d0ab6c658e..aaf5daab39 100644
--- a/www/gatsby-config.mjs
+++ b/www/gatsby-config.mjs
@@ -130,4 +130,7 @@ export default {
   // Match the location of the site on github pages if no path prefix is specified
   pathPrefix: process.env.PATH_PREFIX || '',
   plugins,
+  flags: {
+    DEV_SSR: true
+  },
 };

Re:

Some of the "Foundations" pages (the ones that use MDX, not TSX, like Layout , are not rendering with the correct layout. Some fix is required (see related work in https://github.com/openedx/paragon/pull/2767 which has some code related to this)

With this change
-        default: require.resolve(
-          './src/templates/default-mdx-page-template.tsx',
-        ),

It seems the default-mdx-page-template layout is just not being used at all. I know defaultLayouts were removed in v4, and the migration of component-page-template seems to have gone smoothly, but I'm a little lost as to how to properly migrate the other layout.

It seems the default-mdx-page-template layout is just not being used at all. I know defaultLayouts were removed in v4, and the migration of component-page-template seems to have gone smoothly, but I'm a little lost as to how to properly migrate the other layout.

Yeah, me too. I tried a couple things based on the docs but didn't have much luck yet. There is some perhaps complication from the fact that Gatsby includes everything in src/pages/ by default, but I've also added those pages explicitly using a gatsby-source-filesystem in gatsby-config.mjs because I was seeing some Could not locate File node errors if I didn't include that in the config (though it wasn't needed with the previous version).
Clearly, there is somewhere that we need to specify that default-mdx-page-template should be used, but I haven't found where yet, nor figured out why putting it in www/utils/createPages.js similarly to how https://github.com/openedx/paragon/pull/2767 did it isn't working.

 I pulled in most of that change for now. It seems like pages like icons.mdx are now working perfectly, so the layout part is correct - just need to solve the random errors on the other pages.

For some reason, either when I changed the target branch to release-22.x or when I pushed that fix from @brian-smith-tcril, the "v23" deploy preview is now broken and can't load the theme CSS: https://deploy-preview-3367--paragon-openedx-v22.netlify.app/

@bradenmacdonald the build step of the latest deploy of this branch on netlify failed. I pulled the latest version of this branch and tried running npm run build-docs and it failed in the same place locally for me.
I commented out a couple things in layout.mdx and css-utilities.mdx and got it to build https://github.com/brian-smith-tcril/paragon/commit/e42915ba42d3d2a9b3018b0f3416143dff7c39ff

Ah, thanks @brian-smith-tcril :) I'll hold off on committing that for now until I see if we can actually get that < CSSUtilitiesTable> component working.

re:

This PR necessarily bumps the version of sass used via transitive dependencies. Will this version bump cause issues for Paragon consumers (if we change the sass code to the new version)? e.g. see 958f61708796741bb87e37b9ba20610155556316

‼ help answering this would be appreciated ‼

We discussed this in the WG meeting yesterday. It seems the version bump is a minor version bump as opposed to a major one:

Since it's a minor bump, that means existing scss in MFEs should still work as expected
It seems using new features that don't exist in earlier minor versions of sass in Paragon also shouldn't be an issue. MFEs that upgrade to the new version of Paragon that has the new version of sass should automatically get the new version of sass in their package locks.

If there's some nuance here I'm missing please let me know!


service changed before service up

Hello,
I try to use this module since a moment and now that it finally works I have something strange: I receive a service changed before the service up.
br.on('serviceUp', async service => {
  const serv = mdns.createBrowser(mdns.tcp(service.type.name), { resolverSequence: resolve })
  serv
    .on('serviceUp', function (service) {
      console.log('new service up: ', service);
    })
    .on('serviceChanged', function (service) {
      console.log('service changed: ', service);
    })
    .on('serviceDown', function (service) {
      console.log('down');
    })
    .start()
})

br.start()

First result:
┏ Electron -------------------

  service changed:  { interfaceIndex: 2,
    type:
     ServiceType {
       name: 'bifrost',
       protocol: 'tcp',
       subtypes: [],
       fullyQualified: true },
    replyDomain: 'local.',
    flags: 2,
    name: 'buffle',
    networkInterface: 'enp3s0',
    fullname: 'buffle._bifrost._tcp.local.',
    host: 'buffle.local.',
    port: 3002,
    addresses: [ '<IP_ADDRESS>' ] }

┗ ----------------------------

┏ Electron -------------------

  new service up:  { interfaceIndex: 2,
    type:
     ServiceType {
       name: 'bifrost',
       protocol: 'tcp',
       subtypes: [],
       fullyQualified: true },
    replyDomain: 'local.',
    flags: 2,
    name: 'buffle',
    networkInterface: 'enp3s0',
    fullname: 'buffle._bifrost._tcp.local.',
    host: 'buffle.local.',
    port: 3002,
    addresses: [ '<IP_ADDRESS>' ] }

┗ ----------------------------

Any idea?

I finally just removed the change...

@Irraky, that's expected behaviour. Ignoring serviceChanged is fine. See http://agnat.github.io/node_mdns/user_guide.html#browser

Oww, effectively...
So the solution to remove it is fine ^^
Thanks a lot for answering!
Have a nice day ~


Generate own Github Token

We're using Hash Pipe token, but this project should have its own token.

@MarcoWorms e @chrisenytc Zeta needs a read-only token to be able to view all our repositories and their commits. Could one of you please give me enough Github access to generate this token, or generate one for me, please?


Post release automated changes for newrelicobservability releases

Post release automated changes for azure-arm-newrelicobservability

/check-enforcer override


updates from release notes up to v64

(audit log page is still in draft state, as this feature is not quite finished and I guess we'll have to discuss how much detail we want here)

@jowerner added changes to live metrics, please review


basic data to display in Harmonia

It would be nice to have some very basic data in Harmonia on which the more advanced indicators/indexes are based. This always helps interpreting trend graphs. The ones I can think of are:

the number of occurrences per year
the number of km squares per year

I believe for now these are 'byproducts' of the pipeline, perhaps we should think of a suitable output (simple barplot graph).

I agree. My workflow would be to save these data so that they can be easily used by displaying it in Harmonia. We can obviously decide the style of the graphs so that Harmonia maintainers have some guidelines while developing their webservices.

I think we agreed about this and so we'll do. No more updates are needed about this. Issue closed.


Create a .dev.vars file for new projects

We should create a .dev.vars file as part of C3 when someone creates a new Next.js project, or when they migrate over to using OpenNext (related: #188).
This file should include a NEXTJS_ENV variable out-of-the-box which defaults to development. This will be used for determining whether the app is running in development or production locally, so that inlined .env files can be used in the worker.

NODE_ENV is forced to "production" but you should have access to TEST_ENV_VAR?
If not please try to attach a repro in a GH repo

I just created a app using getting started but .env.development file not loading.

@himanshu-ntml can you confirm whether the route is being SSR'd or SSG'd? I have just created a dummy project and forced the API route to be SSR'd and it was returning the variable. By default, Next.js tries to SSG everything unless it's unable to.

I tried with api route too, I got same behaviour. I was still seeing node_env error too

I guess i missed "force-dynamic". I am not sure why it works with "force dynamic"
I did get some warnings
himanshu@Himanshus-MacBook-Pro v3-open-next % npm run preview

><EMAIL_ADDRESS>preview
> opennextjs-cloudflare && wrangler dev

┌─────────────────────────────┐
│ OpenNext — Cloudflare build │
└─────────────────────────────┘

App directory: /Users/himanshu/Desktop/experiments/v3-open-next
Next.js version : 14.2.5
OpenNext v3.3.0

┌─────────────────────────────────┐
│ OpenNext — Building Next.js app │
└─────────────────────────────────┘

><EMAIL_ADDRESS>build
> next build

  ▲ Next.js 14.2.5

   Creating an optimized production build ...

warn - No utility classes were detected in your source files. If this is unexpected, double-check the `content` option in your Tailwind CSS configuration.
warn - https://tailwindcss.com/docs/content-configuration
 ✓ Compiled successfully
 ✓ Linting and checking validity of types
 ✓ Collecting page data
 ✓ Generating static pages (5/5)
 ✓ Collecting build traces
 ✓ Finalizing page optimization

Route (app)                              Size     First Load JS
┌ ○ /                                    137 B          87.2 kB
├ ○ /_not-found                          871 B          87.9 kB
└ ƒ /api                                 0 B                0 B
+ First Load JS shared by all            87 kB
  ├ chunks/23-b75664ace61c0abb.js        31.5 kB
  ├ chunks/fd9d1056-2821b0f0cabcd8bd.js  53.6 kB
  └ other shared chunks (total)          1.86 kB

○  (Static)   prerendered as static content
ƒ  (Dynamic)  server-rendered on demand

┌──────────────────────────────┐
│ OpenNext — Generating bundle │
└──────────────────────────────┘

Bundling middleware function...
Bundling static assets...
Bundling cache assets...
Building server function: default...
# copyPackageTemplateFiles
⚙ Bundling the OpenNext server...

# patchWranglerDeps
# updateWebpackChunksFile
 - chunk 347.js
 - chunk 682.js
 - chunk 948.js
▲ [WARNING] Suspicious assignment to defined constant "process.env.NODE_ENV" [assign-to-define]

    .open-next/server-functions/default/index.mjs:551:2:
      551 │   process.env.NODE_ENV = process.env.NODE_ENV ?? "production";
          ╵   ~~~~~~~~~~~~~~~~~~~~

  The expression "process.env.NODE_ENV" has been configured to be replaced with a constant using the
  "define" feature. If this expression is supposed to be a compile-time constant, then it doesn't
  make sense to assign to it here. Or if this expression is supposed to change at run-time, this
  "define" substitution should be removed.

Applying code patches:
 - patching require
 - patching `buildId` function
 - patching `loadManifest` function
 - patching next's require
 - patching `findDir` function
 - patching `evalManifest` function
 - patching cacheHandler
 - patching 'require(this.middlewareManifestPath)'
 - patching exception bubbling
 - patching `loadInstrumentationModule` function
 - patching `patchAsyncStorage` call
 - patching `eval("require")` calls
 - patching `require.resolve` call
All 13 patches applied

Worker saved in `/Users/himanshu/Desktop/experiments/v3-open-next/.open-next/server-functions/default/handler.mjs` 🚀

OpenNext build complete.

 ⛅ wrangler 3.99.0
-------------------

Using vars defined in .dev.vars
Your worker has access to the following bindings:
- Vars:
  - NEXTJS_ENV: "(hidden)"
  - NODE_ENV: "(hidden)"
▲ [WARNING] Suspicious assignment to defined constant "process.env.NODE_ENV" [assign-to-define]

    .open-next/server-functions/default/handler.mjs:32303:4:
      32303 │     process.env.NODE_ENV = "production";
            ╵     ~~~~~~~~~~~~~~~~~~~~

  The expression "process.env.NODE_ENV" has been configured to be replaced with a constant using the "define" feature. If this expression is supposed to be a compile-time constant, then it doesn't make sense to assign to it here.

I guess i missed "force-dynamic". I am not sure why it works with "force dynamic"

It's because it's forcing the route to be SSR'd. A blank API route that returns a fixed response will try to be SSG'd by Next.js.

Thank you, that makes sense.
I’m curious to know why I’m still getting NODE_ENV warnings. Any ideas?


Display Delegate Example

It would be great to have an example that shows how to use the displayDelegate. This would be particularly useful for (like in Instagram) playing and stopping videos within cells.
I also noticed you have to implement both -listAdapter:willDisplaySectionController:and -listAdapter:willDisplaySectionController:cell:atIndex: (and the same for didEndDisplaying). Both versions of the functions get called at the same time. What's the reasoning behind that?

Thanks @yusuftor ! 😄
Agreed, we should add an example. Even if it just logs the method calls.
@rnystrom -- This is a good point. Do we need *displaySectionController: and *displaySectionController: cell: ?

Oh nevermind.
@yusuftor

*displaySectionController: -- these methods provide section-level notifications
*displaySectionController: cell: -- these methods provide item-level notifications

But +1 on the display delegate example. I've got a queue of examples to get up! All very useful though.

Ahh yes, that makes sense! Thanks.

@rnystrom @jessesquires Shall we add a @optional directive to this protocol?

@zhubofei I also think it would be good to go through all the protocols and add @optional to all methods that aren't required, would save a lot of space taken up by blank functions! However, this has already been mentioned in #62.

Ya we have a pretty firm anti-@optional stance here in favor of the compiler catching our bugs for us.


Update some entity processing errors to 400.28

PR #844 introduces a new Problem Problem.user.invalidEntity (400.28) to return when creating an entity from JSON fails because of some formatting or validation problem. New code around JSON entity extraction uses this problem.
Many of the previous validation error cases throw Problem.user.entityViolation (409.14), which is a conflict problem rather than a bad request problem. This problem was made back when we started parsing submission XML to create entities and foresaw entity conflict as one possible problem.
I think we could go back and update pure validation errors to throw the 400.28 error instead of 409.14. The names could also be better - entityConflict and invalidEntity or something.

I also think we should try to use more specific Problems that already exist when those are appropriate. For example, Problems like Problem.missingParameter() or Problem.invalidDataTypeOfParameter() that have well-defined detail properties. I think it's nice to have Problem.invalidEntity() as a fallback, but I feel like our first choice should be to reach for something more specific.


Update optimizer.py doc strings to match the RDKitEmbedder changes

Minor changes required to the doc strings at the top of optimizer.py.

Thank you!


Trained recurrent.LSTM data only outputs a single category regardless of string used?

I trained a string dataset of tweets with around 50 different output categories, then saved the training data into a JSON to then be reloaded using;
const trainedData = require(`./training-data/memory/csnetwork.json`)

        const network = new brain.recurrent.LSTM();
        network.fromJSON(trainedData);
        const output = network.run(newTweet);

        console.log(`Category: ${output}`);

I wanted to see how well the training data could categorise newly run tweets by their string.
These keywords used for each output category in the training data were very specific and I ran it for about 5 hours with an average error percentage of around 0.023.
However, when bringing in the pretrained data to now run with new tweets using network.run(newTweet);, it would only output a single category. Even when I copy and pasted the exact input strings from other categories, it would only ever output the same single category. Is there something I don't understand about pretrained data? Is it static? Do I have to retrain the data for every time I want to run a new tweet?

We'd need more detail on how you are using brain.  Closing due to inactivity.


Prevent mwc-list-item selectedText from including text from font liga…

…tures of slotted icons
Problem: the selectedText property of mwc-list-item returns the text content of all slots, including the font ligatures of slotted mwc-icons. This currently prevents us from using slotted icons with mwc-list-items inside of an mwc-select because the displayed selectedText will also include the font ligatures' text.
Fix: Return only the text of the default/primary slot, not that of the icon slots.
I also added "Options with Icons" to the mwc-select demo page.

@googlebot I signed it!

What are the use cases for this? The material spec does not allow for icons in select; confirmed with design.

What are the use cases for this? The material spec does not allow for icons in select; confirmed with design.

Ah, okay. I should have checked. That's my bad. Although, what about icons in selectable lists in general?
https://glitch.com/edit/#!/scarlet-separate-armadillo?path=index.js%3A2%3A28

Elliot, thanks for your response. You've convinced me. (I secretly still want to use icons within select opts, but admittedly I'm something of an icon fanatic, and if the design team thinks that's a bad practice, then I'm sure they have some thoughtful justifications for that decision.)
I appreciate the info you shared about SSR and Angular compatibility though, as that was all news to me. Should I go ahead and close out this pull request? I'd love to find a way to contribute to this project. Are there any additional guidelines you could point me to beyond what's in the contributing guide to help me with future attempts to contribute? Thanks!

I'll bring up updating our contributing docs with our team. Thanks for the help though!


XDP Tx ring disable timeout when loader is stopped

Hello, I've discovered in /var/log/syslog that when the loader program is stopped, there is a disable timeout, and then the i40e driver enters allmulti mode:
Apr 26 15:26:55 SRV-PVE-2 kernel: [895028.655165] i40e 0000:01:00.0: VSI seid 404 XDP Tx ring 33 disable timeout
Apr 26 15:26:57 SRV-PVE-2 kernel: [895030.595925] i40e 0000:01:00.0: entering allmulti mode.

I'm using the same loader code as in this example. I have a few maps in my BPF program:

3x PerfMap with 1024 max_entries
2x HashMap with 1 max_entries
1x PerCpuHashMap with 1_000_000 max_entries

I suspect the last one caused the issue - it's used as a rate limit for each saddr as a key, and a counter as the value.

Yes, i40e is a driver for the following controllers:

Intel® Ethernet Controller X710
Intel® Ethernet Controller XL710
Intel® Ethernet Network Connection X722
Intel® Ethernet Controller XXV710
Intel® Ethernet Controller V710

Sadly, I didn't found a way to emulate it.

I think allmulti mode is quite universal. If you can provide us with a complete, minimal example, I could try this on a KVM box and see if it gets triggered, then we can go from there.


how to cancel command in REPL

sometimes i send input to a python repl and it ends up mangled and i have to switch to the repl buffer and <c-c> that input. is there a way to send the <c-c > with iron?

I just added two mappings for <C-c> and <C-d>. They're respectively mapped to <plug>(iron-interrupt) and <plug>(iron-exit).
Cheers


Timeout for onProgress for stream events

Describe the feature
I've faced issue working with timeoutMs when using onProgress callback - basically response is marked as timeouted for request overall rather than for onProgress callback itself. is there any way to fix that?

Good question.
If I'm understanding correctly, once the timeout happens, onProgress can still be called, and you'd like to prevent that from happening?

Not at all, I was meaning that I would like to see timeout for first iteration for onProgress.
Currently if we have timeout for 500ms, onProgress is triggered, and after 500ms request is cancelled.
What I ask about is timeout for 500ms -> if onProgress was called -> timeout is cancelled
Ofc it could be done internally by wrapping onProgress with timeout but I would to see it as param like onProgressTimeout for example

Thanks! Could you please close this issue once done?

@Vadko PRs are very welcome 😄

Ye, sure, I will :D

@transitive-bullshit
is this implementation ok? tested, works fine
  async sendMessage(
    text: string,
    opts: types.SendMessageBrowserOptions = {}
  ): Promise<types.ChatMessage> {
    if (!!opts.conversationId !== !!opts.parentMessageId) {
      throw new Error(
        'ChatGPTUnofficialProxyAPI.sendMessage: conversationId and parentMessageId must both be set or both be undefined'
      )
    }

    if (opts.conversationId && !isValidUUIDv4(opts.conversationId)) {
      throw new Error(
        'ChatGPTUnofficialProxyAPI.sendMessage: conversationId is not a valid v4 UUID'
      )
    }

    if (opts.parentMessageId && !isValidUUIDv4(opts.parentMessageId)) {
      throw new Error(
        'ChatGPTUnofficialProxyAPI.sendMessage: parentMessageId is not a valid v4 UUID'
      )
    }

    if (opts.messageId && !isValidUUIDv4(opts.messageId)) {
      throw new Error(
        'ChatGPTUnofficialProxyAPI.sendMessage: messageId is not a valid v4 UUID'
      )
    }

    const {
      conversationId,
      parentMessageId = uuidv4(),
      messageId = uuidv4(),
      action = 'next',
      timeoutMs,
      onProgress
    } = opts

    let {abortSignal} = opts

    let abortController: AbortController = null
    if (timeoutMs && !abortSignal) {
      abortController = new AbortController()
      abortSignal = abortController.signal
    }

    const body: types.ConversationJSONBody = {
      action,
      messages: [
        {
          id: messageId,
          role: 'user',
          content: {
            content_type: 'text',
            parts: [text]
          }
        }
      ],
      model: this._model,
      parent_message_id: parentMessageId
    }

    if (conversationId) {
      body.conversation_id = conversationId
    }

    const result: types.ChatMessage = {
      role: 'assistant',
      id: uuidv4(),
      parentMessageId: messageId,
      conversationId,
      text: ''
    }

    const responseP = new Promise<types.ChatMessage>((resolve, reject) => {
      const url = this._apiReverseProxyUrl
      const headers = {
        ...this._headers,
        Authorization: `Bearer ${this._accessToken}`,
        Accept: 'text/event-stream',
        'Content-Type': 'application/json'
      }

      if (this._debug) {
        console.log('POST', url, {body, headers})
      }

      const onProgressPromise = new Promise<void>((res, rej) => {
        fetchSSE(
          url,
          {
            method: 'POST',
            headers,
            body: JSON.stringify(body),
            signal: abortSignal,
            onMessage: (data: string) => {
              if (data === '[DONE]') {
                return resolve(result)
              }

              try {
                const convoResponseEvent: types.ConversationResponseEvent =
                  JSON.parse(data)
                if (convoResponseEvent.conversation_id) {
                  result.conversationId = convoResponseEvent.conversation_id
                }

                if (convoResponseEvent.message?.id) {
                  result.id = convoResponseEvent.message.id
                }

                const message = convoResponseEvent.message
                // console.log('event', JSON.stringify(convoResponseEvent, null, 2))

                if (message) {
                  let text = message?.content?.parts?.[0]

                  if (text) {
                    result.text = text

                    if (onProgress) {
                      onProgress(result)
                      res()
                    }
                  }
                }
              } catch (err) {
                // ignore for now; there seem to be some non-json messages
                // console.warn('fetchSSE onMessage unexpected error', err)
              }
            }
          },
          this._fetch
        ).catch((err) => {
          const errMessageL = err.toString().toLowerCase()

          if (
            result.text &&
            (errMessageL === 'error: typeerror: terminated' ||
              errMessageL === 'typeerror: terminated')
          ) {
            // OpenAI sometimes forcefully terminates the socket from their end before
            // the HTTP request has resolved cleanly. In my testing, these cases tend to
            // happen when OpenAI has already send the last `response`, so we can ignore
            // the `fetch` error in this case.
            return resolve(result)
          } else {
            return reject(err)
          }
        })
      })

      ;(onProgressPromise as any).cancel = () => {
        abortController.abort()
      }

      return pTimeout(onProgressPromise, {
          milliseconds: 10000,
          message: 'Caught onProgress timeout'
      }).catch((e) => console.log(e));
    });

    if (timeoutMs) {
      if (abortController) {
        // This will be called when a timeout occurs in order for us to forcibly
        // ensure that the underlying HTTP request is aborted.
        ;(responseP as any).cancel = () => {
          abortController.abort()
        }
      }

      return pTimeout(responseP, {
        milliseconds: timeoutMs,
        message: 'ChatGPT timed out waiting for response'
      })
    } else {
      return responseP
    }
  }

if its ok I will refactor it and create PR

@transitive-bullshit could you please look into this snippet and say if the approach is fine? 🙏

This project is undergoing a major revamp; closing out old issues as part of the prep process.
The chatgpt package is pretty outdated at this point. I recommend that you use the openai package or the openai-fetch package instead.
@Vadko I would recommend looking at the https://github.com/vercel/ai SDK for streaming.


OSX build is broken?

Hello,
When running the make command on OSX (Mac OS Monterey 12.1) I see this error:
[  4%] Performing build step for 'v8_build'
  LIBTOOL-STATIC /Users/Olivier/dev/arangodbbuild/3rdParty/V8/v7.9.317/x64.release/libicui18n.a
Traceback (most recent call last):
  File "./gyp-mac-tool", line 720, in <module>
    sys.exit(main(sys.argv[1:]))
  File "./gyp-mac-tool", line 30, in main
    exit_code = executor.Dispatch(args)
  File "./gyp-mac-tool", line 45, in Dispatch
    return getattr(self, method)(*args[1:])
  File "./gyp-mac-tool", line 274, in ExecFilterLibtool
    if not libtool_re.match(line) and not libtool_re5.match(line):
TypeError: cannot use a string pattern on a bytes-like object
make[3]: *** [/Users/Olivier/dev/arangodbbuild/3rdParty/V8/v7.9.317/x64.release/libicui18n.a] Error 1
make[2]: *** [3rdParty/V8/v8_build-prefix/src/v8_build-stamp/v8_build-build] Error 2
make[1]: *** [3rdParty/V8/CMakeFiles/v8_build.dir/all] Error 2
make: *** [all] Error 2

This is how I ran cmake:
export CMAKE_OSX_DEPLOYMENT_TARGET=12.1
export MACOSX_DEPLOYMENT_TARGET=12.1
export OPENSSL_ROOT_DIR=`brew --prefix openssl`
cmake -S ./arangodb -B ./arangodbbuild

Anybody else seeing this error or knows how to fix it?
Thanks!

After some googling of the error message I found that it might be because I have python 3 and gyp only works with python 2. I'll try with python 2 and report whether that fixed the problem.

I installed python2 using homebrew, then added this alias:
alias python=/usr/local/opt/python@2/bin/python

and reran the cmake command then the make command and see the same error.

After removing more folders that contained python3 from the PATH, and setting PYTHONPATH to /Library/Python/2.7/site-packages the error above was fixed. I'll close this issue then, and wait for the build to complete.

please note that python3 is supported, but not 3.10 in any released version, which you probably had.

@dothebart I was using the HEAD of yesterday's master, and my python 3 version is :
(base) Oliviers-iMac:hs.hamazed Olivier$ python --version
Python 3.8.5


Debugging comments in SS templates not working correctly with empty includes

The issue is with SSTemplateParser with source_file_comments turned on, when an empty template is included.
Because of https://github.com/silverstripe/silverstripe-framework/blob/3.5/view/SSTemplateParser.php#L4714, such template is not passed through the compiler, resulting in a lack of the PHP markup.
The method adding the debugging comments then adds the closing debugging comment regardless (https://github.com/silverstripe/silverstripe-framework/blob/3.5/view/SSTemplateParser.php#L4774), which gets passed to the output as it can't be interpreted.
I'd say it'd better if the debugging comments worked the same way for empty templates as well, sometimes it's good to prepare the structured with empty templates and implement them after that, without having to think about putting at least an HTML or SS comment in to get passed via the compiler.

The solution could be either to amend https://github.com/silverstripe/silverstripe-framework/blob/3.5/view/SSTemplateParser.php#L4771 to add the comments with the required PHP markup if not present OR to pass all templates to the compiler in https://github.com/silverstripe/silverstripe-framework/blob/3.5/view/SSTemplateParser.php#L4713. Not sure what the performance impact would be, but I'd imagine pretty minimal.

@sminnee or @dhensby can you advise which way you think is better to go so I can create a PR? Thanks

I think the former would be better so that the optimisation still works when debugging comments are turned off.


chore: check flaky failure

Description
To test flaky failures
Fixes #Issue Number
or
Fixes Issue URL

[!WARNING]
If no issue exists, please create an issue first, and check with the maintainers if the issue is valid.

Automation
/ok-to-test tags=""
:mag: Cypress test results

[!CAUTION]
If you modify the content in this section, you are likely to disrupt the CI result for your PR.

Communication
Should the DevRel and Marketing teams inform users about this change?

[ ] Yes
[ ] No

/ci-test-limit

/ci-test-limit-count run_count=1 update_snapshot=false specs_to_run=cypress/e2e/Regression/ClientSide/VisualTests/JSEditorIndent_spec.js,cypress/e2e/Regression/ServerSide/ApiTests/API_Edit_spec.js

/ci-test-limit-count run_count=1 update_snapshot=false specs_to_run=cypress/e2e/Regression/ClientSide/VisualTests/JSEditorIndent_spec.js,cypress/e2e/Regression/ServerSide/ApiTests/API_Edit_spec.js runId=12500879210


Optimize instance and prediction frontend rendering

Reduces instance and prediction rendering time by ~30% (2.1 seconds to 1.5 seconds). The main optimizations are:

Reduce the number of append calls by using text or html instead
Render instances and predictions together, rather than one after another, so that the display reflow is only triggered once instead of twice.

Addresses #1283

Does this change mean that the time to load the instances will be slower now?

Yes, but this doesn't matter because:

On broadband, both the instances and prediction JSON files download near-instantaneously since they are typically <5 MB in size (except for MS MARCO which is huge)
Previously, the prediction JSON file would wait for the instances JSON file to be downloaded, but this was fixed this in #1174
The delay in loading the instances as a result of this PR is <1 second
The page is not interactable by the user between the instances render and the predictions render, because they are so close to each other, and because rendering is a blocking task that blocks user actions. In the "before" profile below, there is essentially no gap between the layout reflow from the instances, and the blocking task for the predictions render.

Before profile:

After profile:


HTTPoxy migitation

https://httpoxy.org/
It is possible to set the HTTP_PROXY in CGI scripts by passing the Proxy header. If the script uses requests to download files, requests will happily use the attacker-supplied proxy to make requests.
This should be mitigated like it is in Perl (since 2001), Ruby, and libraries like curl.
I confirmed that HTTP_PROXY (in uppercase) is accepted as well as the conventional, lowercase http_proxy (requests 2.7.0)

We've been discussing this at length in IRC. We have a complex set of opinions here, but here they are:

In general, if you are running your Requests script in a location where your application allows writes to the environment, you should disable Requests' search of the environment. We have a flag for this: Session.trust_env. Setting it to False entirely and completely mitigates this risk.
CGI is an extremely uncommon mode for running Python code. It is stunningly inefficient, and as far as I know essentially zero Python applications are developed using it.
Our search for proxies is actually done by the Python standard library. This means that the more efficient fix is in the Python standard library itself, which can mitigate the problem not just for Requests but for all the other clients in the Python standard library.

I am willing to consider the possibility of raising warnings when running Requests inside a CGI process with trust_env=True, and I'm even willing to consider the possibility of forcing trust_env to False in such a situation, but realistically for Python code the correct solution to this is simply to not run your applications inside CGI.

Makes sense to me. Avoiding HTTP_PROXY (uppercase) in a CGI context would probably be a good move, but if requests is not doing that directly there is probably no sense in you taking active measures. I myself only ever use wsgi. I'm gonna go ahead and close this.

@remram44 For what it's worth, I would heartily support a patch to the stdlib's urllib.request module's getproxies method to implement this kind of checking. That seems like a much more productive place to put the patch. =) If you want to open a bug report for that, I'll happily chime in: I may even volunteer to write the patch myself!

I filed cpython-27568.


message of same key not send to same partition

Questions?
I send keyed message to kafka, but messages of same key are in different partitions.
Bug Report
Environment

Node version: 8.9.4
Kafka-node version: 2.11
Kafka version: 1.0

For specific cases also provide

Number of Brokers: 3
Number partitions for topic: 4

Include Sample Code to reproduce behavior
const kafka = require('kafka-node');

const Client = kafka.KafkaClient;
const Consumer = kafka.ConsumerGroup;
const Producer = kafka.HighLevelProducer;

const client = new Client({
    kafkaHost
});
const producer = new Producer(client);

producer.send([{
    topic: 'nodeLab_deployment_log',
    messages: new KeyedMessage('key', 'message'),
    key: 'key'
}], (err, data) => {
    if (err) {
        console.error(err);
    }
});

const consumerOptions = {
    kafkaHost,
    groupId: 'nodelab-test',
    protocol: ['roundrobin'],
    autoCommit: false,
    fromOffset: 'earliest'
};

const consumer = new Consumer(consumerOptions, ['nodeLab_deployment_log']);

Include output with Debug turned on

Thanks for your contribution!

Try using the HighLevelProducer and specify a partitionerType.


Bump up the dependency

Problem
Can't init by running go run github.com/arsmn/fastgql init
# github.com/arsmn/fastgql/graphql/executor
../../../../go/pkg/mod/github.com/arsmn/fastgql@v0.14.0/graphql/executor/executor.go:73:22: cannot use validator.VariableValues(e.es.Schema(), rc.Operation, params.Variables) (value of type error) as type *gqlerror.Error in assignment:
        need type assertion
../../../../go/pkg/mod/github.com/arsmn/fastgql@v0.14.0/graphql/executor/executor.go:174:15: cannot use err (variable of type error) as type *gqlerror.Error in argument to errcode.Set:
        need type assertion
../../../../go/pkg/mod/github.com/arsmn/fastgql@v0.14.0/graphql/executor/executor.go:175:29: cannot use err (variable of type error) as type *gqlerror.Error in array or slice literal:
        need type assertion

Reason
gqlparser wouldn’t return *gqlerror.Error anymore. It just return error. See here if you interested.
What did I fixed
As workaround, Message of gqlerror.Error is set to error.
And this is irrelevant but golang-lru supports Generics now. So types could be specified. ⭐

I really need this.

@arsmn Is this project still alive? Currently there's no way to install/use it

@gaby
This project is not maintained for a long time as I didn't have free time to work on.
I will take a look at to improve and update it soon.

@arsmn Thanks! 😁


[QUESTION] How can I get the user profiles of member of a List?

I am wondering how can I get information about the users that are members of a List.
Thank you in advance!

Great, I'll take a look at it. Thanks for the response!


Inquiry Regarding English Version Support for Figma Design

[ ] I'm sure this does not appear in the issue list of the repository

Basic Info
What are the similar cases of this feature
No
What problem does this feature solve?
This UI library looks fantastic, and we would like to promote it on our company's U.S. site. However, we noticed that the current Figma design is only available in Chinese: https://www.figma.com/community/file/1053233047330321743.
Do you have any plans to provide support for an English version? Thank you.

目前应该尽可能都用英文了。。属性可能中文比较多，后续会把属性切换到英文 ❤


Maneuvering and Navigation tasks Njord

Time estimate: idk
Deadline: 14 August
Description of task:
State machine for the Maneuvering and Navigation tasks in Njord. The tasks are very similar, so it makes sense to have one system that can solve them all. The tasks are as follows;
Task 1:
Demonstrates the ability to stay the course as well as the ability to spot buoys in a distance. Buoys are distant of 20 meters in length and 5 meters in width.
Task 2:
Buoys are now closer spaced, 5 meters instead of 20 meters in length, but simple turns are introduced.
Task 3:
A cardinal marker must be correctly interpreted and the vessel shall navigate accordingly. The cardinal markers are part of the iala buoyage system.
Task 4:
Same as task 2, but it Includes a U-turn and cardinal marker.

Have made a dummy FSM, with dummy states, in a folder called Njord_tasks. Have done this to experiment with smach, because i plan on using it to make this "Maneuvering and Navigation tasks" fsm.

After review of concept with peers and mentors, implementation of the actual states and smach state machine (at least a experimentational first draft) for the navigation tasks in Njord has started. The states are far from finished, but the structure /transitions for the FSM is set up. I will not have time to finish this before Easter because of an excursion abroad. I will be here in Easter, and can continue working on it then.

Have implemented a "first draft" of idle and search state. The code does not currently get information about actual bouys and does not get its actual position. Search does not physically look around for bouys in this implementation.
My plan is to test the code by feeding it fake position and bouy information.

Done a big and necessary restructuring of the code i had before. The two most critical things missing now is Information about the closest discovered bouys/markers  of each type, and giving the new waypoint to LOS.

To make the service "overwrite_waypoint_list_with_new_waypoint_list" work, a new vortex msg must perhaps be made, unless there is some way of using the already defined "Waypoint" message. I think this is a necessary new service.

I made a new version of the overwrite_waypoint_list_with_new_waypoint. I have tested this new version, and it works. It overwrites all waypoints in the list, but not the oldest one. A downside is that we have to make sure at last waypoint is in the list, before using this function. I have updated the "Bouys_tasks.py", so it uses this new version.

Code is very buggy and imports must be fixed. Search is implemented by @alekskl01. Costum message is made.

Smach FSM is completely restructured. As a result, much of the code in functions and other logic was changed. Needs debugging!

All files compile. Tested that they run, but not in simulator.


Documenting Python Pinocchio

Python objects are yet documented by using strings as arguments of boost::python calls. Indeed, the python code already contains a lot of document, available through help(object) in the python shell.
Next, we need to gather all this documentation into a nice interface. I think that Sphinx is the best tool to do that, but I am not sure. What do you think?
The best would be to keep all the doc at the same place, in the C++ python module. Sphinx should then automatically use boost::python to generate the html python doc.
I found that question, explaining (somehow) how to do it.
http://stackoverflow.com/questions/9375175/generate-a-boost-python-reference

By luck, I ended up on this, in the doxygen documentation: http://www.stack.nl/~dimitri/doxygen/manual/customize.html#xmlgenerator.
The last line says:

See the Breathe project for an example that uses doxygen XML output from Python to bridge it with the Sphinx document generator.

I have no idea if this is useful for you.

Another option is this: http://stackoverflow.com/questions/34896122/how-to-avoid-redundancy-between-c-and-boostpython-docs
It shouldn't be too hard to set up. It's mostly some CMake.

I think this last option is the best one, avoiding double descriptions of same objects or operators. Thanks a lot for this pointing.

I do not think that "how-to-avoid-redundancy-between-c-and-boostpython-docs" is that useful, at least yet. Right now, we mostly have a boost::python documentation, and we do not care so much about having the same Doxygen documentation (at least for the python module of Pinocchio).
We are indeed mostly interested in having a python-style HTML doc synthesized from the boost::python documents.
Or are you suggesting that we use Doxygen as the Python documentation, while keeping the boost::python comments?

Just to continue the discussion, one efficient way to get clear python doc from boost::python is the following options docstring_options local_docstring_options(true, true, false); as pointed by http://stackoverflow.com/questions/6114462/how-to-override-the-automatically-created-docstring-data-for-boostpython

Is there a place we can contribute to the documentation for pinocchio? There are still quite a few outdated bits in the main documentation that make for quite a headache for new users and I would love to be able to help. It's always easier to contribute to documentation as you are going through the process of learning because you have to install all the new packages etc etc.

In pinocchio/blob/master/doc/d-practical-exercises/2-invgeom.md :
robot.initDisplay(loadModel=True)

is deprecated, should be:
robot.initViewer(loadModel=True)

Thanks @drewhamiltonasdf for raising this issue.
Could you provide a fix for this?

Sure, what's the recommended way?
I tried forking the documentation to fix the broken LaTex formatting for title:
Using quaternions for an    object
in rigid-bodies.md, but I couldn't figure out how to merge. Do I just fork and merge into main and wait for approval or is there a better way?
Not sure if it is irritating or helpful but I would love to contribute to the documentation as I am working my way through learning Pinnocchio...

Yes, please open a PR with a fix on the devel branch (which is the branch collecting ongoing developmentsà.
As you are not a maintainer of this repository, you cannot merge.
To enhance the quality of the project, we also proceed with PR reviews by the maintainers or other persons related to the projects.
@drewhamiltonasdf We do appreciate your contributions, notably in terms of documentation. It will for sure help others to understand and dive into Pinocchio. I'm looking forward to your fixes.

@jcarpent Great. I'll give it a shot, please let me know if I am doing it wrong. I looked at the Contribution Guidelines, but I'm sure I'll get it wrong.
Best.


Add --noReports option so that reports are now made by default

closes #390

Thanks! Looks good to me.

Then I'm merging ;-)
Thanks


Added CONTAINER_LOGGER_LOGROTATE_MAX_STDOUT_SIZE & CONTAINER_LOGGER_L…

…OGROTATE_MAX_STDERR_SIZE (Cassandra)

Commit for Cassandra contains updated code after initial Kai's review in the old branch (this branch is now deleted and the old PR is closed).

I've updated the PR with change set for HDFS as it resides in the same repo. Please review it as well.

@kaiwalyajoshi can you merge this? TC statuses are not getting reflected here.


Docker stop and rm don't act on tagged or named containers??

I'm working with docker-compose to handle naming my containers (which I'm guessing is --label?)
CONTAINER ID        IMAGE                    COMMAND                CREATED             STATUS              PORTS                            NAMES
421a0ae09ce6        kdelfour/cloud9-docker   "supervisord -c /etc   2 days ago          Up 2 days           3000/tcp, <IP_ADDRESS>:7676->80/tcp   alex_code_1
54f5026523b7        cloudfleet/mailpile      "/bin/sh -c './mp --   2 days ago          Up 2 days           <IP_ADDRESS>:33411->33411/tcp         alex_mail_1
6fcd5f666fd4        ghost                    "/entrypoint.sh npm    2 days ago          Up 2 days           <IP_ADDRESS>:11180->2368/tcp          alex_blog_1

anyway, on interacting with them:
docker stop --label alex_blog_1
flag provided but not defined: --label
See 'docker stop --help'.

Any help on interacting with docker containers by name? my solution at this point was to use their ID, which isn't fun and in fact takes away the "I can't believe it's not awful™" factor.
I suppose if this is a bug or a fix, what mostly needs to be repaired is the man page and --help output?

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

@Thetoxicarcade I believe docker stop alex_code_1 should just work! There are no labels involved here.

weeeee! thanks c:

No problem :-) You can substitute container ID by its name pretty much anywhere on the CLI.

just so long as I can name it at some point.


Music Stations Presets

I have several Amazon Music and Pandora Stations in my Sonos Favorites. I also have several Sonos Playlists.
If I have Alexa "tell sonos to play MYFAVORITE" and the favorite is a playlist, sonos will group the rooms I've setup in presets.json, and starts playing in all the rooms. This works correctly.
If I have Alexa "tell sonos to play MYFAVORITE" and the favorite is a streaming music station, amazon or pandora, music will only be sent to the first room in the preset. No grouping or un-grouping of the rooms happens.

Depends on: https://github.com/jishi/node-sonos-http-api/issues/192


Add CLI to the module

Uses https://github.com/sindresorhus/meow

thanks for the pr.

Sure. This would be really helpful during testing, which is the reason I added it.
On second thought, it would be pretty easy to do it without any extra dependencies too. (Using process.argv) if you would like me to do it that way, I can change and resubmit this pr.

it would be pretty easy to do it without any extra dependencies too.

that would be great! I'd be more than happy to merge then, thanks!

Done! I have removed the dependencies, and done it using just process.argv. Have a look!

Fixed!

Done!

bumped, tagged and published! thanks again!


[BUG] System.Net.Http.HttpRequestException: Response status code does not indicate success: 403 (Forbidden).

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.

What problem did you encounter?

Bloxstrap_20240614T214852Z.log

Help Wiki Page
Launch Roblox via the game client (enable the desktop app if disabled in Bloxstrap) after looking through the pages. You might need to make an alt though.

Fixed with v2.6.0


Should online-endpoint be endpoint?

In the following command:
az ml online-endpoint create -n $ENDPOINT_NAME -f $BASE_PATH/create-managed-endpoint.yaml

I get the following error:
$ az ml online-endpoint create -n $ENDPOINT_NAME -f $BASE_PATH/create-managed-endpoint.yaml
ERROR: 'online-endpoint' is misspelled or not recognized by the system.

The help for the command shows:
$ az ml --help

Group
    az ml : Manage Azure Machine Learning resources.
        WARNING: This command group is experimental and under development. Reference and support
        levels: https://aka.ms/CLI_refstatus
Subgroups:
    code        : Manage Azure ML code assets.
    compute     : Manage Azure ML compute resources.
    data        : Manage Azure ML data assets.
    datastore   : Manage Azure ML datastores.
    endpoint    : Manage Azure ML endpoints.
    environment : Manage Azure ML environments.
    job         : Manage Azure ML jobs.
    model       : Manage Azure ML models.
    workspace   : Manage Azure ML workspaces.

To search AI knowledge base for examples, use: az find "az ml"

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

ID: 6bae69d4-d351-ba32-9d39-14ddcd973adc
Version Independent ID: 9c8dfe10-81fe-87c2-ad13-2ce8f4037eb2
Content: High-performance model serving with Triton (preview) - Azure Machine Learning
Content Source: articles/machine-learning/how-to-deploy-with-triton.md
Service: machine-learning
Sub-service: core
GitHub Login: @shivanissambare
Microsoft Alias: ssambare

Nvm, I upgraded the az ml extension. It might be good to say which version the doc applies to.

Thanks for the feedback, We will review and update the doc to include the version.


Fragment fingerprint

Also, the CMD application needs to be documented better. Where do I get example input files, for example? And maybe, we can think about returning the created finger prints somehow.

Oh and the CMD app needs to be protected against misuse. For example, if I do "java -jar .\FragmentFingerprinter-fat-<IP_ADDRESS>.jar",  I get an ArrayIndexOutOfBoundsException that tells me nothing.


Feat: Added Konnect examples for Auth plugins related to Consumers

Description
A customer of Kong Konnect discovered that we were missing data in our documentation on the API calls in Konnect to make for adding credentials to consumers.
Added example API calls to the documentation for plugins including HMAC, JWT, Basic Auth, Key Auth, and ACL.
I believe these will eventually be added elsewhere as part of the ongoing work in the API spec documents for Konnect, but as a stop-gap I am hoping it can exist in the individual plugin documentation for now.
Related: Slack thread
Testing instructions
Preview link: https://deploy-preview-6742--kongdocs.netlify.app/
Checklist

[x] Review label added
[x] PR pointed to correct branch (main for immediate publishing, or a release branch: e.g. release/gateway-3.2, release/deck-1.17)

@d19dotca Some changes to the URL's to explicitly state they require the UUID of the consumer in the Konnect API.

Thanks @Guaris - I committed the suggested changes now. 👍

I'll test this tomorrow morning and merge it!

@lena-larionova @Guaris After looking at the content added in this PR and what was added in #6758, it looks like they cover most of the same information (Michael's PR doesn't include ACL though, it only includes auth plugins, and this PR does). However, because in the original plugin docs, sometimes consumers are talked about in both overview and the basic config examples pages, this PR updates the overview pages and Michael's updates the basic config pages. I think before we merge this PR we should:

Remove any duplicate consumer content from the overview and maybe instead link to the basic config example page in it's place so the information is only in one place.
Make sure we reuse Michael's basic config examples consumer content in the ACL plugin page.

@d19dotca @cloudjumpercat Dustin, based on Diana's feedback would these changes still solve the initial customer concerns?

Sorry for the late reply @Guaris, @cloudjumpercat, and @lena-larionova.
I updated the data based on where they were at the time, but perhaps this is also a good opportunity to follow what I think Michael was trying to which is move these all from the Overview page to their own config example page for managing consumers and credentials for the plugin.
It sounds like mine may contain more data (at least since ACL was also added in my PR), so perhaps it makes sense to just validate that Michael and I came to the same examples (and correct if any mismatches) but also move them to their own page in the Config Examples area at the same time as it sounds like Michael was doing? I'm not sure the best way forward since it sounds like we unfortunately duplicated efforts on that, not sure which path is the best path forward in this case.

Actually if we're going to move to the Config Examples pages from Overview, then maybe it's easier to use Michael's PR and we can just update to also include ACL?

Okay yeah I think this can be closed, and then Michael's can be approved and merged, and I'll add in afterwards the ACL one to that.


Multiple SQS receives spring-cloud-aws-messaging with default config 2.2.1.RELEASE

Describe the bug
I am seeing multiple receives on a single SQS message using the AWS GUI to add a message to the queue. I am running in a containerized environment and I will get 1 to 2 receives per container for a single message.
I am using the default configuration of @SqsListener on a controller method in spring boot with no xml based config and minimal java config:
@Configuration
@EnableSqs
public class AwsConfig {

    @Bean
    public QueueMessagingTemplate queueMessagingTemplate(
            AmazonSQSAsync amazonSQSAsync) {
        return new QueueMessagingTemplate(amazonSQSAsync);
    }
}

@Controller
@AllArgsConstructor
@Slf4j
public class SqsPollingController {

    private final ProjectWelcomeEmailService welcomeEmailService;

    @SqsListener(value = "${app.sqs.queue.welcome}", deletionPolicy = SqsMessageDeletionPolicy.ON_SUCCESS)
    public void welcomeEmailQueueListener(SendWelcomeEmailRequestDto welcomeEmailRequestDto) {
        log.info("Received welcome email request from SQS");
        welcomeEmailService.handleRequest(welcomeEmailRequestDto);
    }
}

My queue is configured as such:

Sends/Receives

What is going on? Does this library override message visibility to 0 on receive? I don't know where to put a breakpoint to find this.

Hi @hello-josh ,
Does this happen to all the messages or only few messages ?
We are also facing a similar issue where the message isn't getting deleted after successful execution, hence message is being received 2 or 3 times.

Every message. I am in development phase so I am injecting one message at a time and I get 1 receive per running container all at the same time. I can't verify what is happening, but it seems as if the queue polling is overriding message visibility. It doesn't happen when I poll via the AWS UI or the AWS CLI on the same queue. I've even tried running one instance of my app in a debugger locally in IntelliJ and I get one per container plus one from my local. I can't seem to find the offending code that makes the SQS request

@hello-josh   Have you tried playing with the visibility timeout setting ? I would suggest set it to 2 minutes or so  and see. Maybe in the code after you read the message you can set the timeout to a higher value and see ?
Ref :
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html#configuring-visibility-timeout

@hello-josh Have you tried playing with the visibility timeout setting ? I would suggest set it to 2 minutes or so and see. Maybe in the code after you read the message you can set the timeout to a higher value and see ?
Ref :
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html#configuring-visibility-timeout

I did review the setting. Visibility is set to 30 seconds. Please see my original bug report and the screen shot in it.

I am not able to reproduce this issue. Unless you are changing SimpleMessageListenerContainer#visibilityTimeout to 0, this should not happen. If it's still the case, please provide fully working example ideally as a github repository and I am happy to take another look.

@maciejwalkowiak I moved this code into python/lambda instead. I couldn't figure it out and wasn't able to spend time on it. It seems the issue is when you have two or instances of the app running (i.e. two containers behind a load balancer). I am going to close this since I don't have code around to reproduce it any longer.

Thanks for an update. I did test with having multiple copies of application running and still only single copy of the message was being received.


Required Preprocessing?

Could you please elaborate on the pre-processing used for the AFEW dataset? I am currently training on the aligned faces originally provided and only getting 40% val precision (after 60 epochs. It slows considerably after that). I am assuming that there is something wrong with pre-processing.
Also, could you provide the weights of the final trained model?

Faces detection and alignment are implemented by Dlib. My processing detail is shown in my paper. Also, I recommend you to use the pre-train model, Resnet18_FER+_pytorch.pth.tar that I have shared.
Would you be kind enough to assign me a star?

Thank you for your response. I am already doing the pre-processing but only reaching 45% on AFEW (It maybe because I am not giving 25% extra padding in the facial bounding boxes).

@vkumar1997
Merry Christmas, I recently update the Emotion-FAN, new features include data process, environment install, CK+ code, Baseline code, and more detail instructions. Also, you can find the old version directory of Emotion-FAN in the README.md. I hope my new updates can help you greatly. Please see the Emotion-FAN for more details.


pull request for e2e test at 02/04/2017 23:26:09

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Pandas runs so slow when get option data

I'm using windows server 2003, and python2.7 with pandas 0.16.2. It takes my computer 4-5 minutes to execute the following program:

from pandas.io.data import Options
aapl = Options('uso', 'yahoo')
data = aapl.get_all_data()
print data.iloc[0:5, 0:5]

Is it ok or not?
If anyone wants to know more details, please let me know.
Thanks
L

That has probably more to do with the internet connection/download speed (on my computer it takes some 40s at the moment).
Are you able to try it on another machine?

Hi jorisvandenbossche,
It seems you are right, the issue is related to the internet speed. Now it takes 50s-88s after I connect internet on vpn.


Centrosymmetry for a diamond structure

Describe the bug
I have the feeling periodic boundaries are not correctly included when calculating centro symmetry for diamond structure
To Reproduce
Steps to reproduce the behavior:
https://github.com/jan-janssen/ovito-vs-pyscal/blob/master/ovito-vs-pyscal-centro-diamond.ipynb
Additional context
Related pyiron issue https://github.com/pyiron/pyiron/pull/1202

Fixed in 3177ea54add2b3ac4c58cfede9ad7630ac4d788b

I just checked the example above and the results are still different.
ovito:
[16.585255, 22.11367 , 22.11367 , 22.113663, 22.11367 , 22.113663, 22.11367 , 22.113663]

pyscal:
[22.113675, 16.58525625, 16.58525625, 16.58525625, 16.58525625, 22.113675, 22.113675, 22.113675]

This is not a bug actually. The centrosymmetry measures the inverse symmetry. For a diamond structure, the first shell has 4 atoms. If you include the second shell, then that would be 16 atoms in total. For both 4 and 16 as number of neighbors, pyscal, ovito and LAMMPS gives the same centrosymmetry value. For any number of neighbors between 4-16, the value will depend on which neighbors are selected. It should be 16.58 or 22.11 for each atom, but the number of atoms with these would depend on which neighbors are selected from the second shell. As such, pyscal, ovito and LAMMPS all differs in the number of atoms with 16.58 and 22.11. I think as such it is not a bug, in my opinion for the test cases, either 4/16 should be selected for diamond, 6/14 for bcc and 12 for both fcc and hcp.

@srmnitc thx for the explanation


Adding Search API sample code.

This is the code snippet on:
https://cloud.google.com/appengine/docs/java/search/
I added actual retry code with simple exponential back-offs.
I needed to add SuppressionCommentFilter to the Checker and FileContentsHolder to the TreeWalker in order to suppress warnings for import ordering. It might be worth adding to java-repo-tools, but it's out of scope of this PR.
@tswast @lesv I'd appreciate it if you could take a look.

Coverage increased (+3.9%) to 23.659% when pulling 030fdfd768385db179e5a5faedd08cfd0bc0c19c on search into c6749dde220112ce99bc88058c70005a5091af7f on master.

Rebased to the master

Coverage increased (+3.9%) to 23.301% when pulling bab8e1e2fb1e6a166903a828600a32b2b55de78b on search into bd070d9b5dafdea3e5b494c9fb5eee504ef6d3d0 on master.

Just those comments.

I propose that we merge this as it is and file a bug for adding SuppressionCommentFilter and  FileContentsHolder. WDYT?

LGTM


Fix keyboard shortcuts in uiEntry based controls on macOS

See #103

Ooh this is perhaps a better solution, since sometimes you don't want menus.

Yes this needs to be fixed first, regardless of any potential future changes to the menu API..

Please test this PR without your previous Mac specific patch if possible.

Replaced by #107


Update README.md

Changes include, but are not limited to, the following:

Phrasings
Grammatical errors
Spelling errors
Dangling modifiers

Seems good


Support for PyTorch 1.8.1 (or PyTorch >= 1.7.0 in general)

When I install PyTorch 1.8.1 with CUDA 11.1 support (from https://pytorch.org/get-started/locally: pip3 install torch==1.8.1+cu111 torchvision==0.9.1+cu111 torchaudio===0.8.1 -f https://download.pytorch.org/whl/torch_stable.html), I get the following error when running e.g. pylaia-htr-decode-ctc:
Traceback (most recent call last):
  File "/usr/local/anaconda3/lib/python3.8/site-packages/pkg_resources/__init__.py", line 567, in _build_master
    ws.require(__requires__)
  File "/usr/local/anaconda3/lib/python3.8/site-packages/pkg_resources/__init__.py", line 884, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/local/anaconda3/lib/python3.8/site-packages/pkg_resources/__init__.py", line 775, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (torch 1.8.1+cu111 (/usr/local/anaconda3/lib/python3.8/site-packages), Requirement.parse('torch<1.7.0,>=1.6.0'), {'nnutils-pytorch'})

Seems to be that nnutils-pytorch does not support torch > 1.7.0?

I have now successfully compiled nnutils-pytorch for the above configuration and all seems to work fine.

Seems to be that nnutils-pytorch does not support torch > 1.7.0?

It should, it's just that there is not maintenance currently 😕
I opened https://github.com/jpuigcerver/nnutils/pull/5 to update this a bit ago. Would need to come back to it and ping Joan to merge.

I have now successfully compiled nnutils-pytorch for the above configuration and all seems to work fine.

I'm glad you could work around it though

installation fails on nnutils-pytorch. @jkloe how did you manage to compile it?

@dstoekl after installing the pytorch version I needed (pip3 install torch==1.8.1+cu111 torchvision==0.9.1+cu111 torchaudio===0.8.1 -f https://download.pytorch.org/whl/torch_stable.html), I did a manual compilation of nnutils-pytorch - I had to change the pytorch/requirements.txt file there (removed the version restrictions of the torch library) and also pytorch/setup.py, where I changed the version number to 1.8.1 (corresponding to the version of pytorch).  Then python setup.py build && python setup.py install worked for me.

excellent! many thanks for your indications @jkloe

HI I am still getting the error , may be i have missed something may you please explain again what we need to do to make code working I am getting nnutlis error