All Videos playing without audio.

implementation 'com.github.Commit451:YouTubeExtractor:6.0.0'
val videoUrl = result.streams
.filterIsInstance<Stream.VideoStream>()
.max()
?.url"
All Videos playing without audio.
How do I fix it.

Try something like this to get the stream urls with Video and Audio
 `private var MyVodList: ArrayList<Stream.VideoStream> = ArrayList()`

`for (item in extraction.streams){
                    if (item is Stream.VideoStream) {
                        MyVodList.add(item)
                    }

                }
                Collections.sort(MyVodList)
                for (item in MyVodList){
                    if (!item.isVideoOnly){
                        Log.e("Audio&Vid", item.url)
                        videoUrl = item.url
                    }
                }`

Yep, good solution.


fresh install of icon-sdk-js still creates dependency for secp256k1 v5.0.0

Issue
A couple months ago a high security alert was raised in relation to secp256k1 on version 5.0.0, the alert title was secp256k1-node allows private key extraction over ECDH
icon-sdk-js package was updated in the following PR
https://github.com/icon-project/icon-sdk-js/commit/b4bb2f525e9c3d16e8fd437148e57f3d7c88bb09
For some reason a fresh install of icon-sdk-js still install the secp256k1 v5.0.0
how to reproduce

Create a new nodejs project with npm init -y
install package by running npm install icon-sdk-js

check package-lock.json
"node_modules/secp256k1": {
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.0.tgz",
      "integrity": "sha512-TKWX8xvoGHrxVdqbYeZM9w+izTF4b9z3NhSaDkdn81btvuh+ivbIMGT/zQvDtTFWhRlThpoz6LEYTr7n8A5GcA==",
      "hasInstallScript": true,
      "dependencies": {
        "elliptic": "^6.5.4",
        "node-addon-api": "^5.0.0",
        "node-gyp-build": "^4.2.0"
      },
      "engines": {
        "node": ">=14.0.0"
      }
    },

Thanks for the head up.
We need to release a new version.
I will handle this issue shortly.

A new version 1.5.3 has been released.
Can you please check again with the new version on your side?

Hi @sink772
I just checked and is fixed


fix the invalid kube yaml causing panic issue

What does this PR do?:

This PR updates  the kubeyaml parser to use unmarshal to ensure the kube yaml is in the expected format. to avoid the panic when trying to convert an interface{} into a 'map[string]interface {}'
panic: interface conversion: interface {} is string, not map[string]interface {} [recovered]
	panic: interface conversion: interface {} is string, not map[string]interface {}

Which issue(s) this PR fixes:

for has bug: https://issues.redhat.com/browse/RHTAPBUGS-113
PR acceptance criteria:
Testing and documentation do not need to be complete in order for this PR to be approved. We just need to ensure tracking issues are opened.

Open new test/doc issues under the devfile/api repo
Check each criteria if:
There is a separate tracking issue. Add the issue link under the criteria
or
test/doc updates are made as part of this PR
If unchecked, explain why it's not needed

[x] Unit/Functional tests

[ ] QE Integration test

[ ] Documentation

[ ] Client Impact

[ ] Gosec scans

How to test changes / Special notes to the reviewer:

@yangcao77 tests failing

@maysunfaisal fixed the test failure. can you help review again ? thanks


ES modules for the browser?

Any plans to update this repo to support ES modules? https://github.com/kristoferbaxter/preset-env-modules/blob/master/.babelrc.js
And terser as minifier I guess.

Haven't decided yet. This project goes a bit further than what's possible with module/no-module output as it targets output with more granularity.
Perhaps a sibling implementation would be prudent.

This is what I thought about https://dev.to/stereobooster/my-wishlist-for-javascript-transpiler-3080, see "Wish 1: painless polyfills". (issue can be closed)


Flashing ESP Device through ESPtool

Looking for some assistance using your pico-uart-bridge to flash an ESP device via esptool.
I currently keep getting timeouts through ESPtool.  When I connect to minicom and look at the ttyACM0 device and power cycle the ESP chip on UART0, i do see activity, but can't seem to get flashing via ESPtool to work.
Any advice on getting this to work with esptool?
Thanks!

@mikeneiderhauser after merging https://github.com/Noltari/pico-uart-bridge/pull/15 I could flash an ESP-01s through the ESPHome website (although it finished with an error it flashed succesfully), but I couldn't flash it with the ESPHome flasher.
Also sometimes I can see some corruption when connecting through serial port:

I updated to the latest release u2f and attempted to flash again.  I still can't seem to get it to connect.

It's a bit flaky but I tried  esptool.py --port /dev/ttyACM0 --baud 76800 --chip esp8266 --before no_reset_no_sync --connect-attempts 0 read_mac and it worked okay for my use-case, perhaps flashing would work as well

I'm having this issue with esptool as well, Adafruit web serial esptool does seem to work though. I haven't seen it fail or do anything weird.


hosted event never triggered?

Expected behaviour
hosted event should be triggered?
Actual behaviour
nothing xD
Steps to reproduce
my code:
this._client = new tmi.client({
	options: {
		debug: false
	},
	connection: {
		reconnect: true,
		secure: true
	},
	identity: {
		username: 'username',
		password: 'password'
	},
	channels: [
		'#username'
	]
});
this._client.on('hosted', (channel, username, viewers, autohost) => {
	console.log('NEW HOST'); // never triggered :(
});
this._client.connect();

environment

Operating system: Debian GNU/Linux 8.10 (jessie)
TwitchJS version: 2.0.0-alpha.20
NodeJS version: v6.14.2

hosting works, but i mean the "hosted" event.
i did not read: "This event is fired only if you are logged in as the broadcaster."
my mistake


Add course resources page

pros of using notion:

incredibly easy to setup a new page
comes with metadata (last edited, responsible member, author) by default
integrates with the rest of our documentation system
seems to have a serviceable api

cons of using notion:

we are locked into the walled garden and reliant on a proprietary service
we do not control our content

Will look into an open source CMS

well merge it in the meantime please bc any cms will take a long time to implement


HacktoberFest website says excluded project?

Yes it also says in my contribution list also.
Will it be counted or not ?

Lets hope that it gets counted

The project is excluded now.

I don't think so it will get counted

Actually, Hacktoberfest has excluded many DSA repositories, which is why our contribution is not counted in it :(.

I'm receiving this from almost everywhere. I have contacted them regarding this. I will let you guys know as soon as I get any reply back.


Media format cache parameters configurateable

Tasks:

[ ] test coverage
[ ] gather feedback for my changes
[x] submit changes to the documentation
[x] added changelog line

Informations:

Q
A

Tests pass?
none

Fixed tickets
none

BC Breaks
yes

Doc
https://github.com/sulu-io/docs/blob/master/detail-specification/500-assets/DET-510-Storage.md#user-content-local

@danrot PR udpated

Can you please make this mergable again and squash into one commit?

@danrot done can be merged if travis is ok

@danrot tests fixed and rebased!

@danrot is here still something I did forget to fix?

No, just going to test, if it works I will merge.


docs: Add default conntrack gc interval

docs: Add default conntrack gc interval

Set --conntrack-gc-interval to an interval lower than the
default.

The troubleshooting guide suggests tweaking
garbage collection intervals for certain
environments experiencing drops. But it does
not report the default interval for conntrack garbage
collection. As a result, this may confuse users
who interpret the 0 value of the flag as the
garbage collection happening all the time.
While the conntrack GC interval can change
throughout the time when the agent is running,
it's useful to add the default starting interval.
Reported-By: Arun Porwal
Signed-off-by: Aditi Ghag<EMAIL_ADDRESS>

Checkpatch complains because it does not recognise the (absent) email address.

While this would be blocking for the Signed-off-by:, this is fine for a Reported-by: tag where we don't necessarily have the email address of the reporter. So this is safe to ignore. Ready to merge.


Caching is not working when workflow is triggered by repository dispatch

Hi,
I have a workflow that uses cache.
The workflow works fine when it triggered on push/manually with 'workflow dispatch'
but when it triggered with 'repository dispatch' meaning it is triggered by another job, I never get a cache hit and all the dependencies are installed from scratch.
This is my workflow:
name: Caching with npm
name: build and trigger release
on:
  repository_dispatch:
    types: [ release ]
  workflow_dispatch:
    branches:
      - test-branch
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Configure AWS CLI
        uses: aws-actions/configure-aws-credentials@v1
        with:
          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          aws-region: us-east-1

      - name: Login to Amazon Public ECR
        uses: docker/login-action@v1
        with:
          registry: ****.dkr.ecr.us-east-1.amazonaws.com
          username: ${{ secrets.AWS_ACCESS_KEY_ID }}
          password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}

      - name: Create ecr repo incase it doesn't exist
        uses: int128/create-ecr-repository-action@v1
        with:
          repository: sharon-test
          lifecycle-policy: lifecycle-policy.json

      - name: Set up Docker Buildx
        id: buildx
        uses: docker/setup-buildx-action@master

      - name: Cache Docker layers
        uses: actions/cache@v2
        with:
          path: /tmp/.buildx-sharon-test-cache
          key: ${{ runner.os }}-buildx-${{ github.sha }}
          restore-keys: |
            ${{ runner.os }}-buildx-

      - name: Build Docker image
        uses: docker/build-push-action@v2
        with:
          context: .
          builder: ${{ steps.buildx.outputs.name }}
          push: true
          tags: ****.dkr.ecr.us-east-2.amazonaws.com/sharon-test:latest, ****.dkr.ecr.us-east-2.amazonaws.com/sharon-test:${{ github.event.client_payload.tag }}
          cache-from: type=local,src=/tmp/.buildx-sharon-test-cache
          cache-to: type=local,dest=/tmp/.buildx-sharon-test-cache-new
          file: Dockerfile.api

      - name: Move cache
        run: |
          rm -rf /tmp/.buildx-sharon-test-cache
          mv /tmp/.buildx-sharon-test-cache-new /tmp/.buildx-sharon-test-cache

I would also like to mention that In this example you see I am using the local cache
but in the 'Build docker image' part I also used github actions global cache:
      - name: Build Docker image
        uses: docker/build-push-action@v2
        with:
          context: .
          builder: ${{ steps.buildx.outputs.name }}
          push: true
          tags: ****.dkr.ecr.us-east-2.amazonaws.com/sharon-test:latest, ****.dkr.ecr.us-east-2.amazonaws.com/sharon-test:${{ github.event.client_payload.tag }}
          cache-from: type=gha
          cache-to: type=gha,mode=max
          file: Dockerfile.api

