Huge crash from Google Play Console when upgrade flutter from 2.0.6 to 2.5.2 on Android

We face huge crash from Google Play Console when upgrade flutter from 2.0.6 to 2.5.2.
We never see this issue at Flutter 2.0.6.
I cannot reproduce this from my side.
The crash info:
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)
libflutter.so!libflutter.so (offset 0x2cd000)
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> com.youcam.videoeditor.reface.makeup <<<

backtrace:
  #00  pc<PHONE_NUMBER>796360  /data/app/com.youcam.videoeditor.reface.makeup--fE7q_x5tDm4rdaI1HDxMA==/lib/arm64/libflutter.so!libflutter.so (offset 0x2cd000)
  #00  pc<PHONE_NUMBER>4f7710  /data/app/com.youcam.videoeditor.reface.makeup--fE7q_x5tDm4rdaI1HDxMA==/lib/arm64/libflutter.so!libflutter.so (offset 0x2cd000)

flutter doctor -v
[✓] Flutter (Channel stable, 2.5.2, on macOS 11.6 20G165 darwin-x64, locale zh-Hant-TW)
    • Flutter version 2.5.2 at /Users/rdapp/fvm/versions/stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 3595343e20 (2 周前), 2021-09-30 12:58:18 -0700
    • Engine revision 6ac856380f
    • Dart version 2.14.3

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/rdapp/Library/Android/sdk
    • Platform android-31, build-tools 30.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 13.0, Build version 13A233
    • CocoaPods version 1.11.2

[✓] Android Studio (version 2020.3)
    • 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.10+0-b96-7281165)

[✓] Connected device (1 available)
    • macOS (desktop) • macos • darwin-x64 • macOS 11.6 20G165 darwin-x64
    ! Error: Tommy’s iPhone is not connected. Xcode will continue when Tommy’s iPhone is connected. (code -13)

pubspec.yaml
version: 1.0.0+1

environment:
  sdk: '>=2.12.0 <3.0.0'

dependencies:
  flutter:
    sdk: flutter
  flutter_localizations:
    sdk: flutter

  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  firebase_core: ^1.1.0                             #BSD
  firebase_analytics: ^8.3.0                        #BSD
  firebase_crashlytics: ^2.0.2                      #BSD
  firebase_dynamic_links: ^2.0.8                    #BSD
  firebase_performance: ^0.7.0+8                    #BSD
  in_app_purchase: ^1.0.9                           #BSD
  cupertino_icons: ^1.0.3                           #MIT
  bot_toast: ^4.0.1                                 #Apache 2.0
  modal_bottom_sheet: ^2.0.0                        #MIT
  device_info: ^2.0.0                               #BSD
  logger: ^1.0.0                                    #MIT
  adaptive_dialog: ^0.10.0+5                        #MIT
  permission_handler: ^8.2.5                        #MIT
  shared_preferences: ^2.0.5                        #BSD
  sprintf: ^6.0.0                                   #BSD
  video_player: ^2.1.1                              #BSD
  path_drawing: ^0.5.0                              #MIT
  image_picker: ^0.8.4+2                            #Apache 2.0
  path_provider: ^2.0.1                             #BSD
  http: ^0.13.3                                     #BSD
  flutter_native_timezone: ^2.0.0                   #Apache 2.0
  xml2json: ^5.1.0                                  #MIT
  sqflite: ^2.0.0+3                                 #MIT
  path: ^1.8.0                                      #BSD
  json_annotation: ^4.0.1                           #BSD
  scrollable_positioned_list: ^0.2.0-nullsafety.0   #BSD
  flutter_inappwebview: ^5.3.2                      #Apache 2.0
  package_info: ^2.0.0                              #BSD
  percent_indicator: ^3.0.1                         #BSD
  image: ^3.0.2                                     #Apache 2.0
  device_apps: ^2.1.1                               #Apache 2.0
  url_launcher: ^6.0.3                              #BSD
  uuid: ^3.0.4                                      #MIT
  uni_links: ^0.5.1                                 #BSD
  connectivity: ^3.0.3                              #BSD
  synchronized: ^3.0.0                              #BSD
  archive: ^3.1.2                                   #Apache 2.0
  storage_space: ^1.0.0+2                           #BSD
  collection: ^1.15.0                               #BSD
  ios_utsname_ext: ^2.0.0                           #MIT
  auto_size_text: ^3.0.0-nullsafety.0               #MIT
  dio: ^4.0.0                                       #MIT
  pretty_json: ^2.0.0                               #BSD
  flutter_cache_manager: ^3.1.2                     #MIT
  enum_to_string: ^2.0.1                            #MIT
  cached_network_image: ^3.1.0                      #MIT
  in_app_review: ^2.0.2                             #MIT
  lottie: ^1.0.1                                    #MIT
  share: ^2.0.1                                     #BSD
  flutter_local_notifications: ^5.0.0+3             #BSD
  vibration: ^1.7.4-nullsafety.0                    #BSD
  wakelock: ^0.5.3+3                                #BSD
  draggable_scrollbar: ^0.1.0                       #MIT
  system_info: ^1.0.0                               #BSD
  appsflyer_sdk: ^6.2.4+4-nullsafety                #MIT
  facebook_app_events: ^0.12.0                      #Apache 2.0
  in_app_update: ^2.0.0                             #MIT
  open_store: ^0.2.4                                #MIT
  country_codes: ^2.0.1                             #MIT
  cpu_reader: ^3.0.0                                #MIT
  outline_gradient_button: ^2.0.0+1                 #BSD

  notification_reactor:                             #BSD
    path: ./packages/notification_reactor/
  photo_manager:                                    #Apache 2.0
    path: ./packages/photo_manager-0.5.8/
  photo_widget:                                     #Apache 2.0
    path: ./packages/photo_widget-0.0.3/

dev_dependencies:
  flutter_test:
    sdk: flutter
  #  flutter_driver:
  #    sdk: flutter
  test: ^1.16.5
  json_serializable: ^4.1.1           #BSD
  build_runner: ^2.0.2                #BSD
  flutter_launcher_icons: ^0.9.0      #MIT
  mockito: ^5.0.15                    #Apache 2.0
  flutter_lints: ^1.0.4

flutter_icons:
  android: "ic_launcher"
  ios: true
  image_path: "images/icon.png"

# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

# The following section is specific to Flutter.
flutter:

  # The following line ensures that the Material Icons font is
  # included with your application, so that you can use the icons in
  # the material Icons class.
  uses-material-design: true

@flutter-symbolizer-bot engine#6ac856380f

@flutter-symbolizer-bot engine#6ac856380f arm64

@dodatw Do the backtraces have any more frames? Otherwise without a narrow range of versions, a local reproduction, and information about the target device, I'm afraid this is probably too little information for us to make progress on this issue.

@flutter-symbolizer-bot engine#6ac856380f arm64 https://github.com/flutter/flutter/issues/91962#issuecomment-946297499

The longer backtrace also doesn't make sense to me, but maybe @jason-simmons or @chinmaygarde have more insights.

Here is another crash log that only happen on Flutter 2.5.2
Crash Samsung Galaxy A12, Android 11 (SDK 30)
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> com.youcam.videoeditor.reface.makeup <<<

backtrace:
  #00  pc<PHONE_NUMBER>0ca3dc  /vendor/lib64/egl/libGLESv2_mtk.so
  #00  pc<PHONE_NUMBER>130224  /vendor/lib64/egl/libGLESv2_mtk.so
  #00  pc<PHONE_NUMBER>12ee10  /vendor/lib64/egl/libGLESv2_mtk.so (glTexImage2D+320)
  #00  pc<PHONE_NUMBER>092524  /vendor/lib64/egl/libGLES_meow.so (MEOW::meow_call_ddk_gl_2_glTexImage2D(unsigned int, int, int, int, int, int, unsigned int, unsigned int, void const*)+44)
  #00  pc<PHONE_NUMBER>4f7be8  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>4f33a8  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>46ed9c  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>46f008  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>47b000  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>47562c  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>482424  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>475324  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>4c5418  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>4c559c  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>4c7410  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>3091c4  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2fe048  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>308ecc  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2fd09c  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2fff20  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>01a064  /system/lib64/libutils.so (android::Looper::pollInner(int)+916)
  #00  pc<PHONE_NUMBER>019c68  /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
  #00  pc<PHONE_NUMBER>012d3c  /system/lib64/libandroid.so (ALooper_pollOnce+100)
  #00  pc<PHONE_NUMBER>300030  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2fc950  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2fe830  /data/app/~~ohSnZG9DPcAaAAL4hXxgZQ==/com.youcam.videoeditor.reface.makeup-Ryc0VmVKG1209nqO_XfCUA==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>0ed098  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc<PHONE_NUMBER>08cb10  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)

@flutter-symbolizer-bot https://github.com/flutter/flutter/issues/91962#issuecomment-946442093 engine#6ac856380f arm64 release

(I have CL which fixes symbolizer to do better detection of Android >=11. Now stack traces will have proper meaning).

I rollback the flutter from 2.5.2 to 2.0.5 last week. (just rollback flutter, no other change)
The crash-free rate increase from 98.7% to 99.54%.
I hope someone can check this issue. We cannot always use the old version.

