[FIREBASE_STORAGE] uploadTask.cancel() Unhandled Exception

Bug report
Describe the bug
Unhandled Exception when cancel() an UploadTask (on Android), even if cancel operation is in a try/catch block :
I/flutter ( 5648): uploadTask!.snapshotEvents.listen error: **e: type 'Null' is not a subtype of type 'Map<dynamic, dynamic>', stackTrace: #0      new MethodChannelTask.mapNativeStream (package:firebase_storage_platform_interface/src/method_channel/method_channel_task.dart:71:49)
I/flutter ( 5648): <asynchronous suspension>
I/flutter ( 5648): #1      _AsBroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:469:3)
I/flutter ( 5648): <asynchronous suspension>**

Dart SDK 3.3.0
Flutter SDK 3.19.0
Debug mode
Steps to reproduce
Pickup a file with FilePicker, firebaseStorageReference.putFile(), then cancel the uploadTask before it is completed
The sample code below worked in previous versions of flutter and firebase_storage (but I do not remember which ones)
Neither FirebaseException catch block, nor PlatformException catch block handle the exception raised by cancel operation
Expected behavior
Exception thrown by uploadTask.cancel() catched by try/catch block and do not interrupt code execution in the IDE
Sample project
Code below reproduces the error

Additional context
File? image;
FilePickerResult? result = await FilePicker.platform.pickFiles(type: FileType.image);

if (result != null) {
  image = File(result.files.single.path!);
}

if (image == null) return;

try {
  Reference firebaseStorageRef = FirebaseStorage.instance.ref().child('files').child('myFile.jpg');

  UploadTask uploadTask = firebaseStorageRef.putFile(image!);

  uploadTask.snapshotEvents.listen((TaskSnapshot taskSnapshot) {
    switch (taskSnapshot.state) {
      case TaskState.running:
        printLog("uploadFile uploadTask TaskState.running");
        break;
      case TaskState.paused:
        printLog("uploadFile uploadTask TaskState.paused");
        break;
      case TaskState.success:
        printLog("uploadFile uploadTask TaskState.success");
        break;
      case TaskState.canceled:
        printLog("uploadFile uploadTask TaskState.canceled");
        break;
      case TaskState.error:
        printLog("uploadFile uploadTask TaskState.error");
        break;
    }
  }, onError: (Object e, StackTrace stackTrace) {
    printLog("uploadTask!.snapshotEvents.listen error: e: $e, stackTrace: $stackTrace");
  }, cancelOnError: true);

  printLog("### uploadFile uploadTask completed");
} on FirebaseException catch (e) {
  printLog("FirebaseException error occured during file upload");

} on PlatformException catch (e) {
  printLog("PlatformException error occured during file upload");
}

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
PS C:\Temp\mon_projet_flutter_1\levelz> flutter doctor -v
[√] Flutter (Channel stable, 3.19.0, on Microsoft Windows [version 10.0.19045.4046], locale fr-FR)
    • Flutter version 3.19.0 on channel stable at C:\Temp\flutter_windows_v1.9.1+hotfix.2-stable\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision bae5e49bc2 (7 days ago), 2024-02-13 17:46:18 -0800
    • Engine revision 04817c99c9
    • Dart version 3.3.0
    • DevTools version 2.31.1

[√] Windows Version (Installed version of Windows is version 10 or higher)

[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at C:\Users\Famille\AppData\Local\Android\Sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = C:\Users\Famille\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jbr\bin\java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-b2043.56-10550314)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 2023.1)
    • Android Studio at C:\Program Files\Android\Android Studio
    • 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 17.0.7+0-b2043.56-10550314)

[√] VS Code (version 1.86.2)
    • VS Code at C:\Users\Famille\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.82.0

[√] Connected device (3 available)
    • sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 13 (API 33) (emulator)
    • Chrome (web)                 • chrome        • web-javascript • Google Chrome 121.0.6167.185
    • Edge (web)                   • edge          • web-javascript • Microsoft Edge 121.0.2277.128

[√] Network resources
    • All expected network resources are available.

• No issues found!
PS C:\Temp\mon_projet_flutter_1\levelz>

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
PS C:\Temp\mon_projet_flutter_1\levelz> flutter pub deps -- --style=compact
Dart SDK 3.3.0
Flutter SDK 3.19.0
myApp 0.20240207.2210+2<IP_ADDRESS>

dependencies:
- audio_service 0.18.12 [audio_service_platform_interface audio_service_web audio_session rxdart flutter_cache_manager clock js flutter flutter_web_plugins]
- audio_session 0.1.18 [flutter flutter_web_plugins rxdart meta]
- cached_network_image 3.3.1 [cached_network_image_platform_interface cached_network_image_web flutter flutter_cache_manager octo_image]
- cloud_firestore 4.15.5 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
- cloud_functions 4.6.5 [cloud_functions_platform_interface cloud_functions_web firebase_core firebase_core_platform_interface flutter]
- confetti 0.7.0 [flutter vector_math]
- connectivity_plus 5.0.2 [flutter flutter_web_plugins connectivity_plus_platform_interface js meta nm]
- csv 5.1.1
- cupertino_icons 1.0.6
- email_validator 2.1.17
- extended_nested_scroll_view 6.2.1 [flutter visibility_detector]
- feature_discovery 0.14.1 [flutter provider shared_preferences]
- file_picker 6.1.1 [flutter flutter_web_plugins flutter_plugin_android_lifecycle plugin_platform_interface ffi path win32]
- firebase_analytics 10.8.6 [firebase_analytics_platform_interface firebase_analytics_web firebase_core firebase_core_platform_interface flutter]
- firebase_app_check 0.2.1+14 [firebase_app_check_platform_interface firebase_app_check_web firebase_core firebase_core_platform_interface flutter]
- firebase_auth 4.17.5 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
- firebase_core 2.25.4 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_crashlytics 3.4.15 [firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface flutter stack_trace]
- firebase_dynamic_links 5.4.14 [firebase_core firebase_core_platform_interface firebase_dynamic_links_platform_interface flutter meta plugin_platform_interface]
- firebase_messaging 14.7.16 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta]
- firebase_performance 0.9.3+14 [firebase_core firebase_core_platform_interface firebase_performance_platform_interface firebase_performance_web flutter]
- firebase_remote_config 4.3.14 [firebase_core firebase_core_platform_interface firebase_remote_config_platform_interface firebase_remote_config_web flutter]
- firebase_storage 11.6.6 [firebase_core firebase_core_platform_interface firebase_storage_platform_interface firebase_storage_web flutter]
- flutter 0.0.0 [characters collection material_color_utilities meta vector_math sky_engine]
- flutter_launcher_icons 0.13.1 [args checked_yaml cli_util image json_annotation path yaml]
- flutter_linkify 6.0.0 [flutter linkify]
- flutter_localizations 0.0.0 [flutter intl characters clock collection material_color_utilities meta path vector_math]
- flutter_markdown 0.6.20 [flutter markdown meta path]
- flutter_riverpod 2.4.10 [collection flutter meta riverpod state_notifier]
- flutter_typeahead 5.0.1 [flutter flutter_keyboard_visibility pointer_interceptor]
- font_awesome_flutter 10.7.0 [flutter]
- google_mobile_ads 4.0.0 [meta flutter webview_flutter_android webview_flutter_wkwebview webview_flutter]
- google_sign_in 6.2.1 [flutter google_sign_in_android google_sign_in_ios google_sign_in_platform_interface google_sign_in_web]
- http 1.2.0 [async http_parser meta web]
- intl 0.18.1 [clock meta path]
- introduction_screen 3.1.12 [flutter collection dots_indicator flutter_keyboard_visibility]
- just_audio 0.9.36 [just_audio_platform_interface just_audio_web audio_session rxdart path path_provider async uuid crypto meta flutter]
- markdown 7.2.1 [args meta]
- package_info_plus 5.0.1 [ffi flutter flutter_web_plugins http meta path package_info_plus_platform_interface web win32]
- path 1.9.0
- path_provider 2.1.2 [flutter path_provider_android path_provider_foundation path_provider_linux path_provider_platform_interface path_provider_windows]
- permission_handler 11.3.0 [flutter meta permission_handler_android permission_handler_apple permission_handler_html permission_handler_windows permission_handler_platform_interface]
- purchases_flutter 6.21.0 [flutter freezed_annotation json_annotation]
- qr_flutter 4.1.0 [flutter qr]
- rate_my_app 2.0.0 [shared_preferences flutter_rating_bar flutter]
- riverpod_annotation 2.3.4 [meta riverpod]
- rxdart 0.27.7
- share_plus 7.2.2 [cross_file meta mime flutter flutter_web_plugins share_plus_platform_interface file url_launcher_web url_launcher_windows url_launcher_linux url_launcher_platform_interface ffi win32]
- shared_preferences 2.2.2 [flutter shared_preferences_android shared_preferences_foundation shared_preferences_linux shared_preferences_platform_interface shared_preferences_web shared_preferences_windows]
- sign_in_with_apple 5.0.0 [flutter meta sign_in_with_apple_platform_interface sign_in_with_apple_web]
- theme_provider 0.6.0 [flutter shared_preferences]
- transparent_image 2.0.1
- url_launcher 6.2.4 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows]

dev dependencies:
- build_runner 2.4.8 [analyzer args async build build_config build_daemon build_resolvers build_runner_core code_builder collection crypto dart_style frontend_server_client glob graphs http_multi_server io js logging meta mime package_config path pool pub_semver pubspec_parse shelf shelf_web_socket stack_trace stream_transform timing watcher web_socket_channel yaml]
- custom_lint 0.6.2 [analyzer analyzer_plugin args async ci cli_util collection freezed_annotation json_annotation meta package_config path pub_semver pubspec_parse rxdart uuid yaml]
- flutter_lints 3.0.1 [lints]
- flutter_test 0.0.0 [flutter test_api matcher path fake_async clock stack_trace vector_math leak_tracker_flutter_testing async boolean_selector characters collection leak_tracker leak_tracker_testing material_color_utilities meta source_span stream_channel string_scanner term_glyph vm_service]
- integration_test 0.0.0 [flutter flutter_driver flutter_test path vm_service async boolean_selector characters clock collection fake_async file leak_tracker leak_tracker_flutter_testing leak_tracker_testing matcher material_color_utilities meta source_span stack_trace stream_channel string_scanner sync_http term_glyph test_api vector_math webdriver]
- riverpod_generator 2.3.11 [analyzer build build_config collection crypto meta path riverpod_analyzer_utils riverpod_annotation source_gen]
- riverpod_lint 2.3.9 [analyzer analyzer_plugin collection custom_lint_builder meta path riverpod riverpod_analyzer_utils source_span yaml]

