[url_launcher] Throw exception when clicked on Stop loading button on Safari

Steps to Reproduce

Device: Iphone 12 Pro Max, iOS: 14.4
Open the site that returns 522 error: Connection timed out.

final bool launched = await ul.launch('https://site.com/');

The site opens inside the app in Safari.
Close the site with the Done button.

Expected results:
Returns the result immediately without waiting for a response from the site
Actual results:
The method does not return a result (it waits for execution, which does not occur).
Steps to Reproduce №2

Device: Iphone 12 Pro Max, iOS: 14.4
Open the site that returns 522 error: Connection timed out.

final bool launched = await ul.launch('https://site.com/');

The site opens inside the app in Safari.
Close the site with the Close button.

Expected results:
Returns the result immediately without waiting for a response from the site
Actual results:
Controls are missing in Safari. Throws an exception (look in the logs). Returns NULL!

Logs
flutter: SHOUT: 2021-02-09 12:38:42.903939: PlatformException(Error, Error while launching https://site.com/, null, null) [(PlatformException) PlatformException(Error, Error while launching https://site.com/, null, null)]
flutter: #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:582:7)
flutter: #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:159:18)
flutter: <asynchronous suspension>
flutter: #2      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:332:12)
flutter: #3      MethodChannelUrlLauncher.launch (package:url_launcher_platform_interface/method_channel_url_launcher.dart:44:21)
flutter: #4      launch (package:url_launcher/url_launcher.dart:95:58)
flutter: #5      URLLauncherProvider.launch (package:flutter_app/core/internal/infrastructure/providers/url_launcher/url_launcher_provider.dart:29:35)
flutter: #6      URLLauncherBloc._launchURL (package:flutter_app/core/internal/presentation/blocs/url_launcher/url_launcher_bloc.dart:80:47)
flutter: <asynchronous suspension>
flutter: #7      URLLauncherBloc._mapURLLaunchedToState (package:flutter_app/core/internal/presentation/blocs/url_launcher/url_launcher_bloc.dart:39:12)
flutter: #8      _$URLLauncherLaunched.map (package:flutter_app/core/internal/presentation/blocs/url_launcher/url_launcher_bloc.freezed.dart:233:23)
flutter: #9      URLLauncherBloc.mapEventToState (package:flutter_app/core/internal/presentation/blocs/url_launcher/url_launcher_bloc.dart:28:18)
flutter: <asynchronous suspension>
flutter: #10     Bloc._bindEventsToStates.<anonymous closure> (package:bloc/src/bloc.dart:231:20)
flutter: #11     Stream.asyncExpand.<anonymous closure>.<anonymous closure> (dart:async/stream.dart:644:30)
flutter: #12     _rootRunUnary (dart:async/zone.dart:1206:13)
flutter: #13     _CustomZone.runUnary (dart:async/zone.dart:1100:19)
flutter: #14     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
flutter: #15     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
flutter: #16     _DelayedData.perform (dart:async/stream_impl.dart:611:14)
flutter: #17     _StreamImplEvents.handleNext (dart:async/stream_impl.dart:730:11)
flutter: #18     _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:687:7)
flutter: #19     _rootRun (dart:async/zone.dart:1182:47)
flutter: #20     _CustomZone.run (dart:async/zone.dart:1093:19)
flutter: #21     _CustomZone.runGuarded (dart:async/zone.dart:997:7)
flutter: #22     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1037:23)
flutter: #23     _rootRun (dart:async/zone.dart:1190:13)
flutter: #24     _CustomZone.run (dart:async/zone.dart:1093:19)
flutter: #25     _CustomZone.runGuarded (dart:async/zone.dart:997:7)
flutter: #26     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1037:23)
flutter: #27     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
flutter: #28     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)

Hi @Holofox
Tried to reproduce the issue using the latest url_launcher: ^5.7.10, while there is endless waiting but I can't reproduce the exception from your logs on a physical device or simulator running ios 14.4

code sample
import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
      body: Center(
        child: Container(
          child: Text('Hello World'),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        child: Icon(Icons.add),
        onPressed: () async {
          final bool launched = await launch('https://site.com/');
        },
      ),
    );
  }
}

logs
/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app/Frameworks/package_info.fra
mework/Info.plist to device
[        ] [ 48%] Copying
/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app/Frameworks/package_info.fra
mework/package_info to device
[  +23 ms] [ 48%] Copying
/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app/AppIcon20x20~ipad.png to
device
[        ] [ 48%] Copying
/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app/embedded.mobileprovision to
device
[   +2 ms] [ 48%] Copying
<EMAIL_ADDRESS>to
device
[        ] [ 49%] Copying
/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app/Info.plist to device
[        ] [ 49%] Copying
/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app/PkgInfo to device
[        ] [ 49%] Copying
/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app/AppIcon76x76~ipad.png to
device
[ +357 ms] [ 52%] CreatingStagingDirectory
[        ] [ 57%] ExtractingPackage
[        ] [ 60%] InspectingPackage
[  +18 ms] [ 60%] TakingInstallLock
[  +26 ms] [ 65%] PreflightingApplication
[  +48 ms] [ 65%] InstallingEmbeddedProfile
[   +9 ms] [ 70%] VerifyingApplication
[ +176 ms] [ 75%] CreatingContainer
[   +7 ms] [ 80%] InstallingApplication
[   +6 ms] [ 85%] PostflightingApplication
[   +6 ms] [ 90%] SandboxingApplication
[  +13 ms] [ 95%] GeneratingApplicationMap
[  +86 ms] [100%] Installed package build/ios/iphoneos/Runner.app
[ +183 ms] ------ Debug phase ------
[        ] Starting debug of 00008020-001059882212002E (N841AP, iPhone XR, iphoneos, arm64e) a.k.a. 'Taha’s
iPhone' connected through USB...
[ +111 ms] [  0%] Looking up developer disk image
[  +11 ms] [ 95%] Developer disk image mounted successfully
[ +415 ms] [100%] Connecting to remote debug server
[        ] -------------------------
[  +69 ms] (lldb) command source -s 0
'/tmp/B5C9E85D-304C-4A38-B8C0-2A209ECD2E5D/fruitstrap-lldb-prep-cmds-00008020_001059882212002E'
[        ] Executing commands in
'/tmp/B5C9E85D-304C-4A38-B8C0-2A209ECD2E5D/fruitstrap-lldb-prep-cmds-00008020_001059882212002E'.
[        ] (lldb)     platform select remote-ios --sysroot '/Users/tahatesser/Library/Developer/Xcode/iOS
DeviceSupport/14.4 (18D52) arm64e/Symbols'
[        ]   Platform: remote-ios
[        ]  Connected: no
[        ]   SDK Path: "/Users/tahatesser/Library/Developer/Xcode/iOS DeviceSupport/14.4 (18D52) arm64e/Symbols"
[        ] (lldb)     target create
"/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app"
[+11023 ms] Current executable set to
'/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos/Runner.app' (arm64).
[        ] (lldb)     script
fruitstrap_device_app="/private/var/containers/Bundle/Application/CC2E0539-AC9E-48C8-A36D-DA3015CB7575/Runner.ap
p"
[ +422 ms] (lldb)     script fruitstrap_connect_url="connect://<IP_ADDRESS>:56457"
[        ] (lldb)     script fruitstrap_output_path=""
[        ] (lldb)     script fruitstrap_error_path=""
[        ] (lldb)     target modules search-paths add /usr "/Users/tahatesser/Library/Developer/Xcode/iOS
DeviceSupport/14.4 (18D52) arm64e/Symbols/usr" /System "/Users/tahatesser/Library/Developer/Xcode/iOS
DeviceSupport/14.4 (18D52) arm64e/Symbols/System"
"/private/var/containers/Bundle/Application/CC2E0539-AC9E-48C8-A36D-DA3015CB7575"
"/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos"
"/var/containers/Bundle/Application/CC2E0539-AC9E-48C8-A36D-DA3015CB7575"
"/Users/tahatesser/AndroidStudioProjects/stable_flutter/build/ios/iphoneos" /Developer
"/Users/tahatesser/Library/Developer/Xcode/iOS DeviceSupport/14.4 (18D52) arm64e/Symbols/Developer"
[  +49 ms] (lldb)     command script import
"/tmp/B5C9E85D-304C-4A38-B8C0-2A209ECD2E5D/fruitstrap_00008020_001059882212002E.py"
[   +8 ms] (lldb)     command script add -f fruitstrap_00008020_001059882212002E.connect_command connect
[        ] (lldb)     command script add -s asynchronous -f fruitstrap_00008020_001059882212002E.run_command run
[        ] (lldb)     command script add -s asynchronous -f
fruitstrap_00008020_001059882212002E.autoexit_command autoexit
[        ] (lldb)     command script add -s asynchronous -f
fruitstrap_00008020_001059882212002E.safequit_command safequit
[        ] (lldb)     connect
[  +40 ms] (lldb)     run
[ +208 ms] success
[        ] Application launched on the device. Waiting for observatory port.
[+1905 ms] (lldb) 2021-02-09 14:40:08.597540+0530 Runner[8860:2300177] Warning: Unable to create restoration in
progress marker file
[  +66 ms] Observatory URL on device: http://<IP_ADDRESS>:49179/
[  +10 ms] Attempting to forward device port 49179 to host port 56476
[        ] executing: /Users/tahatesser/Code/flutter_beta/bin/cache/artifacts/usbmuxd/iproxy 56476:49179 --udid
00008020-001059882212002E
[ +310 ms] fopen failed for data file: errno = 2 (No such file or directory)
[   +1 ms] Errors found! Invalidating cache...
[  +82 ms] fopen failed for data file: errno = 2 (No such file or directory)
[        ] Errors found! Invalidating cache...
[ +634 ms] Forwarded port ForwardedPort HOST:56476 to DEVICE:49179
[        ] Forwarded host port 56476 to device port 49179 for Observatory
[   +4 ms] Installing and launching... (completed in 30.7s)
[   +3 ms] Caching compiled dill
[ +192 ms] Connecting to service protocol: http://<IP_ADDRESS>:56476/
[ +179 ms] Launching a Dart Developer Service (DDS) instance at http://<IP_ADDRESS>:0, connecting to VM service at
http://<IP_ADDRESS>:56476/.
[ +116 ms] DDS is listening at http://<IP_ADDRESS>:56484/7oupxpB18qk=/.
[  +83 ms] Successfully connected to service protocol: http://<IP_ADDRESS>:56476/
[+1287 ms] DevFS: Creating new filesystem on the device (null)
[  +45 ms] DevFS: Created new filesystem on the device
(file:///private/var/mobile/Containers/Data/Application/FDD9A88D-E34E-4DA9-A0D8-A15B7E3EEC1A/tmp/stable_flutterC
BODqw/stable_flutter/)
[   +8 ms] Updating assets
[ +150 ms] Syncing files to device Taha’s iPhone...
[   +2 ms] <- reset
[        ] Compiling dart to kernel with 0 updated files
[   +2 ms] <- recompile package:triage/main.dart 5d951b87-a652-4716-b470-a4e9ab70f5bd
[        ] <- 5d951b87-a652-4716-b470-a4e9ab70f5bd
[ +229 ms] Updating files.
[        ] DevFS: Sync finished
[   +4 ms] Syncing files to device Taha’s iPhone... (completed in 238ms)
[        ] Synced 0.0MB.
[   +1 ms] <- accept
[  +15 ms] Connected to _flutterView/0x140817420.
[   +2 ms] Flutter run key commands.
[   +2 ms] r Hot reload. 🔥🔥🔥
[   +1 ms] R Hot restart.
[        ] h Repeat this help message.
[        ] d Detach (terminate "flutter run" but leave application running).
[        ] c Clear the screen
[        ] q Quit (terminate the application on the device).
[        ] An Observatory debugger and profiler on Taha’s iPhone is available at:
http://<IP_ADDRESS>:56484/7oupxpB18qk=/
[   +1 ms]
           Flutter DevTools, a Flutter debugger and profiler, on Taha’s iPhone is available at:
           http://<IP_ADDRESS>:9100?uri=http%3A%2F%2F<IP_ADDRESS>%3A56484%2F7oupxpB18qk%3D%2F