but it doesn't change a thing,
the cache hit fails in  'Cache Docker layers' evreytime.
Does anyone have a clue of what might be the issue with repository dispatch? or any other issue?
Thank you!

Help anyone?

Hey @SharonDiskin I have verified that cache restore is happening with repository_dispatch event using a workflow that saves and restores cache in two jobs. For further debugging, I would like to have a look at the debug logs, can you please share them.

Hi @SharonDiskin Are you still facing this issue? If yes then will it be possible to share the debugging logs?


Fix age filter

Description
NCI defines pediatric as "from birth to 15 years old". We need to reflect this with our age filter.
https://www.cancer.gov/publications/dictionaries/cancer-terms/def/pediatric-cancer
Acceptance criteria

[x] age filter fixed

Replaced 10-19 age bin with 10-15 and 16-19. Done.

Replaced 10-19 age bin with 10-15 and 16-19. Done.

Great, thanks @CsabaHalmagyi

Great, thanks @CsabaHalmagyi


[Type checker] Suppress near-miss warnings within the type definition.

There are a number of things that can only be written within the main
type definition (e.g., required initializers, stored properties),
making it far more likely that we'll get false positives from the
newly-introduced "near-miss" warnings for protocol
conformances. Moreover, sometimes a number of protocol conformances
are placed on the main type definition, increasing the potential for
false positives.
Suppress near-miss warnings for potential candidates when the protocol
conformance is stated on the main type definition itself. Therefore,
we only perform near-miss checking of non-@objc requirements when the
conformance itself was declared on an extension, which is roughly the
development style that near-miss warnings favor.
Fixes rdar://problem/37283860.

@swift-ci please smoke test and merge

@NachoSoto , we'll see if this strikes the right balance

Awesome :)


Spine integration illustrated page

"....update the care record of the patient’s registered practice..." suggest "...at the patient's..."

Covered off in https://github.com/nhsconnect/gpconnect-messaging/commit/9e77e8fd4aa7ad1a75b3e19594c20b5176456cfe


Report generation failure

As a follow up to https://github.com/cloudflare/flan/issues/11 , after git pull now I get...
ERROR in script: ERROR: Script execution failed (use -d to debug) at location: <IP_ADDRESS> port: 8080 app: http (cpe:/a:jeremy_graham:chorus:2)

Yes I added that line to be printed from output_report.py in the latest commit but the original error happened when in the Nmap run. Could you try to rerun the entire scan and see if you still see that error in the output?

Yeah, sorry, the error is printed, but a .tex file is generated, so I think this can be closed.


polynucleotide adenylyltransferase activity relations and def

polynucleotide adenylyltransferase activity
Catalysis of the template-independent extension of the 3'- end of an RNA or DNA strand by addition of one adenosine molecule at a time. Cannot initiate a chain 'de novo'. The primer, depending on the source of the enzyme, may be an RNA or DNA fragment, or oligo(A) bearing a 3'-OH terminal group.
GO:0004654 polyribonucleotide nucleotidyltransferase activity
Catalysis of the reaction: ATP + RNA(n) = diphosphate + RNA(n+1).
and both are true for the activity of my gene product.
Do I need polyribonucleotide adenylyltransferaseactivity?
maybe there should be a general  nucelodide/ribonucleotide term with specific terms for RNA or DNA?

GO:0004654 is named as though it's not specific for any particular nucleotide, but the reaction in the definition specifies ATP. I don't know whether the name or text def should change (the def could use NTP to be generic).

oh yeah....name and def don't match....

Looks like there was an error in the definition. The EC entry that is used as a crossref says that the reaction uses a nucleotide diphosphate. If I correct the def, will that work for you?

I'm still confused!
These are the options:

OK I get it now. we  use polynucleotide to refer  to both  ribonucleotide/deoxyribonucleotide
polyribonucleotide to refer to RNA nucleotide
some of the synonyms are mixed up
exact	RNA adenylating enzyme activity isn't exact for GO:0004652
it's exact for the descendant  GO:1990817 RNA adenylyltransferase activity
GO:1990817 RNA adenylyltransferase activity
should be a descendant of GO:0004654 too?

This isn't all...
Once that part is resolved, Now I'm back to where I started looking.
tRNA adenylyltransferase activity
is defined
Catalysis of the reaction: ATP + tRNA(n) = diphosphate + tRNA(n+1).
it should be a descendant of
GO:1990817 RNA adenylyltransferase activity
GO:0004810 tRNA adenylyltransferase activity
has a descendant
GO:0052929	ATP:3'-cytidine-cytidine-tRNA adenylyltransferase activity
GO:0052928 CTP:3'-cytidine-tRNA cytidylyltransferase activity
is not a descendant of
GO:0009022 tRNA nucleotidyltransferase activity
in fact this term has NO children
Probably logical definitions are the only way forward here......
its really, really confusing!

GO:0004654 is wrong in many ways. The EC <IP_ADDRESS> it appears to be derived from refers to
RNA(n+1) + phosphate <=> RNA(n) + a nucleoside diphosphate
GO is
ATP + RNA(n) = diphosphate + RNA(n+1).
One uses ATP and one uses ADP
In addition to the above.
Solution fix definition?
Has 4 EXP annotations. Check the EC is what you meant
@tberardini
@jimhu-tamu

Thanks for the heads up, Val, but the Arabidopsis annotations are from UniProt so I cannot change them.  @mcourtot, who do we contact for UniProt annotation checking?  Thanks.

We suspect that  these all meant  	<IP_ADDRESS> which is the EC number
If this is the case the def can be changed.

Those were made by SIB curators - easiest way is to raise a question/dispute via P2GO. Maybe just ask them to check they indeed meant EC <IP_ADDRESS>. (I suspect yes)?
@ValWood do you want to do this via P2GO? Otherwise I'll do it tomorrow.

Could you raise the UniProt ones? I was hoping to get to it but I'm heading north tomorrow for a funeral and this one didn't make it...I didn't record the accession numbers so there is a bit of back-tracking.
Cheers,
Val

Done - I emailed them via P2GO.

Andre Stutz from SIB confirmed that
"The definition of the catalytic reaction given in the GO term
should be changed to :
RNA(n+1) + phosphate <=> RNA(n) + a nucleoside diphosphate   (EC=<IP_ADDRESS>)
Once you will update the GO term catalytic reaction definition, my GO annotation will be correct.
Cheers,
Andre stutz"

I fixed the definition as described above.


I would like to add a DallE image API Wrapper to LangChain

I would like to help by contributing a DallE image API Wrapper to the JavaScript version of this framework. Should I talk to someone at LangChain about becoming a contribute.

Hey! Yes we would love this. I'd recommend adding it as a tool, look in this dir for inspiration

Hey! Yes we would love this. I'd recommend adding it as a tool, look in this dir for inspiration

I am planning on using the Tool TypeScript interface so it can be used as a tool in the chain.

I don't get this to work. OpenAI always changes my URL and returnDirect does not seem to work with toolsAgent.

SebastianStehle,  Is it possible for to create an example of how you are using the Dall-E tool? I can take a look at this.

For example: https://gist.github.com/SebastianStehle/6f9c79c580fa33a553c1ff1c81ee4fa7

Thanks, I will take a look at this.
On Fri, Apr 12, 2024 at 3:42 PM Sebastian Stehle @.***>
wrote:

For example:
https://gist.github.com/SebastianStehle/6f9c79c580fa33a553c1ff1c81ee4fa7
—
Reply to this email directly, view it on GitHub
https://github.com/langchain-ai/langchainjs/issues/4575#issuecomment-2052423866,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAG7XNWPDS4ZLGQ2MMGQ6IDY5A2LZAVCNFSM6AAAAABD6UGZYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANJSGQZDGOBWGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

For example: https://gist.github.com/SebastianStehle/6f9c79c580fa33a553c1ff1c81ee4fa7

I ran your example locally, and I got the following result:
{
  input: "Create the image of a dog",
  output: "Here is the image of a cute dog sitting in a garden:\n![Dog Image](https://oaidalleapiprodscus.blob.core.windows.net/private/org-tuodfGudlqa04FtBvQQ8m6RA/user-8kd4LSh02iTWZwsew4lGuS6P/img-4bkPnIVGblq0qSZoIGNEIz37.png)",
  __run: undefined,
}

I tried to open the image, but I could not download it because it was marked as private.

Yes, because it is not complete. DALL-e adds query parameters which are removed by openai and I also could not find a solution to Bypass open ai

I will take a look into the stripping issue. In the meantime you might want
to create a new Github issue. I would try to use a workaround right now to
separate the tool invoking from your main chain so you can pass the final
prompt to Dall-e.
On Sat, Apr 13, 2024 at 10:31 AM Sebastian Stehle @.***>
wrote:

Yes, because the Url is not complete. DALL-e adds query parameters which
are removed by openai and I also could not find a solution to Bypass open ai
—
Reply to this email directly, view it on GitHub
https://github.com/langchain-ai/langchainjs/issues/4575#issuecomment-2053662972,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAG7XNUJSGRNL42RMAN7NCDY5E6THAVCNFSM6AAAAABD6UGZYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANJTGY3DEOJXGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

I need to use tools. I am not sure if you should actually do something, because it looks like an architectural flaw.


Browser entry points missing for request, core and utils

For some reason in the last version no browser files are included, therefore the client fails when importing one of the modules.

Fixed in 2c72fc79b1372326247d37e617ed1c3d864ec58f


Scala.js 1.0 fails to read transitive jsDependency