transitive dependencies:
- _fe_analyzer_shared 67.0.0 [meta]
- _flutterfire_internals 1.3.22 [collection firebase_core firebase_core_platform_interface flutter meta]
- analyzer 6.4.1 [_fe_analyzer_shared collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
- analyzer_plugin 0.11.3 [analyzer collection dart_style pub_semver yaml]
- archive 3.4.10 [crypto path pointycastle]
- args 2.4.2
- async 2.11.0 [collection meta]
- audio_service_platform_interface 0.1.1 [flutter plugin_platform_interface meta]
- audio_service_web 0.1.1 [audio_service_platform_interface rxdart js flutter flutter_web_plugins]
- boolean_selector 2.1.1 [source_span string_scanner]
- build 2.4.1 [analyzer async convert crypto glob logging meta package_config path]
- build_config 1.1.1 [checked_yaml json_annotation path pubspec_parse yaml]
- build_daemon 4.0.1 [built_collection built_value crypto http_multi_server logging path pool shelf shelf_web_socket stream_transform watcher web_socket_channel]
- build_resolvers 2.4.2 [analyzer async build collection convert crypto graphs logging package_config path pool pub_semver stream_transform yaml]
- build_runner_core 7.3.0 [async build build_config build_resolvers collection convert crypto glob graphs json_annotation logging meta package_config path pool timing watcher yaml]
- built_collection 5.1.1
- built_value 8.9.1 [built_collection collection fixnum meta]
- cached_network_image_platform_interface 4.0.0 [flutter flutter_cache_manager]
- cached_network_image_web 1.1.1 [cached_network_image_platform_interface flutter flutter_cache_manager]
- characters 1.3.0
- checked_yaml 2.0.3 [json_annotation source_span yaml]
- ci 0.1.0
- cli_util 0.4.1 [meta path]
- clock 1.1.1
- cloud_firestore_platform_interface 6.1.6 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- cloud_firestore_web 3.10.5 [_flutterfire_internals cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js]
- cloud_functions_platform_interface 5.5.16 [firebase_core flutter meta plugin_platform_interface]
- cloud_functions_web 4.6.16 [cloud_functions_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- code_builder 4.10.0 [built_collection built_value collection matcher meta]
- collection 1.18.0
- connectivity_plus_platform_interface 1.2.4 [flutter meta plugin_platform_interface]
- convert 3.1.1 [typed_data]
- cross_file 0.3.3+8 [meta web]
- crypto 3.0.3 [typed_data]
- custom_lint_builder 0.6.2 [analyzer analyzer_plugin collection custom_lint custom_lint_core glob hotreloader meta package_config path pubspec_parse rxdart]
- custom_lint_core 0.6.2 [analyzer analyzer_plugin collection custom_lint glob matcher meta package_config path pubspec_parse source_span yaml]
- dart_style 2.3.4 [analyzer args collection path pub_semver source_span]
- dbus 0.7.10 [args ffi meta xml]
- dots_indicator 2.1.2 [flutter]
- fake_async 1.3.1 [clock collection]
- ffi 2.1.2
- file 7.0.0 [meta path]
- firebase_analytics_platform_interface 3.9.6 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_analytics_web 0.5.5+18 [_flutterfire_internals firebase_analytics_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- firebase_app_check_platform_interface 0.1.0+16 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_app_check_web 0.1.0+16 [_flutterfire_internals firebase_app_check_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- firebase_auth_platform_interface 7.1.5 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- firebase_auth_web 5.9.5 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser js meta web]
- firebase_core_platform_interface 5.0.0 [collection flutter flutter_test meta plugin_platform_interface]
- firebase_core_web 2.11.4 [firebase_core_platform_interface flutter flutter_web_plugins js meta web]
- firebase_crashlytics_platform_interface 3.6.22 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- firebase_dynamic_links_platform_interface 0.2.6+22 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_messaging_platform_interface 4.5.24 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_messaging_web 3.6.5 [_flutterfire_internals firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta web]
- firebase_performance_platform_interface 0.1.4+22 [_flutterfire_internals firebase_core flutter plugin_platform_interface]
- firebase_performance_web 0.1.4+22 [_flutterfire_internals firebase_core firebase_core_web firebase_performance_platform_interface flutter flutter_web_plugins js]
- firebase_remote_config_platform_interface 1.4.22 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_remote_config_web 1.4.22 [firebase_core firebase_core_web firebase_remote_config_platform_interface flutter flutter_web_plugins js]
- firebase_storage_platform_interface 5.1.9 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- firebase_storage_web 3.7.0 [_flutterfire_internals async firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta web]
- fixnum 1.1.0
- flutter_cache_manager 3.3.1 [clock collection file flutter http path path_provider rxdart sqflite uuid]
- flutter_driver 0.0.0 [file flutter flutter_test fuchsia_remote_debug_protocol path meta vm_service webdriver async boolean_selector characters clock collection leak_tracker leak_tracker_flutter_testing leak_tracker_testing matcher material_color_utilities platform process source_span stack_trace stream_channel string_scanner sync_http term_glyph test_api vector_math]
- flutter_keyboard_visibility 5.4.3 [meta flutter_keyboard_visibility_platform_interface flutter_keyboard_visibility_linux flutter_keyboard_visibility_macos flutter_keyboard_visibility_web flutter_keyboard_visibility_windows flutter]
- flutter_keyboard_visibility_linux 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_keyboard_visibility_macos 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_keyboard_visibility_platform_interface 2.0.0 [flutter meta plugin_platform_interface]
- flutter_keyboard_visibility_web 2.0.0 [flutter_keyboard_visibility_platform_interface flutter_web_plugins flutter]
- flutter_keyboard_visibility_windows 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_plugin_android_lifecycle 2.0.17 [flutter]
- flutter_rating_bar 4.0.1 [flutter]
- flutter_web_plugins 0.0.0 [flutter characters collection material_color_utilities meta vector_math]
- freezed_annotation 2.4.1 [collection json_annotation meta]
- frontend_server_client 3.2.0 [async path]
- fuchsia_remote_debug_protocol 0.0.0 [process vm_service file meta path platform]
- glob 2.1.2 [async collection file path string_scanner]
- google_identity_services_web 0.3.0+2 [meta web]
- google_sign_in_android 6.1.21 [flutter google_sign_in_platform_interface]
- google_sign_in_ios 5.7.4 [flutter google_sign_in_platform_interface]
- google_sign_in_platform_interface 2.4.5 [flutter plugin_platform_interface]
- google_sign_in_web 0.12.3+2 [flutter flutter_web_plugins google_identity_services_web google_sign_in_platform_interface http web]
- graphs 2.3.1 [collection]
- hotreloader 4.2.0 [collection logging path stream_transform vm_service watcher]
- http_multi_server 3.2.1 [async]
- http_parser 4.0.2 [collection source_span string_scanner typed_data]
- image 4.1.7 [archive meta xml]
- io 1.0.4 [meta path string_scanner]
- js 0.6.7 [meta]
- json_annotation 4.8.1 [meta]
- just_audio_platform_interface 4.2.2 [flutter plugin_platform_interface]
- just_audio_web 0.4.9 [just_audio_platform_interface flutter flutter_web_plugins]
- leak_tracker 10.0.0 [clock collection meta path vm_service]
- leak_tracker_flutter_testing 2.0.1 [flutter leak_tracker leak_tracker_testing matcher meta]
- leak_tracker_testing 2.0.1 [leak_tracker matcher meta]
- linkify 5.0.0
- lints 3.0.0
- logging 1.2.0
- matcher 0.12.16+1 [async meta stack_trace term_glyph test_api]
- material_color_utilities 0.8.0 [collection]
- meta 1.11.0
- mime 1.0.5
- nested 1.0.0 [flutter]
- nm 0.5.0 [dbus]
- octo_image 2.0.0 [flutter]
- package_config 2.1.0 [path]
- package_info_plus_platform_interface 2.0.1 [flutter meta plugin_platform_interface]
- path_provider_android 2.2.2 [flutter path_provider_platform_interface]
- path_provider_foundation 2.3.2 [flutter path_provider_platform_interface]
- path_provider_linux 2.2.1 [ffi flutter path path_provider_platform_interface xdg_directories]
- path_provider_platform_interface 2.1.2 [flutter platform plugin_platform_interface]
- path_provider_windows 2.2.1 [ffi flutter path path_provider_platform_interface win32]
- permission_handler_android 12.0.5 [flutter permission_handler_platform_interface]
- permission_handler_apple 9.4.0 [flutter permission_handler_platform_interface]
- permission_handler_html 0.1.1 [flutter flutter_web_plugins permission_handler_platform_interface]
- permission_handler_platform_interface 4.2.0 [flutter meta plugin_platform_interface]
- permission_handler_windows 0.2.1 [flutter permission_handler_platform_interface]
- petitparser 6.0.2 [meta]
- platform 3.1.4
- plugin_platform_interface 2.1.8 [meta]
- pointer_interceptor 0.9.3+7 [flutter]
- pointycastle 3.7.4 [collection convert js]
- pool 1.5.1 [async stack_trace]
- process 5.0.2 [file path platform]
- provider 6.1.1 [collection flutter nested]
- pub_semver 2.1.4 [collection meta]
- pubspec_parse 1.2.3 [checked_yaml collection json_annotation pub_semver yaml]
- qr 3.0.1 [meta]
- riverpod 2.5.0 [meta stack_trace state_notifier]
- riverpod_analyzer_utils 0.5.1 [analyzer collection crypto custom_lint_core freezed_annotation meta path source_span]
- share_plus_platform_interface 3.3.1 [cross_file flutter meta mime plugin_platform_interface path_provider uuid]
- shared_preferences_android 2.2.1 [flutter shared_preferences_platform_interface]
- shared_preferences_foundation 2.3.5 [flutter shared_preferences_platform_interface]
- shared_preferences_linux 2.3.2 [file flutter path path_provider_linux path_provider_platform_interface shared_preferences_platform_interface]
- shared_preferences_platform_interface 2.3.2 [flutter plugin_platform_interface]
- shared_preferences_web 2.2.2 [flutter flutter_web_plugins shared_preferences_platform_interface web]
- shared_preferences_windows 2.3.2 [file flutter path path_provider_platform_interface path_provider_windows shared_preferences_platform_interface]
- shelf 1.4.1 [async collection http_parser path stack_trace stream_channel]
- shelf_web_socket 1.0.4 [shelf stream_channel web_socket_channel]
- sign_in_with_apple_platform_interface 1.0.0 [flutter plugin_platform_interface meta]
- sign_in_with_apple_web 1.0.1 [flutter flutter_web_plugins sign_in_with_apple_platform_interface js]
- sky_engine 0.0.99
- source_gen 1.5.0 [analyzer async build dart_style glob path source_span yaml]
- source_span 1.10.0 [collection path term_glyph]
- sprintf 7.0.0
- sqflite 2.3.2 [flutter sqflite_common path]
- sqflite_common 2.5.3 [synchronized path meta]
- stack_trace 1.11.1 [path]
- state_notifier 1.0.0 [meta]
- stream_channel 2.1.2 [async]
- stream_transform 2.1.0
- string_scanner 1.2.0 [source_span]
- sync_http 0.3.1
- synchronized 3.1.0+1
- term_glyph 1.2.1
- test_api 0.6.1 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph]
- timing 1.0.1 [json_annotation]
- typed_data 1.3.2 [collection]
- url_launcher_android 6.3.0 [flutter url_launcher_platform_interface]
- url_launcher_ios 6.2.4 [flutter url_launcher_platform_interface]
- url_launcher_linux 3.1.1 [flutter url_launcher_platform_interface]
- url_launcher_macos 3.1.0 [flutter url_launcher_platform_interface]
- url_launcher_platform_interface 2.3.2 [flutter plugin_platform_interface]
- url_launcher_web 2.2.3 [flutter flutter_web_plugins url_launcher_platform_interface web]
- url_launcher_windows 3.1.1 [flutter url_launcher_platform_interface]
- uuid 4.3.3 [crypto sprintf meta fixnum]
- vector_math 2.1.4
- visibility_detector 0.4.0+2 [flutter]
- vm_service 13.0.0
- watcher 1.1.0 [async path]
- web 0.4.2
- web_socket_channel 2.4.3 [async crypto stream_channel web]
- webdriver 3.0.3 [matcher path stack_trace sync_http]
- webview_flutter 4.7.0 [flutter webview_flutter_android webview_flutter_platform_interface webview_flutter_wkwebview]
- webview_flutter_android 3.15.0 [flutter webview_flutter_platform_interface]
- webview_flutter_platform_interface 2.10.0 [flutter meta plugin_platform_interface]
- webview_flutter_wkwebview 3.12.0 [flutter path webview_flutter_platform_interface]
- win32 5.2.0 [ffi]
- xdg_directories 1.0.4 [meta path]
- xml 6.5.0 [collection meta petitparser]
- yaml 3.1.2 [collection source_span string_scanner]
PS C:\Temp\mon_projet_flutter_1\levelz>

also tested with the firebase_storage example. same behaviour
Maybe this issue is linked with https://github.com/firebase/flutterfire/pull/12322 ?

@pureimpro
Can you provide us complete runnable code sample that we can directly copy paste and run to verify ?
Also, please try the plugin example and check if using it, you still get the same error or not.

hi @darshankawar. I've tested with plugin example, same issue. I added print stacktrace to the plugin example, otherwise, only the error is displayed.
This displays the same error that in my app when the task is running and you click on the cancel button :
[+1928 ms] D/UploadTask( 6611): Increasing chunk size to 16777216
[   +3 ms] E/StorageException( 6611): StorageException has occurred.
[        ] E/StorageException( 6611): The operation was cancelled.
[        ] E/StorageException( 6611):  Code: -13040 HttpResult: 0
[+19114 ms] I/flutter ( 6611): error: type 'Null' is not a subtype of type 'Map<dynamic, dynamic>'
[+3390 ms] I/flutter ( 6611): stacktrace : #0      new MethodChannelTask.mapNativeStream (package:firebase_storage_platform_interface/src/method_channel/method_channel_task.dart:71:49)
[        ] I/flutter ( 6611): <asynchronous suspension>
[        ] I/flutter ( 6611): #1      _AsBroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:469:3)
[        ] I/flutter ( 6611): <asynchronous suspension>

This is the full code :
Click To Expand
// Copyright 2022, the Chromium project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'dart:async';
import 'dart:io' as io;
import 'dart:io';

import 'package:bombtrack/services/utils.dart';
import 'package:file_picker/file_picker.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_storage/firebase_storage.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:share_plus/share_plus.dart';

import 'firebase_options_alpha.dart';

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp(
    options: DefaultFirebaseOptions.currentPlatform,
  );

  // if (defaultTargetPlatform != TargetPlatform.windows) {
  //   // window currently don't support storage emulator
  //   final emulatorHost =
  //       (!kIsWeb && defaultTargetPlatform == TargetPlatform.android)
  //           ? '<IP_ADDRESS>'
  //           : 'localhost';

  //   await FirebaseStorage.instance.useStorageEmulator(emulatorHost, 9199);
  // }

  runApp(StorageExampleApp());
}

/// Enum representing the upload task types the example app supports.
enum UploadType {
  /// Uploads a randomly generated string (as a file) to Storage.
  string,

  /// Uploads a file from the device.
  file,

  /// Clears any tasks from the list.
  clear,
}

/// The entry point of the application.
///
/// Returns a [MaterialApp].
class StorageExampleApp extends StatelessWidget {
  StorageExampleApp({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Storage Example App',
      theme: ThemeData.dark(),
      // Disable the banner to make the "+" button more visible.
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: TaskManager(),
      ),
    );
  }
}