[        ] Running with unsound null safety
[        ] For more information see https://dart.dev/null-safety/unsound-null-safety

flutter doctor -v
[✓] Flutter (Channel stable, 1.22.6, on macOS 11.2 20D64 darwin-x64, locale en-GB)
    • Flutter version 1.22.6 at /Users/tahatesser/Code/flutter_stable
    • Framework revision 9b2d32b605 (2 weeks ago), 2021-01-22 14:36:39 -0800
    • Engine revision 2f0af37152
    • Dart version 2.10.5
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, set ANDROID_SDK_ROOT to that location.
      You may also want to add it to your PATH environment variable.
[!] Xcode - develop for iOS and macOS (Xcode 12.4)
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install:
        sudo gem install cocoapods
[!] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] VS Code (version 1.53.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.19.0
[✓] Connected device (1 available)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios • iOS 14.4
! Doctor found issues in 3 categories.

[✓] Flutter (Channel master, 1.26.0-18.0.pre.215, on macOS 11.2 20D64 darwin-x64, locale en-GB)
    • Flutter version 1.26.0-18.0.pre.215 at /Users/tahatesser/Code/flutter_master
    • Framework revision f3c10bd23a (3 hours ago), 2021-02-08 21:52:03 -0800
    • Engine revision b04955656c
    • Dart version 2.13.0 (build 2.13.0-0.0.dev)
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.
[!] Xcode - develop for iOS and macOS
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.
[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] VS Code (version 1.53.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.19.0
[✓] Connected device (3 available)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS 14.4
    • macOS (desktop)        • macos                     • darwin-x64     • macOS 11.2 20D64 darwin-x64
    • Chrome (web)           • chrome                    • web-javascript • Google Chrome 88.0.4324.150
! Doctor found issues in 2 categories.

Can you please the complete code sample where it reproduces the exception?
Thank you

@TahaTesser,

Open a https://google.com/, the method returns the result after the link is closed.
Open a https://sample.com/, the method not returns the result after the link is closed.
Open a https://sample.com/ and click on the close cross on the right. Get an exception.

Code
import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
      body: Center(
        child: Container(
          child: Text('Hello World'),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        child: Icon(Icons.add),
        onPressed: () async {
          final bool launched = await launch(
            'https://site.com/',
            forceSafariVC: true,
          );
          print(launched);
        },
      ),
    );
  }
}

Hi @Holofox
Thanks for the details, actually done button doesn't throw the exception, x button did

code sample
import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
      body: Center(
        child: Container(
          child: Text('Hello World'),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        child: Icon(Icons.add),
        onPressed: () async {
          final bool launched = await launch(
            'https://site.com/',
            forceSafariVC: true,
          );
          print(launched);
        },
      ),
    );
  }
}

logs
Restarted application in 813ms.
[VERBOSE-2:ui_dart_state.cc(177)] Unhandled Exception: PlatformException(Error, Error while launching https://site.com/, null, null)
#0      StandardMethodCodec.decodeEnvelope
 package:flutter/…/services/message_codecs.dart
#1      MethodChannel._invokeMethod
 package:flutter/…/services/platform_channel.dart
<asynchronous suspension>
#2      MethodChannel.invokeMethod
 package:flutter/…/services/platform_channel.dart
#3      MethodChannelUrlLauncher.launch
 package:url_launcher_platform_interface/method_channel_url_launcher.dart
#4      launch
 package:url_launcher/url_launcher.dart
#5      Home.build.<anonymous closure>
 package:triage/main.dart
#6      _InkResponseState._handleTap
 package:flutter/…/material/ink_well.dart
#7      _InkResponseState.build.<anonymous closure>
 package:flutter/…/material/ink_well.dart
#8      GestureRecognizer.invokeCallback
 package:flutter/…/gestures/recognizer.dart
#9      TapGestureRec<…>

flutter doctor -v
[✓] Flutter (Channel stable, 1.22.6, on macOS 11.2.1 20D74 darwin-x64, locale en-GB)
    • Flutter version 1.22.6 at /Users/tahatesser/Code/flutter_stable
    • Framework revision 9b2d32b605 (3 weeks ago), 2021-01-22 14:36:39 -0800
    • Engine revision 2f0af37152
    • Dart version 2.10.5
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, set ANDROID_SDK_ROOT to that location.
      You may also want to add it to your PATH environment variable.
[!] Xcode - develop for iOS and macOS (Xcode 12.4)
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install:
        sudo gem install cocoapods
[!] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] VS Code (version 1.53.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.19.0
[✓] Connected device (2 available)
    • Taha’s iPhone (mobile) • e534bcc711c9a011aa892eb51cdb60f40b3acddb • ios • iOS 10.3.3
    • iPhone 12 (mobile)     • FE087B7C-047B-40A9-AAEF-34B4AB9B4B1B     • ios • com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
    ! Error: Taha’s iPhone is busy: Copying cache files from device. Xcode will continue when Taha’s iPhone is finished. (code -10)
! Doctor found issues in 3 categories.

[✓] Flutter (Channel master, 1.27.0-2.0.pre.77, on macOS 11.2.1 20D74 darwin-x64, locale en-GB)
    • Flutter version 1.27.0-2.0.pre.77 at /Users/tahatesser/Code/flutter_master
    • Framework revision 9296a527b3 (10 hours ago), 2021-02-11 18:33:24 -0800
    • Engine revision cdc49c575b
    • Dart version 2.13.0 (build 2.13.0-25.0.dev)
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.
[!] Xcode - develop for iOS and macOS
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.
[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] VS Code (version 1.53.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.19.0
[✓] Connected device (4 available)
    • Taha’s iPhone (mobile) • e534bcc711c9a011aa892eb51cdb60f40b3acddb • ios            • iOS 10.3.3
    • iPhone 12 (mobile)     • FE087B7C-047B-40A9-AAEF-34B4AB9B4B1B     • ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
    • macOS (desktop)        • macos                                    • darwin-x64     • macOS 11.2.1 20D74 darwin-x64
    • Chrome (web)           • chrome                                   • web-javascript • Google Chrome 88.0.4324.150
    ! Error: Taha’s iPhone is busy: Copying cache files from device. Xcode will continue when Taha’s iPhone is finished. (code -10)
! Doctor found issues in 2 categories.

Thank you

Same here.
Even though the launch(url) properly launched the url in the browser, if anything fails browser side (loading canceled, lost network, url invalid, etc) : an error is propagated back to the flutter app, which seems weird.
To avoid that a workaround is to remove the await before launchUrl, but that seems a little dirty ..
A try catch doesn't help as it is not possible to separate :

instant launch(url) failures (no app found etc) : we want to catch these errors and handle it in our app
failures afterwards, in the browser after a timeout or whatever browser error : we likely don't want to handle these errors in our app (the browser already did) ?

Verified on latest stable and master channel
Actual results: Only get crashed log by clicking on Stop loading button

Demo
https://user-images.githubusercontent.com/104349824/165516234-85897876-7af1-42a0-9cf0-acaaa9373656.mp4

Sample code
Updated to url_launcher: ^6.1.0 with replacement API:
floatingActionButton: FloatingActionButton(
        child: Icon(Icons.add),
        onPressed: () async {
          final bool launched = await launchUrl(
            Uri.parse('https://sample.com/'),
            mode: LaunchMode.inAppWebView,
          );
          print('launched: $launched');
        },
      ),

flutter doctor -v
[✓] Flutter (Channel stable, 2.10.5, on macOS 12.2.1 21D62 darwin-x64, locale en-VN)
    • Flutter version 2.10.5 at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5464c5bac7 (9 days ago), 2022-04-18 09:55:37 -0700
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2

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

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

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

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

[✓] Android Studio (version 4.1)
    • Android Studio at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.7042882/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] Android Studio
    • Android Studio at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-1/203.7185775/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6842174)