I've got a PR for scalajs-react to cross-compile to SJS 1.0. The SJS 0.6.32 tests pass fine but for SJS 1.0 I'm getting this error:
https://travis-ci.org/github/japgolly/scalajs-react/jobs/682482544#L543-L567
[error] java.nio.file.FileSystemLoopException: /META-INF/resources/webjars/prop-types/15.7.2
[error] 	at java.nio.file.FileTreeWalker.visit(FileTreeWalker.java:294)
[error] 	at java.nio.file.FileTreeWalker.next(FileTreeWalker.java:372)
[error] 	at java.nio.file.Files.walkFileTree(Files.java:2706)
[error] 	at org.scalajs.linker.PathIRContainer$.org$scalajs$linker$PathIRContainer$$walkIR(PathIRContainer.scala:95)
[error] 	at org.scalajs.linker.PathIRContainer$JarIRContainer.$anonfun$sjsirFiles$2(PathIRContainer.scala:67)
[error] 	at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[error] 	at scala.concurrent.impl.ExecutionContextImpl$DefaultThreadFactory$$anon$1$$anon$2.block(ExecutionContextImpl.scala:75)
[error] 	at java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3313)
[error] 	at scala.concurrent.impl.ExecutionContextImpl$DefaultThreadFactory$$anon$1.blockOn(ExecutionContextImpl.scala:87)
[error] 	at scala.concurrent.package$.blocking(package.scala:146)
[error] 	at org.scalajs.linker.PathIRContainer$JarIRContainer.$anonfun$sjsirFiles$1(PathIRContainer.scala:59)
[error] 	at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:659)
[error] 	at scala.util.Success.$anonfun$map$1(Try.scala:255)
[error] 	at scala.util.Success.map(Try.scala:213)
[error] 	at scala.concurrent.Future.$anonfun$map$1(Future.scala:292)
[error] 	at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:33)
[error] 	at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:33)
[error] 	at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:64)
[error] 	at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402)
[error] 	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
[error] 	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
[error] 	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
[error] 	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
[error] (test / Test / scalaJSIR) java.nio.file.FileSystemLoopException: /META-INF/resources/webjars/prop-types/15.7.2

I don't directly specify prop-types in my build, it's a transitive dependency of one of the react jsDependencies.

How is there a cycle inside a jar file?

There's something seriously wrong with that jar. If you download prop-types-15.7.2.jar and examine its content, under /META-INF/resources/webjars/prop-types/15.7.2/ (the path in the exception), there is a very weird entry that shows up.
On Windows it appears as a nameless entry whose type is a "local disk" (a hard drive, basically). On Linux, unzip -l lists it as a nameless directory, it seems:
$ unzip -l ~/.coursier/cache/v1/https/repo1.maven.org/maven2/org/webjars/npm/prop-types/15.7.2/prop-types-15.7.2.jar
Archive:  .../org/webjars/npm/prop-types/15.7.2/prop-types-15.7.2.jar
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2019-02-15 08:19   META-INF/
        0  2019-02-15 08:19   META-INF/maven/
        0  2019-02-15 08:19   META-INF/maven/org.webjars.npm/
        0  2019-02-15 08:19   META-INF/maven/org.webjars.npm/prop-types/
     2059  2019-02-15 08:19   META-INF/maven/org.webjars.npm/prop-types/pom.xml
       95  2019-02-15 08:19   META-INF/maven/org.webjars.npm/prop-types/pom.properties
        0  2019-02-15 08:19   META-INF/
        0  2019-02-15 08:19   META-INF/resources/
        0  2019-02-15 08:19   META-INF/resources/webjars/
        0  2019-02-15 08:19   META-INF/resources/webjars/prop-types/
        0  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/
        0  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2// # <-- This one
     5562  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/CHANGELOG.md
     1080  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/LICENSE
    11199  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/README.md
     3781  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/checkPropTypes.js
      768  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/factory.js
     1621  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/factoryWithThrowingShims.js
    21563  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/factoryWithTypeCheckers.js
      710  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/index.js
        0  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/lib/
     1586  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/package.json
    47744  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/prop-types.js
     1763  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/prop-types.min.js
      314  2019-02-15 08:19   META-INF/resources/webjars/prop-types/15.7.2/lib/ReactPropTypesSecret.js
---------                     -------
    99845                     25 files

I think this .jar file is just plain corrupted. I don't think it's Scala.js' fault, and I don't see what we could do about it.
You could report the issue to https://www.webjars.org/, or create a new archive and upload it (if that's possible).

And, if it's not corrupted, and nameless directories are actually supposed to be valid in .zip files, then it's a bug in the JDK implementation java.nio.file.Files.walkFileTree. In that case, feel free to report the bug to the JDK bug database.
In either case, this is clearly outside of Scala.js, so I'm going to close this issue.

Did some more digging. Of SJS {0.6, 1.0} x JDK {8, 11} this only occurs with SJS 1.0 & JDK 8. Why does it occur with SJS 0.6 & JDK 8?

In 0.6.x we used ZipInputStream to open jar files. In 1.x we use java.nio.file APIs. From what you say it seems walkFileTree had a bug in JDK 8 that was fixed in 11.
Regardless, I think this jar is borderline. One shouldn't put nameless directories in a jar.


Textarea has unnecessary omitObject

Which package has an issue?
@yamada-ui/react
Package Version
1.3.7
Description
- const [styles, mergedProps] = useComponentStyle("Textarea", props)
+ const [{ h, height, minH, minHeight, maxH, maxHeight, ...styles }, mergedProps] = useComponentStyle("Textarea", props)

if (rows || autosize) {
- css = omitObject(styles, [
-   "h",
-   "height",
-   "minH",
-   "minHeight",
-   "maxH",
-   "maxHeight",
- ])
+ css = styles
} else {
- css = styles
+ css = { h, height, minH, minHeight, maxH, maxHeight, ...styles }
}

Link to Reproduction
No response
Steps to Reproduce

Go to '...'
Click on '...'
Scroll down to '...'
See error

Browser
None
Operating System

[ ] macOS
[ ] Windows
[ ] Linux

Do you know how to fix the issue?
Yes
Are you willing to participate in fixing this issue and create a pull request with the fix?
None
Additional Information
No response

Hi @hirotomoyamada , can I work on this one?

@dovicie
Hi, thanks for the comment!
Yes, pls.
I'll assign this issue to you. Good luck!


Add filter and filter_map combinators

:warning: Do not merge - causes a segmentation fault :warning:

Despite using the safe API, this causes a segmentation fault when run. Here is the output from gdb:
(gdb) r par_iter::test::check_filter
Starting program: /Users/brendan/dev/rust/rayon/target/debug/rayon-e94ee2831ded576d par_iter::test::check_filter

running 1 test
[New Thread 0x1413 of process 95072]
[New Thread 0x1503 of process 95072]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x1413 of process 95072]
0x000000010001c954 in rayon::ops::&'a usize.Rem<usize>::rem (self=0x0, other=2) at ../src/libcore/ops.rs:128
128	../src/libcore/ops.rs: No such file or directory.
(gdb) bt
#0  0x000000010001c954 in rayon::ops::&'a usize.Rem<usize>::rem (self=0x0, other=2) at ../src/libcore/ops.rs:128
#1  0x000000010001cc26 in fnfn (x=0x0) at src/par_iter/test.rs:91
#2  0x000000010001ca34 in rayon::iter::Iterator::all<core::slice::Iter<&usize>,closure> (self=0x700000403bc8, f=...) at ../src/libcore/iter.rs:883
#3  0x0000000100018d1f in rayon::par_iter::test::check_filter () at src/par_iter/test.rs:91
#4  0x00000001000600fc in boxed::_$LT$impl$GT$::call_box::call_box::h2589288275602263322 ()
#5  0x0000000100062801 in sys_common::unwind::try::try_fn::try_fn::h15738982480174195438 ()
#6  0x00000001000858d9 in __rust_try ()
#7  0x000000010008384f in sys_common::unwind::try::inner_try::hcc3a84c80e36120fy9r ()
#8  0x0000000100062bfb in boxed::_$LT$impl$GT$::call_box::call_box::h11788775615639144818 ()
#9  0x00000001000872ae in sys::thread::_$LT$impl$GT$::new::thread_start::h5776bf5f72f331a7Rvw ()
#10 0x00007fff93167c13 in _pthread_body () from /usr/lib/system/libsystem_pthread.dylib
#11 0x00007fff93167b90 in _pthread_start () from /usr/lib/system/libsystem_pthread.dylib
#12 0x00007fff93165375 in thread_start () from /usr/lib/system/libsystem_pthread.dylib
#13 0x0000000000000000 in ?? ()

I'm guessing this is because I just copied MapState's ParallelIteratorState::len impl, meaning that it doesn't match the filtered length. It's a little concerning that the API is leaking unsafety out of the module boundary, polluting safe code. Not sure of a way around it though.

So I tried keeping a count of the items I skipped in FilterState in order to figure out the size relative to the base.len, but I am having trouble implementing split_at. This is because I need to figure out how to split the filtered count. Any ideas on ways to get around this?

Probably I should declare the functions in the base trait unsafe. Indeed though, filtering is not going to be quite this simple I think. It requires deeper integration with the collect/reduce ops.

I was vaguely thinking of a design like this:

add a new trait called ExactParallelIterator: ParallelIterator that corresponds to unfiltered things
move e.g. enumerate to this trait
modify collect so that it tracks, for each subslice, what number of items were created, and then basically does a "compact" operation (this operation can itself be parallelized) if needed to remove empty space

we also have to at some point handle panics here more gracefully, though I guess leaking a bunch of stuff, while suboptimal, is legal :)

reduce doesn't really have to change
have the filter op bump of the weight in its len routine to encourage finer-grained splitting, since the amount of work will be less predictable

Still, flat_map is a bit more complicated. Initially, I expected to add flatten as a separate, terminating step, and then have people do map and subsequently flatten. Part of my thought process was that I wanted an invariant that any chain of method calls you write corresponds to parallel execution, and I don't think it's possible to collect from a flat_map without introducing a parallel barrier. But it's totally possible to reduce, and it would be possible to collect into e.g. a rope-like data structure. So perhaps we want another iterator trait to distinguish the filter and flat-map case. (Specialization might be nice here, but I suspect we can do without it.)

The three cases would then be:

ArbitraryParallelIterator -- produces an arbitrary number of items
BoundedParallelIterator -- produces at most N items (filtered)
ExactParallelIterator -- produces N items

We also have to toy with the traits we expose to users a bit. I want people to be able to add something like:
use rayon::par_iter::*;

and get just a few traits in scope, in particular one that let's them replace calls to iter() with par_iter(), par_iter_mut(), that sort of thing -- mirror how iterators are used. This is not how it works today. :(

OK, I suspect I ought to transcribe some of that into an issue :)

Great! Yeah, I got the feeling that the API as it stands would have a hard time supporting filtering. It's good to try to push it though, to see what breaks!

Superceded by #24 -- though I didn't yet add filter_map


Add OpenJDK logo to Java badge

The shields.io logos are using assets from SimpleIcons. But as https://github.com/simple-icons/simple-icons/issues/7374 described, the "Java Coffee Cup" Logo has been removed as Oracle requested. So it is no longer available. SimpleIcons have an OpenJDK one as the replacement (https://github.com/simple-icons/simple-icons/issues/7390 & https://github.com/simple-icons/simple-icons/pull/7391), we should probably use it.