@dodatw Looks like I have similar crash (https://github.com/flutter/flutter/issues/91760), maybe we are using the same dependency that causes this crash?

Hi @rav3r
We use those libraries.
  # same version
  in_app_purchase: ^1.0.9                           #BSD
  http: ^0.13.3                                     #BSD
  uuid: ^3.0.4                                      #MIT
  cached_network_image: ^3.1.0                      #MIT

  # different version
  firebase_core: ^1.1.0                             #BSD
  firebase_analytics: ^8.3.0                        #BSD
  firebase_crashlytics: ^2.0.2                      #BSD
  firebase_performance: ^0.7.0+8                    #BSD
  permission_handler: ^8.2.5                        #MIT
  shared_preferences: ^2.0.5                        #BSD
  path_provider: ^2.0.1                             #BSD
  url_launcher: ^6.0.3                              #BSD
  collection: ^1.15.0                               #BSD
  flutter_local_notifications: ^5.0.0+3             #BSD

I don't know if this issue comes from libraries,
Did you try downgrade flutter 2.0.6 ?
I use the same libraries setting and downgrade to 2.0.6, the crash-free rate is back.

Thanks @dodatw!
At this point, I must downgrade but I am really not happy with this solution - sooner or later I'll have to upgrade flutter.
Looks like only a few people struggle with this problem, so it's not a priority for the flutter team (fully understandable, they have over 5k issues here).

I totally agree, it would be a big problem that flutter cannot be updated. Now many packages are written with dart 2.14.

This was brought up with Skia folks. The gist of the conversation was: This issue was hard to reason about. It is a crash in a device driver that isn't supposed to crash this way in case of error. So it seems like we would need a driver specific workaround. But based on the list in a previous comment, not all devices have the same driver. So not all devices may be exhibiting the same issue. Assuming the "mtk" in libGLESv2_mtk.so stands for MediaTek (completely wild guess here), I suppose we can focus on the MediaTek devices. But then again, we need to figure out which what circumstances the device will crash. With this limited information, we can try to focus our search for a reproduction on primarily MediaTek devices.

Let me provide more info, I don't know is it the same issue.
We found it have another libFlutter.so crash on 2.0.6, But the crash rate is not higher than 2.5.3.
For you reference. If it is another issue, I can create another post.
flutter doctor -v
[✓] Flutter (Channel unknown, 2.0.6, on macOS 11.6 20G165 darwin-x64, locale zh-Hant-TW)
    • Flutter version 2.0.6 at /Users/rdapp/fvm/versions/2.0.6
    • Framework revision 1d9032c7e1 (6 個月前), 2021-04-29 17:37:58 -0700
    • Engine revision 05e680e202
    • Dart version 2.12.3

crash from google play console
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> com.youcam.videoeditor.reface.makeup <<<

backtrace:
  #00  pc<PHONE_NUMBER>766af0  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>4d025c  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>4d35d4  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>431938  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>4311d8  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>431200  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>376220  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>3762cc  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>3762e4  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2df098  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2e2570  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2e49d8  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>019da8  /system/lib64/libutils.so (android::Looper::pollInner(int)+916)
  #00  pc<PHONE_NUMBER>0199ac  /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
  #00  pc<PHONE_NUMBER>012c74  /system/lib64/libandroid.so (ALooper_pollOnce+100)
  #00  pc<PHONE_NUMBER>2e4ae8  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2e1870  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>2e3588  /data/app/~~KquzahxfhzEr4daojNZhsw==/com.youcam.videoeditor.reface.makeup-Z0IIVjGbLK8fMBqmUWK8Mg==/lib/arm64/libflutter.so
  #00  pc<PHONE_NUMBER>0eb868  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc<PHONE_NUMBER>08ba88  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)

@rav3r did you have isolate in your app ?
https://api.flutter.dev/flutter/dart-isolate/Isolate/spawn.html

@dodatw Yes, I have very large json to parse every 20-30 seconds so I used isolate to do that.

any updates??

We are seeing a significant increase in the crash rate that seems to be related to this issue.

 To me it looks like your crash is probably different. Please file a new issue with full details. Thanks!

Is there a solution to this problem

Hi folks, please see the message above from @chinmaygarde. We need more information about this issue. If someone can reproduce this crash locally, and report back here on what the app was doing at the time, that would be very helpful.

More info, maybe help..
From Log, We found most user have these step,
We are pure flutter project,  use MainActivity extend FlutterActivity().

User use system "back" to leave app. (at this case, MainActivity destroy, but process not),
launch app again.

All crash have this kind log. sometime use loop these steps many times

More info, maybe help.. From Log, We found most user have these step,
We are pure flutter project, use MainActivity extend FlutterActivity().

User use system "back" to leave app. (at this case, MainActivity destroy, but process not),
launch app again.

All crash have this kind log. sometime use loop these steps many times

We released a new version with flutter 2.5.3.
The difference is that when the user leaves App through the "back button", we release the "Isolate worker".
The crash rate now looks normal. Keep track.

we release the "Isolate worker".

Can you elaborate on what you mean by this? Do you mean killing the spawned isolate manually? Can you prepare a reduced test case for this? Even if there is an issue with isolate teardown, it's unclear to me how that would be related to  the backtrace in an earlier in this thread which is a crash in the OpenGL driver.
Also, is this a vanilla Flutter application with no modifications to the embedder or is this an add-2-app scenario?
cc @blasten for routing on following the steps in the previous comment to see if a reproduction is viable. We should focus on MediaTek devices for this.

I get the same crash:
at Android 10，devices:
Redmi 9A
Redmi 9C
Infinix SMART 5
Tecno SAPRK GO 202
backtrace:
#00  pc<PHONE_NUMBER>02c014  /vendor/lib/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>041ddd  /vendor/lib/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>02bf71  /vendor/lib/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>06c867  /vendor/lib/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>06c3bd  /vendor/lib/egl/libGLESv2_mtk.so (glTexImage2D+156)
#00  pc<PHONE_NUMBER>02ab8f  /vendor/lib/egl/libGLES_meow.so
#00  pc<PHONE_NUMBER>3278cd  /data/app/face.swap.changer-smND2-dfFIt9AksQWePM2A==/split_config.armeabi_v7a.apk!lib/armeabi-v7a/libflutter.so (offset 0x1276000)
#00  pc<PHONE_NUMBER>32b5c1  /data/app/face.swap.changer-smND2-dfFIt9AksQWePM2A==/split_config.armeabi_v7a.apk!lib/armeabi-v7a/libflutter.so (offset 0x1276000)
#00  pc<PHONE_NUMBER>000168
at Android 10, devices:
Oppo CPH2239
Infinix HOT 10 Play
Tecno SPARK 6 GO
Tecno SPARK 6 Air
backtrace:
#00  pc<PHONE_NUMBER>03d01c  /vendor/lib64/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>057c3c  /vendor/lib64/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>03cea0  /vendor/lib64/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>0904e8  /vendor/lib64/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>08f574  /vendor/lib64/egl/libGLESv2_mtk.so (glTexImage2D+316)
#00  pc<PHONE_NUMBER>082eb4  /vendor/lib64/egl/libGLES_meow.so
#00  pc<PHONE_NUMBER>229be8  /data/app/face.swap.changer-aSoTrjuCq9SwctgUNOS8_w==/split_config.arm64_v8a.apk

at Android 11,   Samsung Galaxy A10s
backtrace:
#00  pc<PHONE_NUMBER>09b698  /vendor/lib/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>0eaf41  /vendor/lib/egl/libGLESv2_mtk.so (glTexImage2D+164)
#00  pc<PHONE_NUMBER>033c77  /vendor/lib/egl/libGLES_meow.so (MEOW::meow_call_ddk_gl_2_glTexImage2D(unsigned int, int, int, int, int, int, unsigned int, unsigned int, void const*)+42)
#00  pc<PHONE_NUMBER>3288cd  /data/app/-ja88TzEyrHiPVIVSADLAw==/face.swap.changer-9apkG2uM6t_b8sCVw0i0zQ==/split_config.armeabi_v7a.apk!lib/armeabi-v7a/libflutter.so (offset 0x1276000)
#00  pc<PHONE_NUMBER>32c5c1  /data/app/-ja88TzEyrHiPVIVSADLAw==/face.swap.changer-9apkG2uM6t_b8sCVw0i0zQ==/split_config.armeabi_v7a.apk!lib/armeabi-v7a/libflutter.so (offset 0x1276000)
#00  pc<PHONE_NUMBER>000168
at Android 11, devices:
Vivo V2043
Samsung Galaxy A12
Coolpad 1904
Realme realme C21
backtrace:
#00  pc<PHONE_NUMBER>0c9bb4  /vendor/lib64/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>12fab0  /vendor/lib64/egl/libGLESv2_mtk.so
#00  pc<PHONE_NUMBER>12e69c  /vendor/lib64/egl/libGLESv2_mtk.so (glTexImage2D+320)
#00  pc<PHONE_NUMBER>092524  /vendor/lib64/egl/libGLES_meow.so (MEOW::meow_call_ddk_gl_2_glTexImage2D(unsigned int, int, int, int, int, int, unsigned int, unsigned int, void const*)+44)
#00  pc<PHONE_NUMBER>4f7be8  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>4f33a8  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>46ed9c  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>46f008  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>47b000  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>47562c  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>482424  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>475324  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>4c5418  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>4c559c  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>4c7410  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>30c948  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>2fd09c  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>2fff20  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>01a064  /system/lib64/libutils.so (android::Looper::pollInner(int)+916)
#00  pc<PHONE_NUMBER>019c68  /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
#00  pc<PHONE_NUMBER>012d3c  /system/lib64/libandroid.so (ALooper_pollOnce+100)
#00  pc<PHONE_NUMBER>300030  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>2fc950  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>2fe830  /data/app/~~rccj5IOq9ivnyjEv9oX9BA==/face.swap.changer-NMT-bYCQ9yBvRRyExPdM0w==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x1433000)
#00  pc<PHONE_NUMBER>0db188  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
#00  pc<PHONE_NUMBER>07a9d0  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
Now, my app crash rate as high as 1.5% !!!
Is there a solution to this problem?

@dodatw I think this is going to be difficult if you cannot reproduce it from your side.  Maybe, we can give it a try, but we will need you to sign a CLA, and share the source code of the app. Are you ok with this?
I cannot promise that we will be able to reproduce it, but we will give it a try on the devices you suggest that are causing crashes.

we release the "Isolate worker".

Can you elaborate on what you mean by this? Do you mean killing the spawned isolate manually? Can you prepare a reduced test case for this? Even if there is an issue with isolate teardown, it's unclear to me how that would be related to the backtrace in an earlier in this thread which is a crash in the OpenGL driver.
Also, is this a vanilla Flutter application with no modifications to the embedder or is this an add-2-app scenario?
cc @blasten for routing on following the steps in the previous comment to see if a reproduction is viable. We should focus on MediaTek devices for this.

A few days later, the crash rate is still rising, and it seems that it has nothing to do with the "isolate". Sorry.

We experiencing same issue.  Google play reporting solid amount of native crashes.
Flutter version 2.5.3
Affected devices:

Android 9 (SDK 28)
Sony Xperia XA2 Ultra

Android 10 (SDK 29)
Huawei HUAWEI P30
Huawei HUAWEI P30 lite
Samsung Galaxy S9

Android 11 (SDK 30)
Samsung Galaxy A52s 5G
Samsung Galaxy Tab A7 Lite
Xiaomi Mi 11 Lite 5G
Samsung Galaxy A50

Backtrace from
Samsung Galaxy A52s 5G Android 11 (SDK 30)
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> de.maedchenflohmarkt.shopping <<<

backtrace:
  #00  pc<PHONE_NUMBER>797360  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>4f8710  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>4fb9e0  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>461a10  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>4612ac  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>4612d4  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>39b468  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>39b514  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>39b52c  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>2fa918  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>2fd09c  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>2fff20  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>01a4c0  /system/lib64/libutils.so (android::Looper::pollInner(int)+896)
  #00  pc<PHONE_NUMBER>01a0d8  /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
  #00  pc<PHONE_NUMBER>012c80  /system/lib64/libandroid.so (ALooper_pollOnce+100)
  #00  pc<PHONE_NUMBER>300030  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>2fc950  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>2fe830  /data/app/~~EDLSBc7UKwVJMoC6K_YLPw==/de.maedchenflohmarkt.shopping-xjacQtcIuu11_5Bdw2lKZw==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0xe5a000)
  #00  pc<PHONE_NUMBER>0b6374  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc<PHONE_NUMBER>050fa4  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)

We have some of listed devices so there is a chance to reproduce problem locally. I will try to keep you informed about that.

@solikhver Your backtrace does not appear to be for a crash in the GPU driver. Please file a new issue so we can triage it separately. Thanks!

Fixed by https://github.com/flutter/engine/pull/28698 and https://github.com/flutter/engine/pull/32106


Extend ComponentHelper in README examples

The generator outputs extend ComponentHelper and it seems this is necessary for property underneath.

Thank you for fixing this oversight!

Pull Request Test Coverage Report for Build 909

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 99.448%

Totals

Change from base Build 814:
0.0%

Covered Lines:
180

Relevant Lines:
181

💛  - Coveralls

@florentferry do you know why the CI is failing for ruby-head ?

@AlecRust I finally found some time to fix the CI, so I'm now able to merge your PR. Thanks again!


Azure App Service update on Sunday breaks auth on iOS12+more

This is more of an announcement to those looking into the issue, as I was...
Microsoft rolled out ASP.NET Core 2.2.8 / 3.1 to Azure App Services on Sunday which breaks SameSite compatibility with iOS 12 and some other browsers. This isn't an issue with IdentityServer but IdentityServer projects hosted in Azure App Services are likely to experience the issue as a result.
The workaround can be found here - https://devblogs.microsoft.com/aspnet/upcoming-samesite-cookie-changes-in-asp-net-and-asp-net-core/
Hope this helps someone save time investigating!

thanks
@brockallen We need to put that sample cookie policy into our host - and on the demo server ASAP

Does the Opt-out switches work as a workaround for Azure App Services as well?
https://github.com/aspnet/Announcements/issues/390

Does the Opt-out switches work as a workaround for Azure App Services as well?
aspnet/Announcements#390

I did not test this. If it works it will buy you time (~2mo) until all latest browsers roll out the new samesite spec.

Hi,
i tested the proposed workaround and it works on Azure Web Apps

If it works it will buy you time (~2mo)

agreed.


feat(CategoryTheory/SmallObject): the category of transfinite iterations of a functor

In this PR, we construct the category of transfinite iterations of a functor. We show that there is at most one morphism between two objects in this category. In future PRs, we shall show (by transfinite induction) that there is exactly one (iso)morphism between two objects, and that there is always an object (that is unique up to a unique isomorphism).

Interesting that there's so much API overlap with my #9480 ...

I originally did this about one and half year ago in Lean 3 https://github.com/joelriou/homotopical_algebra/blob/main/src/for_mathlib/algebraic_topology/small_object/iteration.lean
I guess that this is what we need to do when we need to construct data by transfinite induction...

Thanks!
maintainer merge

Thanks!
bors merge


Add: repeated_string_match

Codecov Report

Merging #133 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #133   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          56     57    +1
  Lines         643    653   +10
=====================================
+ Hits          643    653   +10

Impacted Files
Coverage Δ

...ems/repeated-string-match/repeated_string_match.go
100% <100%> (ø)

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 79cfc89...b4d357f. Read the comment docs.


GoogleAIGeminiChatGenerator 400 Request contains an invalid argument issue

I am trying to use GoogleAIGeminiChatGenerator for function calling. The code I am using is from the haystack documentation example for using GoogleAIGeminiChatGenerator to respond to questions about the current weather. It was initially working when I tested this on 26/06/2024 but since yesterday 27/06/2024 it has not been working.I am getting the below error
Traceback (most recent call last):   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/haystackGenerators/functionsTest.py", line 44, in <module>     res = generator.run(messages=messages)           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/haystack_integrations/components/generators/google_ai/chat/gemini.py", line 264, in run     res = session.send_message(           ^^^^^^^^^^^^^^^^^^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/generativeai/generative_models.py", line 578, in send_message     response = self.model.generate_content(                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/generativeai/generative_models.py", line 331, in generate_content     response = self._client.generate_content(                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/ai/generativelanguage_v1beta/services/generative_service/client.py", line 827, in generate_content     response = rpc(                ^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/api_core/gapic_v1/method.py", line 131, in __call__     return wrapped_func(*args, **kwargs)            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/api_core/retry/retry_unary.py", line 293, in retry_wrapped_func     return retry_target(            ^^^^^^^^^^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/api_core/retry/retry_unary.py", line 153, in retry_target     _retry_error_helper(   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/api_core/retry/retry_base.py", line 212, in _retry_error_helper     raise final_exc from source_exc   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/api_core/retry/retry_unary.py", line 144, in retry_target     result = target()              ^^^^^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/api_core/timeout.py", line 120, in func_with_timeout     return func(*args, **kwargs)            ^^^^^^^^^^^^^^^^^^^^^   File "/Users/chanceobondo/Desktop/bynarybots_api/bynarybotsFunctions/.venv/lib/python3.11/site-packages/google/api_core/grpc_helpers.py", line 78, in error_remapped_callable     raise exceptions.from_grpc_error(exc) from exc google.api_core.exceptions.InvalidArgument: 400 Request contains an invalid argument.
Here is the code i am using, you can run and have a look, please kindly help because I am using Haystack to create an agent that uses function calling.
`from haystack.utils import Secret
from haystack.dataclasses.chat_message import ChatMessage
from google.ai.generativelanguage import FunctionDeclaration, Tool
from haystack_integrations.components.generators.google_ai import GoogleAIGeminiChatGenerator
def get_current_weather(location: str, unit: str = "celsius"):
return {"weather": "sunny", "temperature": 21.8, "unit": unit}
get_current_weather_func = FunctionDeclaration(
name="get_current_weather",
description="Get the current weather in a given location",
parameters={
"type_": "OBJECT",
"properties": {
"location": {"type_": "STRING", "description": "The city and state, e.g. San Francisco, CA"},
"unit": {
"type_": "STRING",
"enum": [
"celsius",
"fahrenheit",
],
},
},
"required": ["location"],
},
)
tool = Tool(function_declarations= [get_current_weather_func])
gemini_chat = GoogleAIGeminiChatGenerator(model="gemini-pro", api_key=Secret.from_token("AIzaSyBseKnLxlS_9Hszup3qO4qUV3FGMojKuuU"),
tools=[tool])
messages = [ChatMessage.from_user("What is the temperature in celsius in Berlin?")]
res = gemini_chat.run(messages=messages)
weather = get_current_weather(**res["replies"][0].content)
messages += res["replies"] + [ChatMessage.from_function(content=weather, name="get_current_weather")]
res = gemini_chat.run(messages=messages)
for reply in res["replies"]:
print(reply.content)`

I can confirm it.
Our tests are failing https://github.com/deepset-ai/haystack-core-integrations/actions/runs/9705415312/job/26787441393
As a temporary workaround, you can try pinning google-generativeai<0.7.1.

Which version do you recommend using for google-generativeai  ? And is there an issue that you might have noticed that is causing this issue

Sorry unfortunately pinning google-generativeai<0.7.1 does not work.
Should be investigated better.

I have tried pinning google-generativeai<0.7.1 it hasnt worked on my end.


FFI for iroh-net

Can we make it easy for people from other languages to use iroh-net? Just open connections and streams?
The iroh-net API is unlikely to change that much, and I think it might be quite useful for developers from other languages.

streams across ffi boundaries are quite hard, especially if trying to make them performant. not against it in general , but it is going to be a lot of work for each language

streams across ffi boundaries are quite hard, especially if trying to make them performant. not against it in general , but it is going to be a lot of work for each language

Yeah, I discussed this idea briefly with @ramfox. I thought that our ffi approach would already deal with streams, but if it does not this is a lot of work.


Some components appear far from their original position when the zoom style is applied

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
Some components like Menu and Tooltip appear far from their original position when the zoom style is applied like the screenshots below from my local computer:

for the Menu component

for the Tooltip component

Here is the original position (when the zoom style is not applied) from my local computer:

for the Menu component

for the Tooltip component

Expected behavior 🤔
All components appear from their original position whether the zoom style is applied or not
Steps to reproduce 🕹
Steps:

Run the codesandbox above
Test the appearance of the Menu and Tooltip components
The case appears
If this case doesn't appear, maybe you could run the code on your local computer

Context 🔦
What I want to do is to apply the zoom property on smaller screen sizes so I create this code:

apply no zoom style to the body and some container components
apply the zoom style to all component contents

The zoom style is only applied for specific screen sizes (code from my local computer):
// 1.176470588 = 1 / 0.85

'@media only screen and (max-height: 820px)': {
  'body': {
    zoom: 0.85,
  },
  '.zoom': {
    zoom: 0.85,
  },
  '.no-zoom': {
    zoom: 1.176470588,
  },
}

Here is the codesandbox demo: https://codesandbox.io/s/github-mui-menu-on-zoom-j7tb7q
This case doesn't happen in the codesandbox but happens in my local computer (also my deployed app) with a similar code like the first four screenshots above
I already use the newest MUI dependencies in my local computer here:

dependencies
"dependencies": {
  "@emotion/react": "^11.9.0",
  "@emotion/styled": "^11.8.1",
  "@mui/icons-material": "^5.6.2",
  "@mui/lab": "^5.0.0-alpha.63",
  "@mui/material": "^5.7.0",
  "@mui/styles": "^5.7.0",
  "@mui/x-data-grid": "^5.10.0",
  "@mui/x-data-grid-pro": "^5.10.0",
  "@testing-library/jest-dom": "^5.16.1",
  "@testing-library/react": "^12.1.2",
  "@testing-library/user-event": "^13.5.0",
  "react": "^17.0.2",
  "react-dom": "^17.0.2",
  "react-router-dom": "^6.2.1",
  "react-scripts": "5.0.0",
  "web-vitals": "^2.1.3"
},

These screenshots below show the result from the codesandbox:

for the Menu component

for the Tooltip component

I just want to make a note (outside of the case) that the Snackbar component isn't affected by the zoom style on the codesanbox

but it's affected by the zoom style on my local computer

Your environment 🌎

`npx @mui/envinfo`
OS: Windows 11
Browser: Chrome 101
Browser viewport: 1920px x 929px

What version of @popperjs/core do you have installed locally? 2.9.3 introduced a bug with non-integer element sizes, which zooming will affect. It was fixed in 2.10.2. These are still getting pretty high downloads unfortunately.

hello @atomiks
I didn't install @popperjs/core dependency directly in the package.json since I didn't use it directly
I checked on the package-lock.json file and there were 6 @popperjs/core dependencies written
All of them used version 2.11.5 since I have already updated all MUI dependencies to the newest version
"node_modules/@mui/base": {
  "version": "5.0.0-alpha.80",
  "resolved"<EMAIL_ADDRESS>  "integrity": "sha512-sPSYwJzwNMaqpksdLuOhpQQLrhtpBH4sNnMSgkzJzo7Jo4HF9ivjNpq27Zh5+sdRe5MTt0gcBT0QSMO6zML1Aw==",
  "dependencies": {
    "@babel/runtime": "^7.17.2",
    "@emotion/is-prop-valid": "^1.1.2",
    "@mui/private-classnames": "^5.7.0",
    "@mui/types": "^7.1.3",
    "@mui/utils": "^5.7.0",
    **"@popperjs/core": "^2.11.5",**
    "clsx": "^1.1.1",
    "prop-types": "^15.8.1",
    "react-is": "^17.0.2"
  },
}

**"node_modules/@popperjs/core"**: {
  "version": "2.11.5",
  **"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.5.tgz",**
  "integrity": "sha512-9X2obfABZuDVLCgPK9aX0a/x4jaOEweTTWE2+9sr0Qqqevj2Uv5XorvusThmc9XGYpS9yI+fhh8RTafBtGposw==",
  "funding": {
    "type": "opencollective",
    "url": "https://opencollective.com/popperjs"
  }
},

"@mui/base": {
  "version": "5.0.0-alpha.80",
  "resolved"<EMAIL_ADDRESS>  "integrity": "sha512-sPSYwJzwNMaqpksdLuOhpQQLrhtpBH4sNnMSgkzJzo7Jo4HF9ivjNpq27Zh5+sdRe5MTt0gcBT0QSMO6zML1Aw==",
  "requires": {
    "@babel/runtime": "^7.17.2",
    "@emotion/is-prop-valid": "^1.1.2",
    "@mui/private-classnames": "^5.7.0",
    "@mui/types": "^7.1.3",
    "@mui/utils": "^5.7.0",
    **"@popperjs/core": "^2.11.5",**
    "clsx": "^1.1.1",
    "prop-types": "^15.8.1",
    "react-is": "^17.0.2"
  }
},

**"@popperjs/core": {**
  "version": "2.11.5",
  **"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.5.tgz",**
  "integrity": "sha512-9X2obfABZuDVLCgPK9aX0a/x4jaOEweTTWE2+9sr0Qqqevj2Uv5XorvusThmc9XGYpS9yI+fhh8RTafBtGposw=="
},

But this case still appears

@jaballogian
While the issue is still opened you can use this workaround..
const theme = createTheme({
  typography: {
    htmlFontSize: 20,
  },
});

@jaballogian While the issue is still opened you can use this workaround..
const theme = createTheme({
  typography: {
    htmlFontSize: 20,
  },
});

hello @salek3
thank you for the answer
I will try it soon and update this comment

Hi all
The codesandbox I mentioned above doesn't represent the issue so here we have created a new codesandbox that represents the issue https://codesandbox.io/s/mui-floating-menu-item-issue-0pcek1

Hi all
I think this issue is not from the MUI or @popperjs/core or React Js library but from the CSS zoom property itself.
I also faced the same issue on the React Leaflet and Leaflet Js libraries without using any MUI or @popperjs/core library.
Here are 2 codesandboxes that produce the issue on the React Leaflet and Leaflet libraries:

React Js with Leaflet Js https://codesandbox.io/s/reproduce-react-leaflet-qjpeh0
Vanilla Js with Leaflet Js https://codesandbox.io/s/reproduce-vanilla-leaflet-sid9jj?file=/src/script.js

Briefly, the codesandboxes above tell us that if we click anywhere on the map, the map will show a marker on the location we clicked.
But if we run both of the codesandboxes, then click anywhere on the map, a marker will appear but not from the location we clicked.
Here is the video https://www.awesomescreenshot.com/video/11129141?key=c072238999adff89a73832bdb70947fa.
If we disable the zoom property, the map will show a marker on the location we clicked.
Here is the video https://www.awesomescreenshot.com/video/11129255?key=c7fc222e5628cb0ab40c7a9a77a0f1f7.
Here is https://developer.mozilla.org/en-US/docs/Web/CSS/zoom stated that the zoom property is non-standard practice and some answers from other forums suggest replacing the zoom property with the transform: scale(...) property.
I have tried to replace the zoom property with the transform: scale(...) property but still, the transform: scale(...) property doesn't solve the case and has another issue.
For example:

Using zoom property

Initial state (zoom is not applied):

After the zoom is applied (the expected result):

Using transform: scale(...) property

Initial state (transform: scale(...) is not applied):

After the transform: scale(...) is applied (not the expected result):

So the transform: scale(...) property couldn't replace the zoom property at all.
CC @atomiks @siriwatknp

@jaballogian

So the transform: scale(...) property couldn't replace the zoom property at all.

I was able to replace zoom in my project with these styles.
transform: scale(...);
transform-origin: top left;

The replacement also fixed the issue with displaced tooltips.
I think the key is that you have to use transform-origin together with transform.

@jaballogian

So the transform: scale(...) property couldn't replace the zoom property at all.

I was able to replace zoom in my project with these styles.
transform: scale(...);
transform-origin: top left;

The replacement also fixed the issue with displaced tooltips. I think the key is that you have to use transform-origin together with transform.

@kkeri can you give a real case example using transform scale?

@dekguh
To be honest  I found this example too complex and scattered, I couldn`t track down all details.
I tried your link and in my browser (Chrome v108 on Ubuntu 22.04) it is displayed like this. Significantly better than your screenshot, however the popup covers the cog button. Do I miss something?

In my project I only have tooltips around icon buttons and they are displayed in the good position now that I switched to transform and transform-scale. I can`t justify it is a general solution though.

Temporary Solution
This is not a bug of mui.
So you have to edit another dependency called @popperjs.
https://github.com/floating-ui/floating-ui/issues/3032 (Same Issue. @popperjs was renamed to floating-ui)
Edit your<EMAIL_ADDRESS>like below. (line number may different by version)
Line 84
Before
y -= offsetY - popperRect.height;

After
y -= offsetY/parseFloat(window.getComputedStyle(document.body).zoom) - popperRect.height;

Line 92
##@# Before
x -= offsetX - popperRect.width;

After
x -= offsetX/parseFloat(window.getComputedStyle(document.body).zoom) - popperRect.width;


Broken with the new Discord CSS update

Discord decided to rename, like, 90% of its CSS classes, so the theme doesn't work at the moment.

pushed out fix


Extract Oanda brokerage files and dependencies

Description

Remove Oanda brokerage files
Remove Oanda downloader
Remove Oanda test files

Related Issue

N/A
Motivation and Context

Scale LEAN to a large number of brokerages without overhead on LEAN. Separating brokerages into plugins meets the purpose.
Requires Documentation Change

N/A
How Has This Been Tested?

Manual Testing using Oanda nuget
With LEAN tests

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Refactor (non-breaking change which improves implementation)
[ ] Performance (non-breaking change which improves performance. Please add associated performance test and results)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Non-functional change (xml comments/documentation/etc)

Checklist:

[x] My code follows the code style of this project.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.
[x] My branch follows the naming convention bug-<issue#>-<description> or feature-<issue#>-<description>

So where are these files moved?


Initialization of Documentation.

Main Page, Table of Contents, Code of Conduct and License pages are done. Please review. Let us know if any change is required. Issue #247

There are other commits appearing here. I don't know how to remove those. Please help me understand this.


Cocos2d-x project didn't compile

I tried to create a new Cocos2d-x project, and it didn't compile. My issue was that it could not compile the Cocos2d-h library.

Created a new Cocos2d-x project on my mac, it compiles and works
Ran it through vsimporter
Project not compiling, Cocoa not found, and issues with OpenGL.

Source:
https://onedrive.live.com/?cid=733e3ffab634ec2c&id=733E3FFAB634EC2C!888175&authkey=!AJ6wM6U8kJBwe9Q

Hi petriw,
Can you help me understand your requirements around Cocos2d-x?  Since Cocos2d-x is C++ my expectation was that developers would use the work contributed by Microsoft Open Technologies for porting to Windows:
https://msopentech.com/opentech-projects/cocos2d-x-windows-devices/
https://msopentech.com/blog/2015/05/04/cocos2d-x-3-6-is-here-modern-windows-support-too/
For WinObjC, we recently started evaluating https://github.com/cocos2d/cocos2d-objc to identify work that would improve our compatibility with that framework.  That would allow games written in Objective-C using Cocos2d-ObjC to port to Windows.
Thanks,
Saeed

Hi Saeed,
On a similar note, I'm looking at getting several projects working with https://github.com/cocos2d/cocos2d-iphone-classic
This repo is version 2 of cocos2d-obj (which was formerly called cocos2d-iphone). A ton of games still use this version.

Hi @petriw and @RustyMoyher,
Are you still having issues when trying to compile your projects? The cocos2d coverage of the bridge should have increased by now.


tests starting failing in 32

Current behavior
Cannot find module 'ariakit-utils/dom' from '../../../node_modules/ariakit/cjs/button/button.js'

Any thoughts? Thank you.
Steps to reproduce the bug
run jest ut with an ariakit
Expected behavior
pass as it did in 31.
Workaround
No response
Possible solutions
No response

Steps to reproduce the bug
run jest ut with an ariakit

Not sure what that means. Could you please provide a CodeSandbox or something?

Sorry, it was some screwup in my npm.


Implement Custom Interpolation Library

Requested features are (in descending priority):

Linear
Bilinear
Cubic

Lightweight and fast are desired attributes. Should be implemented as a class within spirit-utils.

Can this issue be closed now?

Closed as redundant now that we're utilizing libInterpolate


Ionic Email trying to spam me

Ionic version:  (check one with "x")
No version
[ ] 2.x
[ ] 3.x
[ ] 4.x
this email sent to me, I think it is hacker . check the email source. it seems a spam, all the email links go to it .
I know i shouldn't post this here, but i don't know where it should be . there is no email support found .

No.I don't think it is a spam.Those are official emails.Me too got one and you can see the details of sender here. He is the Ionic team member.
Twiter A/C of the sender:

why are email links going to intercom.com ?! why sending  from strange domain ?! how should i know .
it should be form you original domain

intercom is a website live chat and customer communications product used but just about every startup I know.  Definitely not spam - also since it's about their own product :-)

Hello! Thank you for opening an issue with us!
Definitely not spam. I believe this communication went out to anyone who has signed up for an Ionic Pro account, be it a free one or a paid one, in order to help them to better utilize the services.
Thank you for using Ionic


Handling builds with meson

This adds the ability to build with meson. Everything works locally for me on mac and Linux, but of course I don't have a Windows box and that is always the one causing failures... :(

can't parse readme.rst due to bad characters... Avoid that for now: 8d970051403abed2637ac533143e30f8572a4684
It seems like everything is built, but then running pytest fails because the libraries can't be found.

https://github.com/SWxTREC/pymsis/runs/8281587728?check_suite_focus=true#step:8:21
ImportError while importing test module 'D:\a\pymsis\pymsis\tests\test_msis.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
tests\test_msis.py:5: in <module>
    from pymsis import msis
C:\hostedtoolcache\windows\Python\3.9.13\x64\lib\site-packages\pymsis\msis.py:5: in <module>
    from pymsis import msis00f, msis20f, msis[21](https://github.com/SWxTREC/pymsis/runs/8281587728?check_suite_focus=true#step:8:22)f
E   ImportError: DLL load failed while importing msis00f: The specified module could not be found.

The install appears to build the wheel successfully...
https://github.com/SWxTREC/pymsis/runs/8281587728?check_suite_focus=true#step:6:1543
WARNING Could not tell if file was meant for purelib or platlib, so it was mapped to platlib: D:\a\pymsis\pymsis\.mesonpy-7o1ars04\install\hostedtoolcache\windows\Python\3.9.13\x64\Lib\site-packages\pymsis\msis21f.cp39-win_amd64.dll.a (C:\hostedtoolcache\windows\Python\3.9.13\x64\Lib\site-packages\pymsis\msis21f.cp39-win_amd64.dll.a)
  Copying files to wheel...
  [0/14] pymsis/msis00f.cp39-win_amd64.pyd
  [1/14] pymsis/msis00f.cp39-win_amd64.dll.a
  [2/14] pymsis/msis20f.cp39-win_amd64.pyd
  [3/14] pymsis/msis20f.cp39-win_amd64.dll.a
  [4/14] pymsis/msis21f.cp39-win_amd64.pyd
  [5/14] pymsis/msis21f.cp39-win_amd64.dll.a
  [6/14] pymsis/__init__.py
  [7/14] pymsis/msis.py
  [8/14] pymsis/msis2.0.parm
  [9/14] pymsis/msis21.parm
  [10/14] pymsis/tests/__init__.py
  [11/14] pymsis/tests/test_msis.py
  [12/14] pymsis/tests/test_regression.py
  [13/14] pymsis/tests/msis2.0_test_ref_dp.txt
  [14/14] pymsis/tests/msis2.1_test_ref_dp.txt
  Preparing metadata (pyproject.toml): finished with status 'done'

closes #19

@eli-schwartz I decided to try and learn how to use meson and gave it a go. I think I'm close to getting this to build, but wondering if you have any experience with Python Windows builds and if I'm doing something wrong here. Any other advice is welcome too. (taking advantage of your previous comment ;) https://github.com/SWxTREC/pymsis/pull/16#issuecomment-1220956807 )

I'm not a Windows user myself, but I think the error message emitted by python here is saying that there are missing DLL dependencies of the module. Unfortunately, the error message doesn't say what those dependencies are.
Is it possible to use something like dumpbin or Dependency Walker on the .pyd and see what it thinks it depends on?

I had a closer look. The "Could not tell if file was meant for purelib or platlib" warnings are gone now, and the .pyd files end up in the correct location. I'm fairly sure that the missing DLL will be libgfortran, because that is needed for extensions from Fortran code and it's not clear to me how it will be found (GITHUB_PATH may not add it to the Windows library search path - although hard to be sure about that).
To build redistributable wheels, you need delvewheel to vendor the missing DLLs. See cibw_before_build_win.sh and repair_windows.sh at https://github.com/scipy/scipy/tree/main/tools/wheels.
I'll also point out that SciPy uses a different Mingw-w64 build, the rtools one: https://github.com/scipy/scipy/blob/main/.github/workflows/windows.yml#L42. That uses the Windows UCRT rather than the older runtime libraries, maybe that matters too.

I must have overlooked that Scipy builds the libraries statically on Windows! https://github.com/scipy/scipy/blob/a082eb415192f3075921fbf3e539f2b82a53811e/scipy/meson.build#L5-L7
That is the key here and I'm able to get the Windows build working now:
https://github.com/SWxTREC/pymsis/actions/runs/3266720215
Specifically the latest commit: https://github.com/SWxTREC/pymsis/pull/21/commits/e2f0c0daef8c450985eca6272a938bcb8a8adbbb
Thank you very much for taking a look @eli-schwartz and @rgommers, your comments definitely pointed me in the right direction here! It might be good to put this into the f2py / scipy -> meson migration notes. I'll try and make some PRs for docs updates if I can think of things that would help others in the next week or so.

Nice, glad that got resolved!

Aha, excellent timing on my part. :D

No problem at all, @eli-schwartz! Thanks so much for commenting, I'll add that in another commit before I make a release. I've got a few more things to do before releasing a new version. The meson part of this was all pretty nice to work with, so thanks for your work on that!


Pr unit1

Added two minor tweaks that I felt were important to introduce in this unit

Sweet! I'll definitely make a point not to linger on the layout stuff; in my experience interviewers (and in some occasions that interviewer === me!) love asking layout questions during initial phone screens, etc


Font issue?

I don't know if it's related to a change I did to remove HiDef to avoid this issue:

But I'm living on this font bug:

Oh, also tried to set BackColor to Transparent, and it got worse.

Are you developing in a VM? That's the only time I've had that issue (MessageBox that you screencapped), because hardware acceleration is disabled. Development in a VM is not supported.
Also if you're on Win10 I haven't tested anything for that yet, and I know there are other graphics driver issues reported on eoserv.net for the regular client. I have an AMD GPU (I think the issues were for NVIDIA cards)
The font bug, I haven't come across - but it may be related to the above issues that I mentioned. One of my friends changed the development to use System.Drawing for font rendering which might cause some unknown issues.
Checking out your pull request for testing, I noticed that the font rendered improperly for me when set to "Segoe UI" but "Segoe UI Regular" worked fine. I'm guessing you may have a missing font (which is weird since I think Microsoft Sans Serif is standard in Windows...)

I'm developing on a real machine, with an old graphics card. That's why it won't run on HiDef

Do you have up-to-date drivers? Also what OS are you on (can't tell from the screenshot) and what GPU is it exactly? You should be able to see GPU info in dxdiag.exe
I'd like to investigate this since it's very likely an issue with how I do fonts but it seems tied to your specific system

Latest supported graphics version.

The font on EOScrollingDialog works great, can you check how to implement everywhere?
Look below, text on text box is "bugged" and, at EOScrollingDialog isn't. The issue can be on your XNAControls.XNALabel.

Value of Game.DrawText() on XNALabel's GenerateImage:

As you see, even the text being Magenta, it looks shitty and looks like it has a Black background.
This can be related to HiDef, as I said, 'cause it's related to XNAFramework.Game.DrawText, but I think we can work on a fix for this, or test if on MonoGame this resolves.

I think EOScrollingDialog uses XNA / SpriteFont to render fonts, which might have an effect. XNALabel uses System.Drawing. I'm going to build out a Windows 10 VM to investigate and test this, but it may take a couple of days. I also don't see why your GPU shouldn't be able to handle rendering the game in HiDef.
Also see this topic on eoserv.net - apparently Windows 10 and NVIDIA don't play nicely yet. (or requires a patch)

Well, bad thing is that original EO client works good, while this doesn't.

I'm getting this issue too on Windows 7. An older version of the client that I had on my computer works, though.

I guess label should be changed to confirmed then.

Yeah. The client I have from 5/13/15 displays everything correctly but the newest version doesn't. I've fiddled with it a lot and still end up with a choppy outline.

Hmmm. That's annoying. I think the only thing I've changed since then is removing the Text Rendering Hint because I couldn't see a purpose to it. That might be what's causing it.
I still don't have a system I can test this on, since it works fine on my computer. Hopefully when I upgrade to Win10 it breaks for me too.

News?

I haven't had a chance to play around on Win10 yet. I'm hesitant to upgrade my primary dev environment because I've heard there are other issues with it.
I'll have a dedicated Win10 machine pretty soon that I can test this on and hopefully resolve.

If I'm not mistaken, this client was based on EODev no? I had this issue on 3 ATI machines, and an Intel. But I also tested it on an older nVidea budget GPU that didn't have the same problem. I also have it happening now on Windows 7, with my R7 260x but not on an HD6450 1gb.

If I'm not mistaken, this client was based on EODev no?

Not at all, it's built from scratch from the ground up. I used Hotdog's and Exile's sources as a reference for some rendering related things, and decompiled some of the EOSERV# libraries for packet things, but everything else I wrote myself.

I had this issue on 3 ATI machines, and an Intel. But I also tested it on an older nVidea budget GPU that didn't have the same problem. I also have it happening now on Windows 7, with my R7 260x but not on an HD6450 1gb.

Interesting. My build is getting outdated, I run an XFX Radeon HD 6770 GPU and an AMD Phenom II X2 560 CPU, Win8.1 x64 w/ VS2013.
I'll see about changing to using SpriteFont instead of System.Drawing for XNALabel. I'm thinking more and more that's probably the cause - perhaps newer graphics hardware just won't work with that method of font rendering.

Good news everyone, I've successfully reproduced the font error on my Windows 10/VS2015 system! So I can actually work on this bug now.

Lol, finally, Windows 10 FTL XD

Can't wait till this gets fixed, good luck

I'm getting pretty close. It involved a pretty big refactor of XNAControls. I'm cleaning up a few remaining display bugs but should have it in within the next couple of days.

Looking forward to the update!

yay!

Still a few remaining display bugs to clean up but the majority of work for this is done. Other remaining bugs are most likely due to issues with XNAControls.
Commit 9679936


tab on a newline disappears cursor and deletes the newline

fixed by https://github.com/lockbook/lockbook/pull/1984


Tagging cells

Originally reported by: Donna Calhoun (Bitbucket: donnaaboise, GitHub: donnaaboise)

If I tag a family of grids for coarsening, there is no need to then check to see whether any of the four sibling grids should be refined.
Is there a way I can determine whether a grid has been tagged for coarsening?  I am thinking of a patch access function that returns 1/0 depending on the state of some internal flag.

Bitbucket: https://bitbucket.org/donnaaboise/forestclaw/issue/99

Don't quite remember what the issue was, but assume it is fixed.


Use configured yarn registry and HTTP to check whether it is available, NOT DNS.

It is bad practice to use a hard-coded URL for configurable values. It's also not optimal to use DNS to verify if a host is available through HTTP. (Sitting behind a corporate proxy will render you offline by that definition -- always.)

Please use hyperquest instead of introducing request.

Oh, thanks for the heads-up. Changed it to use hyperquest now.

Hey @JimPanic! Thanks for making that change and thank you for the pull request.
I'm going to tag this for later review, we have some stuff we're trying to push through currently. 😄

@gaearon Thanks for the feedback! Resolving to false does totally make sense in this context. I changed it accordingly and squashed the commits.

The failed tests seem completely unrelated. Can someone confirm this?


is this working?

{"id":"0c117a1e-05c2-4c63-9ad1-eadaecbf3192","version":"1.0.0","action":"PING","data":{}}
{ id: 'nTa', action: 'PONG' }
{ id: 'nTa', origin_action: 'PONG' }
WebSocket connection opened
{"id":"99cd41a6-7dfc-401b-ae6a-4c4b7f1a3aee","version":"1.0.0","action":"PING","data":{}}
{"id":"4007fffc-ab2c-4ddf-a3e1-f1c47b829282","version":"1.0.0","action":"PING","data":{}}
{"id":"f9aad718-d7a2-4540-a7ab-1db8d5a79087","version":"1.0.0","action":"PING","data":{}}
WebSocket connection closed
{ id: '8dm', action: 'PONG' }
{ id: '8dm', origin_action: 'PONG' }
{"id":"aa06a2d4-45ed-4984-8a34-fbd08cc408f6","version":"1.0.0","action":"PING","data":{}}
{ id: '9km', action: 'PONG' }
{ id: '9km', origin_action: 'PONG' }
{"id":"8477bb20-4b5d-4831-9913-082d616bbc6a","version":"1.0.0","action":"PING","data":{}}
{"id":"529ae652-317d-42dc-8cca-36d4ba88f98b","version":"1.0.0","action":"PING","data":{}}
WebSocket connection closed
{"id":"eef45948-0342-4e6d-92b1-37454f69d90c","version":"1.0.0","action":"PING","data":{}}
{"id":"f7e7958e-5bc7-4d2e-8573-078d61aa9fdc","version":"1.0.0","action":"PING","data":{}}
{ id: '1Th', action: 'PONG' }
{ id: '1Th', origin_action: 'PONG' }
{"id":"391eed6f-aa44-465c-a53e-545235deb9b3","version":"1.0.0","action":"PING","data":{}}
{"id":"9df6c7c5-2fba-4b70-bfe8-caab48c87772","version":"1.0.0","action":"PING","data":{}}
{"id":"5893d356-324e-4511-91c6-b4352f4c687c","version":"1.0.0","action":"PING","data":{}}
WebSocket connection opened
{"id":"bd9c2523-becf-435e-b20b-1c0d4f6ebb0b","version":"1.0.0","action":"PING","data":{}}
WebSocket connection closed
WebSocket connection closed
{"id":"1fb9d472-5867-4b12-9821-bf3f14f21eb5","version":"1.0.0","action":"PING","data":{}}
WebSocket connection opened
{ id: 'rgN', action: 'PONG' }
{ id: 'rgN', origin_action: 'PONG' }
{"id":"52b59839-34cc-4b11-b0f9-4e856df76fdc","version":"1.0.0","action":"PING","data":{}}
{"id":"777c229c-54d4-4886-8897-247c0a297385","version":"1.0.0","action":"PING","data":{}}
{"id":"659e915c-ce5a-4180-a714-0fc860e41324","version":"1.0.0","action":"PING","data":{}}

{"id":"0c117a1e-05c2-4c63-9ad1-eadaecbf3192","version":"1.0.0","action":"PING","data":{}} { id: 'nTa', action: 'PONG' } { id: 'nTa', origin_action: 'PONG' } WebSocket connection opened {"id":"99cd41a6-7dfc-401b-ae6a-4c4b7f1a3aee","version":"1.0.0","action":"PING","data":{}} {"id":"4007fffc-ab2c-4ddf-a3e1-f1c47b829282","version":"1.0.0","action":"PING","data":{}} {"id":"f9aad718-d7a2-4540-a7ab-1db8d5a79087","version":"1.0.0","action":"PING","data":{}} WebSocket connection closed { id: '8dm', action: 'PONG' } { id: '8dm', origin_action: 'PONG' } {"id":"aa06a2d4-45ed-4984-8a34-fbd08cc408f6","version":"1.0.0","action":"PING","data":{}} { id: '9km', action: 'PONG' } { id: '9km', origin_action: 'PONG' } {"id":"8477bb20-4b5d-4831-9913-082d616bbc6a","version":"1.0.0","action":"PING","data":{}} {"id":"529ae652-317d-42dc-8cca-36d4ba88f98b","version":"1.0.0","action":"PING","data":{}} WebSocket connection closed {"id":"eef45948-0342-4e6d-92b1-37454f69d90c","version":"1.0.0","action":"PING","data":{}} {"id":"f7e7958e-5bc7-4d2e-8573-078d61aa9fdc","version":"1.0.0","action":"PING","data":{}} { id: '1Th', action: 'PONG' } { id: '1Th', origin_action: 'PONG' } {"id":"391eed6f-aa44-465c-a53e-545235deb9b3","version":"1.0.0","action":"PING","data":{}} {"id":"9df6c7c5-2fba-4b70-bfe8-caab48c87772","version":"1.0.0","action":"PING","data":{}} {"id":"5893d356-324e-4511-91c6-b4352f4c687c","version":"1.0.0","action":"PING","data":{}} WebSocket connection opened {"id":"bd9c2523-becf-435e-b20b-1c0d4f6ebb0b","version":"1.0.0","action":"PING","data":{}} WebSocket connection closed WebSocket connection closed {"id":"1fb9d472-5867-4b12-9821-bf3f14f21eb5","version":"1.0.0","action":"PING","data":{}} WebSocket connection opened { id: 'rgN', action: 'PONG' } { id: 'rgN', origin_action: 'PONG' } {"id":"52b59839-34cc-4b11-b0f9-4e856df76fdc","version":"1.0.0","action":"PING","data":{}} {"id":"777c229c-54d4-4886-8897-247c0a297385","version":"1.0.0","action":"PING","data":{}} {"id":"659e915c-ce5a-4180-a714-0fc860e41324","version":"1.0.0","action":"PING","data":{}}

Check new version, it works.


Incorrect gpu size for PIXELFORMAT_L8_A8

Description
in Profiler, VRAM used for PIXELFORMAT_L8_A8 texture is not correct.
Project: https://playcanvas.com/editor/scene/967049
Steps to Reproduce

Launch with Profiler
Click white button on top left
A plane with 4096x4096 PIXELFORMAT_L8_A8 texture appear, VRAM increase about 22MB
In Safari memory timeline, Layer increase 32MB

In pc.Texture.calcGpuSize():
_pixelSizeTable[PIXELFORMAT_L8_A8] = 1;  // <=== here, i think it's 2

In pc.Texture.gpuSize()
    gpuSize: {
        get: function () {
            var mips = this.pot &&
                    (this._mipmaps ||
                        this._minFilter === FILTER_NEAREST_MIPMAP_NEAREST ||
                        this._minFilter === FILTER_NEAREST_MIPMAP_LINEAR ||
                        this._minFilter === FILTER_LINEAR_MIPMAP_NEAREST ||
                        this._minFilter === FILTER_LINEAR_MIPMAP_LINEAR) &&  // <=== here
                        !(this._compressed && this._levels.length === 1);

            return Texture.calcGpuSize(this._width, this._height, this._depth, this._format, mips, this._cubemap);
        }
    },

My texture's mipmaps is disable, but minFilter is always FILTER_LINEAR_MIPMAP_LINEAR, and I cannot set it to FILTER_LINEAR.
In pc.GraphicDevice.setTextureParameters(), engine check texture._mipmaps, and change filter to FILTER_LINEAR, I dont know why engine check minFilter for calculate gpu size.

Hi @yusjoel - thanks for reporting this, I agree with you on both points and have a fix PR.


Documentation tweaks

Hope you like it @ondrejbartas!

oops! seems the "Thanks to" was updated on master. Maybe we can just replace it for a link to the Contributors section (https://github.com/ondrejbartas/sidekiq-cron/graphs/contributors)? Seems easy to maintain.

Thanks @ondrejbartas! Already accepted the invitation to collaborate! 🙌🏼


Binding options parameter prevents certain functionality to stop working

When binding the whole object property, certain functionality, like options.xaxis.type do not function properly.  Removing the binding allows the chart to work properly.
Enclosed is an example.
broken chart with binding.zip

This issue is now resolved with 1.0.4.


[INLONG-1895] Inlong-Sort-Standalone support to sort the events to Hive cluster.

Title Name: [INLONG-1895][Inlong-Sort-Standalone] Inlong-Sort-Standalone support to sort the events to Hive cluster.
Fixes #1895
Motivation
Explain here the context, and why you're making that change. What is the problem you're trying to solve.
Modifications
Describe the modifications you've done.
Verifying this change

[ ] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
If a feature is not applicable for documentation, explain why?
If a feature is not documented yet in this PR, please create a followup issue for adding the documentation

Codecov Report

Merging #2129 (132c721) into master (f51179a) will increase coverage by 0.01%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #2129      +/-   ##
============================================
+ Coverage     12.26%   12.28%   +0.01%
+ Complexity     1159     1157       -2
============================================
  Files           413      413
  Lines         35215    35215
  Branches       5542     5542
============================================
+ Hits           4320     4325       +5
+ Misses        30125    30119       -6
- Partials        770      771       +1

Impacted Files
Coverage Δ

.../producer/qltystats/DefaultBrokerRcvQltyStats.java
45.31% <0.00%> (-0.79%)
:arrow_down:

.../java/org/apache/flume/sink/tubemq/TubemqSink.java
55.42% <0.00%> (+4.00%)
:arrow_up:

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 f51179a...132c721. Read the comment docs.

+1


Where can I get the movenet paper? 😂

Where can I get the Pose-Dataset?

Is the Pose-Dataset in the picture?

MoveNet is originally a project from Google, and it's not a research project.
You may create the dataset by yourself. Currently the dataset I use is not open-sourced.


Update typings

Hey @Yimiprod
I made some updates to old typings in hope to make them more consistent.
Also I added typings for the new option and method.
Please check and merge if it's fine.
I'll make a new release after that.
Thanks!

@bumbu the code look ok but it missing the version bump at line 3.
npm test fail for me.

Hey @Yimiprod
I'll bump the version on build.
Did you run the build before running tests? Test uses files from dist folder.

ATM i only check manually if there's no error in the file. I'm looking if there's an easier way to test it.

Ok i found out how to check.
I can push it to your branch or you could add it: npm i -D typescript.
Update tsconfig.jons with "noEmit": true, in compilerOptions.
Add script in package.json "test-typescript": "tsc".
Now npm run test-typescript should make a dry-run, if anything's wrong in the definition or in the test, it will fail.

Hey @Yimiprod
Thanks for the explanations. I'll merge this one and make a release.
If you get some time to create a simple test runner - please make a separate PR.
Thanks!


feat: initial release: working eth & xrp, integration tests

Working Machinomy uplink working with updated uplink model (but requires upstream eth plugin changes -- PR will be updated after those are published)
Adds initial Machinomy uplink test of multiple deposits, streaming from a Machinomy uplink to an LND uplink, and that the balances are accurately updated

Also note: the Ava config no longer uses ts-node, and requires everything to be compiled before running tests (e.g. while debugging run npx tsc --watch in another terminal so the it's automatically re-compiled on changes)

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@3f11620). Click here to learn what that means.
The diff coverage is 62.04%.

@@            Coverage Diff            @@
##             master       #3   +/-   ##
=========================================
  Coverage          ?   75.11%
=========================================
  Files             ?       15
  Lines             ?      631
  Branches          ?       33
=========================================
  Hits              ?      474
  Misses            ?      141
  Partials          ?       16

Impacted Files
Coverage Δ

src/settlement/shared/eth.ts
44.44% <ø> (ø)

src/utils/middlewares.ts
73.91% <ø> (ø)

src/engine.ts
100% <100%> (ø)

src/services/switch.ts
80% <100%> (ø)

src/settlement/lnd.ts
95.91% <100%> (ø)

src/utils/log.ts
100% <100%> (ø)

src/settlement/machinomy.ts
38.33% <38.33%> (ø)

src/credential.ts
63.88% <46.15%> (ø)

src/uplink.ts
81.9% <72.22%> (ø)

src/settlement/xrp-paychan.ts
77.41% <77.19%> (ø)

... and 1 more

Continue to review full report at Codecov.

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


Add defmt backend

Add defmt feature to enable the backend
Backend injects 2+2 framing bytes so we don't require rzcobs for framing

Closes #20

Looks good to me. I guess you are also working on adding support to espflash, right? Maybe let's wait merging this until everyone can do an end to end test

Yes, companion PR is here: https://github.com/esp-rs/espflash/pull/466 I will need to rebase it on top of the fixes that are probably more important, so it's a draft but otherwise builds and works fine for me.

So I've decided agains adding a symbol as a hint for espflash. defmt places theirs (the format version that I would have used as my source) in a particular section and with the 4 attributes it seemed more complex to me than what it's worth. espflash will work just fine without a hint, unless the serial output contains the [0xFF, 0x00] sequence, in which case it will output some garbage. If this is a problem, I think a better way is to fix it in espflash by explicitly disabling defmt, but honestly, I don't think this should matter much.

I tested it and it seems it's good enough, I agree


allow alert via webhook

e.g. POST https://xxxx.com/notify if service was down

I think you are looking for custom alerts?

Oh, thanks a lot. By the way, as endpoints like api.telegram.org was blocked in some region, is there a way to configure a proxy or custom endpoint?

You can specify any endpoint you wish with custom alerts.
As for proxies, there's no such feature at the moment.


Socket connector retry logic

Let's re-examine how error codes (including EAGAIN, which is not handled currently) and retries are handled by DnsConnector before tagging the next major.

Done in https://github.com/amphp/socket/commit/ff5d89802b85814f8ac4b4e5bcc6b76f623ab13b.


refactor: make CI parallel and add code and doc checking

Signed-off-by: Allen Sun<EMAIL_ADDRESS>
Ⅰ. Describe what this PR did
make CI parallel and add code and doc checking:
make circleCI separated into two parts:

markdownlint-misspell-shellcheck: this part contains three parts, markdownlint could lint the markdown documentation; misspell would check the mispells in code and doc; shellcheck would check the risk in shell scripts.
unit-test-golang

Ⅱ. Does this pull request fix one issue?

none
Ⅲ. Why don't you add test cases (unit test/integration test)? (你真的觉得不需要加测试吗？)
none
Ⅳ. Describe how to verify it
none
Ⅴ. Special notes for reviews
none

With this pr we could see the circleCI has been separated into two part:

markdownlint-misspell-shellcheck
unit-test-golang

While the first part has failed to pass the CI unfortunately.

Codecov Report

Merging #164 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #164   +/-   ##
=======================================
  Coverage   81.43%   81.43%
=======================================
  Files          28       28
  Lines        1282     1282
=======================================
  Hits         1044     1044
  Misses        207      207
  Partials       31       31

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 f453ce9...81f557b. Read the comment docs.

lgtm


add additional columns to CopySource

I'm creating this PR to solve this feature request.
Please help me to review it and merge for the next release

Hi @vietanh85 Thanks for the pull request!!
You have made a change to an auto-generated file - the changes will be lost when it's regenerated from its Swagger source. The good news is, it's easy to fix the Swagger - for your particular change, you can simply add a property to the CopySource definition here: https://github.com/Azure/azure-rest-api-specs/blob/main/specification/synapse/data-plane/Microsoft.Synapse/preview/2021-06-01-preview/entityTypes/Pipeline.json#L1487.
I'll then forward the PR to the Synapse team to review - and once it's approved, we can propagate the changes here and release the next month.

Hi @vietanh85 Thanks for the pull request!!
You have made a change to an auto-generated file - the changes will be lost when it's regenerated from its Swagger source. The good news is, it's easy to fix the Swagger - for your particular change, you can simply add a property to the CopySource definition here: https://github.com/Azure/azure-rest-api-specs/blob/main/specification/synapse/data-plane/Microsoft.Synapse/preview/2021-06-01-preview/entityTypes/Pipeline.json#L1487.
I'll then forward the PR to the Synapse team to review - and once it's approved, we can propagate the changes here and release the next month.

@jianghaolu I just created a PR for this. Could you please help me to review it?

@qwordy could you please follow up?


How can I add multiple bots ?

How can I listen to the chats to multiple bots ? Suppose I want to reply to messages to bot1 and bot2 from the same application. Currently we can create only import #one driver object in a node process when you import driver from sdk. How do I create separate driver objects ?

I ended up using decache module to create a unique driver object eachtime the module is required. Not sure if there is a better method


Video quality 4K is not available for YouTube live stream

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm requesting a site-specific feature
[X] I've verified that I have updated yt-dlp to nightly or master (update instructions)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and I'm willing to share it if required

Region
Israel
Example URLs
https://www.youtube.com/watch?v=SnCEL_FnR-s
Provide a description that is worded well enough to be understood
I'm trying to get a list of available formats from URL mentioned in example.
While browser allows to select a 4K stream, the best selection that I get from command-line is:
mp4 1920x1080   60fps ...
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU', '--list-formats', '-s', '--skip-download', 'https://www.youtube.com/watch?v=SnCEL_FnR-s']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>from yt-dlp/yt-dlp [7ea278792] (win_exe)
[debug] Python 3.10.11 (CPython AMD64 64bit) - Windows-10-10.0.22631-SP0 (OpenSSL 1.1.1t  7 Feb 2023)
[debug] exe versions: ffmpeg git-2019-10-18-feaec3b
[debug] Optional libraries: Cryptodome-3.21.0, brotli-1.1.0, certifi-2024.08.30, curl_cffi-0.5.10, mutagen-1.47.0, requests-2.32.3, sqlite3-3.40.1, urllib3-2.2.3, websockets-13.1
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets, curl_cffi
[debug] Loaded 1837 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version<EMAIL_ADDRESS>from yt-dlp/yt-dlp
yt-dlp is up to date<EMAIL_ADDRESS>from yt-dlp/yt-dlp)
[youtube] Extracting URL: https://www.youtube.com/watch?v=SnCEL_FnR-s
[youtube] SnCEL_FnR-s: Downloading webpage
[youtube] SnCEL_FnR-s: Downloading ios player API JSON
[youtube] SnCEL_FnR-s: Downloading mweb player API JSON
[youtube] SnCEL_FnR-s: Downloading m3u8 information
[youtube] SnCEL_FnR-s: Downloading m3u8 information
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec, channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
[info] Available formats for SnCEL_FnR-s:
ID  EXT RESOLUTION FPS │   TBR PROTO │ VCODEC        VBR ACODEC     MORE INFO
────────────────────────────────────────────────────────────────────────────────
233 mp4 audio only     │       m3u8  │ audio only        unknown    Default, IOS
234 mp4 audio only     │       m3u8  │ audio only        unknown    Default, IOS
269 mp4 256x144     15 │  290k m3u8  │ avc1.42C00B  290k video only IOS
91  mp4 256x144     15 │  290k m3u8  │ avc1.42c00b       mp4a.40.5  MWEB
229 mp4 426x240     30 │  546k m3u8  │ avc1.4D4015  546k video only IOS
92  mp4 426x240     30 │  546k m3u8  │ avc1.4d4015       mp4a.40.5  MWEB
230 mp4 640x360     30 │ 1210k m3u8  │ avc1.4D401E 1210k video only IOS
93  mp4 640x360     30 │ 1210k m3u8  │ avc1.4d401e       mp4a.40.2  MWEB
231 mp4 854x480     30 │ 1569k m3u8  │ avc1.4D401F 1569k video only IOS
94  mp4 854x480     30 │ 1569k m3u8  │ avc1.4d401f       mp4a.40.2  MWEB
311 mp4 1280x720    60 │ 4370k m3u8  │ avc1.4D4020 4370k video only IOS
300 mp4 1280x720    60 │ 4370k m3u8  │ avc1.4d4020       mp4a.40.2  MWEB
312 mp4 1920x1080   60 │ 7172k m3u8  │ avc1.64002A 7172k video only IOS
301 mp4 1920x1080   60 │ 7172k m3u8  │ avc1.64002a       mp4a.40.2  MWEB
[debug] Default format spec: best/bestvideo+bestaudio
[info] SnCEL_FnR-s: Downloading 1 format(s): 301

https://github.com/yt-dlp/yt-dlp/issues/11262#issuecomment-2415919973

Also keep in mind that you need to use --live-from-start as the m3u8 livestreams are only available up to 1080p.

Thanks, after changing the client app and adding "--live-from-start" it worked like a charm.
Maybe this case should be referred in documentation for beginners (like me).


Clean Notification Manager Shutdown

Notification thread can receive shutdown order during the JVM shutdown sequence. The System call will throw InvalidStateException in this conditions. Gracefully handling this exception to reduce confusion.

Thanks for the contribution.


Unable to use willThrow on mocked generic function

I have one blocker that might be a limitation of my implementation, so I'd like to sanity check it here. In our project, we have the following BaseAPIClient protocol.
@Mockable
public protocol BaseApiClient {
    func fetch<T: Codable>(using request: URLRequest) async throws -> T
    func cancel() async
}

public final class ApiClient: BaseApiClient {
    ...

    public func fetch<T: Codable>(using request: URLRequest) async throws -> T {
        logger.trace("API request made to \(request.detailedDescription(), privacy: .private)")
        let (data, response) = try await urlSession.data(for: request)

        if let httpResponse = response as? HTTPURLResponse {
            switch httpResponse.statusCode {
            case 200 ..< 300:
                ...
        } else {
            throw ApiError.unknownError(message: response.description)
        }
    }
}

Implementers of the class declare the BaseAPIClient type and explicitly define the `T: Codable`` return type, we get a very flexible and reusable client.
let authenticationDataResult: AuthenticationResponse = try await apiClient.fetch(using: loginRequest)

The problem is the use of given in the mock is unable to compile when I want to define a willThrow for it.
@testable import MockableGenericExample
import MockableTest
import XCTest

enum TestError: Error, Codable {
    case generic
}

final class MockableGenericExampleTests: XCTestCase {
    let baseAPIClient = MockBaseAPIClient()

    ...

    func testExample() throws {
        given(baseAPIClient)
            .fetch(using: .any)
            .willReturn("") // will compile

        given(baseAPIClient)
            .fetch(using: .any)  // won't compile due to 'Generic parameter 'T' could not be inferred'
            .willThrow(TestError.generic)

        given(baseAPIClient)
            .fetch(using: .any) // won't compile 'Type '()' cannot conform to 'Decodable'
            .willProduce { _ in
                throw TestError.generic
            }
    }
}

Have you encountered this before @Kolos65 and have any recommendations as a work around? Or is there a limitation I could help contribute a resolution towards? The alternative approach to my code is to provide an associatedType in the protocol and define that as the response without generics, which means explicit API clients that do duplicating the logic around handling the various HTTP response and error handling. I have attached an example project to help illustrate the issue. Thank you.
MockableGenericExample.zip

I have encountered this during my tests. You just need to explicitly provide the concrete type of the generic parameter when you use .any in these type of generic functions:
given(baseAPIClient)
    .fetch(using: Parameter<SomeRealCodableType>.any)
    .willThrow(TestError.generic)

The type system must be able to infer the generic parameter somehow.

The type system must be able to infer all generic parameters and return values so in this case you are limited to using willProduce and need to specify the return value in the closure signature:
given(baseAPIClient)
    .fetch(using: .any)
    .willProduce { _ -> String in
        throw TestError.generic
    }
do {
    let url = URL(string: "apple.com")!
    let request = URLRequest(url: url)
    let _: String = try await mock.fetch(using: request)
} catch {
    XCTAssertEqual(error as!  I found that if my tested code is calling a mocked object like
let authenticationDataResult: AuthenticationResponse = try await apiClient.fetch(using: loginRequest)

Then I need to define the mock as
given(apiClient)
    .fetch(using: .any)
    .willProduce { _ -> AuthenticationResponse in
        throw ApiError.httpResponseFailure
    }

where it works perfectly! Would you welcome a pull request to note this use case in the documentation?

I will add a "working with generics" section where I would list this as well as other edge cases and limitations regarding generics.
Glad I could help @kelvinharron 🚀


Sentinel protocol not supported for Redis

Summary
To run a highly available redis master-slave architecture the preferred solution is to deploy several 'Sentinel' agents (http://redis.io/topics/sentinel). To failover between the master and slave redis processes the clients must connect to a sentinel endpoint and not the direcly to any redis.
If I am not wrong, it's not possible to tell Kong plugins to use the sentinel protocol instead of redis. In order to have a highly available service architecture, Kong should connect to a sentinel agent. lua-resty-redis supports sentinel out of the box.
Additional Details & Logs

Kong version (0.9.3)
Kong configuration (Rate Limiting plugin)
Ubuntu 16.04 + Kubernetes 1.3.7 + Docker 1.12.X.Beta + Redis 3.2.4 + Cassandra 2.x

@logronoide we are using lua-resty-redis to connect to Redis, and connecting using its connect method (https://github.com/Mashape/kong/blob/master/kong/plugins/rate-limiting/policies.lua#L68).

I have to double check why sentinel is not working properly. it's not recovering properly when a redis master fails.

okay, please keep me updated on the progress

I can confirm lua-resty-redis does not support redis failover with Sentinel or Clustering. Hence, using Redis as it is for a resilient architecture is not possible.
There are several options here:

Sentinel support with lua-resty-redis-connector. This wrapper of lua-resty-redis enables Sentinel for master-slave failover, but not for clustering.
Use a third party clustering and failover solution for Redis like Twemproxy.
Wait for lua-resty-redis to support clustering and sentinel. It seems they will do it sooner than later https://github.com/openresty/lua-resty-redis/issues/43

As a short term solution, I think Twemproxy can be a good option.

I was also planning on using Redis Sentinel for a HA Redis cluster. Hoping this will be supported in future.
In the meantime I will check out the options mentioned by @logronoide. Thank you!

Thanks to all for the discussion here. Redis Sentinal is currently supported in Kong Enterprise. Please see https://www.mashape.com/enterprise/ for more details. Thank you!


Add QuickLook 3.6.8

Microsoft Reviewers: Open in CodeFlow

Report submitted.

Submission ID: e3943f27-d9f9-4d8c-88f3-0e1f56e92466
We have removed the detection.


typo Fixed some description of date_format function documentation

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

Please modify the title format, refer to https://doris.apache.org/zh-CN/community/how-to-contribute/commit-format-specification

done

run buildall


User Admin and My CX Account: Personal and issuer information not shown

Current Behavior

Expected Behavior
Personal and issuer is shown
Steps To Reproduce
defected in v1.8.0-RC5

Validation done - the endpoint does not send the users firstname, lastname, etc.
Example from INT
calling via the test operator account the following endpoint: /api/administration/user/owncompany/users/8e10dadc-ed35-4e39-88c9-1c25c4dee1f7
Response:
    "firstName": null,     "lastName": null,     "email": null
while on db level data are existing

the bug was introduced with PR #427
from code-analysis: endpoint GET /api/administration/user/ownUser is also affected.

successfully retested


Re-disable tests for #202

This reverts part of "Enable tests for #202 on macOS with Xcode 12+, add catalina workflow (#414)", since those tests have started failing again in the macOS CI action. It keeps the macOS workflow.

https://github.com/osrf/sdformat/actions?query=workflow%3A"macOS+latest"

I don't know what has changed or why, but I've re-opened #202 and am disabling the tests again here.

Codecov Report

Merging #438 (f408a90) into sdf9 (f5c8bd9) will increase coverage by 0.15%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             sdf9     #438      +/-   ##
==========================================
+ Coverage   86.26%   86.42%   +0.15%
==========================================
  Files          59       60       +1
  Lines        9188     9294     +106
==========================================
+ Hits         7926     8032     +106
  Misses       1262     1262

Impacted Files
Coverage Δ

src/Scene.cc
100.00% <100.00%> (ø)

src/Sky.cc
100.00% <100.00%> (ø)

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 9995007...f408a90. Read the comment docs.

merging without review to fix failing tests and unblock other PR's


ctrl+h to backspace

Can you add ctrl+h to backspace? I use ctrl+h to backspace on my terminal and in my terminal based editors. Thanks.

Hey! I'm planning to PR with better C-w experience, but firstly I can try to add support of C-h for you

Great suggestion! Thank you @idevtier for taking this up 😄