[✓] IntelliJ IDEA Community Edition (version 2020.3.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • 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

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

[✓] Connected device (2 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 10 (API 29) (emulator)
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome 100.0.4896.127

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

• No issues found!

[✓] Flutter (Channel master, 2.13.0-0.0.pre.763, on macOS 12.2.1 21D62 darwin-x64, locale en-VN)
    • Flutter version 2.13.0-0.0.pre.763 at /Users/huynq/Documents/GitHub/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 4cf60f7659 (4 hours ago), 2022-04-27 03:19:05 -0400
    • Engine revision 189cdc7df7
    • Dart version 2.18.0 (build 2.18.0-61.0.dev)
    • DevTools version 2.12.2

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

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

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

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

[✓] Android Studio (version 4.1)
    • Android Studio at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.7042882/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[!] Android Studio
    • Android Studio at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-1/203.7185775/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

[✓] IntelliJ IDEA Community Edition (version 2020.3.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • 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

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

[✓] Connected device (2 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 10 (API 29) (emulator)
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome 100.0.4896.127

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

! Doctor found issues in 1 category.

I am able to reproduce this issue on the latest master and stable channels using the latest version of the url_launcher package (6.1.11).
Clicking the Done button throws no exception and works fine but the close button does.
Code Sample
Log when the 'X' button is clicked on Safari

[VERBOSE-2:dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(Error, Error while launching https://sample.com/, null, null)
#0      UrlLauncherApi.openUrlInSafariViewController (package:url_launcher_ios/src/messages.g.dart:95:7)
<asynchronous suspension>
#1      Home.build.<anonymous closure> (package:flutter_master/main.dart:32:33)
<asynchronous suspension>

  flutter doctor -v
[✓] Flutter (Channel master, 3.11.0-2.0.pre.55, on macOS 13.3 22E252 darwin-arm64, locale en-NG)
    • Flutter version 3.11.0-2.0.pre.55 on channel master at /Users/dammya/fvm/versions/master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 835b892d7f (10 days ago), 2023-05-07 01:30:22 +0530
    • Engine revision 23f730efbf
    • Dart version 3.1.0 (build 3.1.0-83.0.dev)
    • DevTools version 2.23.1

[✓] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
    • Android SDK at /Users/dammya/Library/Android/sdk
    • Platform android-33, build-tools 32.1.0-rc1
    • ANDROID_HOME = /Users/dammya/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.11.3

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

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

[✓] IntelliJ IDEA Community Edition (version 2022.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • 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

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

[✓] VS Code (version 1.78.0)
    • VS Code at /Users/dammya/.Trash/Visual Studio Code 20.07.05.app/Contents
    • Flutter extension version 3.50.0

[✓] Connected device (7 available)
    • sdk gphone arm64 (mobile)  • emulator-5554                            •
      android-arm64  • Android 11 (API 30) (emulator)
    • Damilola’s iPhone (mobile) • 71c843fa5f3dec767999f36224653c0faa78660e •
      ios            • iOS 16.4 20E247
    • iPhone 6s (mobile)         • A1D0DCE9-4C5B-4BCD-878C-61FDA439F5A8     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • iPhone 14 Pro Max (mobile) • D7F3302D-D66F-4B89-B8CF-DBEE1CDB5449     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • iPhone 11 (mobile)         • 8822E99B-23B4-4B63-A6C5-CE4E3C496466     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-arm64   • macOS 13.3 22E252 darwin-arm64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 113.0.5672.92

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

• No issues found!

[✓] Flutter (Channel stable, 3.10.0, on macOS 13.3 22E252 darwin-arm64, locale
    en-NG)
    • Flutter version 3.10.0 on channel stable at /Users/dammya/sdks/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 84a1e904f4 (7 days ago), 2023-05-09 07:41:44 -0700
    • Engine revision d44b5a94c9
    • Dart version 3.0.0
    • DevTools version 2.23.1

[✓] Android toolchain - develop for Android devices (Android SDK version
    32.1.0-rc1)
    • Android SDK at /Users/dammya/Library/Android/sdk
    • Platform android-33, build-tools 32.1.0-rc1
    • ANDROID_HOME = /Users/dammya/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.11.3

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

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

[✓] IntelliJ IDEA Community Edition (version 2022.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • 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

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

[✓] VS Code (version 1.78.0)
    • VS Code at /Users/dammya/.Trash/Visual Studio Code 20.07.05.app/Contents
    • Flutter extension version 3.50.0

[✓] Connected device (7 available)
    • sdk gphone arm64 (mobile)  • emulator-5554                            •
      android-arm64  • Android 11 (API 30) (emulator)
    • Damilola’s iPhone (mobile) • 71c843fa5f3dec767999f36224653c0faa78660e •
      ios            • iOS 16.4 20E247
    • iPhone 6s (mobile)         • A1D0DCE9-4C5B-4BCD-878C-61FDA439F5A8     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • iPhone 14 Pro Max (mobile) • D7F3302D-D66F-4B89-B8CF-DBEE1CDB5449     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • iPhone 11 (mobile)         • 8822E99B-23B4-4B63-A6C5-CE4E3C496466     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-arm64   • macOS 13.3 22E252 darwin-arm64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 113.0.5672.92

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

• No issues found!

If anyone is still experiencing the same issue while attempting to launch an external application (eg Maps) adding mode: LaunchMode.externalNonBrowserApplication to launchUrl seems to fix it.
class MapLauncherService {
  static Uri getMapLaunchUri(double latitude, double longitude) {
    if (Platform.isAndroid) {
      return Uri.parse('geo:$latitude,$longitude');
    } else if (Platform.isIOS) {
      return Uri.parse('https://maps.apple.com/?q=$latitude,$longitude');
    } else {
      throw Exception('Platform not supported');
    }
  }

  static Future<void> launchMap(double latitude, double longitude) async {
    final uri = getMapLaunchUri(latitude, longitude);
    await launchUrl(uri, mode: LaunchMode.externalNonBrowserApplication);
  }

Thanks for the solution @msuddaby
In my case this solved the problem
mode: LaunchMode.externalApplication


Add  parquet.version property to config it in different profile

What changes were proposed in this pull request?
Add new property named parquet.version, and config it in different build profile,
in default profile we use 1.8.2 because there is a bug fix for skip data operation.
in spark-2.2 profile use 1.8.2 and in spark-2.3 profile use 1.8.3
How was this patch tested?
NA

LGTM


[CS] Feature needs to be implemented in Group Key Management

Feature description
CacheAndSync[CS](The ability to support CacheAndSync security policy and MCSP) feature has to be implemented in Group Key Management.
Platform
All Platform
Test plan impact :
TC-SC-5.1 - https://github.com/CHIP-Specifications/chip-test-plans/blob/master/src/group_communication.adoc#tc-sc-5-1-adding-member-to-a-group-th-as-admin-and-dut-as-group-member
Reference :
Spec : https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/data_model/Group-Key-Management-Cluster.adoc

This will need a new test plan as 5.1 doesn't test reboot behaviour


Fix bug #DNN-21129

fixes #2135

Possible regression due to #2035

Summary

Pull back the deleted code
Check if folder object null, then go for portal base folder

@dnnsoftware/tag please review.
Also, I think this should go with 9.2.1 as it fixes a regression we inadvertently introduced

I've merged this into development and release/9.2.1

@bdukes, when merging can you also add the milestone? It greatly helps with generating the release notes and tracking what was in each release. I've added it to this pull request already.

Sure thing, @ohine, I definitely didn't think about that.
That said, since this issue is addressing a regression introduced during 9.2.1 development, do we want it showing up "on the roadmap"?

IMO, yes. I think it's important to have a full list of all changes, regardless if it's a fix to a new issue that was introduced during the development of an upcoming release.


For Laravel project, add it where ? please

          For Laravel project, add it where ? please

Originally posted by @applgeekam in https://github.com/jaredpalmer/razzle/issues/354#issuecomment-670698129

tambem gostaria de saber


Detect submodules not synced

Add code in the CMake build system to automatically run git submodule update.
Addresses #553

Codecov Report

Merging #556 into master will increase coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #556      +/-   ##
==========================================
+ Coverage   81.28%   81.29%   +<.01%
==========================================
  Files          72       72
  Lines        2731     2726       -5
==========================================
- Hits         2220     2216       -4
+ Misses        511      510       -1

Flag
Coverage Δ

#py27
?

#py36
?

#py37
81.29% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

...eio/opentimelineio-bindings/otio_anyDictionary.cpp
100% <0%> (ø)
:arrow_up:

...elineio/opentimelineio-bindings/otio_anyVector.cpp
100% <0%> (ø)
:arrow_up:

...ntimelineio/opentimelineio-bindings/otio_utils.cpp
85.88% <0%> (+0.65%)
:arrow_up:

Continue to review full report at Codecov.

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

@swallitsch great note!  I added an extra check in the CMakeLists.txt in the src/deps folder that explicitly checks the submodules to make sure they exist with a more exact message of what might be going on.


Week 3 Individual Final - Nathan

Grade:   (Graded by: Alex Do)
MY VIDEO - https://youtu.be/KfwqwhG1ViQ
Github Pages -
My Individual Github Page: https://prorichyman.github.io/NathanIndividual/
Notes + Actions Page: https://prorichyman.github.io/NathanIndividual/section5
My Review Tickets -
Week 0: https://github.com/PunarvasuS/PopcornCritics/issues/6
Week 1: https://github.com/PunarvasuS/PopcornCritics/issues/23
Week 2: https://github.com/PunarvasuS/PopcornCritics/issues/29
Commits -
Github Pages Commits: https://github.com/ProRichyMan/NathanIndividual/commits/main
Replit Commits (Doesn't have many because I originally made the Replit without linking it to Github, so I remade it): https://github.com/ProRichyMan/Nathanreplit/commits/main
My Replit -
Replit Page -<EMAIL_ADDRESS>Crossover Work -
Crossover Commits: https://github.com/AlexD017/Tri3-IndivRepo/commits?author=ProRichyMan
Crossover Repo<EMAIL_ADDRESS>

Score- 9.8/10
Just needed to show contributions as well as commits but overall the video was edited well and it was very easy to navigate and grade the things that you have done.

Score: 10/10 Graded by Alex Do
The video showed everything needed for the review. Could've shown more for own github page and extend the video length.
Individual Coding:

[x] GitHub Pages showing key learnings and challenges conquered from Tech Talks

[x] GitHub commits you have made, show GitHub insights into your code commits.

[x] Show Code running on Replit as well as IntelliJ

[x] Menu review illustrating use of Lists and navigation: show runtime, code organization, code and comments

[x] List and Loops: show runtime, code organization, code and comments

[x] Class review and understanding: show runtime, code organization, code and comments

[x] Show Crossover contribution:  Highlight work you did in crossover project: show their Replit runtime, code commit(s) in their

[x] GitHub repo. Show anything you have done to enhance what you have learned from Python code

[x] Video 2 minutes: showing the above, quality suggested as follows

[x] Make sure you cover everything, but create your own order and optimize time

Score: 9.9/10 Akhil's video Graded by Alex Do
Comment: Could've shown his own commits from their crossover's repository
Individual Coding:

[x] GitHub Pages showing key learnings and challenges conquered from Tech Talks

[x] GitHub commits you have made, show GitHub insights into your code commits.

[x] Show Code running on Replit as well as IntelliJ

[x] Menu review illustrating use of Lists and navigation: show runtime, code organization, code and comments

[x] List and Loops: show runtime, code organization, code and comments

[x] Class review and understanding: show runtime, code organization, code and comments

[x] Show Crossover contribution:  Highlight work you did in crossover project: show their Replit runtime, code commit(s) in their

[x] GitHub repo. Show anything you have done to enhance what you have learned from Python code

[x] Video 2 minutes: showing the above, quality suggested as follows

[x] Make sure you cover everything, but create your own order and optimize time

Nathan, first off I like your positive energy in class.  Most of the time you seem to be engaged in lectures and know tasks.   Your video making skills and plan for presenting was amazing.  Your technical words and descriptions are getting to be very strong.   Only exception to this is when you spoke about classes and recursion, seem like you could have spent another 10-15 seconds on this VERY IMPORTANT topic.   Similar to how you pointe and illustrated command of imports and the functions in the menu.
Looking at your GitHub pages is very impressive.  I can see you put thought into organization and how you wanted things to look.  It was naturally easy for me to see your organization.  A good design does not need instruction and you have that.   Only comment, is the home pages seems like it needs a little introduction blurb/message.  But, not to much as it is not the your style.
Regarding you REPL and code.  It seems like your menu with misc title and lack of comments in the entire section, plus minimized comments in the video make me feel you have not really owned this code yet.  This all lack the quality, organization, and command that I see in you and your other work.   Functions or Classes need comments and names like everything else that shows understanding.
In all, I like your work.  Great job.   9/10


Don't let loaders override hardcoded configuration

New approach of #170 (see comment).
The approach in this PR is simple: we load a zero-initialized configuration with 1) environment variables, 2) databrickscfg, 3) environment variables again, to make sure they have precedence over databrickscfgs.
This configuration is then merged into the target configuration, ignoring attributes that were already set.
The net result is that:

attributes that are set on the struct can never be overridden
attributes configured through environment variables take precedence over attributes loaded from a configuration file

i think this should be closed in favor of https://github.com/databricks/databricks-sdk-go/pull/306


Release version 0.0.14

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (bd5c419) to head (7bd29f6).

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #417   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           94        94
  Lines         2439      2439
  Branches       211       211
=========================================
  Hits          2439      2439

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


Linking to deprecated gist

The bullet point "Develop your system such that it can handle connection blips caused by patching and failover" currently links to [https://gist.github.com/JonCole/317fe03805d5802e31cfa37e646e419d#file-azureredis-patchingexplained-md] which is now just a message that links back to https://learn.microsoft.com/en-us/azure/azure-cache-for-redis/cache-failover.

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

ID: d234a81a-c67a-b1c5-cc9d-2d0d8a38cae1
Version Independent ID: 30e4d53c-0c38-0e3a-8e63-3818b09b79fa
Content: Azure Cache for Redis management FAQs
Content Source: articles/azure-cache-for-redis/cache-management-faq.yml
Service: cache
GitHub Login: @flang-msft
Microsoft Alias: franlanglois

@crispygoth Thanks for your findings,We will investigate and update as appropriate

Thanks for providing feedback that helps improve our documentation. This issue has been resolved and we are closing the issue. #please-close


Minor changes

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (a740979) to head (74676b3).
Report is 35 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #86   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           12        12
  Lines          869       865    -4
=========================================
- Hits           869       865    -4

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


feat: Counters

Please provide a paragraph or two giving a summary of the change, including relevant motivation and context.
Checklist:
Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge.

[ ] If the pull request requires a cryptography review (e.g. cryptographic algorithm implementations) I have added the 'crypto' tag.
[ ] I have reviewed my diff in github, line by line and removed unexpected formatting changes, testing logs, or commented-out code.
[ ] Every change is related to the PR description.
[ ] I have linked this pull request to relevant issues (if any exist).

Benchmark results
No metrics with a significant change found.

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit 88fcf8d3 and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
128 txs

l1_rollup_calldata_size_in_bytes
45,444
179,588
716,132

l1_rollup_calldata_gas
222,960
868,268
3,449,792

l1_rollup_execution_gas
867,069
3,746,321
23,306,557

l2_block_processing_time_in_ms
1,318 (-13%)
5,086
20,997

note_successful_decrypting_time_in_ms
353 (-8%)
1,137 (+4%)
4,092 (-1%)

note_trial_decrypting_time_in_ms
63.6 (-32%)
60.8 (+73%)
136

l2_block_building_time_in_ms
14,863
59,158
237,487

l2_block_rollup_simulation_time_in_ms
10,567
42,135
169,415

l2_block_public_tx_process_time_in_ms
4,266
16,950
67,662

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
15,159 (-1%)
29,054 (+1%)

note_history_successful_decrypting_time_in_ms
2,956 (+6%)
5,350 (-2%)

note_history_trial_decrypting_time_in_ms
108 (-26%)
163 (-1%)

node_database_size_in_bytes
3,615,567
3,729,404

pxe_database_size_in_bytes
29,923
59,478

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
210
44,681
25,561

private-kernel-ordering
136
30,953
14,809

base-rollup
1,072
128,374
881

root-rollup
82.2 (-4%)
4,088
889

private-kernel-inner
286
71,208
25,561

public-kernel-private-input
202
31,863
25,561

public-kernel-non-first-iteration
200
31,905
25,561

merge-rollup
9.65
2,608
881

Miscellaneous
Transaction sizes based on how many contracts are deployed in the tx.

Metric
0 deployed contracts
1 deployed contracts

tx_size_in_bytes
15,459
31,883

The action is still failing but now it's because of a real integration issue between BB and nargo. BB's grumpkin crs is not big enough and it's being downloaded to do nargo info


Adds support for call back function - Reflection function.

-Fixes #643

Now you can add custom function with predicate.
Added tests to demo it.

:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Connectors.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Core.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Interpreter.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.LanguageServerProtocol.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Transport.Attributes.dll

:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Connectors.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Core.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Interpreter.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.LanguageServerProtocol.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Transport.Attributes.dll

    internal async ValueTask<DValue<T>> EvalArgAsync<T>(FormulaValue arg, EvalVisitorContext context, IRContext irContext)

Do we still need to pass in Context here?
Or is it captured in the lamba now?

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/EvalVisitor.cs:74 in 33e854c. [](commit_id = 33e854caa7f3a7af3f925e0fb51bb9cacc36f780, deletion_comment = False)

    internal async ValueTask<DValue<T>> EvalArgAsync<T>(FormulaValue arg, EvalVisitorContext context, IRContext irContext)

We do as some caller to EvalArgAsync mutates context and passes that hence the context on lambda would be different one.

In reply to:<PHONE_NUMBER>

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/EvalVisitor.cs:74 in 33e854c. [](commit_id = 33e854caa7f3a7af3f925e0fb51bb9cacc36f780, deletion_comment = False)

:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Connectors.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Core.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Interpreter.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.LanguageServerProtocol.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Transport.Attributes.dll

:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Connectors.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Core.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Interpreter.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.LanguageServerProtocol.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Transport.Attributes.dll

:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Connectors.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Core.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Interpreter.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.LanguageServerProtocol.dll
:heavy_check_mark: No Binary Compatibility issues for Microsoft.PowerFx.Transport.Attributes.dll


abieos with to/from_json fix for SHiP transaction_trace

Change Description

Update to the latest abieos which includes a fix for to_json/from_json for SHiP transaction_trace.

Change Type
Select ONE:

[ ] Documentation

[ ] Stability bug fix

[x] Other

[ ] Other - special case

Testing Changes
Select ANY that apply:

[x] New Tests

[ ] Existing Tests

[ ] Test Framework

[ ] CI System

[ ] Other

Consensus Changes

[ ] Consensus Changes

API Changes

[ ] API Changes

Documentation Additions

[ ] Documentation Additions

The abi version in src/test.cpp should be 1.0 not 1.1, correct?

Either version should be supported.


Error output when client terminates

I have a python server and client.
When my python grpc client terminates sucessfully i get the following output in the console.
In the client console:
E0817 10:19:06.363000000  6492 chttp2_transport.c:1810] close_transport: {"created":"@1471421946.363000000","description":"End of TCP stream","file":"c:\jenkins\workspace\gRPC_build_artifacts\architecture\x64\language\python\platform\windows\vsprojects\..\src\core\lib\iomgr\tcp_windows.c","file_line":179}
In the server console:
E0817 10:19:06.353000000  6644 chttp2_transport.c:1810] close_transport: {"created":"@1471421946.353000000","description":"Failed parsing HTTP/2","file":"c:\jenkins\workspace\gRPC_build_artifacts\architecture\x64\language\python\platform\windows\vsprojects\..\src\core\ext\transport\chttp2\transport\chttp2_transport.c","file_line":1726,"referenced_errors":[{"created":"@1471421946.353000000","description":"End of TCP stream","file":"c:\jenkins\workspace\gRPC_build_artifacts\architecture\x64\language\python\platform\windows\vsprojects\..\src\core\lib\iomgr\tcp_windows.c","file_line":179}]}
The error does not cause the server to close and i can run a new client without restarting the server.

With what version of gRPC Python are you working?

My current version is 0.15.0

Upgraded to the prerelease 1.0.0rc2 and it seems to have stopped outputting the error

Glad to hear it and please let us know if you see any other unexpected output in 1.0.0rc2 or later.

Will do!


Feat: Support specify disk owner

What this PR does / why we need it:
To support custom storage system use disks by LocalDiskClaim
Special notes for your reviewer:
How to use?

Apply LocalDiskClaim and specify its owner (For admin)

$ cat << EOF | kubectl apply  -f -
apiVersion: hwameistor.io/v1alpha1
kind: LocalDiskClaim
metadata:
  name: localdiskclaim-sample
spec:
  nodeName: 172-30-46-10
  description:
    diskType: HDD
EOF

Watch and consume the LocalDiskClaim when its status is Bound (For owner)

your logic here in code

Update status to Consumed when disk backing the LocalDiskClaim is consumed(For owner)

your logic here in code

Observe the LocalDiskClaim and it will be deleted soon (For admin)

$ kubectl get ldc localdiskclaim-sample -w

Does this PR introduce a user-facing change?

See above

Codecov Report

Merging #681 (8f52b67) into main (5abf833) will increase coverage by 0.04%.
The diff coverage is 11.11%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #681      +/-   ##
==========================================
+ Coverage   30.70%   30.74%   +0.04%
==========================================
  Files          25       25
  Lines        1547     1548       +1
==========================================
+ Hits          475      476       +1
  Misses       1007     1007
  Partials       65       65

Impacted Files
Coverage Δ

...nager/controller/localdisk/localdisk_controller.go
25.95% <0.00%> (+0.39%)
:arrow_up:

...roller/localdiskclaim/localdiskclaim_controller.go
31.18% <0.00%> (-0.69%)
:arrow_down:

.../local-disk-manager/handler/localdisk/localdisk.go
21.56% <100.00%> (+0.77%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Revisit Error handling

Since the library uses enums for errors, it means cases can't be added without breaking things; might be nice to revisit this model to see if something can be done to improve things.

#987 was tripped up by some of this.

I think some of the other Apple OSS packages (ArgumentParser?, docs?), dodged some of this by dropping the enums and using structs with statics (or something like that).

NIO has tried to adopt this as well. I'm in the process of trying to do some Thought Leadership(tm) about how to do this in the OSS ecosystem, but I wouldn't expect this to land in the near future. But yeah, structs with static lets work well.

@Lukasa any updates on guidance?

Yeah so our preferred pattern now looks like something like this:
struct ProtobufError: Error, Hashable, CustomStringConvertible {
    public var errorCode: ErrorCode

    public var sourceLocation: SourceLocation {
        return self.backingStorage.sourceLocation
    }

    public var errorDescription: String {
        return self.backingStorage.errorDescription
    }

    private let backing: BackingStorage

    init(errorCode: ErrorCode, description: String, file: String = #file, line: UInt = #line, function: String = #function) {
        self.errorCode = errorCode
        self.sourceLocation = SourceLocation(file: file, line: line, function: function)
        self.description = description
    }

    public static func ==(lhs: ProtobufError, rhs: ProtobufError) -> Bool {
        return lhs.errorCode == rhs.errorCode
    }

    public static func hash(into hasher: inout Hasher) {
        hasher.combine(errorCode)
    }

    public var description: String {
        return "ProtobufError(errorCode: \(errorCode), description: \(description), file: \(sourceLocation.file), line: \(sourceLocation.line), function: \(sourceLocation.function))"
    }
}

extension ProtobufError {
    public struct ErrorCode: Hashable, CustomStringConvertible {
        private enum Backing: Hashable {
            case errorOne  // your names go here
            case errorTwo
        }
        private var backing: Backing

        init(_ backing: Backing) {
            self.backing = backing
        }

        public static let errorOne = Self(.errorOne)
        public static let errorTwo = Self(.errorTwo)

        public var description: String {
            return String(describing: backing)
        }
    }
}

extension ProtobufError {
    public struct SourceLocation {
        public var file: String

        public var line: UInt

        public var function: String
    }
}

extension ProtobufError {
    final class BackingStorage {
        var sourceLocation: SourceLocation

        var errorDescription: String

        init(errorDescription: String, sourceLocation: SourceLocation) {
            self.sourceLocation = sourceLocation
            self.errorDescription = errorDescription
        }
    }
}

This is an annoyingly large amount of code but it maximises the utility of the error. The errorCode allows developers to programmatically understand the kind of error thrown, in case they want to handle it. The source location and error description allow us to both record the why of an error, and also to indicate from where in the code it originated. These two fields are stuffed into a class object to reduce the contiguous size of the Error, enabling it to be stored inline in an existential container instead of side-allocated. The errorCode is kept in the main error object as it's the most likely field to be interacted with by user code.

If we're going to do this, it seems logical to also look at #580 & #581 at the same time.  So the meta question is of all of our different Error enums, which ones do we want to add the context like SourceLocation and description above?
The current TextFormat and JSON parsing probably does't even have complete offset tracking (because of creating nested objects in contexts) let along line/column info.  Binary errors could attempt context via byte offsets.
And just about all of them might in theory be able to do something about a field number path to where the serialization/parsing failed, but that's potentially a lot of temp data to build/throw away in non error cases.
@Lukasa I guess there is no way to do something like associated data since things aren't enums any more?  So things like unknown enum names (TextFormat/JSON) would just go into the description?
Or we just use 2.x to get away from enum Errors and don't bother with any of the additional context for the time being.  I guess adding things once these are more structured is not a breaking change.
@Lukasa @tbkka @allevato @FranzBusch thoughts?

@Lukasa I guess there is no way to do something like associated data since things aren't enums any more? So things like unknown enum names (TextFormat/JSON) would just go into the description?

Broadly, yes. You can achieve some amount of this by having computed properties with optional return values where the return is only non-nil in the appropriate case.

This is happening via #1612

@thomasvl given we've decided to change the approach of #1612 slightly, do we still consider this done once that PR is merged? Or do we only consider it done once we've added back removed errors (i.e. once the cleanup for v2 happens: https://github.com/apple/swift-protobuf/issues/1657)?

I guess since we have a new model, we can call it this done and track the migration in the other issue.


Cli first version

Basic tree navigation appears to work. More testing is needed but it's stable enough to push to master.
Can create and load databases, and view any class or type of resource in the tree. Next version will allow the weighted average with pseudo schematics as well
-load and -create command line commands are available to allow scripts to boot the program
Different options are now available in settings.lua to play with.

Merged not deleted


Test and lint

A few changes:

Using lerna to install all subprojects and run all tests
Using eslint to lint all JS files in source folders
Added .travis.yaml for CI

LGTM


GAIL throws error when obs space is MultiDiscrete

Describe the bug
https://stable-baselines.readthedocs.io/en/master/modules/gail.html states that GAIL supports MultiDiscrete obs space, but https://github.com/hill-a/stable-baselines/blob/master/stable_baselines/gail/dataset/record_expert.py ln 50 shows it asserts it is either Discrete or Box, my input is MultiDiscrete and it is throwing the error.
Code example
MultiDiscrete([36 36 51 26 36 36  3 18 26 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3
 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3
 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3 37 37  3
 37 37  3 37 37  3 37 37  3 37 37  3  6  3  6  6  6 37 37 37 37 37 37 37
 37 37 37 26 51 26  4  6  4  5  5  5  5])
---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
<ipython-input-39-35ba2a80501c> in <module>
     14 # when using something different than an RL expert,
     15 # you must pass the environment object explicitly
---> 16 generate_expert_traj(expert, 'expert', env, n_episodes=10)

/usr/local/lib/python3.6/dist-packages/stable_baselines/gail/dataset/record_expert.py in generate_expert_traj(model, save_path, env, n_timesteps, n_episodes, image_folder)
     49     # Sanity check
     50     assert (isinstance(env.observation_space, spaces.Box) or
---> 51             isinstance(env.observation_space, spaces.Discrete)), "Observation space type not supported"
     52
     53     assert (isinstance(env.action_space, spaces.Box) or

AssertionError: Observation space type not supported

ps. installed mpi4py

Hello,
doc should be probably updated (but we having issues with travis now :/)
Anyway, I would recommend you to use GAIL implementation from https://github.com/HumanCompatibleAI/imitation
which is better maintained (and based on stable-baselines3 now).


Why do certain models not load?

Question
I was keen to try:
https://huggingface.co/upstage/SOLAR-10.7B-Instruct-v1.0
I tried:
import {
  AutoModelForCausalLM,
  AutoTokenizer,
} from '@xenova/transformers';

const autoTokenizer = await AutoTokenizer.from_pretrained(
  'Upstage/SOLAR-10.7B-Instruct-v1.0',
);

const model = await AutoModelForCausalLM.from_pretrained(
  'Upstage/SOLAR-10.7B-Instruct-v1.0',
);

But it fails with an error:
Error: Could not locate file: "https://huggingface.co/Upstage/SOLAR-10.7B-Instruct-v1.0/resolve/main/onnx/decoder_model_merged_quantized.onnx".

Is this an error on my side, is the model incompatible, ... ?

You should convert the model to ONNX.
https://github.com/xenova/transformers.js?tab=readme-ov-file#convert-your-models-to-onnx

Hi there 👋 As @hans00 pointed out, transformers.js requires the models to be converted to ONNX in order to work. Another complication, however, is the choice of model: Upstage/SOLAR-10.7B-Instruct-v1.0 is a 10.7B parameter model, which is too large to run with the library (at least for now).

Hi @xenova. How does one know if a model is too large to run with the library? Could the ONNX conversions and model size limits be documented in the readme? Thank you!


Add style properties classes

This PR tracks creation of abstract "style properties" classes which can be inherited by plottable classes which have objects like LabelStyle, LineStyle, MarkerStyle, etc. to provide top-level shortcut properties to things like LabelRotation, LineWidth, and MarkerSize.
This strategy minimizes code duplication inside plottables and standardizes how these configurations are set (e.g., TextSize vs. FontSize)
Resolves #3658

[x] LabelStyle
[ ] LineStyle
[ ] FillStyle
[ ] MarkerStyle
[ ] ArrowStyle

Oof... can't do multiple inheritance in C# 💀
I can use interfaces, but that's a pain because the plottable developer will have to implement tons of little helper methods. I may have to rethink this strategy.


People's names should not be translated

in my opinion the names or the company "Microsoft" shouldn't be translated or there shouldn't be any translation.

In general, company names shouldn't be translated.
In languages with different alphabets, they may be transliterated according to the company's policies.

OK so that's a no. sorry if you need it again @NeunEinser but you can change the name of the Italian translation of the credits to "Loweredgames" instead of "Lorenzo03102000". that I had changed the username (I will never change it again).

thanks

you can change the name of the Italian translation of the credits to "Loweredgames" instead of "Lorenzo03102000". that I had changed the username (I will never change it again).

Thanks, it's updated for the next version. I can change the name all the time, it's not a big deal at all ;)

you can change the name of the Italian translation of the credits to "Loweredgames" instead of "Lorenzo03102000". that I had changed the username (I will never change it again).

Thanks, it's updated for the next version. I can change the name all the time, it's not a big deal at all ;)

ok 👍


EKB/EDB - EDBEvents deprecated, moved EDBObject<->Model conversion, PersistInterface

http://issues.openengsb.org/jira/browse/OPENENGSB-2708
http://issues.openengsb.org/jira/browse/OPENENGSB-2709
http://issues.openengsb.org/jira/browse/OPENENGSB-2710
http://issues.openengsb.org/jira/browse/OPENENGSB-2718
This pull requests main parts are:

moving the EDBObject<->OpenEngSBModelEntry logic into the EKB
EDBEvents get handled through the EKB (but EDBEvents get converted and then forwarded to the EKB)
new service of the EKB -> PersistInterface

If you want, have a short look at it. Also it would be nice to know if this should only be merged into the master, or to v2.x.y as well :-)

addDocumentation


Parsing quasi-xml file with punctuation and special chars

I have the data that looks like this:
<LABEL="some value"> <OTHER="something else">
Each line contains 0 or more such XML tags. The tag labels are all caps but the value is basically any string, including punctuation.
I came up with the following grammar but couldn't get it working on string where values contain characters, digits, punctuation and other chars.
ltr_parser = Lark(r"""
?line: facet*
?facet: "<" label "=\"" value+ "\">"
label: /[A-Z]+/
value: /.+?/

%import common.NUMBER
%import common.WORD
%import common.ESCAPED_STRING   -> STRING
%ignore " "
""", start='line')

text = '<TAG="value value"> <BUZ="jazz 100%">'

tree = ltr_parser.parse(text)
print(tree)

Is there a way to reliably match the "value" that can contain different characters, including punctuation and special symbols?
Thanks

In general, and especially in Lark, simpler is better.
ltr_parser = Lark(r"""
?line: facet*
?facet: "<" label "=" STRING ">"
label: /[A-Z]+/
%import common.NUMBER
%import common.WORD
%import common.ESCAPED_STRING   -> STRING
%ignore " "
""", start='line')

Thank you, @erezsh this change did the trick! I was too focused on "value" and didn't see that there already exists a terminal node which will match!


Bootstrap badly imported

Add bootstrap.min.css and remove the whole (unused) lib source.

fixed by 97c392


Webpack incompatability

In these referenced line, the import doesn't include the .json extension, which is creating problems for Webpack. Could this be fixed? I've already tested that just adding the extension fixes the problem. If a PR is welcome, I'd be glad to make it.
https://github.com/wooorm/bcp-47/blob/ff06090fc7d703f403e9a02c61ebbbe185747a5c/lib/parse.js#L6-L7

This is an issue with your WebPack config. Here are a couple of similar issues raised with the projects I maintain, some of them contain detailed conversations about how to fix it in your config.
However, there is no downside in including the .json extension here, so PRs welcome!


Is babel-standalone necessary?

It adds a huge amount of code into resulting bundles for a very little gain in my opinion. I haven't look into alternatives yet, want to know your opinion first.

Buble is a good and much smaller alternative but it would make sense to be able to avoid it entirely.

@FredyC @sapegin You only include babel-standalone when importing from marksy/components :) There is a ton of unnecessary stuff in it, only really need the JSX transpilation. Would be nice to see if there is a project that does exactly that.


add CoreDNS and TLS to README todo list

To make the status clearer to people discovering usernetes it should be obvious that CoreDNS is not yet implemented.

Thanks for the PR, but I think we should clarify what is really unimplemented and what is just not packaged in this repo. The only really missing stuff is cgroup AFAIK.
Also, please sign the commit (git commit -s).

@AkihiroSuda thank you for your quick response.  Since the ticket #73 exists I thought it was planned to package CoreDNS in this repo.  Since most stuff won't work on k8s without it I thought it might be good to include this up front in the readme.

At least let's split the bullet point list into implementation tasks and packaging tasks.

To be honest, I am unsure which ones would be implementation and which are packaging tasks. Maybe it's better if you split the list :sweat_smile: and I just close this MR.

CoreDNS is being added in https://github.com/rootless-containers/usernetes/pull/170


Per-request credential override

Add ability to use credentials from the context to override credentials used for a given request

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 93.07%. Comparing base (8fd0160) to head (a9fbd97).
Report is 123 commits behind head on develop.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #3146      +/-   ##
===========================================
- Coverage    93.14%   93.07%   -0.07%
===========================================
  Files           66       66
  Lines        14237    14242       +5
===========================================
- Hits         13261    13256       -5
- Misses         976      986      +10

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


Payment Order Posting Twice

Hello All,
I am having an issue with the application. I am implementing a cashnet service that uses HTTP Notifications. All is going well except when I call _orderService.CreateOrder(). For some reason my code appears to be calling the service twice even though my client is calling it once (verified via logs).
The method type is POST. I will show it below:
This method is for testing right now and more security will be added once I get it working locally.
public async Task<ActionResult> CreatePayment(long fkey)
{
  var cart = await _cartService.GetActiveCartDetailsByCartId(fkey);
  if (cart != null)
  {
       var orderCreateResult = await _orderService.CreateOrder(cart.Id, "Cashnet", CalculatePaymentFee(cart.OrderTotal), OrderStatus.PendingPayment);
        return Ok((Status: "success", OrderId: orderCreateResult.Value.Id));
   }
   else
   {
        return Ok((Status: "fail", OrderId: -1));
   }
}

When I call this, this is what I get in my dashboard.

For some reason it is creating a pending payment order and then another one with the new status.
Any insight will be helpful.

Check OrderStatus.PendingPayment method.


does Cartographer suite for mmwave radar (66/77Ghz) ?

There is currently no direct support for Radar sensor in Cartographer.

There is currently no direct support for Radar sensor in Cartographer.


Typescript definitions

Feature Request
Typescript definitions
Why it is needed
It is needed for people who want to use this package in typescript projects
Possible implementation
I could try made typings based on existing flow typings from src/types.js file.
Code sample
Example in flow:
export type IOSNativeProps = $ReadOnly<{|   ...BaseProps,   date?: ?Date,   locale?: ?string,   minuteInterval?: ?(1 | 2 | 3 | 4 | 5 | 6 | 10 | 12 | 15 | 20 | 30),   mode?: IOSMode,   timeZoneOffsetInMinutes?: ?number, |}>;
in Typescript would look sth like this:
export type IOSNativeProps = Readonly<BaseProps & {   date?: Date,   locale?: string,   minuteInterval?: (1 | 2 | 3 | 4 | 5 | 6 | 10 | 12 | 15 | 20 | 30),   mode?: IOSMode,   timeZoneOffsetInMinutes?: number, }>;

It seems there is a file here
but I'm wondering why its extension is .js instead of .ts and not linked in package.json to automatically detected by typescript engine.

Yes, there is a file with types, but it is for flow types system and there is no types definitions for typescript (changing only file extension won't work)

Oh, you're right, I didn't know that.

Could I submit PR with index.d.ts file?

we all will thank you if you can and take time to do that :)

Correct this was ported from the React-Native library with the flow definitions. I don't mind bringing in type definitions to unblock typescript devs. Imho I think we should move away from flow. I'm going to check what other community modules are doing wrt to that. Consider the PR merged and published with minor semver bump.


Bigtable client should be marked Alpha

We need a variety of features before we can consider the Bigtable client to be Alpha.  Please reduce the labeling on the README.

@sduskis fixed in #969 and merged!


feat(flexible-port): added a new parameter in both services to allow changing the ports

It allows the practitioner to change the ports of each service. Now, I'm using the chart and I'm not able to expose the load balancers with the port 80 because of that. With this code, I'm solving this issue.

Now, I'm using the chart and I'm not able to expose the load balancers with the port 80 because of that.

Can you elaborate on your problem? How are you configuring the load balancing and why do the hardcoded service ports prevent your setup from working?

Now, I'm using the chart and I'm not able to expose the load balancers with the port 80 because of that.

Can you elaborate on your problem? How are you configuring the load balancing and why do the hardcoded service ports prevent your setup from working?

Well, when you try to create 2 load balancers, they will be pointing to an external IP in port 8080. I'm required to type the port. And if I create a DNS like CloudFlare for those external IPs, it won't work in port 80. I'll have to make extra effort to have it working in port 80. Like patching the services, or creating my own services (which is the approach I'm doing). Look at the SonarQube Helm Chart for example: https://github.com/SonarSource/helm-chart-sonarqube/blob/master/charts/sonarqube/values.yaml#L68. If they don't do that, I'll be obligated to type: sonar.mycompany.com:9000. Which actually is not so helpful, or seamless.

Ah I see, so you're using service.type: LoadBalancer then? I think I got a bit confused as to what load balancer you meant. So far most people just use an ingress instead of exposing the services directly.

Yes! I'm exposing both directly, and I have DNS for both. Yes! I'm using LoadBalancer.


Color tiles based on status

I would like to have the background / border of tiles changed depending on the status of a ticket.

Love the add-on very much. How much would you want to continue development to allow for colours based on workflow status? :)

copied from chrome-store

Currently, the coloring is associated with "priority", but I think that it would be better if it was associated with "Status". Because, the most important thing about the long list of issue, which are open/closed/in-progress. The small indicator can be added on the top-right of boxes to show its priority. I believe that this indication type is better.
Can you add change this way, or, at least, add an option the use colors for "status" rather than "priority"?


Videos

[x] Getting sats into Keeper and launching WP within it.
[x] Executing Tx0 ( show doxic change as well)
[x] Executing the first mix. Show till post mix.
[x] Post mix to remix.
[x] Post remix to transfer to Vault

Closer to launch each video could be have a dedicated issue to itself.

All videos created and submitted by Swati which were posted on Twitter months back.


duplicate messages

Here's a set of data that's causing duplicate messages.
https://gist.github.com/jedgalbraith/6e18804b5b6a0a5f78a3de749e5183b3
And here's a screenshot of what it looks like.

When I look at the json, I see two sequences being passed, which would result in two sequences visually:
# data.db :
test-comp-users/data.db

# data.db.1
test-comp-users/data.db/1/1-update

Does that sound right?

found in : 258.json

Yes, there should be two sequences visually. The problem is that both sequences have the same message(updating component) when they should be different. So it's like the message from one is being used for the other.

When I test locally, I'm unable to replicate it so they have the same message, I see : http://image.prntscr.com/image/cd7541bd6c8b403094955260e09a0358.png

I can't replicate this any more either. It must have been a fluke or something has changed since. I'll created another issue if it happens again.


how can use two different class one for dark and on for light in one element

hi!
how can use two different class one for dark and on for light in one element
for example

Because in some cases, in two different themes, the colors for one part may not be the same

Is this what you need ?

Otherwise please share the following: config and minimalistic reproducible example


Add X-Filter header for updated

closes #796

Coverage decreased (-0.1%) to 85.069% when pulling 675bba5fce9f03a035afe3e11121e05a5a0d3ef3 on mparke:event-updated-filter into 4321a035fc8f157430e5c87ea0e9c3f59bf6d5e4 on linode:master.

Coverage decreased (-0.1%) to 85.069% when pulling e3dc29852143fef6ca08642f185f7dee172f8888 on mparke:event-updated-filter into 4321a035fc8f157430e5c87ea0e9c3f59bf6d5e4 on linode:master.


Pass filename to lintText

See https://github.com/sindresorhus/SublimeLinter-contrib-xo/commit/35bb3d3579b7ef072b3f41b686c1e504dc8702ab#diff-6c1f4f1574c85da37dc4dd59341c9a39R15 and https://github.com/sindresorhus/atom-linter-xo/commit/e4fbc732bb469cddfec16eadcc681669c1143dd5
This is needed by some ESLint rules.

Btw, unrelated, but you could simplify this https://github.com/SamVerschueren/vscode-linter-xo/blob/ceee4cf11577301eba1bfd40a2113e287974461c/xo-server/server.ts#L133-L137 as results is always 1 item when using lintText. See: https://github.com/sindresorhus/atom-linter-xo/blob/1f9a769fc0fd41459802a3e4a8358ea5a234820f/index.js#L48

Thanks Sindre for reporting this, much appreciated :)!

as results is always 1 item when using lintText

Nice, didn't know that.

Nice, didn't know that.

I didn't either some hours ago https://github.com/sindresorhus/atom-linter-xo/commit/f760f70885402f4ef1d45d6a706caf5c1e797105#diff-168726dbe96b3ce427e7fedce31bb0bcL49. It makes sense since lintText only accepts a string (1 file).

Thanks Sindre for keeping me up-to-date ;). There is a VS Code issue a.t.m. that keeps me from releasing a new version but as soon as that is addressed, a fix is being released.

Released 💃


Changed bonfire from any version to minimum 2.20.3

Description
Change bonfire dependency to minimum version 2.20.3 (current at this time)
Fixes # THEEDGE-1498
Type of change
What is it?

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Documentation update
[ ] Tests update
[ ] Refactor

Checklist:

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I run go fmt ./... to check that my code is properly formatted
[ ] I run go vet ./... to check that my code is free of common Go style mistakes

Codecov Report

Merging #529 (0c7f4c1) into main (e0af7f8) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #529   +/-   ##
=======================================
  Coverage   31.12%   31.12%
=======================================
  Files          33       33
  Lines        3280     3280
=======================================
  Hits         1021     1021
  Misses       2153     2153
  Partials      106      106

Continue to review full report at Codecov.

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


Allow episodes with no chapters defined

Issue and Rationale
Currently if an episode has no chapter element defined in its post front matter a build error results. This prevents publishing episodes with audio but no chapters defined. But it's valid to have episodes with audio files but no chapters defined. This is more likely porting from another platform to octopod where the other platform has no chapter support.
Fix
Add key? check to lib/jekyll/podigee_player_tag.rb where it builds the player config, so that if the episode has no chapter element defined in front matter the config is still built and returned.
Tested
Manually tested by both adding and removing the chapter element from front matter and rebuilding site and verifying that the player loads without chapters and with them, and that in the latter case the chapters are displayed.

This results in an
jekyll 3.6.2 | Error:  undefined method map' for nil:NilClass` for me.
So this in not a fix.

That is not the behavior I experienced. I can toggle the error by not including chapter notes. If not present this error occurs. And this is clearly the case because 1) commenting out the line resolves the issue 2) the attribute is nil if not defined in the front matter and there is no guard right now before the map 3) adding a check for the presence of a key and only assigning to the key when it is present can’t introduce an error assigning to a nil key — it isn’t ever changing the state of the Hash because you couldn’t assign to a key that isn’t present and if it is present the assignment is identical. I tested both cases, with and without chapters in front matter, and both worked. So on my system this a fix, not a regression. And it allows episodes without chapters, which i need. I will proceed using a fork, unfortunately. I am on Jekyll 3.7.3.