/// A StatefulWidget which keeps track of the current uploaded files.
class TaskManager extends StatefulWidget {
  // ignore: public_member_api_docs
  TaskManager({Key? key}) : super(key: key);

  @override
  State<StatefulWidget> createState() {
    return _TaskManager();
  }
}

class _TaskManager extends State<TaskManager> {
  List<UploadTask> _uploadTasks = [];

  /// The user selects a file, and the task is added to the list.
  Future<UploadTask?> uploadFile(File? file) async {
    if (file == null) {
      ScaffoldMessenger.of(context).showSnackBar(
        const SnackBar(
          content: Text('No file was selected'),
        ),
      );

      return null;
    }

    UploadTask uploadTask;

    // Create a Reference to the file
    Reference ref = FirebaseStorage.instance
        .ref()
        .child('test_files')
        .child('some-image.jpg');

    final metadata = SettableMetadata(
      // contentType: 'image/jpeg',
      customMetadata: {'picked-file-path': file.path},
    );

    if (kIsWeb) {
      uploadTask = ref.putData(await file.readAsBytes(), metadata);
    } else {
      uploadTask = ref.putFile(io.File(file.path), metadata);
    }

    return Future.value(uploadTask);
  }

  /// A new string is uploaded to storage.
  UploadTask uploadString() {
    const String putStringText =
        'This upload has been generated using the putString method! Check the metadata too!';

    // Create a Reference to the file
    Reference ref = FirebaseStorage.instance
        .ref()
        .child('flutter-tests')
        .child('/put-string-example.txt');

    // Start upload of putString
    return ref.putString(
      putStringText,
      metadata: SettableMetadata(
        contentLanguage: 'en',
        customMetadata: <String, String>{'example': 'putString'},
      ),
    );
  }

  /// Handles the user pressing the PopupMenuItem item.
  Future<void> handleUploadType(UploadType type) async {
    switch (type) {
      case UploadType.string:
        setState(() {
          _uploadTasks = [..._uploadTasks, uploadString()];
        });
        break;
      case UploadType.file:
        // final file = await ImagePicker().pickImage(source: ImageSource.gallery);
        List<File?> image = await Utils.getImageFile(fileType: FileType.any);
        UploadTask? task = await uploadFile(image[0]);

        if (task != null) {
          setState(() {
            _uploadTasks = [..._uploadTasks, task];
          });
        }
        break;
      case UploadType.clear:
        setState(() {
          _uploadTasks = [];
        });
        break;
    }
  }

  void _removeTaskAtIndex(int index) {
    setState(() {
      _uploadTasks = _uploadTasks..removeAt(index);
    });
  }

  Future<void> _downloadBytes(Reference ref) async {
    final bytes = await ref.getData();
    // Download...
    // await saveAsBytes(bytes!, 'some-image.jpg');
  }

  Future<void> _downloadLink(Reference ref) async {
    final link = await ref.getDownloadURL();

    await Clipboard.setData(
      ClipboardData(
        text: link,
      ),
    );

    ScaffoldMessenger.of(context).showSnackBar(
      const SnackBar(
        content: Text(
          'Success!\n Copied download URL to Clipboard!',
        ),
      ),
    );
  }

  Future<void> _downloadFile(Reference ref) async {
    final io.Directory systemTempDir = io.Directory.systemTemp;
    final io.File tempFile = io.File('${systemTempDir.path}/temp-${ref.name}');
    if (tempFile.existsSync()) await tempFile.delete();

    await ref.writeToFile(tempFile);

    ScaffoldMessenger.of(context).showSnackBar(
      SnackBar(
        content: Text(
          'Success!\n Downloaded ${ref.name} \n from bucket: ${ref.bucket}\n '
          'at path: ${ref.fullPath} \n'
          'Wrote "${ref.fullPath}" to tmp-${ref.name}',
        ),
      ),
    );
  }

  Future<void> _delete(Reference ref) async {
    await ref.delete();

    ScaffoldMessenger.of(context).showSnackBar(
      SnackBar(
        content: Text(
            'Success!\n deleted ${ref.name} \n from bucket: ${ref.bucket}\n '
            'at path: ${ref.fullPath} \n'),
      ),
    );
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Storage Example App'),
        actions: [
          PopupMenuButton<UploadType>(
            onSelected: handleUploadType,
            icon: const Icon(Icons.add),
            itemBuilder: (context) => [
              const PopupMenuItem(
                // ignore: sort_child_properties_last
                child: Text('Upload string'),
                value: UploadType.string,
              ),
              const PopupMenuItem(
                // ignore: sort_child_properties_last
                child: Text('Upload local file'),
                value: UploadType.file,
              ),
              if (_uploadTasks.isNotEmpty)
                const PopupMenuItem(
                  // ignore: sort_child_properties_last
                  child: Text('Clear list'),
                  value: UploadType.clear,
                ),
            ],
          ),
        ],
      ),
      body: _uploadTasks.isEmpty
          ? const Center(child: Text("Press the '+' button to add a new file."))
          : ListView.builder(
              itemCount: _uploadTasks.length,
              itemBuilder: (context, index) => UploadTaskListTile(
                task: _uploadTasks[index],
                onDismissed: () => _removeTaskAtIndex(index),
                onDownloadLink: () async {
                  return _downloadLink(_uploadTasks[index].snapshot.ref);
                },
                onDownload: () async {
                  if (kIsWeb) {
                    return _downloadBytes(_uploadTasks[index].snapshot.ref);
                  } else {
                    return _downloadFile(_uploadTasks[index].snapshot.ref);
                  }
                },
                onDelete: () async {
                  return _delete(_uploadTasks[index].snapshot.ref);
                },
              ),
            ),
    );
  }
}

