I'm running some integration tests trying to upgrade to 1.22.3 and am encountering a panic which seems impossible.
What did you see happen?
I get the following panic during the execution of the integration test.
tyk-1             | panic: runtime error: hash of unhashable type [2]string
tyk-1             |
tyk-1             | goroutine 54 [running]:
tyk-1             | go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal/tracetransform.Spans({0xc00020af08, 0x4, 0xc000e6a080?})
tyk-1             | 	go.opentelemetry.io/otel/exporters/otlp/otlptrace@v1.26.0/internal/tracetransform/span.go:41 +0x2d9
tyk-1             | go.opentelemetry.io/otel/exporters/otlp/otlptrace.(*Exporter).ExportSpans(0xc000304370, {0x404dc18, 0xc0002dc0e0}, {0xc00020af08?, 0xc00008eef2?, 0xc0002936c0?})
tyk-1             | 	go.opentelemetry.io/otel/exporters/otlp/otlptrace@v1.26.0/exporter.go:31 +0x34
tyk-1             | go.opentelemetry.io/otel/sdk/trace.(*batchSpanProcessor).exportSpans(0xc00031c140, {0x404dba8, 0xc00017c6e0})
tyk-1             | 	go.opentelemetry.io/otel/sdk@v1.26.0/trace/batch_span_processor.go:277 +0x238
tyk-1             | go.opentelemetry.io/otel/sdk/trace.(*batchSpanProcessor).processQueue(0xc00031c140)
tyk-1             | 	go.opentelemetry.io/otel/sdk@v1.26.0/trace/batch_span_processor.go:305 +0x36e
tyk-1             | go.opentelemetry.io/otel/sdk/trace.NewBatchSpanProcessor.func1()
tyk-1             | 	go.opentelemetry.io/otel/sdk@v1.26.0/trace/batch_span_processor.go:117 +0x54
tyk-1             | created by go.opentelemetry.io/otel/sdk/trace.NewBatchSpanProcessor in goroutine 1
tyk-1             | 	go.opentelemetry.io/otel/sdk@v1.26.0/trace/batch_span_processor.go:115 +0x2e5
tyk-1 exited with code 2

So far it's particular to whenever the binary is built with goreleaser. I've verified go version -m pkg matches between the breaking and passing build. Both builds are built from the same source tree, but build from source doesn't trigger the panic. I've tried various debugging things like:

enable or disable buildvcs=false, git --safe-directory
added -race to build (no races reported)
ensured go version -m is reported without differences
cflags -N -l to disable optimizations, inlining - panic remains

The exact same goreleaser binary passes is used with recent 1.21 versions (1.21.8-1.21.10), and the resulting build doesn't trigger a panic. The panic is reliably triggered with 1.22.3 and doesn't seem racy, however I haven't been able to reproduce it with a direct build from source, using this Dockerfile or this one using the 1.22-bookworm base. It issues make build, which is essentially just a wrapper for go build -tags=goplugin -trimpath ..
One thing that made a difference was running the binary with delve debugger. In that case, the panic doesn't occur. Additionally, the panic itself is strange, because [2]string seems to be a valid map key, via playground: https://go.dev/play/p/tm_uKffqff0 ; the source code feels impossible to trigger the exact panic:

span.go source on L41
the map key is of a type key struct{ two fields } in local function scope, and the map value is a pointer
no idea where [2]string may be coming from

The build environment has been breaking with golang:1.22-bullseye and golang:1.22-bookworm (1.22.3).

Issue filed on opentelemetry-go
Fishing for advice how to debug this further
https://github.com/golang/go/issues/65957 may be related

What did you expect to see?
no panic

CC @golang/runtime
This does seem impossible.  Have you tried running the program under the race detector?

CC @golang/runtime
This does seem impossible.  Have you tried running the program under the race detector?

Added -race to the build, but unsure if there are additional steps required, the panic remained, no race reported.

Passing on tyk: devel go1.23-3776465 Fri May 24 22:23:55 2024 +0000, but panic on >=1.22.0 <=1.22.3

If you have a passing and a failing state, then a binary search might reveal which CL changed things.
Does your program use plugins? I noticed the -tags=goplugin build tag, which is suggestive of that.
I would not be surprised if this was a plugin bug. Getting type identity right in the presence of plugins is tricky.

If you have a passing and a failing state, then a binary search might reveal which CL changed things.

:+1: - is there perhaps a guide we could follow, or do we just list the git hashes and have at it?

Does your program use plugins? I noticed the -tags=goplugin build tag, which is suggestive of that. I would not be surprised if this was a plugin bug. Getting type identity right in the presence of plugins is tricky.

We do use plugins, however no plugins are loaded as part of the test (no .so files, no plugin.Open). Likely we can disable CGO (and disable plugins) and see if the issue persists too.