The guard is already in place in line 23:
page["chapters"] ? ... : nil


Add support for "node:" in import/extensions rule

Hi,
While using the plugin, I ran into a bug.
When importing a node package using the node:<package> syntax, the rule thinks it is a module and asks for the .js extension.
Example:
import { readdir } from 'node:fs/promises'; // Error
import { readdir } from 'fs/promises'; // No error

I think this might be easily fixed.
I'll try to do a PR.
Thanks for your feedback.

Yeah sure,
Indeed, the error come from the VS Code ESLint official extension version 2.2.2
In the logs, it says:
[Info] ESLint server is starting
[Info] ESLint server running in node v14.16.0
[Info] ESLint server is running.
[Info] ESLint library loaded from: /path/to/project/node_modules/eslint/lib/api.js

The node: prefix started working in v14.18, so that’s the problem.
I’d suggest avoiding it anyways; there’s precisely zero advantage to using it.

Ok thanks

@MrNossiom
Just found out, in vscode one can set "eslint.runtime" setting to "node" to force eslint execution in locally installed version of node (see explanation for this option here). Requires full restart of vscode.

This works really well after reload! Thanks

Hm, I'm getting errors even when using node 18.15 and plugin version 2.27.5:
1:26  error    Unable to resolve path to module 'node:fs/promises'  import/no-unresolved
2:18  error    Unable to resolve path to module 'node:path'         import/no-unresolved