Sure Thankyou..


Instructions of turning the demos into standalone examples are misleading.

Specifically I followed the instructions in demo/src/Hello/api.js and modified the file to look like this
// You would normally:
//
//    npm install -S elm-serverless
//
// and then require it like this:
//
//    const elmServerless = require('elm-serverless');
//
// but this demo is nested in the `elm-serverless` repo, so we just
// require it relative to the current module's location
//
//const elmServerless = require('../../../src-bridge');

const elmServerless = require('elm-serverless');

// Import the elm app
const { Elm } = require('./API.elm');

// Create an AWS Lambda handler which bridges to the Elm app.
module.exports.handler = elmServerless.httpApi({

  // Your elm app is the handler
  app: Elm.Hello.API.init(),

  // Because elm libraries cannot expose ports, you have to define them.
  // Whatever you call them, you have to provide the names.
  // The meanings are obvious. A connection comes in through the requestPort,
  // and the response is sent back through the responsePort.
  //
  // These are the default values, so if you follow the convention of naming
  // your ports in this way, you can omit these options.
  requestPort: 'requestPort',
  responsePort: 'responsePort',
});

after doing this, sending a request to the Hello endpoint returns
untitled
 Serverless: Error while loading hello
[ 'Error: Missing handler argument.',
  'If the Serverless.Program is defined in API.elm then the handler is:',
  '',
  'const handler = require(\'./API.elm\').API;',

Solution is to make the examples standalone, so will close this as a duplicate of #4


Start using Codecov

The coverage is generated using Tarpaulin (which seems somewhat inaccurate but is a lot easier to set up than kcov).

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@9b941c5). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master    #1123   +/-   ##
=========================================
  Coverage          ?   19.58%
=========================================
  Files             ?      215
  Lines             ?    19296
  Branches          ?        0
=========================================
  Hits              ?     3780
  Misses            ?    15516
  Partials          ?        0

Continue to review full report at Codecov.

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


[Icon] - External Icon listing on semantic site. Duplicate

Steps to Reproduce

look at page

Expected
There should only be 1 external icon.
Result
There are 2 external icons listed.
Testcase
To test go here: http://semantic-ui.com/elements/icon.html

Yep yep yep

F


805 refactor update operation

card: https://github.com/orgs/bcgov/projects/122/views/2?filterQuery=805&pane=issue&itemId=51964186
The card was written back before we had a service layer, so I haven't implemented the AC exactly as written. This PR:

breaks the update_operation service function into smaller service functions (instead of breaking up the endpoint as described in the card)
no changes needed to tests (endpoint tests still cover the refactored service functions)
no changes needed to front-end because same endpoint
no changes needed to django ninja schema because same endpoint
I considered moving the submit logic into a separate service function too, but we're now passing sonarcloud on code complexity for this function, so I left it as-is

@BCerki
👌 making a beautiful API more beautiful!


Empty input_date() crashes Shiny

Reproducible on shinylive as of 2024-07-15.
from shiny.express import ui

ui.markdown(
    """
    ## Reprex

    Delete all of the text in the date input below.
    The app will crash.
    """
)

ui.input_date("date1", "Date:", value="2016-02-29")