You can use git bisect https://git-scm.com/docs/git-bisect
I have to relearn it each time I use it :(
At each stage you'll have to run make.bash in the Go repository and then build/run your test with the result.

I will investigate later today. Maybe we can roll that CL back, although it was fixing a different bug.

Never mind, that CL fixes the problem. So I guess we could reconsider backporting (which we chose not to do).
It is strange that your failure is only on 1.22, where #65957 was an issue since at least 1.18.

Both builds are built from the same source tree, but build from source doesn't trigger the panic.

I'm afraid I don't understand this. What other build is there? You mention goreleaser, but I don't know what that is.

is there some work around to the behaviour

Maybe. Using the type [2]string in just the right package (go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal?) might help.

It is strange that your failure is only on 1.22, where #65957 was an issue since at least 1.18.

Even stranger is that it's only a failure if built via goreleaser (release tooling). If built from source without the indirection, via Dockerfile, then the failure doesn't appear. Also doesn't appear on 1.21 with same goreleaser release pipeline.
I've asked if we could pinpoint the breaking CL as well.

I'm afraid I don't understand this. What other build is there? You mention goreleaser, but I don't know what that is.

We build two different processes as I tried to describe in the issue:

a local dockerfile, built directly with go build, which passes the test suite even with 1.22.3
a release CI action which uses goreleaser for building and packaging, docker installed via deb (task test:build for a local partial build, particular for amd64)

goreleaser is in essence release build tooling that provides a wrapper around go build, creating deb and rpm packages, and ultimately creating a docker image where those packages are installed ; our release build is failing those CI tests, however the very minimal dockerfile that skips all of those steps and just uses go build is passing the CI tests.

Maybe. Using the type [2]string in just the right package (go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal?) might help.

I didn't catch you there, the key is a type struct{ptr, ptr}, and it's just in an imported third party package, type safety shouldn't enable using [2]string in lieu of the code that lives there.

Hm, I'm not sure what goreleaser might do differently then. Certainly trying to match what goreleaser does in your simple docker build, or paring back what goreleaser does to match the simple docker build, might illuminate things.
One thing I would check: make sure that you're actually getting the right Go version in both cases. You can print runtime.Version() into a log somewhere, or run go version <binary> on the binary in the final docker file.

I didn't catch you there, the key is a type struct{ptr, ptr}, and it's just in an imported third party package, type safety shouldn't enable using [2]string in lieu of the code that lives there.

I mean doing, anywhere in the package, something like:
var a any = [2]string{}
var b any = [2]string{}
func init() {
    if a != b {
        panic("bad")
    }
}

This just introduces a use of [2]string, and in a context where equality must work, into the package.

One thing I would check: make sure that you're actually getting the right Go version in both cases. You can print runtime.Version() into a log somewhere, or run go version  on the binary in the final docker file.

Verified with go version -m before filing the issue, output between failing and passing binary matches 1-1. :ballot_box_with_check:

Just want to add we are seeing this as well. Same runtime panic within the opentelemetry code.
go 1.22.4 on MacOS 14.5 Sonoman with M1 Max chip.
go env output
GO111MODULE=''
GOARCH='arm64'
GOBIN=''
GOCACHE='/Users/kellen.miller/Library/Caches/go-build'
GOENV='/Users/kellen.miller/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/kellen.miller/go/pkg/mod'
GONOPROXY='go.finxact.io,bitbucket.org/finxact,gitlab.com/finxact'
GONOSUMDB='go.finxact.io,bitbucket.org/finxact,gitlab.com/finxact'
GOOS='darwin'
GOPATH='/Users/kellen.miller/go'
GOPRIVATE='go.finxact.io,bitbucket.org/finxact,gitlab.com/finxact'
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/opt/homebrew/Cellar/go/1.22.4/libexec'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/opt/homebrew/Cellar/go/1.22.4/libexec/pkg/tool/darwin_arm64'
GOVCS=''
GOVERSION='go1.22.4'
GCCGO='gccgo'
AR='ar'
CC='cc'
CXX='c++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/69/3t8bmcl909g3zc07kv0v1dyr0000gr/T/go-build3499618249=/tmp/go-build -gno-record-gcc-switches -fno-common'

This isn't actually done yet, reopening.
I'm presuming this is a dup of #65957, so it should be fixed with the next point release (1.22.5).


[image_picker] [M1 simulator] PlatformException(multiple_request, Cancelled by a second request, null, null) when picking the first default image from the ios simulator

Steps to Reproduce

Run flutter create temp.
Update the files as follows: https://github.com/ShunyaWatanabe/flutter-picker-image-test/commit/3e4feeb15a182396765af4d6868b0f086339597a
Run flutter run --verbose
Click the button on the bottom right, which is the increment counter
Approve permission
Load different default pictures

Expected results:
Image picker should work on all of the default pictures.
Actual results:
One of them doesn't work, with the error that says PlatformException(multiple_request, Cancelled by a second request, null, null)
If this is the expected result, I'd like to know what the cause is and request better logs for better understanding.
https://user-images.githubusercontent.com/25846438/118346219-cb811400-b574-11eb-8e06-f7453f3d1d2a.mov

Logs

[+4665 ms] flutter: error: PlatformException(multiple_request, Cancelled
by a second request, null, null)

Analyzing temp...
No issues found! (ran in 2.5s)

[✓] Flutter (Channel stable, 2.0.4, on Mac OS X 10.15.7 19H114 darwin-x64,
    locale en-JP)
    • Flutter version 2.0.4 at /Users/shunya_watanabe/development/flutter
    • Framework revision b1395592de (6 weeks ago), 2021-04-01 14:25:01
      -0700
    • Engine revision 2dce47073a
    • Dart version 2.12.2

[✓] Android toolchain - develop for Android devices (Android SDK version
    30.0.3)
    • Android SDK at /Users/shunya_watanabe/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Users/shunya_watanabe/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google
      Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.56.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.22.0

[✓] Connected device (2 available)
    • iPhone 8 (mobile) • 14C87317-9478-42BE-AEE5-9CC4FF5590BA • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • Chrome (web)      • chrome                               •
      web-javascript • Google Chrome 90.0.4430.212

• No issues found!

@ShunyaWatanabe
It'd be great if you could provide a code sample in a single file that we can directly copy paste and run to verify the issue.
Also, take a look at this open similar issue which talks about same exception you are getting, https://github.com/flutter/flutter/issues/49780 and see if it resemble your issue.

@darshankawar
I wish I could do that but in order to use image_picker I need to at least modify 3 files (pubspec.yml, main.dart, and pubspec.lock which is automatically modified) and then a few more files to configure permission for access to the photos.
Please understand that this is the minimum I extracted to reproduce the issue.
Also, thanks for the suggestion. I took a look at #49780, but I'm not sure if they are the same issue.

@ShunyaWatanabe
Manually picking up changes from the file you shared is time consuming. It'd be great if you could put that file in a github repo and share the link that we can clone and directly run to verify this issue.
Thanks.

You can clone this repo: https://github.com/ShunyaWatanabe/flutter-picker-image-test

@ShunyaWatanabe
In your code, I see that you've explicitly added to handle permissions using permission_handler plugin, which is not required. On iOS, app now by default asks for permissions, as shown below:

Above screenshot is from plugin's official repo https://github.com/flutter/plugins/tree/master/packages/image_picker/image_picker/example, wherein, you'll see, no explicit permission is used / handled.
Can you try the same without permission_handler issue and see if you still get same issue ?

I removed permission_handler and tried it again, and the error still occurs.

I'm experiencing this as well, when user clicks cancel button getImage does not return anything (expect null here), and when getImage is get called again, it throws this error

Thanks for the updated code sample. Using it and with latest plugin version, I was able to replicate the issue, irrespective of any kind of permission we select and seems to be happening only after selecting particular image, ie, top left image:

flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: error: PlatformException(multiple_request, Cancelled by a second request, null, null)
flutter: error: PlatformException(multiple_request, Cancelled by a second request, null, null)
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'

Syncing files to device iPhone 12 Pro Max...
flutter: error: PlatformException(multiple_request, Cancelled by a second request, null, null)
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: pickedFile: Instance of 'PickedFile'
flutter: error: PlatformException(multiple_request, Cancelled by a second request, null, null)

 flutter doctor -v
dhs@Dhss-MacBook-Pro ncflutter % flutter doctor -v
[✓] Flutter (Channel stable, 2.2.0, on Mac OS X 10.15.4 19E2269 darwin-x64,
    locale en-GB)
    • Flutter version 2.2.0 at /Users/dhs/documents/fluttersdk/flutter
    • Framework revision b22742018b (9 days ago), 2021-05-14 19:12:57 -0700
    • Engine revision a9d88a4d18
    • Dart version 2.13.0

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] VS Code (version 1.55.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (4 available)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 90.0.4430.212

• No issues found!

is there a stable version we can use for now?

This bug seems to be added at 0.7.5( #3835 ).

0.7.5

Fixes an issue where image rotation is wrong when Select Photos chose and image is scaled.
Migrate to PHPicker for iOS 14 and higher versions to pick image from the photo library.
Implement the limited permission to pick photo from the photo library when Select Photo is chosen.
https://pub.dev/packages/image_picker/changelog#075

This bug can be avoided by downgrading to  image_picker: 0.7.4 at pubspec.yaml.
  image_picker: 0.7.4

I have the same issue on v0.8.0+1. Oddly, if I pick any other default image other than the first one (with the bunch of flowers) it doesn't give me the error.

I have the same issue on v0.8.0+1. Oddly, if I pick any other default image other than the first one (with the bunch of flowers) it doesn't give me the error.

This bug seems to be added at 0.7.5( #3835 ).

0.7.5

Fixes an issue where image rotation is wrong when Select Photos chose and image is scaled.
Migrate to PHPicker for iOS 14 and higher versions to pick image from the photo library.
Implement the limited permission to pick photo from the photo library when Select Photo is chosen.
https://pub.dev/packages/image_picker/changelog#075

This bug can be avoided by downgrading to  image_picker: 0.7.4 at pubspec.yaml.
  image_picker: 0.7.4

Hello @mono0926 and @a7medpa,
This is because there is a  known issue to pick HEIC images (the first one is HEIC format) with PHPicker implementation. But it should only affect transcoding on simulators. So we have two options here. Either test with a real device or test with non-HEIC images until Apple solves the issue.

The same issue with the last version of image_picker: ^0.8.0+3
[✓] Flutter (Channel stable, 2.2.2, on macOS 11.4 20F71 darwin-arm, locale en)
• Flutter version 2.2.2 at /Users/y.alkhateeb/Documents/dev/sdk/flutter
• Framework revision d79295af24 (5 days ago), 2021-06-11 08:56:01 -0700
• Engine revision 91c9fc8fe0
• Dart version 2.13.3
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at /Users/y.alkhateeb/Library/Android/sdk
• Platform android-30, build-tools 30.0.3
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.5, Build version 12E262
• CocoaPods version 1.10.1
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 4.2)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
[✓] IntelliJ IDEA Community Edition (version 2021.1.2)
• IntelliJ at /Applications/IntelliJ IDEA CE.app
• Flutter plugin version 57.0.5
• Dart plugin version 211.7233
[✓] VS Code (version 1.56.2)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.22.0
[✓] Connected device (2 available)
• iPhone 12 Pro Max (mobile) • 00B2C40E-A430-47D8-8D77-4E556C5A9294 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
• Chrome (web)               • chrome                               • web-javascript • Google Chrome 91.0.4472.101
• No issues found!

I also get this exception on physical ios device (not sure on Android), when I close the image picker sheet or tap the cancel button on the sheet, then call ImagePicker().getImage(source: ImageSource.gallery) again.

Hello @KuoyHuot and @y-alkhateeb,
I think your issue is a bit different than this issue. This issue is about HEIC format and you can find the details in my comment above. I guess the reason you have the PlatformException (PlatformException(multiple_request, Cancelled by a second request, null, null)) error is explained in this comment. So the PR that is mentioned in the comment will fix the problem.
If you think otherwise please let me know.

Any updates??
It seems to be a long time since the issue is reported, is there any fix available??

I got the same error using ^0.8.4
Only the top left one causes the error

For those who don't want to read the entire comment thread, the reason for this issue as reported is explained fully in an above comment:
https://github.com/flutter/flutter/issues/82602#issuecomment-858383514
The flowers image is the only one in the iOS simulator sample images that is HEIC format, and iOS simulators currently fail to transcode HEIC images.  Real iOS devices don't have that issue.  Apple is expected to eventually resolve the iOS simulator HEIC format transcoding open issue, and the workaround for now is to test an HEIC image on a real iOS device or to test only using the other (non-HEIC) images on the simulator.

Hey guys it seems like I'm getting this error with every image on the simulator it self, not just the flowers image.
I'm using M1 machine for flutter development

Hey guys it seems like I'm getting this error with every image on the simulator it self, not just the flowers image.
I'm using M1 machine for flutter development

Same for me, not just HEIC images. Also using M1 for development and used a flutter template to replicate issue. Link to Github repo: here

Hey guys it seems like I'm getting this error with every image on the simulator it self, not just the flowers image.
I'm using M1 machine for flutter development

I am still getting this error as well. I had tried the above recommendation of downgrading to image_picker: 0.7.4 and I am getting another error for using XFile. Switching back to 0.8.4

UPDATE: I again downgraded to image_picker: ^0.7.4+1 and changed final XFile? image = await picker.getImage(source: ImageSource.gallery); to final image = await picker.getImage(source: ImageSource.gallery);. If anyone needs help be sure to reply.

UPDATE: I again downgraded to image_picker: ^0.7.4+1 and changed final XFile? image = await picker.getImage(source: ImageSource.gallery); to final image = await picker.getImage(source: ImageSource.gallery);. If anyone needs help be sure to reply.

Concur. This is not an image selection related issue. Seems to have been introduced from 0.8.0 onwards and remains until current. ^0.7.5 runs fine.

Is this fixed yet?

ers image is the only one in the iOS simulator sample images that is HEIC format, and iOS simulators

For me even jpg images cause the same error

Is this fixed yet?

Same for me

still happening in 2022. Unable to select any images on m1, even when I drag in my own jpgs into the simulator 😔

Same for me

same here

saaaaaaaaame here

M1 Pro, issue PlatformException(multiple_request, Cancelled by a second request, null, null)
First request not complete. And second error. Image not selected. iOS Sim.

Currently using an M1 Mac Mini, running the latest version of image_picker & seeing this error.

I'm using version ^0.8.4+5 of the package and running on iOS Simulator iPhone 11 Pro (iOS 14.5). Still getting the error.

I'm using version ^0.8.4+8 of the package and still getting the error. 😢

@CoderJava @cardzap-ewan I'm using M1 Pro and iOS Simulator 12. all works.

Same for me

Hi everyone ı found the solution. Install İOS 13.7 from Xcode. Go to Xcode > Preferences, Select the "Components" tab, Mark the İOS 13.7, press "Check and Install Now".

image_picker: ^0.8.4+10 still has some error

@XinleZhou2018 try this version 0.8.4

Tried version 0.8.4 and got the same error.  I haven't tried downgrading to 13.7.  Seems like this must be a recent change to the image_picker code since the exact same code worked on the simulator a couple of weeks ago.

I tried with the 13.7 iOS and it works with that.  That being said, it's a bit worrying having to develop with an older version of the OS.

Having the same issue here.

Facing this issue even when using my own JPG or PNG images.
image_picker: ^0.8.4+10

I "fixed" this by creating a special IOS simulator with iOS 13.7 installed which I use when I'm testing image picking on the simulator.  It all seems to work fine on the physical device with iOS 15.3.  This isn't ideal but it kind of solves the problem.

I don't know who's sleeping but this should be fixed by now

I hope the problem will be fixed soon

same problem

I have had this problem for a couple of months on the simulator but now its on TestFlight and it works fine on all devices the app has been used on. However, when I was using the simulator today on image_picker: ^0.8.4+10 it gave me an error after closing the gallery. I have never gotten an error before, usually it would just close out without error so thats why I'm posting here:
StateError (Bad state: File: '/Users/dominic./Library/Developer/CoreSimulator/Devices/92751D63-6DF4-4C4B-9C42-57F7AFBBA607/data/Containers/Data/Application/C69BCFA0-CD9E-4083-99A2-A28F9C6C440F/tmp/image_picker_D9856652-1D5B-44FD-86A7-C09D1E75656C-35296-0000123DB274F5AE.jpg' is empty and cannot be loaded as an image.)
No reason it should say empty it works just fine on physical devices. But hey, I finally got an error!

Same here as of April 2022.
Error message: Failed to pick image. See error: PlatformException(multiple_request, Cancelled by a second request, null, null) when trying to use the first default picture of the simulator. It works fine for the other pictures.
Computer: Mac M1 Mini.
Version of image_picker: 0.8.4+11.

Reproducible as of image_picker: ^0.8.5 on Flutter stable 2.10.4

flutter doctor -v (mac)
[✓] Flutter (Channel stable, 2.10.4, on macOS 12.3 21E230 darwin-arm, locale en-IN)
    • Flutter version 2.10.4 at /Users/mahesh/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision c860cba910 (13 days ago), 2022-03-25 00:23:12 -0500
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-32, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.10.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

[✓] VS Code (version 1.65.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.39.20220405

[✓] Connected device (3 available)
    • iPhone 12 Pro (mobile) • 535317A4-921C-488F-B234-C2CC6D4AE5A1 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-5
      (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.3 21E230 darwin-arm
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 100.0.4896.75

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Mine show the error message, then few minute later pop up alert "to select photo"
WORKED iOS14.2, image_picker^0.8.5

A year has passed and the dude is snoring.

same here , 0.8.5

Does this reproduce with the latest dependencies (image_picker_ios 0.8.5+)? The last update to the iOS implementation packages fixed some situations where we would incorrectly think that a previous request was still in progress.

@stuartmorgan it does for me

And reproduces for me with the latest 0.8.5 version and latest Xcode.
Fwiw, the first call silently fails (I breakpointed every line of code) and somehow you just end up in the main thread. The second call gives the “cancelled by second request” error.
Will post a minimal app which exhibits this behaviour soon(ish).

On 30 Apr 2022, at 12:14, Arda Ilgaz @.***> wrote:

@stuartmorgan it does for me
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.

same issue with the latest 0.8.5 version

Please do not reply "same here" or "me too" to any GitHub issues.  It adds noise and makes it harder for maintainers to see actually important information.  Just give the original description of the issue a 👍  or subscribe to the issue for updates.

Fwiw, the first call silently fails (I breakpointed every line of code) and somehow you just end up in the main thread. The second call gives the “cancelled by second request” error.

It sounds like we're never running the callback at all for the first call then, so it makes sense that the change in 0.8.5 wouldn't have fixed it. The changes there that I thought might be relevant were for cases where we did run the callback, but failed to clean up state (and would then incorrectly call the in-progress error later).
Thanks for verifying!

Updated triage report for this issue can be found here https://github.com/flutter/flutter/issues/82602#issuecomment-1092475129

Does this reproduce with the latest dependencies (image_picker_ios 0.8.5+)? The last update to the iOS implementation packages fixed some situations where we would incorrectly think that a previous request was still in progress.

yes i am still facing this issue even i update the plugin to latest package

I can consistently reproduce the problem as follows on my M1 Macbook Pro:

Create a new Flutter (3.01) application and add latest image_picker (0.8.5+3) and other packages required for the demo app -  Run the app on ios Simulator and everything works fine (non heic images load correctly)
For me, I need the google_maps_flutter package so I add it and configure it for ios.  -  Now image_picker no longer works and fails with the PlatformException
Removing the google_maps_flutter and its settings allows the image_picker to work

If you are on a M1 Mac you are likely hitting an iOS simulator Rosetta issue.  google_maps does not yet support arm64 simulators, which is why adding it drops you back to Rosetta, exposing iOS simulator bugs.  You're hitting https://github.com/flutter/flutter/issues/82602#issuecomment-1144099379 and https://github.com/flutter/flutter/issues/74970#issuecomment-858170914.  We have an open issue to update google_maps at https://github.com/flutter/flutter/issues/94491 but essentially Apple needs to fix that bug.
However, if you are running on an x64 intel machine, as the originator is, you are not hitting a Rosetta issue.  This open GitHub issue is tracking that.

I was able to get a different error by picking a different image from the default ones and updating my Xcode.
File: '/Users/xxxxxxxxxx/Library/Developer/CoreSimulator/Devices/1D3E25DA-803E-447F-A42D-
6BC794318FE9/data/Containers/Data/Application/056DDD20-F362-49F0-B36D-
EE6CF862A38A/tmp/image_picker_37D3019E-1DCC-4366-9098-1DF67424373A-71238-0000B04C05F8D3ED.jpg'
 is empty and cannot be loaded as an image.

I'm using the VERY latest version of Xcode 13.4.1 (therefore latest simulator).
Repro:
1 - Download the example app image_picker
2 - Add google_maps_flutter: ^2.1.5 and google_maps_flutter_web: ^0.3.3 to pubspec.yaml
3 - Using simulator browser, go to google, search for a panda, download the image to the gallery. Very important, it has to be a panda ;-)
4 - Run example app. Pick the panda.
Another thing. This is weird - not sure if is related:
Photos app crash when you get Information about picture.
1 - Go to Photos
2 - Click on any photo
3 - Click on Information
4 - Photos App will crash with error MobileSlideShow quit unexpectedly
terminating with uncaught exception of type NSException *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'coordinate spaces don't have a common ancestor'

Updating the issue since this is reproducible on intel machine too.

I still can see this exception on ^0.8.5+3, iOS simulator

In iOS simulator, you should avoid using top-left sample photo image, because this image type is heif.
Another photo type is all jpeg, so you should use these photo images.

And you can check photo image type using photo app.

Still happening in version image_picker: ^0.8.6. in IOS simulator.
I was able to see the image info in my first try. After a second try I was never able to get the same behavior again. Uninstalled the app from simulator, cleaned the project, run it and gave permissions again for picker to work.


Fix info popup for stages with errors deeply inside blocks [JENKINS-37945]

Fix for JENKINS-37945
Tasks:

[x] Remove step start/end nodes from displayed logs (API modification)
[x] Smoketest that fix resolves the basic issue
[x] Change unit tests so they don't expect non-atom nodes to be in the outputs
[x] Deeper checks of functionality (primarily code diving and manual testing) -> yup, it's pre-2.x world output-wise (no block info).
[x] Verify that we still get at least as much logging display as with legacy (pre-2.x) stage view

Test job:
stage 'sample'
  node {
      dir('sample') {
          dir('more') {
              sh 'failme'
          }
      }
  }

Screenshot after fix:

Screenshot of legacy stage view (pre-OSSing)

Screenshot of stage view 1.7:

@reviewbybees

:bee:

:bee:

@reviewbybees done


Resize Pane actions for all panes

I just discovered these, why are they just for the terminal and not for the panel in general? They would be useful anywhere.

These work on the terminal split panes, moving the panel the size of monospace characters in the terminal if required. So they're a little different. I think there is already an issue for this to allow resizing of views @sbatten?

i didn't find an existing issue. there are commands now that are "Increase/Descrease Current View Size" but these operate on parts (side bar, panel) not individual views so that's confusing and should be updated.


Fix wrong link on spirv_extensions.adoc

Link was pointing to "64 bit atomics" extension instead of "8 bit storage".

thanks for making the patch!


Splitted docker-compose files

Supporting the following:

Unprotected torrenting
VPN Protected torrenting
Extra disk volumes for media containers
Plex Hardware Transcoding

hi, love this concept! I'm an absolute amateur when it comes to docker. can you point me in the direction of a good video tutorial to add something like you've created to docker? Thanks

Hi @cahorb! Thanks for stopping by. I'd say that the best place for getting started with docker is https://docs.docker.com/. It's very well documented and for testing stuff you only need a text editor and Docker installed on your machine, that's it.
Regarding docker-compose, there's a section for it on the official docs as well (see https://docs.docker.com/compose/). Perhaps a good starting point would be https://docs.docker.com/compose/gettingstarted/
Let me know how it goes! And also let me know how's this mediabox setup working for you (maybe you have some new ideas for it).


Enhancement Request: Wipe Animation

Another useful animation would be the wipe animation. For example, I have an arrow, and I want the arrow to reveal from the base toward the head of the arrow.
The FadeInLeft animation is close, but I want the arrow to stay in place, and simply wipe in, in place.
Like the other animations, you'd be able to wipe left, right, up, and down.

Currently taking a look at this

This isn’t really possible with CSS animations, since it requires a masking element.


Added Space invader game

using pygame
added important images

ATTENTION 🚨🚨🚨
Don’t Forget To Follow Me On Github , and Add Your Name In _contributing.md if not found your name in _contributing.md it should be Labelled as SPAM.
STAR 🌟 this REPO for future HacktoberFest.

done

Hey iam opening a issue to your repo,
pls close it as complete after 2 min.
is it ok?

let us know when u came online.

okay , what should i do?

are you online ?

yes

iam opening an issue to your repo okay, and after 2 min yuo need to be comment as completed and closed as complete.

so i need to comment - "COMPLETED" and close it after 2 minutes right?? understood

yes

i will close it as completed after 2 min

thanks

has my pull request accepted @Romi904 ?

Yes, Your PR is accepted.

You can reach me at -  https://t.me/hacktoberfest022

Okay was just confirming beacuse it was showing in hacktober site...might be updated later..thanks!

it takes 15min to update

Got it


Save Conflict Resolution

Hi,
When editing a file on a local file system VSCode detects if the file was modified outside of the environment and gives a warning when saving local changes. User can then overwrite, cancel, or proceed with a conflict resolution. Does the remote file system support this pattern when a remote file was modified by someone else while the user is editing it? What is the best way to detect and handle these conflicts?
Thank you!

Thank you for your response, Mattia.
I thought of catching this on the server, but unfortunately the client makes the stat call just before the writeFile and sends the file metadata (including the MTime) along with the writeFile. So the server sees the metadata that corresponds to the server version of the file instead of the one the metadata corresponding to the version of the file at the time editing has started. And even that only happens with the index-based implementation of the server -- path-based implementation doesn't receive any metadata with the writeFile call. Last point aside, to make this work on the server the extension would need to hold onto the file metadata at the time of the last file read (just before the editing starts) and send that metadata with the writeFile call instead of getting the latest metadata from the server just before the writeFile.
Ideally, however, we'd want to tap into the vscode's existing conflict resolution workflow that it already performs for the local files. In that case the stat call just before save even makes sense -- to get the latest server version to compare to what we have locally and then give user choices for how to deal with the situation. Maybe it's something vscode team just forgot to include for the file system provider scenario?


thunderbird, firefox, firefox-esr: set big-parallel

Firefox and Thunder time out nearly everytime. Hopefully giving them
more resources will prevent this from happening.

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

🤔 yes, we might try that.  Though it probably makes most sense to keep this the same also in firefoxPackages.
People wanting to build themselves may notice this, as they'd have to explicitly set the feature on (some of) their machines.  I don't see that as a significant down-side, as these builds really are expensive.

Cross-ref: https://github.com/NixOS/nixpkgs/issues/103071 https://github.com/NixOS/nixpkgs/issues/103070

People wanting to build themselves may notice this, as they'd have to explicitly set the feature on (some of) their machines. I don't see that as a significant down-side, as these builds really are expensive.
I think big-parallel is set by default nowadays.

I think this makes sense, I agree perhaps it should be set for firefox too. cc. @andir

Go ahead and open a PR. I wanted to try that for a while now.

I added firefox(-esr) to the same commit.

Do you know if it seems to have helped?

I don't dare to say, we haven't had any mass rebuilds yet.

I pushed a Firefox change the other day and didn't have to babysit it. It
just completed on all archs. I hope that it did help but let's wait and see.
On Sun, 6 Dec 2020, 09:12 Frederik Rietdijk<EMAIL_ADDRESS>wrote:

I don't dare to say, we haven't had any mass rebuilds yet.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/pull/105345#issuecomment-739470597, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAE365C35RVMZC7JDLQUZFLSTM4FRANCNFSM4UGMMW4A
.


Will this library stop working after October 23th, 2019?

I guess after October 23th, 2019 this library will stop working?
Will it be eventually upgraded to V2 API or this is a dead-end?

Hey @rcpinheiro, im not Google representative, but I assume, that it will no longer work, because of all the changes in the authentication. You can use Dialogflow Gateway, which is the service I built, to help people seamlessly integrate Dialogflow V2 API into their apps. If you have any questions, feel free to ask them in our repository
Many thanks.

Our web app using Dialogflow V1 APIs stopped working around June 21/2019.  The message from Dialogflow team is that the V1 APIs stopped working from the above date.


Add provision to sponsor project

Addressed by https://github.com/padaiyal/sanitizer/commit/664634eeadc010cbd9e7af24cfbc0387fba8bace


Correct Chocolatey Moderation details

AdmiringWorm (reviewer) on 24 Jul 2017 11:43:14 +00:00:

A few things needs to be changed/added before this package is accepted on chocolatey.org.

* Use the Install-ChocolateyZipPackage to extract an archive.
* Do not touch the %ChocolateyInstall%\bin directory manually, use the Install-BinFile helper instead.
* Use the following command to get the package tools directory "$(Split-Path -parent $MyInvocation.MyCommand.Definition)")
* Remove the chocolateyuninstall.ps1 file
* Include the license inside the package as LICENSE.txt
* Add a VERIFICATION.txt file that details how we (both moderators and community members) can verify that the included binary file have been downloaded from an official distribution point (include download location, direct download link and the expected checksum of the binary file).
for an example of a VERIFICATION.txt file, you can use the following as a template:
https://github.com/chocolatey/chocolatey-coreteampackages/blob/master/automatic/bluefish/legal/VERIFICATION.txt

Watch #158 which when complete will change the Verification story as we can use releases of Parq. Currently cannot as the releases should be about parquet-dotnet

Submitted a new package for feedback here: https://chocolatey.org/packages/parq/<IP_ADDRESS>

Further feedback:
Almost there - just remove the readme.md file.

Closed as moved to Parq.


a suggested code or documentation change, improvement to the code, or feature request

Hello Team,
After scraping is completed, I can see the scroll bar at the bottom of the Datatable, but I'm not sure how to bring it also to the upper side of the Datatable. Could you assist me in resolving this problem?

this would need a clear example, please feel free to reopen


docker run error

Hello,
First of all thank you for your excellent work, I think spacy-server is fantastic.
I am newbie in Docker so maybe I did something wrong but I am not able tu run spacy-server. I installed Docker on my linux machine following these instructions.  After that, I tried to run spacy-server and I got the following response:
sudo docker run --rm -dp 8080:8080 neelkamath/spacy-server:latest
Unable to find image 'neelkamath/spacy-server:latest' locally
docker: Error response from daemon: manifest for neelkamath/spacy-server:latest not found: manifest unknown: manifest unknown.
See 'docker run --help'.
I googled it but I didn't find anything usefull at all.
Any ideas?
Best,
Hugo

No problem.
In the README, the Usage section links to the project's Docker Hub page which gives the example command docker run --rm -p 8000:8000 neelkamath/spacy-server:<VERSION>-<MODEL><SENSE2VEC>. For example, you could run docker run --rm -p 8000:8000 neelkamath/spacy-server:2-en_core_web_sm-sense2vec.
The error you're facing arises from attempting to use the latest version of spaCy Server but there is no version named latest. The full list of versions can be found in the tags page.

Thank you very much, <VERSION>-<MODEL><SENSE2VEC> was the key.


Initialize frontend env

Initialize frontend env using create-react-app.

@maciekkoz98 I would stick to pulling this request to master branch for now. Creating develop branch and setting it as a defaut branch is the responsibility of the admin of this repo.

@lukitoki1 MAIN, remember #blm

Please remember to resolve review comments after a suggestion is completed. A good practise is also to write sth like done under the comment

Already marked them both as resolved -.-


Add-ins not showing up on Outlook android app

Is there any recent change in the manifest syntax for MobileFormFactor ? None of the Outlook add-ins are showing up on Android Outlook application.

@sagarpilkhwal sorry to hear you're experiencing this problem, but appreciate you reporting it. I'm going to transfer this issue to the OfficeDev/office-js repository, which members of the product team monitor for issues like this.

@sagarpilkhwal GitHub's Transfer issue feature doesn't seem to be working at the moment, so I'm unable to transfer this issue to the OfficeDev/office-js repository. I'll transfer this issue when that feature is restored. In the meantime, you might want to keep an eye on the following issue in the OfficeDev/office-js repository, as it seems related to what you're reporting: https://github.com/OfficeDev/office-js/issues/658.

I'm able to access add-ins like Trello, Slack, etc on OWA and Outlook desktop but on Android device I don't see any add-ins


remove populartimes.get()

Makes sense, what about at least adding warning or deprecation notice in the docs?


alpha takes more than the documented characters

Prerequisites
Rust version:
$ rustc --version --verbose
rustc 1.28.0 (9634041f0 2018-07-30)
binary: rustc
commit-hash: 9634041f0e8c0f3191d2867311276f19d0a42564
commit-date: 2018-07-30
host: x86_64-unknown-linux-gnu
release: 1.28.0
LLVM version: 6.0

nom version: 4.0.0
nom features: verbose-errors
Test case
extern crate nom;

use nom::alpha;

fn main() {
    // 0x03b1 = greek letter α
    assert!(alpha("\u{03b1} ").is_err());
}

This assertion will fail. The documentation for alpha says:

Recognizes one or more lowercase and uppercase alphabetic characters: a-zA-Z

However, the implementation of AsChar for char uses is_alphabetic which will accept way more than that including the greek letter α as shown above. This function is documented as:

Returns true if this char is an alphabetic code point, and false if not.

In my case, this is not an issue, so I would be okay with just updating the documentation to point out that alpha will accept any alphabetic code point (not just a-zA-Z).
That's probably a breaking change though. Fixing this might also be a breaking change though, so maybe this is something for nom 5.0? :)

The problem here is that the behaviour differs between byte parsers (taking &[u8] input) and string parsers (taking &str input).  The behaviour @sunjay describes is what happens for string parsers, while the documented behaviour is what happens for byte parsers.
I would prefer if byte parsers behaved like string parsers in this case, but if that is a breaking change, maybe the difference can be pointed out in the documentation?  If there also is a simple way to recognize a valid utf-8 code point in a byte parser, a link to that would be helpful as well.
The following test will succeed:
extern crate nom;

use nom::alpha;

#[test]
fn from_str() {
    // 0x03b1 = greek letter α
    assert_eq!(alpha("\u{03b1} "), Ok((" ", "\u{03b1}")));
}

#[test]
fn from_bytes() {
    // 0x03b1 = greek letter α
    assert!(alpha("\u{03b1} ".as_bytes()).is_err());
}

I would prefer if the from_bytes test failed and from_bytes2, which is currently failing, worked instead.
#[test] // This is currently failing
fn from_bytes2() {
    // 0x03b1 = greek letter α
    assert_eq!(
        alpha("\u{03b1} ".as_bytes()),
        Ok((&b" "[..], "\u{03b1}".as_bytes()))
    );
}

For what it's worth, here's the parser I hope to use to get a single utf8 code point (i.e. a rust char) from a byte parser.  It doesn't feel very efficient, but I think it is at least working:
named!(
    take_char<char>,
    map_opt!(
        alt!(take_str!(1) | take_str!(2) | take_str!(3) | take_str!(4)),
        |s: &str| s.chars().next()
    )
);

I would prefer if byte parsers behaved like string parsers in this case

My (limited) understanding of this is that utf8 code points can be multiple bytes, so we can't implement things the same way for a u8. We would have to convert &[u8] to a &str inside of alpha which is expensive and can potentially fail if the bytes aren't valid UTF-8.
That's why the behaviour is implemented as it is today. Some feasible approaches would be to either:

change the documentation to mention the difference between types (maybe even mention the trait involved)
change the implementation for &str to use ASCII operations (not necessarily desirable--and a breaking change)

oh, that's an annoying bug, and you're right, that would probably be a breaking change. I don't know yet what I'll do, but I'm keeping that issue around for the next version

@geal would it be good to update the documentation to warn people about this behavior?

Thank you! 😁

breaking change in nom 5: they will recognize ASCII by default
24ef7f1


Fix serialized SpanData's span_id and trace_id

in version 0.5.1 of opentelemetry-ruby we changed the way we generate the trace_id and span_id
now the correspondent generators return a raw random binary string which not unpacked.
I'm not sure about the effect of this change for the entire system, but its effect at least for some of the SpanExporters which fail to serialize it.
this PR should fix the SpanData serialization by using unpack1('H*') for those ids, but we may do it in a higher level (maybe in SpanContext initializer?)

This should actually be fixed at a lower level, in the span exporters. The in-memory format is specified to be 8 bytes for the span ID and 16 bytes for the trace ID. This format should be preserved all the way through SpanData to the exporters, which can then translate it appropriately.


Return a promise from create method

Promise that should be returned by this.transporter.sendMail(body, cb) call in from create method will never be returned.
This happens because Feathersjs uses rubberduck package here to receive events before and after a service method executes.
rubberduck wraps all service CRUD methods callback with callbackWrapper function. At the same time getCallback function assumes that last argument of the any method is the callback. The result is that callback argument in the create method will be always defined and contain callbackWrapper function.
My suggestion is to force sendMail method to always return a promise by removing cb argument:
return this.transporter.sendMail(body);

This will allow us to use feathers built in service method callbacks:
app.service('mailer').create(email, result => {
  console.log('Sent email', result);
});

As well as promises:
app.service('mailer').create(email).then(result => {
  console.log('Sent email', result);
});

@corymsmith friendly bump

Thanks and sorry it took so long. Released as v1.0.6

nice @rainum! yeah sorry about the original implementation, i only use callbacks in my own code. thanks for making this change to be more in line with typical feathers usage.


⚠ Bofrost.at has degraded performance

In 3e234d2, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1499 ms

Resolved: Bofrost.at performance has improved in affd078 after 6 minutes.


Clarify performance impacts of "Simplify LINQ expression" refactoring

Fixes #6769

@mikadumont FYI

#sign-off

@j-martens: I'm sorry - only the author of this article, @m-redding, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


UI still showing "next" as version when using "v1.0" tag

Component
web-ui
Describe the bug
Just a small UI issue, but running the v1.0 tag instead of latest, v1.0.2 is showing next as the version in the UI and via /version.
System Info
v1.0: {"source":"https://github.com/woodpecker-ci/woodpecker","version":"next-d9e06696"}
latest: {"source":"https://github.com/woodpecker-ci/woodpecker","version":"1.0.2"}

Additional context
No response
Validations

[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Checked that the bug isn't fixed in the next version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]
[X] Check that this is a concrete bug. For Q&A join our Discord Chat Server or the Matrix room.

I think this was already reported somewhere 👀

It's an issue with our build pipeline ...

~I think this was already reported somewhere 👀~ cant find it

Yeah, I was the one who asked if I should open an issue on discord when testing that :)

->  #2227


A3C Doom: Basic scenario: How to select clipping?

Why 40.0?
grads,self.grad_norms = tf.clip_by_global_norm(self.gradients,40.0)

Hi Ibrahim,
This is something that should be adjusted based on the performance findings of your own task. 40 is what was used in the OpenAI starter agent, so I used that here, as it led to convergence for the example task.

Would it be wise to use the Grad Norm plot from this projects Tensorboard to select a value that is close to the mean-max of the smoothed chart to prevent overly large updates? Along those lines, is it worth considering an adaptive gradient norm clip derived from a moving average of the norm?

Thank you @DMTSource for elaboration
Could you please give numerical examples?   (for better understanding)

Yes that is what I am thinking. Looking at your png here, my question above asks if setting the clip value to between ~15-20 is appropriate. Or in a dynamic sense, to recreate the smoothed values seen in Tensorboard(careful they are smoothed values of smoothed values) and use n_std*std_of_norms_rolling + mean_of_norms_rolling to determine an upper bound that does not throw away information.
But back to my above question for @awjuliani : is visual inspection of the Grad Norm plot even a valid way to determine the grad norm clip value or will the gradient updates change magnitude with each hyperparamter update?

I hope this would solve the gathering health scenario  (till now I failed to make it converge)