Is there anything I might be missing about configuration or something?

@s-h-a-d-o-w what version of node are you using where you get those errors?

18.15

@s-h-a-d-o-w in that case, if you're getting that on the cli with that node version, there's something very strange going on. Can you file a new issue?

Fortunately, I've gotten into the habit of always trying to create a minimal repro before creating a new issue. 😅
Turns out that in the larger project where I got that error, eslint-import-resolver-alias is used and caused this problem.
Thanks a lot for the quick replies though!


Freeze UUID token in chrome devtools link

During developing process very uncomfortable open chrome devtools again and again by new generated link. I want to pass like: --inspect-token=00000000-0000-0000-0000-000000000000 or better: --inspect-token=developing and already have the same link, that allow me simple refresh browser tab, when node process will restarted

Chrome 57+ comes with a dedicated DevTools for Node.js that gets rid of the need to copy/paste the URL across restarts:

Can you give this a shot and see if this addresses your use-case?

@ofrobots, it not resolved this problem. When node.js process restarted, need to click again on inspect link and open new window with actual process. Old window not working after restart.

For me it does seem to work after a restart. @eugeneo: does this behaviour make sense to you?

@ofrobots, I don't understand how it works for you, it not logical due to this behaviour

When node.js process restarted, need to click again on inspect link and open new window with actual process. Old window not working after restart.