/// Displays the current state of a single UploadTask.
class UploadTaskListTile extends StatelessWidget {
  // ignore: public_member_api_docs
  const UploadTaskListTile({
    Key? key,
    required this.task,
    required this.onDismissed,
    required this.onDownload,
    required this.onDownloadLink,
    required this.onDelete,
  }) : super(key: key);

  /// The [UploadTask].
  final UploadTask /*!*/ task;

  /// Triggered when the user dismisses the task from the list.
  final VoidCallback /*!*/ onDismissed;

  /// Triggered when the user presses the download button on a completed upload task.
  final VoidCallback /*!*/ onDownload;

  /// Triggered when the user presses the "link" button on a completed upload task.
  final VoidCallback /*!*/ onDownloadLink;

  /// Triggered when the user presses the "delete" button on a completed upload task.
  final VoidCallback /*!*/ onDelete;

  /// Displays the current transferred bytes of the task.
  String _bytesTransferred(TaskSnapshot snapshot) {
    return '${snapshot.bytesTransferred}/${snapshot.totalBytes}';
  }

  @override
  Widget build(BuildContext context) {
    return StreamBuilder<TaskSnapshot>(
      stream: task.snapshotEvents,
      builder: (
        BuildContext context,
        AsyncSnapshot<TaskSnapshot> asyncSnapshot,
      ) {
        Widget subtitle = const Text('---');
        TaskSnapshot? snapshot = asyncSnapshot.data;
        TaskState? state = snapshot?.state;

        if (asyncSnapshot.hasError) {
          if (asyncSnapshot.error is FirebaseException &&
              // ignore: cast_nullable_to_non_nullable
              (asyncSnapshot.error as FirebaseException).code == 'canceled') {
            subtitle = const Text('Upload canceled.');
          } else {
            // ignore: avoid_print
            print("error: ${asyncSnapshot.error}");
            print("stacktrace : ${asyncSnapshot.stackTrace}");
            subtitle = const Text('Something went wrong.');
          }
        } else if (snapshot != null) {
          subtitle = Text('$state: ${_bytesTransferred(snapshot)} bytes sent');
        }

        return Dismissible(
          key: Key(task.hashCode.toString()),
          onDismissed: ($) => onDismissed(),
          child: ListTile(
            title: Text('Upload Task #${task.hashCode}'),
            subtitle: subtitle,
            trailing: Row(
              mainAxisSize: MainAxisSize.min,
              children: <Widget>[
                if (state == TaskState.running)
                  IconButton(
                    icon: const Icon(Icons.pause),
                    onPressed: task.pause,
                  ),
                if (state == TaskState.running)
                  IconButton(
                    icon: const Icon(Icons.cancel),
                    onPressed: task.cancel,
                    // onPressed: () async {
                    //   try {
                    //     await task.cancel();
                    //   } catch (e) {
                    //     debugPrint("CATCHED e: $e");
                    //   }
                    // },
                  ),
                if (state == TaskState.paused)
                  IconButton(
                    icon: const Icon(Icons.file_upload),
                    onPressed: task.resume,
                  ),
                if (state == TaskState.success)
                  IconButton(
                    icon: const Icon(Icons.file_download),
                    onPressed: onDownload,
                  ),
                if (state == TaskState.success)
                  IconButton(
                    icon: const Icon(Icons.link),
                    onPressed: onDownloadLink,
                  ),
                if (state == TaskState.success)
                  IconButton(
                    icon: const Icon(Icons.delete),
                    onPressed: onDelete,
                  ),
              ],
            ),
          ),
        );
      },
    );
  }
}

In the StreamBuilder Widget, when cancel button is clicked in the UI :
        if (asyncSnapshot.hasError) {               <<< is TRUE because cancelling an uploadTask throws an exception
          if (asyncSnapshot.error is FirebaseException &&
              // ignore: cast_nullable_to_non_nullable
              (asyncSnapshot.error as FirebaseException).code == 'canceled') {    <<< is FALSE because it is not a FirebaseException
            subtitle = const Text('Upload canceled.');
          } else {                              <<< fallback to the else statement with an uncaught platform error (IDE stops in debug mode)
            // ignore: avoid_print
            print("error: ${asyncSnapshot.error}");
            print("stacktrace : ${asyncSnapshot.stackTrace}");
            subtitle = const Text('Something went wrong.');
          }
        }

Thank you @darshankawar for your feeback. I will also try on iOS emulator.
Do you think this issue may be related to https://github.com/firebase/flutterfire/pull/12322 ?

I've just tried this many times in the example app and didn't experience the exception you are seeing. Here are some successful cancels:

as you can see, it correctly states "upload cancelled" which means a FirebaseException was propagated here: https://github.com/firebase/flutterfire/blob/master/packages/firebase_storage/firebase_storage/example/lib/main.dart#L327-L328
I am running on a macOS 14.0, Flutter 3.19.0, android 10.

I just realised this PR: https://github.com/firebase/flutterfire/pull/12322 hasn't been released yet and is probably why it works for me. It fixes the cancel() method.

Thank you @russellwheatley, PR12322 is what i suggested to be related with.
If this PR fixes this issue, do you know when it will be released in a new version of firebase_storage package ?

@pureimpro - it has been released about an hour ago 👍

issue fixed !
thank you @russellwheatley @darshankawar 👍


Observed periodic "Cannot set header" warnings in Open Liberty

There are a couple sources of it, but the stack traces all look similar to:
[WARNING ] SRVE8094W: WARNING: Cannot set header. Response already committed.  Stack trace of errant attempt to set header:
        at com.ibm.ws.webcontainer.srt.SRTServletResponse.setHeader(SRTServletResponse.java:1759)
        at [internal classes].(Unknown Source)
        at com.darwino.j2ee.servlet.server.servlet.ServiceDispatcherFilter.doFilter(ServiceDispatcherFilter.java:179)
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
        at [internal classes].(Unknown Source)
        at com.darwino.j2ee.servlet.resources.GlobalPathRewriterFilter.doFilter(GlobalPathRewriterFilter.java:91)
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
        at [internal classes].(Unknown Source)
        at com.darwino.j2ee.application.DarwinoJ2EEFilter.doFilter(DarwinoJ2EEFilter.java:221)
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
        at [internal classes].(Unknown Source)
        at com.darwino.j2ee.servlet.authentication.AuthenticationFilter.chainFilter(AuthenticationFilter.java:219)
        at com.darwino.j2ee.servlet.authentication.AuthenticationFilter.doFilter(AuthenticationFilter.java:211)
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
        at [internal classes].(Unknown Source)

It's just a warning, and there's no apparent user-side trouble, but it'd be nice to track down what's doing it.

Failing that, it'd be useful to find out if there's a way to suppress the warning by code for Liberty, and include that in the README.


Migrate metadata decoder from components-contrib to kit

Required creating the utils package for utils.IsTruthy too (ported from runtime)
No code changes (aside from what the linter required)

We're currently processing your upload.  This comment will be updated when the results are available.

I suggest adding as co-authors all folks who contributed the original code that is being migrated here next time. All authors should get credit for code.


Remove API that was deprecated during the 5.9 release

Bug/issue #, if applicable:
Summary
Now that version 5.10 is released, API that's been deprecated during the 5.9 release can be removed according to the process described in the "Introducing source breaking changes" section of CONTRIBUTING.md.
The plan is to not cherry-pick this into the 6.0 release branch, so in practice we kept this API around for longer than what the deprecation message communicated.
This also updates the deprecation message for API that said that it would be removed after "5.11" is release to instead say that it will be removed after "6.0" is released now that we know that there is no 5.11 version (6.0 is the version after 5.10).
Some API was incorrectly annotated to say that it will be removed after 5.12 is released. This API was deprecated during the 5.10 release, meaning that our guideline would be to remove it after 6.0 (what was known as 5.11) is released. These have also been updated to "6.0".
Dependencies
None.
Testing
Nothing in particular. DocC itself wasn't using this API anymore.
Checklist
Make sure you check off the following items. If they cannot be completed, provide a reason.

~[ ] Added tests~
[ ] Ran the ./bin/test script and it succeeded
~[ ] Updated documentation if necessary~

@swift-ci please test


Logging docs are wrong

As of latest version you need to include Celluloid::Internals::Logger and not Celluloid::Logger. This should be changed in https://github.com/celluloid/celluloid/wiki/Logging.

Thank you for catching that. Fixed //


Allow overriding binds in SignallingSession

This allows for a flask-sqlalchemy connection to be configured with custom list of binds (or an empty list).

I believe issue was resolved by https://github.com/mitsuhiko/flask-sqlalchemy/commit/ac135c674fb2d4ae49395e15283be155e826b3ea

You are correct, I closed this issue.


istiodRemote should not be an installation component