results in this error:
Traceback (most recent call last):
  File "/lib/python3.12/site-packages/shiny/session/_session.py", line 644, in _run
    self._manage_inputs(message_obj["data"])
  File "/lib/python3.12/site-packages/shiny/session/_session.py", line 690, in _manage_inputs
    val = input_handlers._process_value(
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/lib/python3.12/site-packages/shiny/input_handler.py", line 41, in _process_value
    return handler(value, name, session)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/lib/python3.12/site-packages/shiny/input_handler.py", line 108, in _
    _safe_strptime_date(value[0]),
                        ~~~~~^^^
TypeError: 'NoneType' object is not subscriptable
'NoneType' object is not subscriptable

This appears to have been there since day 1, I reproduced it back to 0.2.1 (summer 2022).


Does adding words in front of wake word improve quality of model ?

Hey Everyone,
I have try to train robust model. In order to make it more accurate, should I add some random generated words in front of the wake word?
 Any ideas ?
Thanks.

When you say more accurate or more robust, what do you mean? If in your application you expect there to be random speech immediately preceding the target wake word, then yes, adding training data like this could help the model more reliably activate in this situations.
But in general, I wouldn't expect this to improve the performance of the model overall, just in this one area.

Thank you for your kind answer !


Update cli readme

What
Update readme and contributing.md
Why
Provide guidance on the cli and how to contribute
Known limitations

It looks like a new example was added. So you need to run cargo md-gen to generate the markdown docs.


how to specify build version with uv build?

I'm building a Python package, and I need to add a release workflow, with a version tag too.
name: Publish to PyPI

on:
  push:
    tags:
      - "v*"

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2

      - name: Install uv
        uses: astral-sh/setup-uv@v3

      - name: Set up Python
        run: uv python install

      - name: Install dependencies
        run: uv sync

      - name: Build and publish
        run: |
          uv build
          uv publish --token ${{ secrets.PYPI_API_TOKEN }}

I basically need the equivalent of this, poetry version $(git describe --tags --abbrev=0)

Like, you need to extract the current project version into an environment variable?

Like, you need to extract the current project version into an environment variable?

I need to set a build version for my package

You're looking for https://github.com/astral-sh/uv/issues/6298, we don't support this yet but you can track it there.


Cleanup test suite a bit

Summary
The tests were looking a bit ugly so I cleaned them up a bit:

All test names now fit within std 80 char terminal line.
Removed depreciation warnings, where possible.
Moved some tests away from using QuantumProgram.
Removed a bunch of 'test' in the descriptions of the test, since it is obvious.

Details and comments

I disagree with chopping off class names just to save a few characters. They don't even run into any line limits. Instead, we lose descriptiveness of what the tests are:
TestAnonymousIdsInQuantumProgram -> TestAnonIdsInQP
TestLocalQasmSimulatorPy -> TestQasmSimPy
TestLocalQasmSimulatorCpp -> TestQasmSimCpp
TestWrapperCredentials -> TestCredentials
TestLatexSourceGenerator -> TestLatex
TestQuantumProgram -> TestQP
etc...
The docstring changes are fine.
The removal of Quantum Program in tests is really good. Does this PR remove all quantum program usages from the tests (except inevitable places like test_quantumprogram.py).

I got some, but probably not all. The use of quantum program should raise an exception, so we can get them all.
As for the test and module names, we really arent losing much given everything has docstrings. Do we really need reminding that the local qasm simulator is local in the module name, for example?

Maybe QP to QuantProg though.

Ok, then I will close this.

Sorry about the confusion, my comment was only about chopping off those names. The rest is good and is actually needed. As I mentioned, the other PRs I opened are follow-ups.

I also agree cleaning up the test suite is needed, and there are actually more items to be taken care of eventually (ie. not for 0.6) - thanks for starting the effort, @nonhermitian !
Following up on @ajavadia comment about shortening the names, the ultimate reason is derived from PEP20:

Readability counts.

Code is written once but read many times, and that is basically the reason why we insist in keeping descriptive names and are insistent in this aspect during the reviews: it's generally much easier to find a good name while writing the PR, than updating it afterwards, and helps maintainability a lot. In this particular case, it's a very frequent case for the testing tools and IDEs to end up printing TestQuantumProgram.test_something failed, which is much easier to parse mentally than TestQP.test_sth.
As for the docstrings, thanks for the efort as well! Can you however tweak the style to adhere to PEP8 (further expanded in PEP257 - we don't adhere to that one explicitely, but provides more rationale):

For one liner docstrings, please keep the closing """ on the same line.

In regards to changing the content of the docstrings in order to remove the annoying Test that ... bits, I'm a bit unsure. Technically PEP8 and others have some recommendations for comments (and docstrings are considered as a subset of comments in that regard) that we also generally follow:

Comments should be complete sentences. The first word should be capitalized, unless it is an identifier that begins with a lower case letter (never alter the case of identifiers!).
When writing English, follow Strunk and White.

But I think we can be lenient on this one, as they are indeed repetitive and all of them starting with Test if ... does not provide a lot of value comparing to how annoying it is. So no strong opinion from me on this one :grin:

@nonhermitian can you rebase this due to recent changes (merge of #739)? The changes are mostly cosmetic.

I think the only thing of value left in this PR is the removal of QuantumProgram from the mapping tests.  I will just make a new PR with that change.

Per the previous comment, closing this PR.

@nonhermitian I will do the QuantumProgram removal in #724 so you don't have to.


refactor: use CdfToKernel in CondCdf

The recently added file CdfToKernel contains generalizations of many lemmas in the file CondCdf. This PR refactors CondCdf to use the new results.

Could you add a comment in the file-level docstring how most things are deduced from the more general  CdfToKernel, and how the notions are related?

bors r+


add github stuff

copied from the main sqlalchemy repo github issues/pr templates code of conduct and other stuff
@zzzeek

great!

do we also need test there?

the tests run from the gerrit_mypy job, which mostly tests the plugin.   im not sure how much this repo can be tested by itself


Unrevert the changes for custom plugins

We reverted https://github.com/deis/fluentd/pull/40 last release becuase we thought the failures was the result in his plugin. It turns out the problem was with fluentd and the kubernetes metadata plugin. We should unrevert his plugin and get it into the next release.

Moving to 0.14.4 with the latest kubernetes metadata seems to have resolved our issue. However, we are unable to use the latest fluentd release.


keystore password is not passed on in SslContextUtils.buildMergedWithSystem(..)

current impl inits a keymanager for the customer keystore without setting the password even though the keystore might have one. because of this, java.security.UnrecoverableKeyException: Password must not be null  occurs.
in our project, we fixed this by adding a param to the method. i think it's useful to apply it here, as well.

Same problem here, I would use the version 1.0 and override this method if the class wan't final... such a nice utility...
The only option I have is copy the code inside my project like @goekay did.
Thanks for the sharing BTW!

@lauksas i extracted the code from our project into my fork including my API changes from #6. feel free to use it.


add geometry msgs dependencies to fix issue

ros2 launch mg400_bringup simulator.launch.py

Above command was crashing after this PR #106
Add some dependencies to fix issue

@Mt-is-at-O Maybe the issue has been solved with this PR


Possibility of placing "Spinner" element anywhere on UI, similar to other UI components (Buttons, forms etc.)

Description
I'm looking for a way to place a spinner element that pops up upon some user interaction, to show the status of a long running task (calculation). As I work with UI elements, like buttons, forms, batch etc, I often stack these together using vstack or hstack, to order elements neatly as larger components. I would like that to be the case for a "Spinner" element as well. Currently, spinners are used as context managers, and are destroyed (unless "remove_on_exit" is set False), once the context manager exits.
Suggested solution
When a cell contains a spinner element, render that cell as a UI element, and as a placeholder put a, non-animated, empty spinner. The spinner may be triggered similarly to other elements as part of the reactivity of marimo.
Alternative
Currently, a spinner element can be dragged in the app builder to a desired location, but it does not allow for stacking, and overlaying with other elements is difficult. Additionally, the spinner only renders if the cell in which it is defined is triggered. Otherwise python code is simply shown instead (at least in edit mode).
Additional context
No response

I have a fix out for this: https://github.com/marimo-team/marimo/pull/1278
Here is an example for usage:
import marimo

__generated_with = "0.4.7"
app = marimo.App()

@app.cell
def __():
    import marimo as mo
    return mo,

@app.cell
def __(mo):
    counter_button = mo.ui.button(
        value=0, on_click=lambda value: value + 1, label="increment"
    )
    counter_button
    return counter_button,

@app.cell
def __(counter_button, mo):
    mo.vstack([
        counter_button.value,
        mo.status.spinner(remove_on_exit=False) if counter_button.value < 3 else mo.md("Done!"),
    ])
    return

if __name__ == "__main__":
    app.run()


Add new Style/ReturnNilInPredicateMethodDefinition cop

This PR adds new Style/ReturnNilInPredicateMethodDefinition cop that checks for return or return nil is used in predicate method definitions.
# bad
def foo?
  return if condition

  do_something?
end

# bad
def foo?
  return nil if condition

  do_something?
end

# good
def foo?
  return false if condition

  do_something?
end

Autocorrection is marked as unsafe because the change of the return value from nil to false could potentially lead to incompatibility issues.

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

Hmm, seems we don't have a style guide entry for the expected return values from predicate methods (ideally true or false).
As for the cop - overall it looks good. I'm just wondering if we should tackle both return values in the same cop(e.g. flag returns of non-true truthy values as well) or maybe make some other cop for the truthiness case. At any rate - it's clear that returning nil is the bigger problem.
One day we should have some cop that discourages the return of nil completely.

Good point. However, unlike falsey values which are limited to nil and false, determining whether truthy values are true seems quite challenging.
Just as RuboCop wouldn't know whether the following value is boolean or not. It also can't determine if it's true or truthy.
return value if condition

It can't know whether value is already boolean or whether !!value is necessary.
On the other hand, The following can be confidently changed to return false. It is the job of this cop.
return if condition
return nil if condition

Theoretically, it can be added a warning for cases where non-nil and non-false literals are used (e.g. return 42 if condition), it can be replaced return true if condition. However, this usage is quite rare 😅 , so I'm not certain whether it would add worth.
To sum up, detecting expected returning true value seems to be extremely difficult, unlike expected detecting returning false value.
As the style guide, it might be covered (or can be extended) with the following:
https://rubystyle.guide/#bool-methods-qmark

Just as RuboCop wouldn't know whether the following value is boolean or not. It also can't determine if it's true or truthy.

I was just thinking we can imply some simple heuristics - if something is not true or a call to some predicate we assume that it's not a boolean. It would yield a lot of false positives for sure and it can't be enabled by default, but it still may be useful to some extent. Anyways, it's not something particularly important and can happen down the road.

Predicate methods return nil in stdlib.
This cop is breaking the logic in my library: when valid? should not be executed under some conditions and nil just a quick return with signal there were no check. I can't tell if it's valid or not, but it's falsey.
Examples from stdlib:

https://rubyapi.org/3.2/o/string#method-i-casecmp-3F
https://rubyapi.org/3.2/o/kernel#method-i-autoload-3F

Maybe something else.

Yeah I also had the instant feeling that this is very opinionated - and I like that style.


[release-2.3] Skip RBAC tests on ROSA clusters

I think I may have jumped the gun on approving this. Let's check whether this is okay to merge into 2.3 or if we need to wait.

/hold

/unhold
CICD says go: https://coreos.slack.com/archives/CSZLMKPS5/p1628622811144100


Ecosystem license strings are not always valid SPDX license expressions

When running Trivy ecosystems enrich [file] the resultant SPDX document will, on occasion, result in a concluded license (in the SPDX format) that does not validate.
From looking at the code, it looks like the license data originates from the ecosystems.me packages API.
My guess is that ecosystem.me is just pulling the raw data from the packages metadata files and passing it along.
Some of the package managers, such as NPM, do a great job of complying with SPDX license IDs and expressions.  Others, such as Maven, accept just about any string.
I'm not sure if this is an issue we should tackle in Parlay or in the upstream ecosystems.me packages.  Since Parlay is producing SBOMs which specify SPDX license expressions (for both SPDX and CDX) and the upstream doesn't claim to comply with the standard, it may be best to fix it in this library.
Here's some code I wrote that fixes this issue downstream in a Python application for the SPDX standard.
The basic approach is to:

Detect if the license is valid using a license expression parser
If it is not valid, create a LicenseRef- or ExtractedLicenseInfo in the SBOM to capture the original string
Replace the concluded license with the LicenseRef-

Since I have a downstream solution, no urgency on a solution - but if this is something the maintainers would like to fix, I'd be happy to help out.  I'm not much of a Golang programmer (I've written less than 10 lines of code so far), but I can help with the algorithms and SPDX spec.

Hey @goneall
thanks for pointing this out. It sounds like a straightforward fix, but really the data source (ecosyste.ms) should sanitize license identifiers. But I can see how that's not necessarily feasible, there might always be licenses that don't fit in the official SPDX set.
As I'm a bit swamped at the moment, I won't have time to implement this myself. More likely in a few weeks.

Thanks @mcombuechen for the reply - no hurry from my perspective as I have a fix downstream from Parlay.
I'd be happy to help from a review / spec perspective - since I'm very new to Golang (having written a total of 5 lines of code so far), it would probably be more work for you to review / correct my attempt at a PR than to implement it yourself ;).

For checking if the licenses are valid SPDX license IDs (i.e part of the standard licenses recognised by SPDX) is there a preferred approach?

From looking at the 2 implementations, I would go with the github/go-spdx library.  It looks like they are keeping the license list more current.
After looking at the spdx/tools-golang implementation, I added an issue with some suggestions on keeping the license ID list more current.
The idea solution would be to implement the suggested solution to fetch the latest license information in the tools-golang library and use that.  If you're not concerned about running Parlay without network access, fetching and parsing the SPDX licenses JSON file and SPDX exceptions JSON file may not be too much effort.


[sdk][build] expand board support and update to GSDK 4.1.0

This expands board support to a larger selection through the use of the Silabs tool slc_cli.
Change summary

Add slc_cli to bootstrap and build scripts
Templatize platform and mbedtls CMake libraries using slc_cli and jinja template
Update to Gecko SDK 4.1.0

Also switch from sdk_support (a lite release of GSDK) to gecko_sdk (a full GSDK release).
git-lfs is now required

Change build command format. Platform is now parsed from the board's .slcc file.

OLD: ./script/build efr32mgXX -DBOARD=brdXXXXy
NEW: ./script/build brdXXXXy

Change build output folder

OLD: ot-efr32/build/efr32mgXX
NEW: ot-efr32/build/brdXXXXy

Add brd4186c and brd4187c to ./script/test
Add Dockerfile. The docker image may be used by jenkins. It could also be used to define a devcontainer.json later to provide a development ready environment.

Previous incremental PRs

https://github.com/SiliconLabs/ot-efr32/pull/425
https://github.com/SiliconLabs/ot-efr32/pull/426
https://github.com/SiliconLabs/ot-efr32/pull/433
https://github.com/SiliconLabs/ot-efr32/pull/438

Known problems

This breaks the sleepy-demo example application build. A fix PR will be following this one shortly

LGTM 👍

@jwhui can you take a quick look at this PR? There's one last thing I need to check before we merge, but I figured I would ping you so you could get started with the review since it's so large.

@jwhui Just finished my final checks. Feel free to merge whenever you're ready!


Microsoft Bot working on both emulator and web chat but not Skype

I was working on my bot yesterday, constantly testing it through skype and everything worked perfectly. I then change something completely innocuous and boom, nothing. I rolled back to a previous version that I know for a fact is working on another channel that we're running and nothing. Both webchat and the emulator works. For a while the messages were getting into the message controller up until the point where I send the activity to the root dialog but it never seems to instantiate root dialog. I've tried creating new publish profiles on visual studio, deleting the bot from my Skype contacts and starting again. I've restarted the web app on Azure, updated my packages as much as I can without half my code become useless to the new packages. I was also hoping that maybe if I left it for a few hours skype might decide to start working with me again but no dice.
It doesn't seem to be an authentication issue as it works perfectly on the webchat. As I said, it seemed to stop working when I changed something seemingly very innocuous that has nothing to do with the bot start up or message controller.
Here is my message controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
using System.Web.Http;
using System.Diagnostics;
using Microsoft.Bot.Builder.Dialogs;
using Microsoft.Bot.Connector;
using NetHope.Dialogs;
using NetHope.ProactiveMessage;
using NetHope.Speech;
using NetHope.TrackConversation;
namespace NetHope.Controllers
{
[BotAuthentication]
public class MessagesController : ApiController
{
public static Dictionary<string, ConversationThread> userConversations = new Dictionary<string, ConversationThread>(); // This stores messages in a local stack, not a DB
    // This is where each new connection comes in, whether its a message or a connection
    public async Task<HttpResponseMessage> Post([FromBody]Activity activity)
    {

        using (ConnectorClient connector = new ConnectorClient(new Uri(activity.ServiceUrl), new MicrosoftAppCredentials()))
        {

            //<update_database>
            try
            {
                await SaveConversationData.SaveConversationAsync(activity.From.Id, activity.From.Name, // feature to update the latest interaction from a user
                activity.Recipient.Id, activity.Recipient.Name, activity.ServiceUrl,
                  activity.ChannelId, activity.Conversation.Id);
            }
            catch (Exception e)
            {
                await connector.Conversations.ReplyToActivityAsync(activity.CreateReply(e.ToString())); // Print error
            }
            //</update_database>

            await connector.Conversations.ReplyToActivityAsync(activity.CreateReply(activity.TextFormat));
            //if it is a message sent by the user it is sent to root here
            if (activity.Type == ActivityTypes.Message)
            {
                System.Diagnostics.Debug.WriteLine("In Message Activity is Message");
                //<add_id_to_dictionary>  add new conversation IDs to the dictionary
                string conversationId = activity.Conversation.Id;
                if (!userConversations.ContainsKey(conversationId))
                {
                    userConversations[conversationId] = new ConversationThread(conversationId);
                    System.Diagnostics.Debug.WriteLine("Adding new coversation keys to dicts");
                }
                //<add_id_to_dictionary>

                //<audio_to_text> if audio clip sent, extract it and then parse it as text
                var audioAttachment = activity.Attachments?.FirstOrDefault(a => a.ContentType.Equals("audio/wav") || a.ContentType.Equals("audio/x-m4a") || a.ContentType.Equals("audio") || a.ContentType.Equals("audio/mp4") || a.ContentType.Equals("audio/mp4"));

                if (audioAttachment != null)
                {
                    try
                    {
                        string responseFromAPI = await SpeechToTextAuth.DealWithAttachment(audioAttachment, connector, conversationId); // get the text from attachment
                        await connector.Conversations.ReplyToActivityAsync(activity.CreateReply(responseFromAPI)); // print the text
                        activity.Text = responseFromAPI; //update the user text input from null to the audio text
                    }
                    catch (Exception e)
                    {
                        await connector.Conversations.ReplyToActivityAsync(activity.CreateReply(e.ToString())); // print the error
                    }
                    userConversations[conversationId].UserMessage("AUDIO"); // if the clip was audio we save audio to the conversation stack
                    //TODO update the conversation stack to store activities not strings, would allow for the replaying of audioclips
                    //</audio_to_text>
                }
                else
                {
                    userConversations[conversationId].UserMessage(activity.Text); // if the input was just text, we add that text to the conversation stack
                }

                await Conversation.SendAsync(activity, () => new RootDialog()); // pass the typed text (or the parsed text) to the main dialog
                System.Diagnostics.Debug.WriteLine("Message been sent to root dialog");
            }
            //if it is not a message it is sent to the message handlers here
            else
            {
                await HandleSystemMessage(activity); // input is not the type message
            }

            return Request.CreateResponse(HttpStatusCode.OK);
        }

    }

    //if the system message isnt a message we handle it here
    private async Task HandleSystemMessage(Activity message)
    {
        if (message.Type == ActivityTypes.DeleteUserData) // not implemented
        {
        }
        //if a new user adds the bot as a contact we say hello here
        else if (message.Type == ActivityTypes.ConversationUpdate || message.Type == ActivityTypes.ContactRelationUpdate)
        {
            System.Diagnostics.Debug.WriteLine("In ConversationUpdate/Contact RelaitonUpdate", message.Type);
            using (ConnectorClient client = new ConnectorClient(new Uri(message.ServiceUrl), new MicrosoftAppCredentials()))

            if (message.MembersAdded.Any(o => o.Id == message.Recipient.Id))
            {
                await Conversation.SendAsync(message, () => new Dialogs.WelcomeDialog());
            }

        }
        else if (message.Type == ActivityTypes.ContactRelationUpdate) // not implemented
        {
            // Handle add/remove from contact lists
            // Activity.From + Activity.Action represent what happened
        }
        else if (message.Type == ActivityTypes.Typing) // not implemented
        {
            // Handle knowing tha the user is typing
        }
        else if (message.Type == ActivityTypes.Ping) // not implemented
        {
        }
    }
}

}
Before it used to at least get to the Conversation.SendAsync to root dialog but now it doesn't seem to enter the message controller at all.
Also, I'm getting warning in Azure for the app service telling me that invalid XML was detected in case that is relevant, although I think that warning has always been there and it was working fin before

If any more code is needed let me know

I think that my email account was blocked because I was sending too many messages, I started a new skype account and it worked


Fleet: Workspace switcher: Dropdown menu overlaps select box

Setup

Rancher version: 2.10
Rancher UI Extensions:
Browser type & version: FF, Chrome

Describe the bug
Dropdown menu overlaps select box.

To Reproduce

go to Fleet
click workspace switcher in the header

Result

Expected Result

Screenshots

Additional context

We'll see who can grab this in the next day but this feels like something to tackle in 2.11.0 and backport to 2.10.1 if we run out of time.

@nwmac wasn't able to repro this on his environment with a recent build. @yonasberhe23 can you retest just in case another fix addressed this?

retested and found this issue is specific to Firefox browser (not an issue in Safari and Chrome).

workspace selector dropdown fixed in Firefox. also tested in other browsers.
Tested in:

Rancher v2.10-e2d0b42c91253243696d36f09e8e6e23cc6fb0db-head
Dashboard master 3c808b4


onAdd only work once

add class doesn't triggers onAdd function, only works Once if startWith:1

The onAdd function has since been replaced by beforeAdd and afterAdd. I have verified that both functions fire each time an element is added, even if startWith (which is now min) is omitted.


Conversion of input parameter values

The binary I'm working with takes a comma-delimited list of strings. I would like to take in a string[] and simply -join '' at runtime.
Args list should look like this
list
items
--categories
passwords,logins

Currently looks like this.
list
items
--categories
passwords
logins

Definition
        {
            "Name": "Categories",
            "OriginalName": "--categories",
            "ParameterType": "string[]",
            "Description": "Only list items in these categories",
            "Position": 0
        },

+1 on this, parameter transformation is also very commonly needed for all types of array parameters. Sometimes you need to pass each value as with the same repeated parameter, sometimes it's encoded as a single value joined by a character like ',', etc.
One example is the Docker CLI that takes environment variables as a series of "-e NAME="VAL"" parameters. Here's how I do it:
https://github.com/Devolutions/WaykBastion-ps/blob/master/WaykBastion/Private/DockerHelper.ps1#L367

+1 too. I would like to transform a PSCredential so I can map it to --username and --password. Cause we all know that is not secure. Related to #34

Glob Pattern strings need to be single quoted before passing to native cmd
I am working on GitHub CLI and need to have an input parameter single quoted since it is a glob pattern. Without the single quotes, at runtime it executes the glob matching before the native command gets control. As an experiment, I tried specifying the string like "'*pkg'" to the PowerShell parameter - but the native cmd could not find a match. I was able to test the native cmd successfully using --pattern '*pkg'
# download only Debian packages for the latest release
$ gh release download --pattern '*.deb'

Copy-GHReleaseAsset -Tag 'v7.1.1' -Pattern "'*pkg'"  -Repo 'PowerShell/PowerShell' -Verbose
VERBOSE: gh
VERBOSE: release
VERBOSE: download
VERBOSE: v7.1.1
VERBOSE: --pattern
VERBOSE: '*pkg'
VERBOSE: --repo
VERBOSE: PowerShell/PowerShell
VERBOSE: Performing the operation "Copy-GHReleaseAsset" on target "gh".
no assets match the file pattern

Glob Pattern strings need to be single quoted before passing to native cmd
I am working on GitHub CLI and need to have an input parameter single quoted since it is a glob pattern. Without the single quotes, at runtime it executes the glob matching before the native command gets control. As an experiment, I tried specifying the string like "'*pkg'" to the PowerShell parameter - but the native cmd could not find a match. I was able to test the native cmd successfully using --pattern '*pkg'
# download only Debian packages for the latest release
$ gh release download --pattern '*.deb'

Copy-GHReleaseAsset -Tag 'v7.1.1' -Pattern "'*pkg'"  -Repo 'PowerShell/PowerShell' -Verbose
VERBOSE: gh
VERBOSE: release
VERBOSE: download
VERBOSE: v7.1.1
VERBOSE: --pattern
VERBOSE: '*pkg'
VERBOSE: --repo
VERBOSE: PowerShell/PowerShell
VERBOSE: Performing the operation "Copy-GHReleaseAsset" on target "gh".
no assets match the file pattern

@cdhunt -- We agree that this would be a good addition.  For a workaround today, see https://github.com/PowerShell/Crescendo/issues/31#issuecomment-770240370

Thank you! Fixed/closed - in release: https://www.powershellgallery.com/packages/Microsoft.PowerShell.Crescendo/1.1.0-RC1


VS2022 Support

Hey,I try to use this tools to pack my Unreal Engine 5 with VS2022 Professional Edition.But i found that this tools only support VS 2019 Community Edition.Could you please tell me where i can change the source code for My own Environment like MSBuild And MSVC Version Path??

The MSBuild is taken from GetMsBuildPath found here: https://github.com/ryanjon2040/Unreal-Binary-Builder/blob/master/UnrealBinaryBuilder/MainWindow.xaml.cs#L52

This is not working for me on 2019 either as I changed the installation path on Visual Studio Installer. It's only getting the default, if you look at "Engine\Build\BatchFiles\GetMSBuildPath.bat" they do a lot more work to locate your MSBuild than that. If any user had to customize it the process will fail.

Does anyone succeed to change vs version to 2022? Need help!

@Code-Guy  I made a 'quick' fix allowing you to chose the MSBuild based on the installed versions. Tested with VS2022 but should also be compatible with older versions. https://github.com/Olli1080/Unreal-Binary-Builder. Under Compile you'll have a dropdown based on your installed VS versions.


Document difference between claiming and creating things in AWS IoT integration

Summary

Document the difference between creating things and claiming things in the AWS IoT integration.
Also fix the link to making the end device claimable.
Why do we need this ?

For many users, it may not be clear what the difference is and when to use what.
What is already there? What do you see now?

Documentation here: https://www.thethingsindustries.com/docs/integrations/aws-iot/default/things/
What is missing? What do you want to see?

Begin with explaining what the difference is.
How do you propose to document this?

Introduce the differences.
It would be great if we can link to existing documentation about the concept of claiming end devices and manually creating end devices.
Also fix the reference to the page how to make the end device claimable.

@johanstokking I have no idea how claiming works - can you summarize the differences here, and I'll add to the docs?

Claiming is documented here: https://www.thethingsindustries.com/docs/devices/device-claiming/
This issue is about shortly introducing the difference between creating devices and claiming (already existing) devices with a pointer to the URL above.


Time to branch for sumo?

I think we're ready to create a branch for sumo now, the Yocto Project release should be immanent :)
Any objections? Primarily checking with @kraj and @agherzan here. If you're both happy I'll create the branch later this week.

Last time people branched just before the release but looks like there isn't a sumo branch in meta-openembedded yet. I'd like to set all my branches to "sumo" and test the build/release scripts in my distro so it's really just for my benefit :)

I'm fine with pushing it.

Wait until offcial release please, you never know until its done.

master has now divered from sumo in oe-core and contains some major upgrades. I'm currently seeing build failures due to the new u-boot upgrade. So I think it's definitely time to make the branch even if 2.5 isn't fully released yet.

OK lets go ahead

Branch created.


Does it work in react-native components?

Hi, unfortunately, it doesn’t support react native for now

Are there any plans for it?

I tried to implement it I got 1 black box and circle.

But I can render pieces
        <Piece pieceType="facialHair" pieceSize="100" facialHairType="BeardMedium"/>
        <Piece pieceType="clothe" pieceSize="100" clotheType="Hoodie" clotheColor="Red"/>

For everyone who lands here searching for the react-native component
https://www.npmjs.com/package/react-native-avataaars


Build Error on Gradle 8

Hi, unfortunately i can not build the expo app with gradle >= 8.0
This is the Error:
[RUN_GRADLEW] 1: Task failed with an exception.
[RUN_GRADLEW] -----------
[RUN_GRADLEW] * What went wrong:
[RUN_GRADLEW] Execution failed for task ':react-native-android-widget:compileDebugJavaWithJavac'.
[RUN_GRADLEW] > Compilation failed; see the compiler error output for details.
[RUN_GRADLEW] * Try:
[RUN_GRADLEW] > Run with --stacktrace option to get the stack trace.
[RUN_GRADLEW] > Run with --info or --debug option to get more log output.
[RUN_GRADLEW] > Run with --scan to get full insights.
[RUN_GRADLEW] ==============================================================================
[RUN_GRADLEW] 2: Task failed with an exception.
[RUN_GRADLEW] -----------
[RUN_GRADLEW] * What went wrong:
[RUN_GRADLEW] java.lang.StackOverflowError (no error message)
[RUN_GRADLEW] * Try:
[RUN_GRADLEW] > Run with --stacktrace option to get the stack trace.
[RUN_GRADLEW] > Run with --info or --debug option to get more log output.
[RUN_GRADLEW] > Run with --scan to get full insights.
[RUN_GRADLEW] ==============================================================================
[RUN_GRADLEW] * Get more help at https://help.gradle.org/
[RUN_GRADLEW] BUILD FAILED in 6m 13s
[RUN_GRADLEW] Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
[RUN_GRADLEW] You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
[RUN_GRADLEW] See https://docs.gradle.org/7.5.1/userguide/command_line_interface.html#sec:command_line_warnings
[RUN_GRADLEW] Execution optimizations have been disabled for 1 invalid unit(s) of work during this build to ensure correctness.
[RUN_GRADLEW] Please consult deprecation warnings for more details.
[RUN_GRADLEW] 451 actionable tasks: 451 executed
[RUN_GRADLEW] Error: Gradle build failed with unknown error. See logs for the "Run gradlew" phase for more information.
Build failed

Can anyone help me out here ? :)

Can you share more details how to reproduce this, or full log?
In your log there is a reference to gradle 7.5.1.
I just built the example-expo app from this repo with latest Expo version, using eas, and the build finished successfully.
The first two lines in the "Run gradlew" section are:
Running 'gradlew :app:assembleRelease' in /home/expo/workingdir/build/example-expo/android
Downloading https://services.gradle.org/distributions/gradle-8.0.1-all.zip

Did you make any progress?


AbortedException: Connection has been closed BEFORE send operation

Spring Cloud Gateway throws hundreds of "reactor.netty.channel.AbortedException: Connection has been closed BEFORE send operation" exceptions everyday.
The version of spring boot and cloud:
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.3.8.RELEASE</version>

    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-dependencies</artifactId>
    <version>Hoxton.SR10</version>

The config of spring cloud gateway:
server.undertow.io-threads = 1
server.undertow.worker-threads = 1
hystrix.threadpool.default.coreSize = 10
hystrix.threadpool.default.maxQueueSize = 100
spring.cloud.consul.discovery.healthCheckInterval = 5s
feign.httpclient.max-connections = 200
spring.cloud.gateway.httpclient.pool.max-idle-time = 20s
spring.cloud.gateway.httpclient.pool.max-life-time = 120s
spring.cloud.gateway.httpclient.pool.max-connections = 1000
spring.cloud.gateway.httpclient.pool.acquire-timeout = 5000
spring.cloud.gateway.httpclient.pool.type = fixed
spring.cloud.gateway.httpclient.connect-timeout = 3000
spring.cloud.gateway.httpclient.response-timeout = 30s
The config of the remote peer:
feign.httpclient.max-connections-per-route = 150
server.connection-timeout = 20000
The error log:
content:2021-04-20 09:55:58,125 [iot-gateway,,] [PID:2572] [reactor-http-epoll-3] ERROR r.n.channel.ChannelOperationsHandler -  Error was received while reading the incoming data. The connection will be closed.
reactor.core.Exceptions$BubblingException: reactor.netty.channel.AbortedException: Connection has been closed BEFORE send operation
at reactor.core.Exceptions.bubble(Exceptions.java:173)
at reactor.core.publisher.Operators.onErrorDropped(Operators.java:635)
at com.alibaba.csp.sentinel.adapter.reactor.InheritableBaseSubscriber.onError(InheritableBaseSubscriber.java:169)
at com.alibaba.csp.sentinel.adapter.reactor.SentinelReactorSubscriber.onError(SentinelReactorSubscriber.java:37)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onError(FluxPeekFuseable.java:227)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at reactor.core.publisher.Operators$MonoSubscriber.onError(Operators.java:1834)
at reactor.core.publisher.MonoIgnoreThen$ThenAcceptInner.onError(MonoIgnoreThen.java:306)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onError(MonoPeekTerminal.java:251)
at org.springframework.http.server.reactive.ChannelSendOperator$WriteCompletionBarrier.onError(ChannelSendOperator.java:414)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at reactor.core.publisher.MonoIgnoreElements$IgnoreElementsSubscriber.onError(MonoIgnoreElements.java:76)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onError(Operators.java:2034)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:97)
at reactor.core.publisher.Operators$MonoSubscriber.onError(Operators.java:1834)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreInner.onError(MonoIgnoreThen.java:235)
at reactor.core.publisher.Operators.error(Operators.java:196)
at reactor.core.publisher.MonoError.subscribe(MonoError.java:52)
at reactor.core.publisher.Mono.subscribe(Mono.java:4252)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:172)
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56)
at reactor.core.publisher.Mono.subscribe(Mono.java:4252)
at reactor.core.publisher.FluxConcatArray$ConcatArraySubscriber.onComplete(FluxConcatArray.java:207)
at reactor.core.publisher.FluxConcatArray.subscribe(FluxConcatArray.java:80)
at reactor.core.publisher.Mono.subscribe(Mono.java:4252)
at org.springframework.http.server.reactive.ChannelSendOperator$WriteBarrier.onNext(ChannelSendOperator.java:192)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onNext(ScopePassingSpanSubscriber.java:90)
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:114)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onNext(ScopePassingSpanSubscriber.java:90)
at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:192)
at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onNext(ScopePassingSpanSubscriber.java:90)
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:114)
at reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:265)
at reactor.netty.channel.FluxReceive.onInboundNext(FluxReceive.java:371)
at reactor.netty.channel.ChannelOperations.onInboundNext(ChannelOperations.java:358)
at reactor.netty.http.client.HttpClientOperations.onInboundNext(HttpClientOperations.java:677)
at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:96)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:311)
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:432)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276)
at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.lang.Thread.run(Thread.java:748)
Caused by: reactor.netty.channel.AbortedException: Connection has been closed BEFORE send operation
at reactor.netty.channel.AbortedException.beforeSend(AbortedException.java:60)
at reactor.netty.http.HttpOperations.then(HttpOperations.java:166)
at reactor.netty.ReactorNetty$OutboundThen.(ReactorNetty.java:562)
at reactor.netty.ReactorNetty$OutboundThen.(ReactorNetty.java:555)
at reactor.netty.NettyOutbound.then(NettyOutbound.java:358)
at reactor.netty.http.HttpOperations.send(HttpOperations.java:104)
at org.springframework.http.server.reactive.ReactorServerHttpResponse.writeWithInternal(ReactorServerHttpResponse.java:84)
at org.springframework.http.server.reactive.AbstractServerHttpResponse.lambda$null$7(AbstractServerHttpResponse.java:230)
at org.springframework.http.server.reactive.AbstractServerHttpResponse.doCommit(AbstractServerHttpResponse.java:284)
at org.springframework.http.server.reactive.AbstractServerHttpResponse.lambda$writeWith$8(AbstractServerHttpResponse.java:230)
at org.springframework.http.server.reactive.ChannelSendOperator$WriteBarrier.onNext(ChannelSendOperator.java:186)
... 34 common frames omitted

@violetagg any ideas?

@hooverhe
AbortedException: Connection has been closed BEFORE send operation means that we were able to obtain the connection from the pool and the connection was alive but before sending the request the remote peer closed the connection.

how to avoid this problem

Is there an elegant way to reduce log level or catch this exception? At the moment it spams our logs with Errors that we can not prevent, allowing users to replicate Errors in our logs by closing Browser-Tabs while Uploading etc. Since we do have alarms in monitoring watching for exceptions in log files, this is a problem for us.
We would like to handle this exception and log it ourselves or reduce log level.

@deploydesexta  it is  about connection2 in the diagram below i.e. the connection established between WebClient and the target service
client -> Spring Cloud Gateway -> target service
       ^                       ^
    connection1           connection2

Please check FAQ for possible solutions.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.

@deploydesexta In case this is still an issue for you, or anyone else on this thread.
I noticed this error arising on my system when accidentally broadcasting messages to an expired session. This may be the case for you guys as well. After fixing my state, I no longer see such messages.

@ztayluh thanks for the reply! By expired session you mean what session? And what state you fixed? Can you share more? I didn't get it where to look up to fix 😞

Sorry for any confusion! In my case, I was holding onto the WebsocketSessions in a cache and broadcasting a WebsocketMessage to the respective sessions.
private var activeSessions = ConcurrentHashMap<String, Flux>()
If I disconnected my client, I was not properly clearing out the WebsocketSession. So, when a new message was received I would try to broadcast to my clients. That error message would occur when trying to send to invalid sessions in my cache.
I hope this helps!


perf: Make exception handling faster by using v8::OneByteConst

This should make handling of exception slightly faster, by
using "v8::OneByteConst" strings from core/runtime/v8_static_strings.rs
module. This should save a bunch of mem copies and expensive
allocations when handling errors between JS and Rust.

Codecov Report
Attention: Patch coverage is 80.00000% with 3 lines in your changes missing coverage. Please review.

Project coverage is 81.64%. Comparing base (0c7f83e) to head (49d468e).
Report is 65 commits behind head on main.

Files
Patch %
Lines

core/error.rs
80.00%
3 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #830      +/-   ##
==========================================
+ Coverage   81.43%   81.64%   +0.20%
==========================================
  Files          97       98       +1
  Lines       23877    24413     +536
==========================================
+ Hits        19445    19931     +486
- Misses       4432     4482      +50

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


Transcription failed :The recordings URI contains invalid data while using Batch transcription and diarization

Hi,
I am trying to use batch transcription service from azure in python.
When adding properties
PROPERTIES = {
"AddWordLevelTimestamps" : "True",
"AddDiarization" :  "True"
}
in my TranscriptionDefinition
cris_client.TranscriptionDefinition(
recordings_url=RECORDINGS_BLOB_URI,
locale=LOCALE,
name=NAME,
description=DESCRIPTION,
properties = PROPERTIES
)
i am getting error:
Transcription failed :The recordings URI contains invalid data
If removing properties, the TranscriptionDefinition works fine, and gives result, without any error but not able to get diarization.
The code i am using is from github:
=============================================================
from typing import List
import logging
import sys
import requests
import time
from datetime import datetime, timedelta
import swagger_client as cris_client
from azure.storage.blob import (
BlockBlobService,
BlobPermissions
)
logging.basicConfig(stream=sys.stdout, level=logging.DEBUG, format="%(message)s")
Your subscription key and region for the speech service
SUBSCRIPTION_KEY = ""
SERVICE_REGION = ""
NAME = "Simple transcription"
DESCRIPTION = "Simple transcription description"
LOCALE = "en-IN"
ACCOUNT_NAME = ""
ACCOUNT_KEY = ""
URI_PREFIX = "https://<account_name>.blob.core.windows.net/<container_name>"
block_blob_service = BlockBlobService(account_name=ACCOUNT_NAME, account_key=ACCOUNT_KEY)
container_name = ""
blob_name = "Test10_Priyanka_ch1.wav"
sas_url = block_blob_service.generate_blob_shared_access_signature(
container_name,
blob_name,
permission=BlobPermissions.READ,
expiry=datetime.utcnow() + timedelta(hours=1),
start=datetime.utcnow()
)
RECORDINGS_BLOB_URI = URI_PREFIX + '/' + blob_name + '?' + sas_url
PROPERTIES = {
"AddWordLevelTimestamps" : "True",
"AddDiarization" :  "True"
}
Set subscription information when doing transcription with custom models
ADAPTED_ACOUSTIC_ID = None  # guid of a custom acoustic model
ADAPTED_LANGUAGE_ID = None  # guid of a custom language model
def transcribe():
logging.info("Starting transcription client...")
# configure API key authorization: subscription_key
configuration = cris_client.Configuration()
configuration.api_key['Ocp-Apim-Subscription-Key'] = SUBSCRIPTION_KEY
configuration.host = "https://{}.cris.ai".format(SERVICE_REGION)

# create the client object and authenticate
client = cris_client.ApiClient(configuration)

# create an instance of the transcription api class
transcription_api = cris_client.CustomSpeechTranscriptionsApi(api_client=client)

# get all transcriptions for the subscription
transcriptions: List[cris_client.Transcription] = transcription_api.get_transcriptions()

logging.info("Deleting all existing completed transcriptions.")

# delete all pre-existing completed transcriptions
# if transcriptions are still running or not started, they will not be deleted
for transcription in transcriptions:
    try:
        transcription_api.delete_transcription(transcription.id)
    except ValueError:
        # ignore swagger error on empty response message body: https://github.com/swagger-api/swagger-core/issues/2446
        pass

# Use base models for transcription. Comment this block if you are using a custom model.
# Note: you can specify additional transcription properties by passing a
# dictionary in the properties parameter. See
# https://docs.microsoft.com/azure/cognitive-services/speech-service/batch-transcription
# for supported parameters.
transcription_definition = cris_client.TranscriptionDefinition(
    recordings_url=RECORDINGS_BLOB_URI,
    locale=LOCALE,
    name=NAME,
    description=DESCRIPTION,
    properties = PROPERTIES
)

data, status, headers = transcription_api.create_transcription_with_http_info(transcription_definition)

# extract transcription location from the headers
transcription_location: str = headers["location"]

# get the transcription Id from the location URI
created_transcription: str = transcription_location.split('/')[-1]

logging.info("Created new transcription with id {}".format(created_transcription))

logging.info("Checking status.")

completed = False
while not completed:
    running, not_started = 0, 0

    # get all transcriptions for the user
    transcriptions: List[cris_client.Transcription] = transcription_api.get_transcriptions()

    # for each transcription in the list we check the status
    for transcription in transcriptions:
        if transcription.status in ("Failed", "Succeeded"):
            # we check to see if it was the transcription we created from this client
            if created_transcription != transcription.id:
                continue

            completed = True

            if transcription.status == "Succeeded":
                results_uri = transcription.results_urls["channel_0"]
                results = requests.get(results_uri)
                logging.info("Transcription succeeded. Results: ")
                logging.info(results.content.decode("utf-8"))
            else:
                print(transcription)
                logging.info("Transcription failed :{}.".format(transcription.status_message))
                break
        elif transcription.status == "Running":
            running += 1
        elif transcription.status == "NotStarted":
            not_started += 1

    logging.info("Transcriptions status: "
            "completed (this transcription): {}, {} running, {} not started yet".format(
                completed, running, not_started))

    # wait for 5 seconds
    time.sleep(5)

input("Press any key...")

if name == "main":
transcribe()
==============================================================
Kindly suggest any solution

Hi, could you post the transcription id (which is printed to the console in the example code) of the request that failed? Also, can please try just with AddWordLevelTimestamps: true, and post the transcription id? And finally, would it be possible to share the problematic audio, or make sure that it is in the correct format using for example shntool or Audacity? Thank you!

We have checked our audio file, sorry can't share that.
Audio details:
length: 71 sec, format: wav, samplling rate: 44100 Hz
Mono channel, 32-bit float.
The code worked well when used just AddWordLevelTimestamps" : "True"
(transcription id: Created new transcription with id 1748ab34-48be-4dc6-b726-4c2f146b3aa1)
But getting error while using below properties
PROPERTIES = {
"AddWordLevelTimestamps" : "True",
"AddDiarization" : "True"
}
Error details:
'Transcription id': '95ec4b61-1856-4e04-bec8-05270b26c7ea'
Details:
{'created_date_time': datetime.datetime(2019, 10, 15, 5, 19, 35, tzinfo=tzlocal()),
'description': 'Simple transcription description',
'id': '95ec4b61-1856-4e04-bec8-05270b26c7ea',
'last_action_date_time': datetime.datetime(2019, 10, 15, 5, 19, 56, tzinfo=tzlocal()),
'locale': 'en-IN',
'models': [{'base_model': None,
'created_date_time': datetime.datetime(2019, 6, 19, 10, 2, 11, tzinfo=tzlocal()),
'datasets': [],
'description': 'DIARIZATION_V0.0',
'id': 'fe190b26-2c67-48df-810a-183eebc486f0',
'last_action_date_time': datetime.datetime(2019, 6, 19, 13, 23, 12, tzinfo=tzlocal()),
'locale': 'en-US',
'model_kind': 'Diarization',
'name': 'DIARIZATION_V0.0',
'properties': {'Purpose': 'BatchTranscription,Diarization'},
'status': 'Succeeded'},
{'base_model': None,
'created_date_time': datetime.datetime(2019, 2, 27, 11, 15, 4, tzinfo=tzlocal()),
'datasets': [],
'description': 'Unified',
'id': '4064457c-2aa4-4a45-a353-ef3102a7d777',
'last_action_date_time': datetime.datetime(2019, 2, 27, 11, 27, 28, tzinfo=tzlocal()),
'locale': 'en-IN',
'model_kind': 'AcousticAndLanguage',
'name': 'v4.0 Unified',
'properties': {'Purpose': 'OnlineTranscription,BatchTranscription,AcousticAdaptation,LanguageAdaptation'},
'status': 'Succeeded'}],
'name': 'Simple transcription',
'properties': {'AddDiarization': 'True',
'AddWordLevelTimestamps': 'True',
'ProfanityFilterMode': 'Masked',
'PunctuationMode': 'DictatedAndAutomatic'},
'recordings_url': '',
'report_file_url': None,
'results_urls': {},
'status': 'Failed',
'status_message': 'The recordings URI contains invalid data.'}

Hi Zhou,
We are getting the same error even after converting audio to WAV | PCM | 16-bit | 16 kHz, mono.
Thanks,
Rahul

Hi Rahul,
We need the input audio to reproduce this. Is it possible to anonymize the audio and send it to me directly to eldak at microsoft.com?
Thanks!

Hi Eldak,
As asked I have sent you a mail containing the audio file.
The subject of the mail is Regarding Transcription failed: The recordings URI contains invalid data while using Batch transcription and diarization #399
Thanks,
Rahul

Hi Eldar,
Could you please help on how you were able to extract the diarization from audio. As we tried from different regions like eastus.

Hi Rahul,
I was not able to reproduce the issue on your input file. I was just using a sample in C#. Could you please share your python client directly with me (on my email)? Thanks!

I know this is an old (and closed) issue, but I experienced the same issue and found a solution. I blogged about it here:
https://peter.orneholm.com/post/617527184031105024/solving-the-recordings-uri-contains-invalid
In my case it was related to that the audio file contained a video stream (for the jpg miniature), but that can be removed using ffmpeg.

I also encountered this old, closed issue and found a solution. In my case, the problem was that Google Drive does not work for blob storage. When I moved my file to a publicly accessible URL in Amazon S3, everything worked.

Hello, experiencing the same issue. I am using batch transcription with data from my azure blob, I tried both one file BLOB sas uri and multi file CONTAINER sas uri, both of them giving me the 'Transcription failed: The recordings URI contains invalid data.' error. And this is strange because I used exact same files several times before and got the transcription succesfully. Any ideas on why I am getting this error now?
Thanks.

@humak  you can find detailed error messages from report.json file, which you can retrieve when using GET files. If the error message there is not clear enough, please post the transcription id, region and approximate time, and we will investigate further.