Also, I think, that this token need for security reasons, but, if chrome://inspect can simply find attached process, why it need?..

@darky To clarify: There's two links. @ofrobots was talking about this one if I understand him correctly:

If you're using the default port for --inspect, that link should work and keep working without any re-opening of the DevTools.

I'm afraid this issue isn't actually about node-inspect (the command line debugger) but about the v8 inspector integration itself (node --inspect). There are already issues in nodejs/node:

Node --inspect uuid - https://github.com/nodejs/node/issues/11701
programmatically expose the V8 inspector URL - https://github.com/nodejs/node/issues/11496

Feel free to open a new issue in nodejs/node for this feature request! :)

@jkrems, thanks for the answer


FEATURE: move parent HSM group to config file

Currently, HSM hardware inventory management works around the idea of target and parent HSM groups. The algorithm is flexible enough so any HSM group can be used as a parent, however, code is currently harcoded to "nodes_free".
Improve functionality above by adding parent HSM group as a value in configuration file:

When working with hardware inventory, check parent HSM group belongs to the HSM group list user has access to
Add new command manta config set parent-hsm  to se new parent HSM group?

fixed in v1.25.0


fix an ore per minute calculation error (fixes #118)

Made an oversight when i originally wrote this, that kept YARM from recognizing "no change in ore amount" properly. This change fixes that.

Thanks, I appreciate the fix!

Well, i did perpetrate the bug. :)
Looking at the forums for the mod, you might wanna add some kind of filtering to make any speed smaller than 0.1 be 0, or maybe i can do it this afternoon.