(NOTE: This is used to report product bugs:
To report a security vulnerability, please visit https://istio.io/about/security-vulnerabilities
To ask questions about how to use Istio, please visit https://discuss.istio.io)
Bug description
The istiodRemote install component doesn't really make much sense. It's not installing a different component, but rather a subset of the pilot component's charts, with a few minor tweaks.
Looking at istiod-remote files and templates, they are an exact copy of a subset (all files and 10/17 templates) of the same charts in istio-control/istio-discovery. The only differences are:
templates/clusterrole.yaml (very small diff)
templates/clusterrolebinding.yaml (very small diff)
templates/role.yaml (very small diff)
templates/rolebinding.yaml (very small diff)
values.yaml (telemetry: enabled: false)
Chart.yaml (different keywords)

It would seem to make more sense get rid of all the duplication. We should delete the istiod-remote charts completely and add a few more guards in the istio-control/istio-discovery charts.
Users could then install Install in a remote cluster like this:
  components:
    pilot:
      enabled: true
  values:
    global:
      externalIstiod: true

Instead of the currently more confusing way:
  components:
    pilot:
      enabled: false
    istiodRemote:
      enabled: true

[ ] Docs
[x] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
[ ] Upgrade
Expected behavior
Steps to reproduce the bug
Version (include the output of istioctl version --remote and kubectl version --short and helm version --short if you used Helm)
How was Istio installed?
Environment where the bug was observed (cloud vendor, OS, etc)
Additionally, please consider running istioctl bug-report and attach the generated cluster-state tarball to this issue.
Refer cluster state archive for more details.

I wonder if a further cleanup could be to separate the pilot component into two components: pilot and pilotClient?

I wonder if a further cleanup could be to separate the pilot component into two components: pilot and pilotClient?

A bit confused what the difference between this and istiodRemote is (other than the name)?
@linsun and @irisdingbj may have some more opinions here, I think they were the ones leading the split

A bit confused what the difference between this and istiodRemote is (other than the name)?

Two differences, the way I'm imagining it:

No duplicate copies of charts. The charts that are duplicated in istiodRemote today, would also be deleted from istio-control/istio-discovery (pilot component) and only apprear in the new (better) named component pilotClient.
The pilotClient charts would be used for both local and remote istiod. The charts in this component that are not exactly the same in istiod-remote as in istio-control/istio-discovery today, will be merged versions of the two, with remote version triggered by values.global.istiodRemote=true.

To clarify, this issue is suggesting that we do the first part (i.e., get rid of the istiod-remote charts, in favour of slightly more customizable ones in istio-control/istio-discovery) only. We can then (maybe) consider splitting out the pilotClient charts in the future.

Okay with merging it back to istio-discovery.  When we first introduced istiodRemote, we got folks against us adding more configs and extra logic to istio-discovery and so we started with istiodRemote. Now that istiodRemote is a lot more stable and mostly same as istio-discovery, seems make sense to merge it back to istio-discovery.


Infinite Loading banner

Sometimes when report is opened there is only Loading banner spinning forever.
JavaScript console shows following:
TypeError: document.body is null[Learn More]  allure:71:21
	requests< https://********************************************************/allure/:71:21
	map self-hosted
	<anonymous> https://********************************************************/allure/:68:32
	.Deferred/d.then/</</< https://********************************************************/allure/webjars/jquery/2.1.1/jquery.min.js:2:28227
	n.Callbacks/j https://********************************************************/allure/webjars/jquery/2.1.1/jquery.min.js:2:26855
	n.Callbacks/k.fireWith https://********************************************************/allure/webjars/jquery/2.1.1/jquery.min.js:2:27673
	x https://********************************************************/allure/webjars/jquery/2.1.1/jquery.min.js:4:11118
	.send/b/< https://********************************************************/allure/webjars/jquery/2.1.1/jquery.min.js:4:14767
Use of getPreventDefault() is deprecated.  Use defaultPrevented instead.

Refresh fixes it.
Allure Version: 1.4.23
Platform: Ubuntu and Windows 7
Browser: FireFox 47.0.2 and 50.0.2

Summon @just-boris

This stack trace is from 1.4.x (angular-based) version.
I believe, that it will not happen with new UI.

@just-boris any idea why this may happen? Guys are from Yandex.

Related StackOverflow question: Why is document.body null in my javascript.
In our case, Angular takes all responsibility to wait until the document is loaded. I have no any passion to dig deeper into this, as we have already rewritten everything


question about #anchor

What are "anchors"? I see that I can enable and disable showing this from the eyeball menu. When enabled I see lots of lines containing "#anchor" on the left side. They don't seem related to HTML  tags. What do they represent? Maybe add this to the README.

Svelte uses special comment nodes to position and maintain the order of some elements. It's mostly an internal thing (hence why the visibility is disable by default) and there's not much of a reason you would need to know about them.


#298 Display scalar or categorical on market page

closes #298

Can we adopt ScalarPriceRange component to show the scalar range on market page? There is a comment on the accompanied issue:
There is no way to tell what the scalar range for a market is which is quite important for advisory committee. For example: If we were to approve the market seen above, we would have no way of checking if the top of the range is actually higher than the current number of Youtube subscribers.

I think part of this has already been addressed previously since the scalar range bar is shown on scalar markets below the table section.

I think part of this has already been addressed previously since the scalar range bar is shown on scalar markets below the table section. Example. Just takes a little bit of time to load so I will add a skeleton to it.

It is not showing for proposed markets and issue #298 is about importance of showing scalar range for proposed markets. it can be queried like this
query MyQuery {
  markets(where: {marketId_eq: 593}) {
    marketType {
      scalar
    }
  }
}


Not able to get draft_order privileges when scope is write_draft_orders, read_draft_orders

I've included this in my shopify_app.rb
 config.scope = "read_orders, read_products, write_products, read_content, write_content, read_themes, write_themes, write_draft_orders, read_draft_orders"
And installed the app in a test store, but when I go thru the Oauth process I'm not seeing any "draft order" info. Please see the attached screenshot.
And then when I try and create a draft order I get a ActiveResource::ForbiddenAccess error.
As a test I found a product with ShopifyAPI::Product.find(10083980039) and it worked fine. No issue.
Is something wrong?

@Trimakas hello! Can you remember how you fix it? Through private app?

@Trimakas Can you tell us how you fixed it?
I'm getting the same error.


Change plugin versions to 1.0.0

Signed-off-by: Joshua Li<EMAIL_ADDRESS>Description

change plugin version to 1.0.0

Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[x] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

LGTM- are the build failures expected?

they are related to an upstream issue with OpenSearch Dashboards, i can build locally


onnx model fails to open in web version

https://drive.google.com/file/d/1x6owrQOCicgiRkd7dAcV-QP_O2yK_j1s/view?usp=sharing
it is a simple onnx model containing only a transpose node, whichl can be open in netron 4.2.7 installed from pypi, but cannot be open in https://lutzroeder.github.io/netron/

How are you trying to open it, in which browser, which OS and what is not working?

@lutzroeder it is on ubuntu 16.04, chrome 81. the error message is "Error loading model: Unknown node operator 'undefined' in 'ONNX v6'"
But the problem has disappeared after I refreshed the webpage just now, should I close this issue? ( I also refreshed several times before posting the issue but not work)


ProxylessNAS example accuracy and loss not updated + strategy.Proxyless()  support

Describe the issue:
I'm running running ProxylessNAS example. The accuracy and loss haven't been updated after 112 epochs.

What is the expected behavior?
I found out that in 2.8 version strategy.Proxyless() was added in place of deprecated ProxylessTrainer(). Is there a plan to create a similar ProxylessNAS example? Or, how I can modify it for strategy.Proxyless()?
Environment:

NNI version: 2.8
Training service (local|remote|pai|aml|etc): local
Client OS: Linux
Server OS (for remote mode only):
Python version: 3.6
PyTorch/TensorFlow version: 1.7
Is conda/virtualenv/venv used?: yes
Is running in Docker?: no

Configuration:

Experiment config (remember to remove secrets!):
Search space:

Log message:

nnimanager.log:
dispatcher.log:
nnictl stdout and stderr:

How to reproduce it?:

What is your search space? If it only contains LayerChoice and InputChoice, you can directly use the latest strategy.Proxyless().
Please note that the ProxylessNAS before v2.8 is known to be buggy. We rewrite the Proxyless in v2.9. You can checkout the master branch if you want to have a try.

I'm trying to perform exactly https://github.com/microsoft/nni/tree/master/examples/nas/oneshot/proxylessnas example. Using the same search space on mobilenet-like model and imagenet dataset. Is it possible to do the same exercise on the strategy.Proxyless()? If so, what changes should be done in the proxylessnas example?

How is the stability and robustness of strategy.Proxyless()? Has it been tested against some reference?

I'm trying to perform exactly https://github.com/microsoft/nni/tree/master/examples/nas/oneshot/proxylessnas example. Using the same search space on mobilenet-like model and imagenet dataset. Is it possible to do the same exercise on the strategy.Proxyless()? If so, what changes should be done in the proxylessnas example?

I think you might want to try strategy.Proxyless() on nni.retiarii.hub.pytorch.ProxylessNAS() space. But I think it won't work because: (1) Repeat is not supported by Proxyless strategy; (2) Latency loss is not supported. I have to admit this is kind of regression as of v2.8, but as I said in #5056, we have a plan for systematic support coming soon. Plus, the original version is known to be troublesome for a long time. Honestly I didn't anticipate many active users...

How is the stability and robustness of strategy.Proxyless()? Has it been tested against some reference?

I think I've tested ProxylessNAS on NAS-Bench-201 in #5052. It works fine in initial iterations, but I forgot to collect the final results (busy around other things recently). Though NB-201 is a toy search space, but believe it or not, the original ProxylessTrainer doesn't work on NB-201 at all. :(
If you are interested in, for example, supporting Repeat API for Proxyless strategy, contributions are always welcomed.


SUBMARINE-401. [SDK] Add Factorization Machines model

What is this PR for?
Add TensorFlow implementation of Factorization Machines model
What type of PR is it?
[Feature]
Todos

[ ] - Task

What is the Jira issue?
https://issues.apache.org/jira/browse/SUBMARINE-401
How should this be tested?
https://travis-ci.org/pingsutw/hadoop-submarine/builds/659560320
Screenshots (if appropriate)
Questions:

Does the licenses files need update? No
Is there breaking changes for older versions? No
Does this needs documentation? No

Will merge if no more comments.


allow removing photos

The application should allow removing added photos (and remove the actual file)

fixed by 21794e34728ab4160df53a667adff8830f1966f8


kit.svelte.dev is not GDPR compliant

Describe the bug
kit.svelte.dev is not complying to the General Data Protection Regulation (GDPR), and if someone in Europe files a complaint, the Svelte team will have to deal with fines "up to $11.03 million or two percent of the company's annual revenue, whichever is greater."
Reproduction

Go to https://kit.svelte.dev
Scroll down to "deploy anywhere."
Depending on your location, you will see your exact location on the globe; that part of the website violates GDPR Article 7 because the server uses geolocation data without the user's consent.
https://github.com/sveltejs/kit/blob/3f7af7ac72e390ffa1f59d780a41e5cf71dff852/sites/kit.svelte.dev/src/routes/edge.svg/%2Bserver.js#L123-L126

Here is the result on my screen:

Logs
N/A

System Info
N/A

Severity
annoyance
Additional Information
(the above dropdown was left as is due to it being inapplicable to this type of issue)
I am sorry to be the bad cop here, especially after SvelteKit reaching v1. However, although I am not residing in Europe, it was necessary for me to report the issue, so the Svelte team, and possibly Vercel, could re-assess its best practices regarding user privacy. About a few months ago, I ran into an issue on Angular's issue tracker about GDPR noncompliance, and I said the following to try to stir up a faster response there after months of relative inactivity:

What is the explanation for this? Why is the [angular] team not responding to something that involves potential litigation? Just because Angular is a Google project does not mean Google's analytics can be used without consent.

The same thing applies here. Just because the SvelteKit website runs on Vercel does not mean it can use Vercel's geolocation APIs without consent.

The data is not stored anywhere, and it's only based on the IP address, not specific geolocation data. Does GDPR still apply in this situation then?

The SvelteKit website does not come remotely close to violating GDPR, which applies to user data being "processed" (stored, sent, erased). Nothing is being processed here.

This LinkedIn Pulse article does say that sensitive should be protected (even after using SSL/TLS) in transit, and, based on my own intuition, not doing so can leave a connection vulnerable to man-in-the middle attacks that could trigger a GDPR violation complaint from the affected parties or the EU itself.

I'm watching this closely because the GDPR is very complicated to understand details like this 🤔

It's not being saved or used by svelte. Just showing it to you.

@IRod22 are you an EU lawyer with GDRO background?
Because I am and your legal analysis seems really strict to me.

Talking about getting geo location data, In my mind I thought it was using the browsers GeoLocation, but it's not, it's actually using Vercel's Edge Function Features...
https://vercel.com/docs/concepts/edge-network/headers#x-vercel-ip-longitude
This means that kit.svelte.dev used vercel's features to track my location but vercel did not ask for permission for tracking my location.
GDPR Article 7 Talks about Conditions for consent
(Take note of the word processing,  data subject and personal data)

Where processing is based on consent, the controller shall be able to demonstrate that the data subject has consented to processing of his or her personal data.
If the data subject's consent is given in the context of a written declaration which also concerns other matters, the request for consent shall be presented in a manner which is clearly distinguishable from the other matters, in an intelligible and easily accessible form, using clear and plain language. Any part of such a declaration which constitutes an infringement of this Regulation shall not be binding.
The data subject shall have the right to withdraw his or her consent at any time. The withdrawal of consent shall not affect the lawfulness of processing based on consent before its withdrawal. Prior to giving consent, the data subject shall be informed thereof. It shall be as easy to withdraw as to give consent.
When assessing whether consent is freely given, utmost account shall be taken of whether, inter alia, the performance of a contract, including the provision of a service, is conditional on consent to the processing of personal data that is not necessary for the performance of that contract.

Important Definitions

‘processing’ means any operation or set of operations which is performed on personal data or on sets of personal data, whether or not by automated means, such as collection, recording, organisation, structuring, storage, adaptation or alteration, retrieval, consultation, use, disclosure by transmission, dissemination or otherwise making available, alignment or combination, restriction, erasure or destruction;
‘personal data’ means any information relating to an identified or identifiable natural person (‘data subject’); an identifiable natural person is one who can be identified, directly or indirectly, in particular by reference to an identifier such as a name, an identification number, location data, an online identifier or to one or more factors specific to the physical, physiological, genetic, mental, economic, cultural or social identity of that natural person;
‘consent’ of the data subject means any freely given, specific, informed and unambiguous indication of the data subject's wishes by which he or she, by a statement or by a clear affirmative action, signifies agreement to the processing of personal data relating to him or her;

Based on what I have read and understand, I could say that this issue does have it's reasons....

@kvetoslavnovak, @524c, @yob-yob:
I am not a lawyer, but I am thinking very strict because the implications of a GDPR violation are huge for an open source community even though it is supported by a relatively big company like Vercel.

Also, I agree that the GDPR is hard to understand certain details, so for that reason, I think we need to take immediate action. I think the /edge.svg route needs to be rewritten to use an external API (such as getting a map of all CDNs for example) or be taken offline and replace the consuming component's code with pre-written SVG. Either way, immediate action needs to be taken because due to how quickly the v1 announcement can spread, the chances of a violation will increase.

Vercel doesn't have your geo location, it has a broad approximation of it based on your IP address, probably using general accessible IP-to-location databases. And without your IP no web server could respond to your requests.

@dummdidumm you are correct about using the IP address; however, some people may disagree with the additional processing because, in the case of the edge API, just knowing what city the user is in could definitely scare the user into thinking that the website knows their exact location. I do not think Vercel is that transparent about how IP addresses are processed either.

See Lawfulness of processing https://gdpr-info.eu/art-6-gdpr/
(f) processing is necessary for the purposes of the legitimate interests pursued by the controller or by a third party, except where such interests are overridden by the interests or fundamental rights and freedoms of the data subject

It is commonly admitted that "the biggest city near you" isn't enough to identify anyone thus won't override any interest or right.

I think we need a vote and some assistance from the community because we are getting two different answers from two different articles of the GDPR.

Those who react with a :+1: are saying that the SvelteKit website is GDPR compliant.
Those who react with a :-1: are saying that the SvelteKit website is not GDPR compliant.
Those who react with a :confused: are saying that they are unsure whether SvelteKit website is not GDPR compliant or not.
Those who do not react a ;+1:, :-1:, or :confused: are not participating.

Votes will be collected at 2:30 AM UTC (8:30 PM CST). If anyone has additional info from the GDPR or legal experience, please tell us about it in the comments, so voters are better informed.

@kvetoslavnovak, @524c, @yob-yob:
I am not a lawyer, but I am thinking very strict because the implications of a GDPR violation are huge for an open source community even though it is supported by a relatively big company like Vercel.
Also, I agree that the GDPR is hard to understand certain details, so for that reason, I think we need to take immediate action. I think the /edge.svg route needs to be rewritten to use an external API (such as getting a map of all CDNs for example) or be taken offline and replace the consuming component's code with pre-written SVG. Either way, immediate action needs to be taken because due to how quickly the v1 announcement can spread, the chances of a violation will increase.

Look, I just commented out of curiosity on the subject, but my opinion on this has no relevance. I'm sure the maintainers will know how to address the matter if they deem it necessary.

x-vercel-ip clearly uses only Vercel edge server location data
data refer to a general location where Vercel edge server is located and not the location of the user him/herself
there is no processing of Vercel edge server location data (storing., sending) hence these data are not even possible to be erased from somewhere
the data about Vercel edge server location are only sent to the user in common https response communication
there is no usage of user`s browser geo-location data
there is  no usage of user`s IP address

Vercel edge server location  != users geo-location data or IP address`
Quite appropriate analogy is a ZIP code of your city area used by post services vs.  an address of your street, building and flat number. And the ZIP code is even more detail compared to Vercel edge location.
If you for example are aware of the famous Germany Google Fonts case, the problem was not the IP addresses being sent to Google Fonts service either so much as  Google stores these IP addresses.

Everyone, I just got the results of a GDPR scan with Sovy, and the report is not pretty. Essentially, where 100% is fully compliant, the SvelteKit website got a 10% score because it violated 9 parts of the GDPR, and a few of those involve what is being discussed here.
(Note that the report will expire in three weeks)

Ohoh, it looks like Google is going to be in big trouble too.
https://hub.sovy.com/gdpr-scan/?siteid=9daa1e4e-f785-4e36-8c8a-9e584b4f2084

I ran this tool against their own website. Only 30%... :(
https://hub.sovy.com/gdpr-scan/?siteid=4cf6d97f-b37b-4813-9943-1f5fa337616a
I think maybe they could hire a company that offers GDPR help, like maybe https://www.sovy.com/?

This guy is probably just trolling or trying to sell something haha. I mean this information can't even be used to personally identify someone so it doesn't even come under GDPR even if it was stored as it isn't even 100% accurate to where someone is.

I'm closing this issue.


💄 Move gitmoji underline to the background

Problem: The underline of the gitmoji shortcode that appear when you hover it cover the letters like g-p-q-.... I propose to move it in the back to be covered by the letters.
What do you think of this new UI @Lyokolux?

:+1:
Yes of course. Ty z-index :wink:


fix the encode bug in SctpOutboundByteStreamHandler.

The first parameter of SctpMessage is protocolIdentifier, and the second is streamIdentifier. So we need to swap the parameters in encode method
Motivation:
Explain here the context, and why you're making that change.
What is the problem you're trying to solve.
Modification:
Describe the modifications you've done.
Result:
Fixes #.
If there is no issue then describe the changes introduced by this PR.

@CharlieYuQi can you please sign the ICLA and let me know once done:
https://netty.io/s/icla
Thanks!

@normanmaurer I have signed ICLA.

Cherry-picked into 4.1 (ca9d1658a0) and 4.0 (2f80064f56)

@CharlieYuQi thanks!


fix: added platform label annotation of onAccessibilityTap prop

What did I change?
I added a platform label for the onAccessibilityTap prop on the React Native documentation page.
Why did I change it?
An issue was reported regarding onAccessibilityTap not working on Android, but this prop is only intended for the iOS platform. This change will help clarify platform-specific behaviour and prevent future confusion among users.
Reported issue - https://github.com/facebook/react-native/issues/47149
Action item - https://github.com/facebook/react-native/issues/47149#issuecomment-2442379424

@cipolleschi, could you please verify this change?  It will help to avoid further confusion among users.

@cortinico , could you please merge this PR as per your convenience?


HIVE-27434: Preparing for 4.0.0-beta-1 development

What changes were proposed in this pull request?

Extend Copyright to 2023 in NOTICE files
Set version to 4.0.0-beta-1-SNAPSHOT in pom files
Prepare metastore install/upgrade scripts for 4.0.0-beta-1 release

Why are the changes needed?
The changes are needed in order to do the release of 4.0.0-beta-1
Does this PR introduce any user-facing change?
No
How was this patch tested?
Existing tests should suffice

There is one test failure but it corresponds to a known flaky test that is actively worked on (https://issues.apache.org/jira/browse/HIVE-27429). Re-launching the tests is not necessary.


feat: Form file img select component

Add Form file and img select in page engine from qxp-web uploader

page engine v1 我们已经废弃了，后续组件配置的更新直接写在 qxp-web 里就好


The request use more GPU memory that normal

Describe the bug
Hi, I'm using this amazing project with success but with a strange behavior.
The model loaded in the GPU use more RAM that normally do.
For example, if I run qwen2.5-coder:14b that weights 9GB in the GPU ram, wen I start with "ollama run" I see in nvidia-smi 10696MiB/16376MiB and all work fine.
Using bolt I see 14756MiB/16376MiB and the system use the CPU.
With a smaller model bolt works normally.
I'm using ollama hosted on a different server (in the same LAN) that expose the API.
I'm pretty sure I'm missing some points .... can anyone help me?
Thanks
Link to the Bolt URL that caused the error
no error, only super slow cause CPU work
Steps to reproduce
Just start
Expected behavior
Use the same amount of GPU memory of normal ollama usage.
Screen Recording / Screenshot
No response
Platform
OS Linux Ubuntu 24.04
Browser Chrome
Provider Used
No response
Model Used
qwen2.5-coder:14b
Additional context
No response

Thanks kekePower, I'm trying to figure out where the second call is. I tried both docker and pnpm versions with no success.
Could it be that Ollama is on another server in the local network?

llm's context consumes exponentially more memory as we increase the context length.
and when running bolt, the system prompt itself is near 4k tokens. so here are the few tests before moving forward with any other investigation, try running in ollama with 4k context in the prompt and see the ram usage?


Issue 2 branch Dev_Issue2_TF

Downloaded and used gh cli, created a README.md file with 3 types of markdown formatting.

I mistakenly approved the PR without first consulting with the man, myth, and legend Schuster. Feel free to let me know if you want to meet and go over what you learned in this block and if you have any questions in relation to GH, GH CLI, Markdown, or anything else covered between weeks 1 & 2!


Password filed transparent

As the title says, nothing shows in the password field (running on Android 4.4.3).
Screenshot:

Thanks for reporting this issue, sorry I didn't see it sooner!
The proposed change would fix the issue for themes with light backgrounds, but would cause problems with dark themes (Galaxy S3).

Close due to inactivity


refactor(lib): remove lint config to allow unused code

Removes the lint configs of allowing unused code, and adds features cfg attributes to them.

Really appreciate you continually refining these things 💪


Reinstate feature: Enable search for constructor names

This feature worked on master, but got lost during the revamp.

The dictionary of valid search results is created here, from the keys of modul.entries. That's created by the third argument to the Module record constructor (defined a dozen lines up) here.
It's provided the union types, but only takes their names (e.g. Maybe but not Just). The constructors do not have name fields (example below). We need to populate this dictionary (in one of the two places) with the names of the constructors.
If I define type Nonempty a = Nonempty a (List a) and expose everything, the docs generated are
"types": [
      {
        "name": "Nonempty",
        "comment": "<SNIP>",
        "args": [
          "a"
        ],
        "cases": [
          [
            "Nonempty",
            [
              "a",
              "List a"
            ]
          ]
        ]
      }
    ],

Notice that the constructor does not have a name field, only the first value of a tuple.
@evancz, you said you wanted to be tagged in this repo, and I did some of the legwork for you.

Additional logic that went into https://github.com/elm-lang/package.elm-lang.org/pull/74: Make sure that in a situation like @mgold's example above, there are not two search results Nonempty (one for the type, one for the constructor).
So, for
type Nonempty a = Nonempty a (List a)

I created one search result, Nonempty, pointing to that type definition, while for
type A = B B
type B = C A

I created four search results:

A (for the type A), pointing to the first type definition
B (for the constructor B), pointing to the first type definition
another B (for the type B), pointing to the second type definition
C (for the constructor C), pointing to the second definition

Thanks @mgold for doing this.


⚠ Bofrost.at has degraded performance

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

HTTP code: 200
Response time: 2162 ms

Resolved: Bofrost.at performance has improved in c752300.


Add .mhd writing to BdvRealSourceToVoxelImageExporter

@tischi I'm looking at adding the option to write to mhd here: https://github.com/tischi/imagej-utils/blob/master/src/main/java/de/embl/cba/bdv/utils/export/BdvRealSourceToVoxelImageExporter.java#L81
You have this code in your elastix wrapper - https://github.com/embl-cba/elastixWrapper/blob/master/src/main/java/de/embl/cba/elastixwrapper/metaimage/MetaImage_Writer.java#L207
Could it possibly be moved to imagej-utils?

makes sense.
For now, you could just already add the code to imagej-utils and then I could change the elastix wrapper to depend on it at some later point.
Could you make an issue in the elastixWrapper repo to remind me?

Sure - will do!

This will move to https://github.com/embl-cba/metaimage-io


Update  and examples on documentation on Card

The Card documentation is partially inaccurate.
Here are a few remarks:
Types:

Text - typo

Image
-- url: test for https
-- provide example for server path

Card

Text - non documented - give example with mustache and say the root of the provided expression is always msg:
{payload[0].SKU} = msg.payload[0].SKU

Replace Subtitle with Subtext - mustache example. Root is always msg.

Replace Attachement with Image

Shared card - break line

Buttons properties:
Show image - break lines. Example of URL
Post-back - PB/IMB ?
Dynamic buttons :

add how to "delete" the buttons - not clear enough.
Card - include an image
Carousel - include an image

Hello @alinaradu,
Feel free to make a pull request to update the documentation :)


[Bug Report] el-table would rendered three time in every update, so it's slow

Element UI version
1.4.1
OS/Browsers version
Macos
Vue version
2.4.2
Reproduction Link
https://jsfiddle.net/XGHeaven/qwnm2xbq/
Steps to reproduce
use formatter to see how times table render runs.
please see reproduction link.
you can see 12 Called text under table. because there have four rows of table, and one row format(render) three times.
What is Expected?
I expect only call one time of render function.
What is actually happening?
And now, three times called of render function.
Whatever the first render or update render, it always render three times.

I also encountered this problem.

同样碰到这个问题了
the same!


atom editor freezes and has to be force quit when we try to edit a file requiring admin permissions

OS : Mac

I had submitted a very similar issue last week,  in which the editor was not freezing but the cursor used to stop showing.

If you're trying to report an issue with Atom the editor, you can report it at https://github.com/atom/atom. This repository is for the bug-report Atom package.


[WIP] adding Windows support

This is a minimalist approach to support windows, in view of lab requirements.

removed dependencies which are not well supported on windows
disabled custom operators compilation. From a technical point of view, the compilation of custom operators is possible however may require complex configurations. This PR supports only the numpy backends. Would be great to support other tensorflow backends, however this may require changes at the level of the abstraction layer, in particular for those objects such as initial state allocated through the custom operator library.
tests for windows are limited to tests_new. Would be nice to have tests for a custom free approach.
missing docs for windows users.

@stavros11 please have a look and let me know your opinion.

@stavros11 the current code here is almost ready, however I would like to remove the special pytest call for windows, and use tf with defaulteinsum.
We still have some tests in tests which explicitly set the backend to custom (e.g. in test_callbacks), I think we can skip those tests using conftest, similarly to the tests_new setup.


Is it a bug or a feature? Using regular components alongside with Transmitter containers makes app not respond on server load.

For example, I've added just one page to react-isomorphic-starterkit, Like so:
RegularPage.js:
class RegPage extends React.Component {
	/**
	 * Runs on server and client.
	 */
	render () {
		return (

					REGULAR PAGE

		);
	}
}
export default RegPage;

Then, added it to routes:
export default (
	<Route path="/">
		<DefaultRoute handler={Main} />
		<Route name="RegularPage" path="RegularPage" handler={RegularPage} />
	</Route>
);

Noiw, if I start a server and go to http://localhost:8000/RegularPage - I just get infinite page loading. Issue goes away if I wrap "RegularPAge" in transmit wrapper (without queries even, just a wrapper). I'm fairly new to node, advice is appreciated!

How do you render the root component?

Everything else is clean checkout of react-isomorphic-starterkit, nothing changed.

Also, if you add  from {Main} component to this "RegularPage", open up http://localhost:8000 and then follow a link to "RegularPage", then "regularPage" will get rendered.

@Webkadabra It seems to me that any top level Route handler must be a Transmit Container export default Transmit.createContainer(RegularPage)

@tylermadison is right. In server.js you can see that Transmit.renderToString is used. Therefore the root React component must be a Transmit container.


Help installing vim-plug in gVim under Windows 10 please

Explain the problem here ...
Using Windows 10 Pro 64 bit insider preview build 15007
I have followed the Powershell instructions to download the Plug.vim file which is now sitting in C:\Users\Carl\vimfiles\autoload . So far so good (I think). However, I am making changes to my _vimrc file (the Windows equivalent of .vimrc) which is situated in C:\Program Files (x86)\Vim . Any changes I make here such as adding:
call plug#begin()
Plug 'fatih/vim-go', { 'tag': '*' }
call plug#end()
all result in error messages when gVim starts.
Can I issue a : command in gVim to confirm that the vim-plug files has been correctly found and loaded?
How can I complete the installation of vim-plug so that I can get vim-go up and running?

Cannot figure out how to get :version info here, either via clipboard or disk. Sorry.

Type:

[ ] Bug
[ ] Enhancement
[ ] Feature Request
[X] Question

OS:

[ ] All/Other
[ ] Linux
[ ] OS X
[X] Windows

Vim:

[ ] Terminal Vim
[X] GVim
[ ] Neovim

@carlca could you provide the error message? Does it work without the , { 'tag': '*' } at the end? Could you at least provide the version number of vim (e.g. vim 8.0.95)?

Vim is version 8.0.69
I've tried your suggestion and the error messages have disappeared and :scriptnames now reveals the fact that win-plug has been loaded. So thanks very much for that. I've just discovered that the :PlugInstall command is case sensitive, as that is working now. Thanks again for your help, I think I should be able to load any plugin I want now!!

@nfischer Thanks for the comment.
@carlca Are you sure that removing tag option helped? I'm doubtful because you said that you had errors during startup, but vim-plug doesn't do anything with the option until you start the installer.


error /var/run/docker.sock

error /var/run/docker.sock

please help

error /var/run/docker.sock

please help

works for me
https://github.com/DockStation/dockstation/issues/18#issuecomment-777556500

help me to
~$ docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    d1165f221234   5 months ago   13.3kB
but with dockstation
Failed to attach docker event listener: Erroe: connect ACCES /var/run/docker.sock
A+JYT

Hey! I resolved the issue by changing the permissions on the 'Docker.sock' file.
If using do a cd to the right place and write:
sudo chmod 0777 docker.sock
Hope it helps!


Can't find variable: PIXI

typescript project
using pixi-js 5.0.3 and importing this way
import * as PIXI from 'pixi.js'
I was getting an error where PointLike wasn't found and in the browser I get a compilation error where lights can't find the PIXI package.

Lights are not converted to v5 yet, but its close. pixi-layers has v5 branch :)

thanks for the info!

i tried downgrading, here is my package excerpt
```
"pixi-filters": "^3.0.3",
"pixi-layers": "^0.1.6",
"pixi-lights": "^2.0.3",
"pixi.js": "^4.8.8",

but getting a type error
`TypeError: undefined is not an object (evaluating 'new PIXI.display.Group')`


Service reported as running although no instances are running

When deploying a stack with services that can't find any nodes to place services on due to no matching affinity rules the service is displayed asrunning -- but no instances actually run.
I would expect it to be still in a deploying state.

STATE column is actually "desired state". But I agree that INSTANCES might be misleading because it shows always "running" counts (and not desired state counts).

There isn't actually any deploying state for services, it's generally just initialized, running or stopped (there is a restarting state, but the way that's implemented is actually a little problematic).
Agreed that it would be more useful to show the actual status of the service rather than just the desired state. I'm not sure if it would be deploying in this situation, that would imply that there's actually an active deploy ongoing. It should be something more like invalid if it's unable to be scheduled.


[terra-slider] New Terra slider component creation

Summary

What was changed:
Adding new Terra Slider component along with documentation
Testing

This change was tested using:

[x] WDIO
[x] Jest
[x] Visual testing (please attach a screenshot or recording)
[ ] Other (please describe below)
[ ] No tests are needed

Reviews
In addition to engineering reviews, this PR needs:

[x] UX review
[x] Accessibility review
[x] Functional review

Additional Details

This PR resolves:
UXPLATFORM-9555
UXPLATFORM-9600

Thank you for contributing to Terra.
@cerner/terra

We should probably create a test and example where the consumer is changing the slider value via the prop.

You have a blue border around your slider when it has focus.  The UX callouts do not specify this behavior.  It seems like the border should not exists and the outline just around the slider thumb.

@nikhitasharma  I performed functional testing and a11y testing and have the below comments. Items bolded I think might be issues. Then I have some general questions/comments at the bottom.
Functionally:

Was able to move the slider thumb as expected with mouse and keyboard arrow keys, page up/down
Was unable to manipulate the disabled slider.
In the disabled slider example when I hovered over the thumb, my mouse pointer changed to the pointing hand cursor indicating I could click on it. Since it's disabled I wouldn't expect the mouse cursor to change. @eawww please confirm.

Accessibility:
Keyboard:

Was able to navigate appropriately via keyboard.
Screen Reader: (tested with JAWS in Chrome)
Communicated "default label 0 50 100" @eawww should we indicate for 0 and 100 those are the min/max values?
If I hold down the arrow keys the slides increments continuously but when I lift the key it repeates the position I am on multiple times. This seems like an issue.
In the custom slider example it communicates "0% 20 100%" I would think we'd also want the thumb value to be a percentage in this case.

General Question:

Is the custom slider example to illustrate the consumer can define the slider to be something other than just integers in this example percentages? Is there other functionality we want to call out.
If possible I'd update the Labels to be something not generic, currently it reads as "Default Label"
We probably need another Jira for "Implementation Guide creation" to beef up the Doc site. I can get that logged.

When disabled, the slider shouldn't get the pointer cursor. It should have the default cursor.
There should be an example that doesn't display the min/max values.
At least one example should show how the component is used with the onChange and value props to manage application state.

@eawww Maybe I misinterpretted the designs that Dee put together for the min/max values I was under the impression we should always be displaying those. If that is the case would we still need an example without them?   I could see an example with non-numeric values maybe XS->XL

@nikhitasharma I performed functional testing and a11y testing and have the below comments. Items bolded I think might be issues. Then I have some general questions/comments at the bottom.
Functionally:

Was able to move the slider thumb as expected with mouse and keyboard arrow keys, page up/down
Was unable to manipulate the disabled slider.
In the disabled slider example when I hovered over the thumb, my mouse pointer changed to the pointing hand cursor indicating I could click on it. Since it's disabled I wouldn't expect the mouse cursor to change. @eawww please confirm.

Accessibility: Keyboard:

Was able to navigate appropriately via keyboard.
Screen Reader: (tested with JAWS in Chrome)
Communicated "default label 0 50 100" @eawww should we indicate for 0 and 100 those are the min/max values?
If I hold down the arrow keys the slides increments continuously but when I lift the key it repeates the position I am on multiple times. This seems like an issue.
In the custom slider example it communicates "0% 20 100%" I would think we'd also want the thumb value to be a percentage in this case.

General Question:

Is the custom slider example to illustrate the consumer can define the slider to be something other than just integers in this example percentages? Is there other functionality we want to call out.
If possible I'd update the Labels to be something not generic, currently it reads as "Default Label"
We probably need another Jira for "Implementation Guide creation" to beef up the Doc site. I can get that logged.

I have updated the disabled slider to not show the cursor pointer when hovered.
The repetitions should not happen after removing the aria attributes. Please have a look.
The percentage was added only to show the customization of min-max labels as that example was discussed in the meeting with UX. The underlying actual values are still integers. I am not sure there is a simple way of announcing the slider values as percentages based on custom input labels.
Updated labels to better values instead of "Default label"

You have a blue border around your slider when it has focus. The UX callouts do not specify this behavior. It seems like the border should not exists and the outline just around the slider thumb.

There is a consistent border color for all states, including focus. I have removed styling wherever overriding is unnecessary and if background color and border colors are the same.

In the disabled slider example when I hovered over the thumb, my mouse pointer changed to the pointing hand cursor indicating I could click on it. Since it's disabled I wouldn't expect the mouse cursor to change. Please confirm.

This is correct. Disabled slider should have the default cursor so people don't get the impression it's interactable.

We should probably create a test and example where the consumer is changing the slider value via the prop.

Added.

I chatted with @scottwilmarth about some ideas to improve the screen reader experience and here's what we came up with:
What we should do is apply aria-hidden to all the visible labels including the min and max because it's all just kind of noise since we have the aria-label on the slider itself.
Then below the slider have visually hidden text that says something like
"Adjust slider to select a value between [min] ([min value]) and [max] ([max value])"
for example "Adjust slider with arrow keys to select a value between cold (0) and hot (100)" then have an aria-describedby on the slider with the id of that text.
If there are no custom labels, it can just use the min and max numbers: "Adjust slider with arrow keys to select a value between 0 and 20"

I chatted with @scottwilmarth about some ideas to improve the screen reader experience and here's what we came up with:
What we should do is apply aria-hidden to all the visible labels including the min and max because it's all just kind of noise since we have the aria-label on the slider itself.
Then below the slider have visually hidden text that says something like
"Adjust slider to select a value between [min] ([min value]) and [max] ([max value])"
for example "Adjust slider with arrow keys to select a value between cold (0) and hot (100)" then have an aria-describedby on the slider with the id of that text.
If there are no custom labels, it can just use the min and max numbers: "Adjust slider with arrow keys to select a value between 0 and 20"

@eawww  I have added these, please have a look.

There is still a blue border around the slider when using tab to focus the control.

You have a blue border around your slider when it has focus. The UX callouts do not specify this behavior. It seems like the border should not exists and the outline just around the slider thumb.

There is a consistent border color for all states, including focus. I have removed styling wherever overriding is unnecessary and if background color and border colors are the same.

I think it might be consistent but also incorrect.  You can update the CSS styles so that this border does not exists.  It does not seem to follow our design patterns.

You have a blue border around your slider when it has focus. The UX callouts do not specify this behavior. It seems like the border should not exists and the outline just around the slider thumb.

There is a consistent border color for all states, including focus. I have removed styling wherever overriding is unnecessary and if background color and border colors are the same.

I think it might be consistent but also incorrect. You can update the CSS styles so that this border does not exists. It does not seem to follow our design patterns.

You are right. I initially thought you were talking about the thumb border but I now understand. I have updated this.

Looks good, great work! @nikhitasharma

We should have an example and/or test that covers the consumer change the value of the Slider component via its value prop.

We should have an example and/or test that covers the consumer change the value of the Slider component via its value prop.

Added.


Missing items: [Synapse Springs]

Links to Cataclysm Wowhead for each item:
https://www.wowhead.com/cata/spell=82175/synapse-springs
Permanently attaches synapse springs to a pair of gloves, allowing a skilled engineer to increase their highest primary statistic by 480 for 10 sec.  The gloves can only be activated every minute.

Synapse springs are not an item you equip. They are a tinker and as such are part of the tinker menu once you select engineering as a profession in the sim.


F3 Button

How do I change it to where people can use the F4 button instead of F3

https://github.com/adamdburton/pointshop/blob/master/lua/pointshop/sh_config.lua#L12


Question about defined functions that return a solution matrix

Hi Someone has worked with defined functions that return an objects [,] to the grid. In other words, using NativeFunctionObject with a 2D solution instead of a single solution.
My code
this.grid.Srm["ORION_5G"] = new NativeFunctionObject("ORION_5G", (ctx, owner, args) =>
            {  var result= ORION_CC.ORION5G(args[0].ToString(), args[1], args[2]);
               return (args.Length < 1) ? null : (result);});
        }

The expected solution is a object[,] 2d matrix
Regards

Returning a rectangular multiple dimensional array is possible, but the array cannot be set onto worksheet automatically. Since formula does only effect to single cell.
Best practice maybe is to set data directly onto worksheet inside the function instead of returning an array.

@salvo79 How about this now?


Unused variables

started
https://github.com/lukso-network/rICO-smart-contracts/blob/master/contracts/ReversibleICO.sol#L33

ended
https://github.com/lukso-network/rICO-smart-contracts/blob/master/contracts/ReversibleICO.sol#L34

Addressed in #26


Regression with code sample in XML

Literal syntax output is:
Something something ``code ``something something.

This causes warnings and is invalid rst, it should be:
Something ``code`` something

This actually isn't a bug, it was a problem with the doc sources we were testing, there is a missing space after the xml element:
https://github.com/aspnet/Identity/blob/dev/src/Microsoft.AspNet.Identity/IUserTwoFactorStore.cs#L16
cc @danroth27


Revert to workaround #158.

Currently, on xenial/kinetic the transitive dependencies on
libcartographer and its dependencies are not duplicated after
each library that depends on it in the linker command.

lgtm. Oh man, cmake can really ruin a great day.


Force line endings on *.sh files

Fix line endings for windows users. Do not allow user core.autocrlf to
change the line endings for *.sh files. This will fix issues building
container by removing the line endings on the shebang of the copied bash
files.
Users may need to delete all *.sh files, and then use git restore to update checked out files (another option for those that don't have changes is to delete and then clone the repo).

This seemed to open a new issue, this commit is to resolve #30

Thanks for this! Sorry it took me almost a year to merge it!


Which packages do I need to install?

Summary of your issue
I am looking for a replacement for the ASP.Net System.Drawing namespace.
Environment
The project I have inherited runs on  Ubuntu/Docker/NGINX in production; however, I am using Windows/IIS for development purposes.
What did you do when you faced the problem?
Which opencvsharp packages do I need to install?
Example code:

n/a

Output:

n/a

What did you intend to be?

I recommend ImageSharp as a replacement for System.Drawing.
https://docs.microsoft.com/en-us/dotnet/core/compatibility/core-libraries/6.0/system-drawing-common-windows-only#recommended-action


feat(autoware_launch): use proxqp in obstacle_avoidance_planner

Description
launcher for https://github.com/autowarefoundation/autoware.universe/pull/3700

Tests performed

planning simulator
Effects on system behavior

No behavior change
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

I created a new PR. https://github.com/autowarefoundation/autoware_launch/pull/471


Remove ScriptObjects from the names of them in documentation

Adding ScriptObject, where internally that will still be the case, to the names of objects might be confusing to a user and can really be simplified to just the name of the Java Class it represents. For example:

PlayerEntityScriptObject -> PlayerEntity
ItemStackScriptObject -> ItemStack
Vec3dScriptObject -> Vec3d
QuaternionfScriptObject -> Quaternionf
StorageScriptObject -> NBTStorage (This one was a worse case, as 'Storage' was never really what it was internally, instead NBTStorage fits better)
ByteBufScriptObject -> ByteBuf

and so on.
This will probably be solved by adding some interface DocsObjectNameProvider to AbstractTypedScriptObject<T> alike to DescriptionProvider.
This will be gradually added, as I write more documentation for each Object. Once a class is converted from the old IScriptObject to its newer inheritor AbstractTypedScriptObject,  it will have this change.

example:

dont know why i didnt close this already. Partially implemented, will be fully implemented as more ScriptObjects are added to the autodocs system.