Sure, I'll hit "merge" on a PR, no problem :)

Well, you got it in #149 now :)


simple-rtsp-server version string has changed

line 764-768
    mappings = {
        "armv7l": "armv7",
        "armv6l": "armv6",
        "aarch64": "arm64"
    }

please insert 'v' into arm version strings.

Thanks for the heads up, fixed in https://github.com/cdgriffith/pi_streaming_setup/releases/tag/1.6.1


Add otx v1.7 b566

Adding a new cask

[X] Checked there aren’t open pull requests for the same cask.
[X] Checked there aren’t closed issues where that cask was already refused.
[X] When naming the cask, followed the token reference.
[X] Commit message includes cask’s name.
[X] brew cask audit --download otx is error-free.
[X] brew cask style --fix otx left no offenses.
[X] brew cask install otx worked successfully.
[X] brew cask uninstall otx worked successfully.

Question: Do we have to add the following caveats:

If you would like to install the #{token} CLI tool as well, please run the following command:
ln -s '#{staged_path}/#{token}' '/usr/local/bin/#{token}

Or can we just add that as a postflight script and a zapper?

Add it in as a binary - I think the sublime cask should have an example.
No need to add it as an uninstall item if you define it as an artifact (like sublime), we'll take care of it

Awesome @adidalal! Thanks. Pushed fixes. Tested and works nicely with install/uninstall.


user can select an answer

Let's not use jQuery. I want you guys to improve/polish your plain javascript skills