🐛 [firebase_auth] sms code auto retrieval (auto detect and login) not working after upgrading to 0.20.0

Bug report
Describe the bug
after updating the firebase plugins firebase phone auth SMS code auto-detect and login not working.
SMS is receiving and also able to log in but auto code detects not working.
Steps to reproduce
Steps to reproduce the behavior:
Using these latest version to firebas plugins
  cloud_firestore: ^0.16.0
  firebase_analytics: ^7.0.1
  firebase_auth: ^0.20.0
  firebase_core: ^0.7.0
  firebase_crashlytics: ^0.4.0

Expected behavior
Need to auto detect the sms code or verificationId and logged in.
Previously it was working. After firebase plugin upgrade it is not working.

Flutter doctor
Run flutter doctor and paste the output below:
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 1.22.6, on Microsoft Windows [Version 10.0.16299.1127], locale en-US)
/Error 1 retrieving device properties for ro.product.cpu.abi:
error: closed

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[!] Android Studio (version 4.1.0)
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
[√] VS Code, 64-bit edition (version 1.52.1)
[√] Connected device (1 available)
    ! Device <IP_ADDRESS>:5083 is offline.

! Doctor found issues in 1 category.

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Dart SDK 2.10.5
Flutter SDK 1.22.6
caremother 3.6.5+34

dependencies:
- android_alarm_manager 0.4.5+20 [flutter]
- audioplayers 0.16.2 [uuid path_provider flutter flutter_web_plugins]
- auto_size_text 2.1.0 [flutter]
- cached_network_image 2.5.0 [flutter flutter_cache_manager octo_image]
- cloud_firestore 0.16.0 [flutter meta quiver firebase_core firebase_core_platform_interface cloud_firestore_platform_interface cloud_firestore_web]
- connectivity 2.0.2 [flutter meta connectivity_platform_interface connectivity_macos connectivity_for_web]
- contacts_service 0.4.6 [flutter collection quiver]
- countdown 0.1.0
- cupertino_icons 1.0.0
- custom_radio_grouped_button 1.0.6+1 [flutter]
- dots_indicator 1.2.0 [flutter]
- dotted_border 1.0.7 [flutter path_drawing]
- easy_localization 2.3.3 [flutter intl shared_preferences args path flutter_localizations]
- easy_onboarding 0.0.2 [flutter]
- easy_pip 0.1.0 [flutter]
- esys_flutter_share 1.0.2 [flutter path_provider]
- firebase_analytics 7.0.1 [meta flutter firebase_core firebase_analytics_web firebase_analytics_platform_interface]
- firebase_auth 0.20.0 [meta firebase_core firebase_core_platform_interface firebase_auth_platform_interface firebase_auth_web flutter]
- firebase_core 0.7.0 [firebase_core_platform_interface flutter quiver meta firebase_core_web]
- firebase_crashlytics 0.4.0 [flutter stack_trace firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface]
- firebase_dynamic_links 0.7.0+1 [flutter firebase_core]
- firebase_messaging 8.0.0-dev.13 [meta flutter firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web]
- firebase_storage 7.0.0 [flutter firebase_core firebase_core_platform_interface firebase_storage_web firebase_storage_platform_interface quiver]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- flutter_absolute_path 1.0.6 [flutter]
- flutter_barcode_scanner 1.0.2 [flutter flutter_plugin_android_lifecycle]
- flutter_calendar_carousel 1.5.2 [intl flutter]
- flutter_countdown_timer 2.1.0 [flutter]
- flutter_downloader 1.5.2 [flutter]
- flutter_full_pdf_viewer 1.0.6 [flutter]
- flutter_image_compress 0.7.0 [flutter]
- flutter_launcher_icons 0.8.1 [image args yaml path]
- flutter_local_notifications 3.0.2 [flutter platform flutter_local_notifications_platform_interface timezone]
- flutter_screenutil 3.2.0 [flutter]
- flutter_sms 2.1.1 [flutter url_launcher flutter_web_plugins plugin_platform_interface flutter_user_agent]
- flutter_staggered_animations 0.1.2 [flutter]
- flutter_staggered_grid_view 0.3.3 [flutter]
- flutter_svg 0.19.1 [flutter meta path_drawing vector_math xml]
- flutter_swiper 1.1.6 [flutter transformer_page_view flutter_page_indicator]
- flutter_widgets 0.1.12 [collection flutter html meta quiver]
- geocoder 0.2.1 [meta flutter]
- geolocator 6.1.13 [flutter geolocator_platform_interface]
- google_maps_flutter 1.0.10 [flutter flutter_plugin_android_lifecycle google_maps_flutter_platform_interface]
- google_nav_bar 3.2.0 [flutter]
- heic_to_jpg 0.1.3 [flutter]
- image_cropper 1.3.1 [flutter]
- image_downloader 0.20.1 [flutter]
- image_picker 0.6.7+21 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface]
- in_app_update 1.1.15 [flutter]
- intl 0.16.1 [path]
- json_serializable 3.5.1 [analyzer build build_config json_annotation meta path source_gen]
- link_previewer 1.2.1 [flutter async html http url_launcher]
- multi_image_picker 4.7.14 [flutter meta]
- open_file 3.0.3 [flutter ffi]
- package_info 0.4.3+2 [flutter]
- page_view_indicators 1.4.0 [flutter]
- path_provider 1.6.27 [flutter path_provider_platform_interface path_provider_macos path_provider_linux path_provider_windows]
- pdf 1.13.0 [archive barcode crypto image meta path_parsing vector_math xml]
- permission_handler 5.0.1+1 [flutter meta permission_handler_platform_interface]
- photo_view 0.10.3 [flutter]
- pin_code_text_field 1.7.1 [flutter]
- printing 3.7.2 [flutter flutter_web_plugins image js meta pdf plugin_platform_interface]
- provider 4.3.2+3 [collection flutter nested]
- quiver 2.1.5 [matcher meta]
- rxdart 0.24.1
- share 0.6.5+4 [meta mime flutter]
- share_extend 1.1.9 [meta flutter]
- shared_preferences 0.5.12+4 [meta flutter shared_preferences_platform_interface shared_preferences_linux shared_preferences_macos shared_preferences_web shared_preferences_windows]
- shimmer 1.1.2 [flutter]
- sleek_circular_slider 1.2.0+web [flutter]
- smart_select 4.3.2 [flutter]
- step_progress_indicator 0.2.5+8 [flutter]
- story_view 0.12.6 [flutter flutter_cache_manager rxdart video_player]
- swipe_stack 1.0.0 [flutter]
- system_alert_window 0.4.2+2 [flutter]
- timezone 0.5.9 [path]
- upgrader 2.8.0 [flutter device_info flutter_device_locale http package_info shared_preferences url_launcher version xml]
- url_launcher 5.7.10 [flutter url_launcher_platform_interface url_launcher_web url_launcher_linux url_launcher_macos url_launcher_windows]
- webview_media 0.1.2 [flutter]
- xml 4.5.1 [collection convert meta petitparser]
- youtube_player_flutter 7.0.0+7 [flutter flutter_inappwebview]

dev dependencies:
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher meta source_span stream_channel string_scanner term_glyph typed_data]

transitive dependencies:
- _fe_analyzer_shared 14.0.0 [meta]
- analyzer 0.41.1 [_fe_analyzer_shared args cli_util collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
- archive 2.0.13 [crypto args path]
- args 1.6.0
- async 2.5.0-nullsafety.1 [collection]
- barcode 1.17.1 [meta qr]
- boolean_selector 2.1.0-nullsafety.1 [source_span string_scanner]
- build 1.6.1 [analyzer async convert crypto glob logging meta path]
- build_config 0.4.5 [checked_yaml json_annotation meta path pubspec_parse yaml]
- characters 1.1.0-nullsafety.3
- charcode 1.2.0-nullsafety.1
- checked_yaml 1.0.4 [json_annotation source_span yaml]
- cli_util 0.2.0 [path]
- clock 1.1.0-nullsafety.1
- cloud_firestore_platform_interface 3.0.1 [flutter meta collection firebase_core plugin_platform_interface]
- cloud_firestore_web 0.3.0+1 [flutter flutter_web_plugins http_parser meta firebase_core firebase_core_web cloud_firestore_platform_interface js]
- collection 1.15.0-nullsafety.3
- connectivity_for_web 0.3.1+4 [connectivity_platform_interface flutter_web_plugins flutter]
- connectivity_macos 0.1.0+7 [flutter]
- connectivity_platform_interface 1.0.6 [flutter meta plugin_platform_interface]
- convert 2.1.1 [charcode typed_data]
- crypto 2.1.5 [collection convert typed_data]
- csslib 0.16.2 [source_span]
- dart_style 1.3.10 [analyzer args path source_span]
- device_info 1.0.0 [flutter device_info_platform_interface]
- device_info_platform_interface 1.0.1 [flutter meta plugin_platform_interface]
- fake_async 1.2.0-nullsafety.1 [clock collection]
- ffi 0.1.3
- file 5.2.1 [intl meta path]
- firebase 7.3.3 [http http_parser js]
- firebase_analytics_platform_interface 1.0.3 [flutter meta]
- firebase_analytics_web 0.1.1 [flutter flutter_web_plugins firebase firebase_analytics_platform_interface meta]
- firebase_auth_platform_interface 3.0.1 [flutter meta firebase_core plugin_platform_interface]
- firebase_auth_web 0.3.2+6 [flutter flutter_web_plugins meta http_parser intl firebase_core firebase_core_web firebase_auth_platform_interface js]
- firebase_core_platform_interface 3.0.1 [flutter meta plugin_platform_interface quiver]
- firebase_core_web 0.2.1+3 [firebase_core_platform_interface flutter flutter_web_plugins meta js]
- firebase_crashlytics_platform_interface 1.1.6 [flutter meta collection firebase_core plugin_platform_interface]
- firebase_messaging_platform_interface 1.0.0-dev.9 [flutter meta firebase_core plugin_platform_interface]
- firebase_messaging_web 0.1.0-dev.4 [flutter flutter_web_plugins meta firebase_core firebase_core_web firebase_messaging_platform_interface js service_worker]
- firebase_storage_platform_interface 1.0.4 [flutter meta collection firebase_core plugin_platform_interface]
- firebase_storage_web 0.1.1+3 [async crypto firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta]
- flutter_blurhash 0.5.0 [flutter meta]
- flutter_cache_manager 2.1.0 [flutter path_provider uuid http path sqflite pedantic clock file rxdart image]
- flutter_device_locale 0.4.0 [flutter flutter_web_plugins plugin_platform_interface]
- flutter_inappwebview 4.0.0+4 [flutter uuid mime]
- flutter_local_notifications_platform_interface 2.0.0+1 [flutter plugin_platform_interface]
- flutter_localizations 0.0.0 [flutter intl characters collection meta path typed_data vector_math]
- flutter_page_indicator 0.0.3 [flutter]
- flutter_plugin_android_lifecycle 1.0.11 [flutter]
- flutter_user_agent 1.2.2 [flutter]
- flutter_web_plugins 0.0.0 [flutter characters collection meta typed_data vector_math]
- geolocator_platform_interface 1.0.8 [flutter meta plugin_platform_interface vector_math]
- glob 1.2.0 [async collection node_io path pedantic string_scanner]
- google_maps_flutter_platform_interface 1.0.5 [flutter meta plugin_platform_interface stream_transform]
- html 0.14.0+4 [csslib source_span]
- http 0.12.2 [http_parser path pedantic]
- http_parser 3.1.4 [charcode collection source_span string_scanner typed_data]
- image 2.1.19 [archive xml meta]
- image_picker_platform_interface 1.1.1 [flutter meta http plugin_platform_interface]
- js 0.6.2
- json_annotation 3.1.1
- logging 0.11.4
- matcher 0.12.10-nullsafety.1 [stack_trace]
- meta 1.3.0-nullsafety.3
- mime 0.9.7
- nested 0.0.4 [flutter]
- node_interop 1.2.1 [js]
- node_io 1.2.0 [file node_interop path]
- octo_image 0.3.0 [flutter flutter_blurhash]
- package_config 1.9.3 [path charcode]
- path 1.8.0-nullsafety.1
- path_drawing 0.4.1+1 [vector_math meta path_parsing flutter]
- path_parsing 0.1.4 [vector_math meta]
- path_provider_linux 0.0.1+2 [path xdg_directories path_provider_platform_interface flutter]
- path_provider_macos 0.0.4+8 [flutter]
- path_provider_platform_interface 1.0.4 [flutter meta platform plugin_platform_interface]
- path_provider_windows 0.0.4+3 [path_provider_platform_interface meta path flutter ffi win32]
- pedantic 1.9.2 [meta]
- permission_handler_platform_interface 2.0.1 [flutter meta plugin_platform_interface]
- petitparser 3.1.0 [meta]
- platform 2.2.1
- plugin_platform_interface 1.0.3 [meta]
- process 3.0.13 [file intl meta path platform]
- pub_semver 1.4.4 [collection]
- pubspec_parse 0.1.7 [checked_yaml json_annotation pub_semver yaml]
- qr 1.3.0 [meta]
- service_worker 0.2.4 [js]
- shared_preferences_linux 0.0.2+4 [file flutter meta path path_provider_linux shared_preferences_platform_interface]
- shared_preferences_macos 0.0.1+11 [shared_preferences_platform_interface flutter]
- shared_preferences_platform_interface 1.0.4 [meta flutter]
- shared_preferences_web 0.1.2+7 [shared_preferences_platform_interface flutter flutter_web_plugins meta]
- shared_preferences_windows 0.0.1+3 [shared_preferences_platform_interface flutter ffi file meta path path_provider_platform_interface path_provider_windows]
- sky_engine 0.0.99
- source_gen 0.9.10+1 [analyzer async build dart_style glob meta path pedantic source_span]
- source_span 1.8.0-nullsafety.2 [charcode collection path term_glyph]
- sqflite 1.3.2+1 [flutter sqflite_common path]
- sqflite_common 1.0.2+1 [synchronized path meta]
- stack_trace 1.10.0-nullsafety.1 [path]
- stream_channel 2.1.0-nullsafety.1 [async]
- stream_transform 1.2.0
- string_scanner 1.1.0-nullsafety.1 [charcode source_span]
- synchronized 2.2.0+2
- term_glyph 1.2.0-nullsafety.1
- test_api 0.2.19-nullsafety.2 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- transformer_page_view 0.1.6 [flutter]
- typed_data 1.3.0-nullsafety.3 [collection]
- url_launcher_linux 0.0.1+4 [flutter]
- url_launcher_macos 0.0.1+9 [flutter]
- url_launcher_platform_interface 1.0.9 [flutter meta plugin_platform_interface]
- url_launcher_web 0.1.5+1 [url_launcher_platform_interface flutter flutter_web_plugins meta]
- url_launcher_windows 0.0.1+3 [flutter]
- uuid 2.2.2 [crypto convert]
- vector_math 2.1.0-nullsafety.3
- version 1.2.0
- video_player 1.0.1 [meta video_player_platform_interface video_player_web flutter]
- video_player_platform_interface 2.2.0 [flutter meta]
- video_player_web 0.1.4+1 [flutter flutter_web_plugins meta video_player_platform_interface]
- watcher 0.9.7+15 [async path pedantic]
- win32 1.7.4 [ffi]
- xdg_directories 0.1.2 [meta path process]
- yaml 2.2.1 [charcode collection string_scanner source_span]

Hi @rameshm123
Have you enabled https://console.cloud.google.com/apis/library/androidcheck.googleapis.com
Thank you

Hello @markusaksli-nc
already enable the
Android Device Verification from GCP.
but still it's not working.

Is it opening up ReCaptcha or is anything relevant logged to the console?

Can you also show some code please?

@markusaksli-nc there is no log relevant to this issue..
Everything is working fine just the device is unable to auto retrieve the code and login. We have to enter the code and log in manually.
Previously it was working fine. But after the firebase plugin upgrade, this issue occurred.

hello @Ehesp
The below code is for firebase phone auth verification
void _signInWithPhoneNumber(
BuildContext context, String verificationId, String otp) async {
debugPrint("smsCode $verificationId otp $otp");
AuthCredential _authCredential = await PhoneAuthProvider.credential(
verificationId: verificationId, smsCode: otp);
FirebaseAuth.instance
.signInWithCredential(_authCredential)
.catchError((error) {
debugPrint("_signInWithPhoneNumber manual failed ${error.toString()}");
  setState(() {
    _isLoading = false;
  });

  final snackBar = SnackBar(
      content: Text("Authentication Failed"),
      duration: Duration(seconds: 1));
  //debugPrint(error.toString());
  _scaffoldKey.currentState.showSnackBar(snackBar);
}).then((value) {

//      debugPrint("_signInWithPhoneNumber manual success ${value.user.uid}");
if (value != null) {
widget._users.uid = value.user.uid;
_userBloc.getUser(widget._users.phoneNumber, widget._users.uid);
    setState(() {
      _uid = widget._users.uid;

      //  _isLoading = false;
    });
  }
});

}
_verifyPhoneNumber(BuildContext context) async {
setState(() {
_isOTPRecieved = false;
});
String phoneNumber = "+91" + _users.phoneNumber;
debugPrint("phoneNo $phoneNumber");
final FirebaseAuth _auth = FirebaseAuth.instance;
await _auth.verifyPhoneNumber(
phoneNumber: phoneNumber,
timeout: Duration(seconds: 60),
verificationCompleted: (authCredential) =>
_verificationComplete(authCredential, context),
verificationFailed: (authException) =>
_verificationFailed(authException, context),
codeAutoRetrievalTimeout: (verificationId) =>
_codeAutoRetrievalTimeout(verificationId),
// called when the SMS code is sent
codeSent: (verificationId, [int forceResendToken]) =>
_smsCodeSent(verificationId, forceResendToken));
}
/// will get an AuthCredential object that will help with logging into Firebase.
_verificationComplete(AuthCredential authCredential, BuildContext context) {
FirebaseAuth.instance
.signInWithCredential(authCredential)
.then((authResult) {
debugPrint("_signInWithPhoneNumber auto success ${authResult.user.uid}");
_users.uid = authResult.user.uid;
  debugPrint("verfication complete");
  // _userBloc.getUser(_phoneNumber, _users.uid);
  _userBloc.getUser(_users.phoneNumber, authResult.user.uid);
  setState(() {
    _uid = authResult.user.uid;
    _isAutoOtp = false;
    //  _isLoading = false;
  });
  //todo navigate user to otp screen

  //Navigator.of(context).pushReplacementNamed('loginOtp', arguments: _users);
});

}
_smsCodeSent(String verificationId, forceResendToken) {
setState(() {
_isLoading = false;
_isOtpSent = true;
});
// set the verification code so that we can use it to log the user in
_smsVerificationCode = verificationId;
if (_smsVerificationCode != null || _smsVerificationCode != '') {
  _initializeTimer();
  setState(() {
    _loadingMsgIntial = "";
    _isOTPRecieved = true;
  });
}

debugPrint("_smsVerificationCode ${_smsVerificationCode} ");
debugPrint("verificationId ${verificationId}");
setState(() {
  _currentTime = 60;
  _isTimeElapse = false;
  // _initializeTimer();
});
final snackBar = SnackBar(
  content: Text(
    "otp.new_otp_sent".tr(args: ['$_users.phoneNumber'.toString()]),
  ),
  duration: Duration(seconds: 2),
  behavior: SnackBarBehavior.floating,
);
Timer(Duration(milliseconds: 2500), () {
  setState(() {
    _isOtpSent = false;
    _isAutoOtp = true;
  });
});
// _scaffoldKey.currentState.showSnackBar(snackBar);

}
_verificationFailed(
FirebaseAuthException authException, BuildContext context) {
debugPrint("authException ${authException.message.toString()}");
setState(() {
_isLoading = false;
_isAutoOtp = false;
});
final snackBar = SnackBar(
  content: Text(authException.message.toString()),
  duration: Duration(seconds: 2),
);
_scaffoldKey.currentState.showSnackBar(snackBar);

}
_codeAutoRetrievalTimeout(String verificationId) {
// set the verification code so that we can use it to log the user in
debugPrint("timeout");
debugPrint("sms code auto retrieval");
setState(() {
  _isLoading = false;
  _smsVerificationCode = verificationId;
  _isAutoOtp = false;
});
debugPrint("_codeAutoRetrievalTimeout $verificationId");

}

Have you tested this with multiple phone numbers or just one?

@markusaksli-nc
Tested on multiple devices with multiple numbers too.

There was a report of this in https://github.com/FirebaseExtended/flutterfire/issues/4665 as well. I think I saw this as well after first enabling device verification. It might just take some time to work again.
Labeling this for now.

Hello, I have exactly the same issue. Last version of firebase_auth where auto retrieval works is 0.18.4+1 (used with  firebase_core ^0.5.2). With any newer version it does not work. In the console I have the following, which looks to be relevant:
W/BpBinder(29130): Slow Binder: BpBinder transact took 344 ms, interface=com.google.android.gms.auth.api.phone.internal.ISmsRetrieverApiService, code=1 oneway=false
W/FirebaseAuth(29130): [SmsRetrieverHelper] Timed out waiting for SMS.

I confirm that the issue is not device or debug/release mode dependent.
Adding manually the following code into the AndroidManifest.xml does not help:
        <!-- Auto retreive SMS codes -->
        <receiver android:exported="true" android:name="io.flutter.plugins.firebase.messaging.FlutterFirebaseMessagingReceiver" android:permission="com.google.android.c2dm.permission.SEND">
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            </intent-filter>
        </receiver>

Downgrading the package version to 0.18.4+1/0.5.2 resolves the issue, but it's hard to keep it as soon as we plan to move the codebase to null-safety.

If you have the correct SHA-256 key in firebase console then nothing else should be necessary.

If you have the correct SHA-256 key in firebase console then nothing else should be necessary.

I do have it

I have checked, every time an sms message arrives I immediately get the following in the log:
W/BpBinder(29130): Slow Binder: BpBinder transact took 344 ms, interface=com.google.android.gms.auth.api.phone.internal.ISmsRetrieverApiService, code=1 oneway=false

(of course ID and time differ)

We are experiencing exactly the same after upgrade.
Activated Android Device Verification API, added SHA256, updated google-services.json ... everything works except for the auto retrieval.
It's a bit of a blocking thing for us, even more when we just upgraded to null safety.
Any updates from anyone?

Hello, I have exactly the same issue. Last version of firebase_auth where auto retrieval works is 0.18.4+1 (used with firebase_core ^0.5.2). With any newer version it does not work. In the console I have the following, which looks to be relevant:
W/BpBinder(29130): Slow Binder: BpBinder transact took 344 ms, interface=com.google.android.gms.auth.api.phone.internal.ISmsRetrieverApiService, code=1 oneway=false
W/FirebaseAuth(29130): [SmsRetrieverHelper] Timed out waiting for SMS.

I confirm that the issue is not device or debug/release mode dependent.
Adding manually the following code into the AndroidManifest.xml does not help:
        <!-- Auto retreive SMS codes -->
        <receiver android:exported="true" android:name="io.flutter.plugins.firebase.messaging.FlutterFirebaseMessagingReceiver" android:permission="com.google.android.c2dm.permission.SEND">
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            </intent-filter>
        </receiver>

Downgrading the package version to 0.18.4+1/0.5.2 resolves the issue, but it's hard to keep it as soon as we plan to move the codebase to null-safety.
EDIT: "Android Device Verification" was enabled about a month ago. Were there any additional steps required besides just enabling? Maybe google-services.json update or something else...

I have been suffering from the same issue then I Found a Solution:
using #firebase_core: "^0.7.0" and #firebase_auth: "^0.20.1" :
First, discuss issue why this issue is occurring:
This started after #firebase ^0.18.0" because After this enabling SafetyNet is mandatory to avoid reCaptcha verification and thus auto-verification is disabled. And If we try to use google Automatic retriever API  then A hash must be associated with the message.
But we all know that the Firebase message is like this: 030432 is your verification code for the app name. So this solution would not work.
Now Solution:
If you have created Your Firebase Project After December 2020 then the Firebase message is like this 667816 is your verification code for the app name.1#/##K#Aq5V this 11 digits hash is RSA256 signature based on the package name and SHA fingerPrints.
So this would support  Automatic retriever API  or alternatively you can use this sms_autoFill.
If you have a project before this then you can contact to support or create A new project but keep in mind change package name:
PS: I am not From Firebase support what I have shared is my experience hope This would help the community.

@a1111198 thanks for sharing. Just to confirm, does this solution works for you on firebase_auth 1.2 or similar, or did you downgrade to previous versions before null-safety?

This solution is working for both versions before null Safety and after Null Safety. In one project I am using a version before null safety and in one I am using a version after null safety and For both working fine.
keep in mind 11 digit code after the message is necessary.

@a1111198 thanks for sharing. Just to confirm, does this solution works for you on firebase_auth 1.2 or similar, or did you downgrade to previous versions before null-safety?

Do we have any update on this?
I need it to work the correct way without any workaround.
Working on a client project and I'm so stuck here.
Please update if someone is working on this.

It seems this is not a flutter specific problem:
https://github.com/firebase/firebase-android-sdk/issues/2688

  firebase_auth: ^3.0.1
  firebase_dynamic_links: ^2.0.7
  firebase_messaging: ^10.0.4

Which versions should I set so that i have no conflicts with firebase_core and auto OTP detection works

Hey @rameshm123, I suspect this could be a problem with the android sdk upstream.
The workaround until the problem is resolved is to shorten your app name on Playstore to around 10-15 characters. Could someone let me know if this workaround resolves the issue?

Thanx @Shiba-Ka this solution is working

  firebase_auth: ^3.0.1
  firebase_dynamic_links: ^2.0.7
  firebase_messaging: ^10.0.4

Which versions should I set so that i have no conflicts with firebase_core and auto OTP detection works

Thanx @Shiba-Ka this solution is working

I have checked, every time an sms message arrives I immediately get the following in the log:
W/BpBinder(29130): Slow Binder: BpBinder transact took 344 ms, interface=com.google.android.gms.auth.api.phone.internal.ISmsRetrieverApiService, code=1 oneway=false

(of course ID and time differ)

Hi, I'm facing the same issue. However, in my case it's a little different. We have a Test Firebase Project and a Live Firebase Project for the same Flutter App. For me the Auto-Verification is working on the Test Project and not the Live Project.

@adifyr Did you read this thread? https://github.com/firebase/firebase-android-sdk/issues/2688
In a nutshell; shorten your app name to 10-15 characters on Playstore, and also ensure there are no special characters.

Closing as a solution is provided, and there is nothing to action here from a Flutterfire perspective.

You have to generate 11 character hash key for sms retrieval. See the link useful:
https://stackoverflow.com/questions/51365778/how-to-generate-11-char-hash-key-for-sms-retriever-with-google-app-signing


Error in Linking the Jupyter Notebook

In the main repo, there was an error in linking the file which leads "Page Not Found"

Thanks for fixing this!


Catch AssertionError as arbiter-app failures

still dump the backtrace etc., but allow an assert failure to result in graceful shutdown

Implementing this on https://github.com/vkottler/runtimepy/pull/76

This is implemented!


Error message to mention UpstreamCodec filter

Commit Message: Error message to mention UpstreamCodec filter
Additional Description: The requirement described in https://github.com/envoyproxy/envoy/issues/26138 doesn't seem to be mentioned in documentation, and even if it was I most likely wouldn't have seen it and probably neither would the person who filed the issue, so documenting the requirement in the failed validation error message seems a more practical solution.
I also moved the function implementation out of the header file, making for cleaner code but a more unpleasant review, sorry.
Risk Level: Only changes an error message, so ~none.
Testing: Added unit test coverage (previously coverage was partial and from integration tests).
Docs Changes: n/a
Release Notes: n/a
Platform Specific Features: n/a

/assign-from @envoyproxy/senior-maintainers


Update LI number format

update number format for country code 423

Can you provide evidence that this is the preferred format?
Also, have you signed the CLA? https://github.com/googlei18n/libphonenumber/wiki/ContributeToTheProject

Hi,
please  check https://en.wikipedia.org/wiki/Telephone_numbers_in_Liechtenstein.
thank you

Thanks! This is in libphonenumber 7.0.7.


Remove chalk dependency

This commit was actually not meant to be pushed, and was accidentally pushed as part of #480. Using chalk breaks
in the browser.

The change that introduced this hasn't been released, so there's no need for a changeset, I think.


use rcutils_get_env.

close https://github.com/ros2/ros2/issues/856
Signed-off-by: Tomoya.Fujita<EMAIL_ADDRESS>
Note

all rviz related tests are pass,
> colcon test --packages-select rviz_visual_testing_framework rviz2 rviz_assimp_vendor rviz_common rviz_default_plugins rviz_ogre_vendor rviz_rendering rviz_rendering_tests

@jacobperron
CC: @dirk-thomas @clalancette
could you take a look when you got time?

@clalancette

Since we are now explicitly relying on rcutils, please add a build dependency to the package.xml and do a find_package in the CMakeLists.txt.

that is correct, thanks! it's done with https://github.com/ros2/rviz/pull/609/commits/77a5ac46bcda5b50a53d6995711c5d5e69758478

CI:

Linux
Linux-aarch64
macOS
Windows


ENH:stats: Add _isf method to pareto

Reference issue

Towards: gh-17832
What does this implement/fix?

Adds the _isf method to the Pareto distribution in order to improve its precision
Adds a reference distribution
Adds tests to verify the _isf method

Additional information

from scipy.stats import pareto
import numpy as np
import matplotlib.pyplot as plt

def _isf(q, b):
    return np.power(q, -1.0/b)

def plot_isf():
    b = 2.62
    q = np.logspace(-40, -1, 200)
    plt.semilogx(q, pareto.isf(q, b), label="main", ls="dashed")
    plt.semilogx(q, _isf(q, b), label="pr", ls="dashdot")
    plt.legend()
    plt.title("pareto inverse survival function")
    plt.show()

@OmarManzoor let's old off on adding ReferenceDistributions and tests on these isf PRs that extend the useable domain to small values of the argument. I'll add a generic test that checks isf/sf roundtrip for extreme arguments so that there is not all this to write and review. Then you can just add the methods itself and produce the nice plot. I'll check the formation and merge if it looks good.

@OmarManzoor let's old off on adding ReferenceDistributions and tests on these isf PRs that extend the useable domain to small values of the argument. We don't really need mpmath to verify these. I'll add a generic test that checks isf/sf roundtrip for extreme arguments so that there is not all this to write and review. Then you can just add the methods itself and produce the nice plot. I'll check the formation and merge if it looks good.

Could you kindly provide an example of the kind of arguments to verify? Also we would still need some kind of reference to verify the value. Where would we get that from?

Shape parameters will be from distr_params.py. Probability masses (the primary argument to isf) will be logarithmically distributed like np.logspace(-300, 0) or so. I'll just test that isf is the inverse of sf even at the extremely small probabilities.

One note about tests: we should also test the right tails of _isf. In #18002 , we observed that better accuracy close to zero does not necessarily mean that the accuracy close to 1 is preserved.

Yeah I thought about adding that. Will do.

Shape parameters will be from distr_params.py. Probability masses (the primary argument to isf) will be logarithmically distributed like np.logspace(-300, 0) or so. I'll just test that isf is the inverse of sf even at the extremely small probabilities. There is almost certainly a generic test for this already; if so, I'll just extend the range for the distributions that have overriden isf and sf.
Update: there is:
https://github.com/scipy/scipy/blob/cfe80116aaa145061246b8aec0e98248fbefb835/scipy/stats/tests/test_continuous_basic.py#L585
I encourage you to continue doing whatever tests locally that convince you that the formulation is good. It's just that this is a lot to review, so I need to come up with even more efficient methods to keep up with it. If I only have to review one line for each instead of 10, that will be very helpful.

Thank you for the clarification.

@mdhaber I merged your PR related to the refined tests and remove the reference distribution.


Navbar Toggler gets responsive font-size when RFS is set to true

As described in the topic, the toggle button gets a responsive font-size when the RFS feature ist set to true.
Because the container is set to display flex and the item alignment is set to center, my logo in navbar-brand moves when resizing the browser window. In my case between 516 and 517px. The height of the logo is 30px.
Not a big issue, but I wonder why the navbar-toggler needs a responsive font-size?
I use Bootstrap 4.3.1

By default $navbar-toggler-font-size is 1.25rem which doesn't rescale. You might have changed something else which made the toggle button rescale.

Not a big issue, but I wonder why the navbar-toggler needs a responsive font-size?

We didn't explicitly implemented this, this is just a result of enabling the responsive font sizes. You could change this behaviour by configuring $navbar-toggler-font-size in em.

@MartijnCuppens Thanks for your reply. Makes all sense now. I had set the $font-size-lg to $font-size-base * 1.5. Changing the $navbar-toggler-font-size back to 1.25rem did the trick for me.


"How severe is this issue?" when creating new support ticket for Power Apps is only Minimal

Hi team,
When creating new support ticket for Power Apps, it is always Minimal and there is no other choices.
How can user submit higher severity ticket without Premier?
Kindly explain the "How severe is this issue?" when creating new support ticket for Power Platform products.

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

ID: 3296698b-48cc-9655-267e-92775f33e0b7
Version Independent ID: fe8f88d2-5fd4-6946-4ae6-d1abb856bf2f
Content: Get Help + Support - Power Platform Admin center
Content Source: power-platform/admin/get-help-support.md
Service: power-platform
GitHub Login: @jimholtz
Microsoft Alias: jimholtz

@DavidPaf
Only paid subscriptions and ProDirect or Premier support plans provide higher severities.


Bad glsl file generated by shaderc

Some weird characters are at the beginning of my vertex shader generated by shaderc.
for example:
VSH����������attribute vec3 a_position;
void main ()
{
  vec4 tmpvar_1;
  tmpvar_1.w = 1.0;
  tmpvar_1.xyz = a_position;
  gl_Position = tmpvar_1;
}

That's bgfx shader, not GLSL shader. You can't load those in GL as is, but bgfx can use them.

Hmm. I was under the impression it converted it to glsl or hlsl. Ok then.

I meant it's bgfx binary shader. Yes there is GLSL code inside it, but you should treat it as completely binary format.

Yes, I understand now, thanks.

How can I get the binary shaders like examples/runtime/shaders/dx9/vs_cubes.bin and examples/runtime/shaders/metal/vs_cubes.bin?
I compiled the shader source code examples/01-cubes/vs_cubes.sc with shaderc，I can only get the   compiled binary file like a GLSL shader as examples/runtime/shaders/glsl/fs_cubes.bin.
Can the GLSL liked compiled result work on Non-GL backends?

Just type make TARGET=# where # is 0 for D3D9, 1 for D3D11, 3 for GLES, 4 for GLSL, 5 for Metal.


how to use PINO for inverse problem of pde

PINO is a very nice framework to learn pde operator, that is forward problem for pde, but how to use PINO for inverse problem of pde,such as parapmeter identification of pde

While I have not tried using PINOs for inverse problems, it should be a fairly straight forward to do so.  I believe all you need to do is register additional parameters into the network to act as the PDE coefficients and use them in the equation defined physics loss function (I typically called FDM_(equation name) in the Jupyter notebooks).
This should be the same as in the case as a traditional PINN.  For an example of how to do this in PyTorch, see this Jupyter notebook.


Fix MacOS warning: bool literal returned from 'main' [-Wmain]

What problem does this PR solve?
Problem Summary:
https://github.com/apache/incubator-brpc/actions/runs/3559564054/jobs/5979002361

LGTM


Use beforeAll/afterAll in font_spec.js (issue 6905)

This patch fixes the only remaining point in issue #6905.
Edit: Marginally easier reviewing with https://github.com/mozilla/pdf.js/compare/master...Snuffleupagus:issue-6905-font_spec?w=1.

/botio unittest

Thank you for the patch.


Add NMPC threading

NMPC now executes each agents computations in multi-threading

Codecov Report

Merging #14 (cc6b1e6) into main (33e31cb) will decrease coverage by 0.33%.
The diff coverage is 13.33%.

@@            Coverage Diff             @@
##             main      #14      +/-   ##
==========================================
- Coverage   42.39%   42.05%   -0.34%
==========================================
  Files          13       13
  Lines         526      535       +9
==========================================
+ Hits          223      225       +2
- Misses        303      310       +7

Impacted Files
Coverage Δ

pymapf/decentralized/nmpc_agent.py
33.67% <0.00%> (ø)

pymapf/decentralized/nmpc.py
38.79% <14.28%> (-1.40%)
:arrow_down:

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 33e31cb...cc6b1e6. Read the comment docs.

Codecov Report

Merging #14 (cc6b1e6) into main (33e31cb) will decrease coverage by 0.33%.
The diff coverage is 13.33%.

@@            Coverage Diff             @@
##             main      #14      +/-   ##
==========================================
- Coverage   42.39%   42.05%   -0.34%
==========================================
  Files          13       13
  Lines         526      535       +9
==========================================
+ Hits          223      225       +2
- Misses        303      310       +7

Impacted Files
Coverage Δ

pymapf/decentralized/nmpc_agent.py
33.67% <0.00%> (ø)

pymapf/decentralized/nmpc.py
38.79% <14.28%> (-1.40%)
:arrow_down:

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 33e31cb...cc6b1e6. Read the comment docs.


Fix extras argument

I'm assuming this wasn't intentional.

It's intentional. Is it working for you? Look, PAG node has been that way forever too: https://github.com/pamparamm/sd-perturbed-attention/blob/master/pag_nodes.py#L141
When I tried "extras=extras" it errored out. It doesn't seem to make a lot of difference from what I did before...

Ah, I misunderstood it's purpose. Sorry about that.


Merge TypeDB Rust driver into TypeDB Java driver repository

What is the goal of this PR?
We merge driver-rust into driver-java (which is using driver-rust as the backend) with the ultimate goal of unifying all drivers under the same typedb-driver repo at a later date.
What are the changes implemented in this PR?

move the Java driver implementation into the top-level java/ package;
move the Rust driver implementation into the top-level rust/ package;
merge the two git trees, erring on the side of driver-java as the source of truth for e.g. version and dependencies.

High level comments in 1 place:

Deploy github at //:deploy-github doesn't exist, only used in the release workflow but should exist. It should probably deploy all languages at once to github?
You can move the README into the //java package and update its contents to reflect the correct paths. Add a new one at the root for now that points to each sub-package. We can edit it a bit later

Note: you could also comment out the release steps and we re-activate them later, but it might be a larger jump to do later


add more check for 2pc param && update completers when listResources

Codecov Report

Merging #72 into release-rc4 will increase coverage by 0.05%.
The diff coverage is 0.00%.

@@               Coverage Diff                @@
##             release-rc4     #72      +/-   ##
================================================
+ Coverage           5.63%   5.69%   +0.05%
  Complexity            25      25
================================================
  Files                 22      21       -1
  Lines               1525    1510      -15
  Branches             173     177       +4
================================================
  Hits                  86      86
+ Misses              1422    1407      -15
  Partials              17      17

Impacted Files
Coverage Δ
Complexity Δ

...rc/main/java/com/webank/wecross/console/Shell.java
0.00% <0.00%> (ø)
0.00 <0.00> (ø)

...om/webank/wecross/console/common/ConsoleUtils.java
33.33% <0.00%> (-1.17%)
21.00 <0.00> (ø)

.../com/webank/wecross/console/common/JlineUtils.java
0.00% <0.00%> (ø)
0.00 <0.00> (ø)

.../com/webank/wecross/console/common/PrintUtils.java
0.00% <0.00%> (ø)
0.00 <0.00> (ø)

.../com/webank/wecross/console/routine/TwoPcImpl.java
0.00% <0.00%> (ø)
0.00 <0.00> (ø)

Continue to review full report at Codecov.

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


Add safety check for falsy sanitizer input.

When the input of sanitizer evaluates to false:

do not rely on assumed string length
default to empty string on falsy input

With that change the falsy input like null, undefined or empty string
should return the same results: empty string.
Thanks!
Fixes #29474

That issue is for v3 BTW. @Johann-S we should edit to mention if it happens in v4 and v5 (remove 3 since it's EOL) and mark this for backport

Hi @peterblazejewicz,
It seems it's impossible to pass undefined or null to the sanitizer because, our sanitizer is bundled in our components see: https://github.com/twbs/bootstrap/pull/29733

Closing due to lack of response. You can comment here and we can re-open the PR, if you decide to resume working on the requested changes.
This is an automated reply


refactor: cache manifest

Finishing off @fubuloubu's earlier refactor/cache-manifest work.
Test plan:

Made an ape project with one dep and one vyper contract. Ran ape console.
First project.contracts lookup caused compilation.
Subsequent lookups used the cache.
Changing contract contents triggered a re-compile of only the changed contract.
Adding a new contract triggered a compilation of just the one new file.
Deleting a file caused the contract to disappear from project.contracts.
Repeated all the above with both .vy and .json contract files.

Ready for another review @fubuloubu. Take a look at the sourcePath code I added in order to make it possible to detect when ethpm JSON files are deleted (the sourceId we were using had no connection to the JSON file on disk).
$ ( rm -rf .build/ ; ape console )

In [1]: project.contracts.keys()
INFO: Compiling 'contracts/escrow.json'
INFO: Compiling 'contracts/contract.vy'
Out[1]: dict_keys(['Escrow', 'SafeSendLib', 'contract'])

In [2]: project.contracts['Escrow'].sourceId
Out[2]: 'Escrow.sol'  # <-- this can't be used to detect filesystem changes

In [3]: project.contracts['Escrow'].sourcePath
Out[3]: PosixPath('/home/cuboid/src/ape/example-ignore/contracts/escrow.json')  # <-- this new attribute can


Missing EOC tags when encoding

Hello,
I've noticed that when I use openssl's asn1parse tool to dump a BER that was encoded using this library, I don't see any EOC tags.
I'm interfacing with a server that uses BouncyCastle to decode the BERs that I send to it. At the moment the server is giving me an error and I was wondering if the lack of EOC tags makes any difference or if the problem is elsewhere.
Any ideas?
Thanks again!

Hi @Luis-Abreu,
The reason there is no EOC (end-of-contents) octets is that the asn1c uses DER encoding which is subset of BER and in DER the indefinite form is not used
From ITU-T Rec. X.690

10 Distinguished encoding rules
The encoding of a data values employed by the distinguished encoding rules is the basic encoding described in clause 8, together with the following restrictions and those also listed in clause 11.
10.1 Length forms
The definite form of length encoding shall be used, encoded in the minimum number of octets. [Contrast
with <IP_ADDRESS> b).]

https://github.com/vlm/asn1c/blob/4cc779fd9bd7f556699b5863cf111b359da10b66/skeletons/asn_application.c#L268-L285

Hi @velichkov,
The server I'm interacting with is running BouncyCastle and is expecting a BER, not a DER. Is there anyway to encode in BER using this library?
At this point, the only difference between the DER's i'm generating and the BERS i'm supposed to send is in the length of each element. The "correct" BER's have indefinite length while mine are definitive.
Thanks again for your help!

To further clarify,
The DER I'm generating using this library starts with a sequence of definitive length. When I send this DER to the server it parses it as a DLSequence (which in BouncyCastle, is nothing more than a Sequence of definitive lenght). The problem is, I need it to be a BERSequence (which means a Sequence of indefinitive lenght).
Any way of changing every definitive length element into indefinitive ones?
Thank you!

Hi @Luis-Abreu,

The server I'm interacting with is running BouncyCastle

Maybe it's time to report this issue to the BouncyCastle or to whoever has implemented your server.

and is expecting a BER, not a DER.  Is there anyway to encode in BER using this library?

As I stated previously DER is a subset of BER so every valid DER message is a valid BER message. If this server supports BER and your message is a valid DER message then the server have to be able to decode it. If it can't decode it then it does not support BER.

At this point, the only difference between the DER's i'm generating and the BERS i'm supposed to send is in the length of each element. The "correct" BER's have indefinite length while mine are definitive.

There is another variant of BER called Canonical Encoding Rules (CER). The key difference between the two is that DER always uses the definite length form of encoding while CER always uses the indefinite length form. See Rec. ITU-T X.690 (08/2015)" " paragraphs 9, 10 and 11.
And no, CER is currently not supported in asn1c

Any way of changing every definitive length element into indefinitive ones?

No easy way as far as I know. You could try use the *_encode_der functions as a base and implement the CER encoding.
P.S
Please close the other issues if you have no more questions there.

Maybe it's time to report this issue to the BouncyCastle or to whoever has implemented your server.

I'm fairly close to the BouncyCastle team, and can pick up this direction investigating this problem. But my bet would be that the server is doing something wrong.
More details on exactly what class/method of BouncyCastle is invoked, by what code, and with what parameters would help.
I don't think BC supports CER, but I never bothered to check (still, since BC is a crypto package, I'd expect a fairly competent support of DER as all the certs are DER-encoded, but not CER).

But my bet would be that the server is doing something wrong.
After finally being granted access to the server's code and I can see that indeed the problem is in the server. The parsing on the server's side is forcing every element to be BER related, instead of DER.  I've changed it to allow both BER and DER and for now it is doing the job.

In the end, BouncyCastle allows the users to do whatever they want and do not follow the "Be liberal in what you accept and conservative in what you send" rule, which opens up the possibility to making mistakes like this one.
Anyways, couldn't have done it without you guys help, so thank you again!

The parsing on the server's side is forcing every element to be BER related, instead of DER.  I've changed it to allow both BER and DER and for now it is doing the job.

Glad you found (and fixed) the problem, and it's working for you now.

In the end, BouncyCastle allows the users to do whatever they want

Which is great, because different people have different needs.

and do not follow the "Be liberal in what you accept and conservative in what you send" rule,

I'd like to hear more on where exactly BC doesn't follow it. In your example, if the server tells BC to not accept something, how is it BC's fault or oversight?
Although, I might bring this up with the BC team to hear what they think about this issue.

which opens up the possibility to making mistakes like this one.

IMHO, it is infeasible to create a usable library that prevents every possible foolish mistake on behalf of the caller.  ;-)

IMHO, it is infeasible to create a usable library that prevents every possible foolish mistake on behalf of the caller. ;-)
A good example of what I meant by that is the fact that in BC, the datatype "BERApplicationSpecific" inherits from "DERApplicationSpecific". IMO that breaks a fundamental principle of ASN.1 that @velichkov mentioned above, that every DER is a valid BER, but not every BER is a valid DER.
Sure it's impossible to create a library that prevents every possible misuse but there are always core principles that should be protected

...in BC, the datatype "BERApplicationSpecific" inherits from "DERApplicationSpecific". IMO that breaks a fundamental principle of ASN.1 that @velichkov mentioned above, that every DER is a valid BER, but not every BER is a valid DER.

You are right - this should be addressed. I'll talk to them.

@Luis-Abreu I forgot to ask: what version of BouncyCastle does your server use? And it would be great if you could

post a (short?) sample of the code that fails to parse the correct DER
post the fix
post a short sample (say, hex-encoded) DER_encoded data that can demonstrate this problem

It would help fixing BC (assuming the team is convinced it's a problem).

Also, here's the recommendation I got so far:

The code should have been written using ASN1Sequence.getInstance(). ASN.1 streams, as objects, can contain both primitive and user defined types - casting in that situation will only cause errors, errors which will often hide during development and show up as unexpected side effects resulting from apparently trivial changes. Don't cast, use the .getInstance() methods, that's what they are for.

@Luis-Abreu are you interested in a change in BC? If so, please post the info I requested. Otherwise I'll assume that you're happy with your workaround, and with the answer I passed along from the BC team  - and no more effort is needed on this.


Docs/1.1.2 changelog

Besides the Changelog, there's one new sentence about scope service in the use cases page.

@jrcheli @michalbiesek
I've done the best I could with your feedback. Will revise Monday if we need to. Thanks again!

Looks great to me!  Thanks @abetones!  Merging!


[dv, chip, rom e2e]: Unable to run ROM E2E test with the base OTP image in Prod lifecycle state

Description
Upon running "rom_e2e_smoke" test with the base OTP image in the Prod LC state. Then, the Booter fails at some stage and calls “shutdown_finalize”.
The cause of this call is an error that occurred during rom_try_boot():
https://github.com/lowRISC/opentitan/blob/709d4e7ca0575e7016b3a09bffea9b1028cb4c81/sw/device/silicon_creator/rom/rom.c#L568-L570
Test: rom_e2e_smoke with "+use_otp_image=OtpTypeLcStProd" plusarg, run over OT earlgrey_es branch.

CC: @sha-ron

Yes that is expected as an that "+use_otp_image=OtpTypeLcStProd" plusarg uses an empty OTP image with just the LC state set to PROD (IIRC), and the ROM requires some OTP fields to be provisioned correctly in order to boot successfully.
To fix this, you can use the "+use_otp_image=OtpTypeCustom" plusarg, and then add the string "//hw/ip/otp_ctrl/data:img_prod:4" to the list of "sw_images" in the dvsim config file. This will tell dvsim to use a Bazel-built OTP image that has the proper OTP fields configured in the CREATOR_SW_CFG and OWNER_SW_CFG partitions that are required for the ROM to boot the chip.

Yes that is expected as an that "+use_otp_image=OtpTypeLcStProd" plusarg uses an empty OTP image with just the LC state set to PROD (IIRC), and the ROM requires some OTP fields to be provisioned correctly in order to boot successfully.
To fix this, you can use the "+use_otp_image=OtpTypeCustom" plusarg, and then add the string "//hw/ip/otp_ctrl/data:img_prod:4" to the list of "sw_images" in the dvsim config file. This will tell dvsim to use a Bazel-built OTP image that has the proper OTP fields configured in the CREATOR_SW_CFG and OWNER_SW_CFG partitions that are required for the ROM to boot the chip.

Hi @timothytrippel, this does not work (same issue). Are there any other configurations that should I consider?

@timothytrippel, it appears that "//hw/ip/otp_ctrl/data:img_prod:" does not contain the necessary OTP fields required for provisioning during the boot process. Could you please check and advice?

@walaahattab sorry for just getting back to you; I think I see the other issue. In addition to changing the OTP image as you have done, this line which currently is
sw_images: ["//sw/device/silicon_creator/rom/e2e:empty_test_slot_a:1:ot_flash_binary:signed:fake_rsa_test_key_0"]

should be
sw_images: ["//sw/device/silicon_creator/rom/e2e:empty_test_slot_a:1:ot_flash_binary:signed:fake_rsa_prod_key_0"]

If you want to run in prod LC state, you need to use a flash image that has been signed with a PROD key. Flash images signed with test keys will not boot in the prod LC state.

So this issue confirms that our signature verification actually works ;).

Thank you @timothytrippel, the issue has been resolved with your fix, which involves using the custom PROD OTP image and a signed flash image with a PROD key to ensure a successful boot in the PROD LC state.


fix: Compilation problems detected on macos, linux

Fix issue: https://github.com/LiveAsynchronousVisualizedArchitecture/simdb/issues/4 and https://github.com/LiveAsynchronousVisualizedArchitecture/simdb/issues/8

headCmpEx() changed to not use the atomic copy operator that is set to deleted in macos  (Xcode 14). Fixing the following error:

./simdb.hpp:554:41: error: copying parameter of type 'std::atomic<u64>' (aka 'atomic<unsigned long long>') invokes deleted constructor
    }while( !headCmpEx( &curHead.asInt, nxtHead.asInt) );

changing decltype(f(vi)) to decltype(f(VerIdx())) in runMatch to fix the following error

./simdb.hpp:1349:99: error: use of undeclared identifier 'vi'
  bool      runMatch(const void *const key, u32 klen, u32 hash, FUNC f, T defaultRet = decltype(f(vi))() )       const

The example is tested and works perfectly. My platform (Macos m1, Xcode14)

@LiveAsynchronousVisualizedArchitecture

It would also be good if you could get this to also work with Visual C++ 20. I'll get errors unless I define:
/D _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING


rustup run 1.9.0 is not an alias for rustup run stable when stable version is 1.9.0

It probably should be equivalent.

I'm pretty sure it will fit in the same code paths, but I'd like to extend this to rustup default and stable-${date}.

Is this really an issue now? @kinnison

this "issue" remains because the toolchain name won't match.  Not sure if there's an efficient way to determine which toolchain to run in that context other than enumerating them all and checking that there's exactly one which matches the given version


MM-31644 Detox/Mock/E2E: Phase 1 - Detox, Mockserver, sample iOS E2E for Network Client

Summary

Added detox foundation similar to what is found in mattermost-mobile but a little stripped down (example/detox)

Added mock server api detox client (example/detox/e2e/support/server_api)
Added component objects (example/detox/e2e/support/component)
Added screen objects (example/detox/e2e/support/screen)

Added mock server foundation (example/mocks)

Added simple dynamic response to return original request details (url, method, headers, body)

Added necessary testIDs
Added basic documentation

To run mock server, please read example/MOCKSERVER.md

npm run mockserver

To run detox tests, please read example/README.md

under detox folder, npm run e2e:ios-test

Added sample iOS E2E tests for generic and api client requests - get, post, put, patch, delete (example/detox/test)

E2E works only on iOS for now. Android E2E will be addressed on a future PR.
Note: Separate future PRs will be created for the following,

Sample iOS E2E for upload and fast image api client requests
Sample iOS and Android E2E for creating api client
Sample Android E2E for generic and api clients requests
Sample iOS and Android E2E for web socket client
Sample iOS and Android E2E for creating web socket client

Ticket Link
JIRA: https://mattermost.atlassian.net/browse/MM-31644

Nice!!!

Nice!!!

This looks pretty darn amazing but I couldn't get it to work for iOS or Android; I stepped through
https://github.com/namshi/mockserver
https://github.com/wix/Detox/blob/master/docs/Introduction.GettingStarted.md
https://github.com/wix/Detox/blob/master/docs/Introduction.AndroidDevEnv.md
https://github.com/wix/Detox/blob/master/docs/Introduction.iOSDevEnv.md
https://github.com/wix/AppleSimulatorUtils
To make sure I had all the requirements.
On iOS I kept seeing multiple iPhone-11-Detox simulators start up and the terminal error was consistently:
detox[11734] ERROR: Error: app binary not found at '/Users/shaz/Code/react-native-network-client/example/ios/Build/Products/Debug-iphonesimulator/NetworkClientExample.app', did you build it?
^^ I tried building via xcode, no luck.
Android - I stepped through the create-emulator, and then build, and then test, no luck either. The detox_emu_api_30 emulator started, but the application never installed. I tried running npm run android manually with the detox emulator running, and then tried npm run e2e:android-test but the emulator just restarted without the app, and then gave a timeout error;
    DetoxRuntimeError: Failed to run application on the device

    HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.

The various attempts above were after I tried to step through the readme file initially.

This looks pretty darn amazing but I couldn't get it to work for iOS or Android; I stepped through
https://github.com/namshi/mockserver
https://github.com/wix/Detox/blob/master/docs/Introduction.GettingStarted.md
https://github.com/wix/Detox/blob/master/docs/Introduction.AndroidDevEnv.md
https://github.com/wix/Detox/blob/master/docs/Introduction.iOSDevEnv.md
https://github.com/wix/AppleSimulatorUtils
To make sure I had all the requirements.
On iOS I kept seeing multiple iPhone-11-Detox simulators start up and the terminal error was consistently:
detox[11734] ERROR: Error: app binary not found at '/Users/shaz/Code/react-native-network-client/example/ios/Build/Products/Debug-iphonesimulator/NetworkClientExample.app', did you build it?
^^ I tried building via xcode, no luck.
Android - I stepped through the create-emulator, and then build, and then test, no luck either. The detox_emu_api_30 emulator started, but the application never installed. I tried running npm run android manually with the detox emulator running, and then tried npm run e2e:android-test but the emulator just restarted without the app, and then gave a timeout error;
    DetoxRuntimeError: Failed to run application on the device

    HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.

The various attempts above were after I tried to step through the readme file initially.

@shazm For iOS, what error do you see when installing example app from Xcode? From command line, what error are you seeing as well? (please post screenshots)
npm run ios

Also, to launch app after install (kill first the original terminal window opened by install command above)
npm run start

Try to close app (not just minimize and dismiss any error prompts if ever) and re-open. What do you see? (please post screenshots)

@shazm For iOS, what error do you see when installing example app from Xcode? From command line, what error are you seeing as well? (please post screenshots)
npm run ios

Also, to launch app after install (kill first the original terminal window opened by install command above)
npm run start

Try to close app (not just minimize and dismiss any error prompts if ever) and re-open. What do you see? (please post screenshots)

Hi @saturninoabril Mind trying out the test on iOS and see if you encounter any issues?

Hi @saturninoabril Mind trying out the test on iOS and see if you encounter any issues?

iOS is working for me following the updated instructions

iOS is working for me following the updated instructions

This is great Joseph! 💯
Sure. I tried npm run ios but got error below.

Got it working by running manually the pod install, like
npm i
cd ios && pod install
npm run ios

Then, on Detox test itself, I've got failed test on "API Client Request". Note that I have mockserver running and is accessible at http://localhost:8080/. I haven't look into the details but you might wanna take a look further.

This is great Joseph! 💯
Sure. I tried npm run ios but got error below.

Got it working by running manually the pod install, like
npm i
cd ios && pod install
npm run ios

Then, on Detox test itself, I've got failed test on "API Client Request". Note that I have mockserver running and is accessible at http://localhost:8080/. I haven't look into the details but you might wanna take a look further.

@josephbaylon Sorry for the delay in review. Will take a look at this first thing tomorrow.

Not working on Android to me either.  I'm getting the ff error:

"DetoxRuntimeError: Failed to run application on the device"
"No response from server at http://<IP_ADDRESS>:8080"

@saturninoabril Thanks for testing! For iOS, there's a note in the readme.
Note: Before running tests, toggle off smart punctuation to disable smart quotes on device. For iOS, go to *Settings > General > Keyboard*, and toggle off **Smart Punctuation**.

Please try again with the smart punctuation toggled off.
I'll investigate the android build further. From your local, is it because the android app is not being launched by detox?

Hi @jaydeland This is the repo I need my write access to granted again. Thanks in advance!

Thanks! That fixes the issue on iOS.

On Android, I wonder if you're able to run the test as I'm not seeing the implementation for androidTest, such as
// in build.gradle
androidTestImplementation('com.wix:detox:+')

Also, the Detox.java.
See how it's done in the mattermost-mobile.

@saturninoabril Haha, I have those local changes which I added after the last commit. I didn't realize the git push was being denied. I should pay more attention on the git push error. I already notified Jay regarding my write access

@saturninoabril @shazm I pushed the missed changes for android. Let me know if you're still not able to run.
As mentioned in the summary, Android verification is limited due to getAttributes only available on iOS and exact whole string verification especially for headers cannot be done. This limitation will be investigated in a separate PR.
For this PR, the verification for Android on response overlay will fail. @shazm A couple of things that need fixing for Android,

URL value is blank

Request body is being wrapped with some native map instead of just the json object and causing request error

{ NativeMap: {"login_id":"username","password":"password"} }

vs
{"login_id":"username","password":"password"}

and results in error

@shazm Let me know when you've fixed the issues and I can merge your changes to this PR to retest again.

@shazm @saturninoabril @migbot @enahum This PR is only for iOS. A different PR for Android will be created. In case you find more issues on Android, we'll table it for another PR. Thanks!

@shazm @migbot I had to update from latest master because of merge conflicts. However, when I try to install android/ios I'm getting a getConstants issue on web socket client. I'm getting the same when I switch to master branch. Please check.


comfy_mtb kills WD14 Tagger [bug]

Describe the bug
if i install the MTB nodes my WD14 tagger (https://github.com/pythongosssss/ComfyUI-WD14-Tagger) goes to "IMPORT FAILED" at comfy startup. at the moment i use comfy v0.0.1 but this happened also a version earlier.
repairing reinstalling dont help. tagger stayes broken at loadup.
comfy complaining with a few errors at startup. looks like the "onnxruntime_gpu-1.18.1.dist-info" is the problem.

Traceback (most recent call last):
File "F:\ComfyUI_v0.0.1_MK3_Testing\ComfyUI\nodes.py", line 1931, in load_custom_node
module_spec.loader.exec_module(module)
File "", line 940, in exec_module
File "", line 241, in call_with_frames_removed
File "F:\ComfyUI_v0.0.1_MK3_Testing\ComfyUI\custom_nodes\ComfyUI-WD14-Tagger_init.py", line 4, in
from .wd14tagger import NODE_CLASS_MAPPINGS, NODE_DISPLAY_NAME_MAPPINGS
File "F:\ComfyUI_v0.0.1_MK3_Testing\ComfyUI\custom_nodes\ComfyUI-WD14-Tagger\wd14tagger.py", line 10, in
import onnxruntime as ort
File "F:\ComfyUI_v0.0.1_MK3_Testing\python_embeded\Lib\site-packages\onnxruntime_init_.py", line 57, in
raise import_capi_exception
File "F:\ComfyUI_v0.0.1_MK3_Testing\python_embeded\Lib\site-packages\onnxruntime_init_.py", line 23, in
from onnxruntime.capi._pybind_state import ExecutionMode  # noqa: F401
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI_v0.0.1_MK3_Testing\python_embeded\Lib\site-packages\onnxruntime\capi_pybind_state.py", line 32, in >
from .onnxruntime_pybind11_state import *  # noqa

internal status (http://<IP_ADDRESS>:8188/mtb/status) of MTB tells me this as Failed to load
MTB_DeepBump	-
MTB_FaceSwap	-
MTB_FilmInterpolation	-
MTB_ImageRemoveBackgroundRembg	-
MTB_LoadFaceAnalysisModel	-
MTB_LoadFaceSwapModel	-
MTB_LoadFilmModel	-
the only way to get both working is to delete the onnxruntime and WD14. after that reinstalling WD14 brings the propper onnxruntime.
Reproduction
No response
Expected behavior
No response
Operating System
Windows (Default)
Comfy Mode
Comfy Portable (embed) (Default)
Console output
No response
Additional context
No response

Thanks for the report, my guess is that you are now using CUDA 12 and it needs a special index to be specified in that case... I'll test a few things to see the best approach here.
In the meantime you can follow these instructions: https://onnxruntime.ai/docs/install/#install-onnx-runtime-gpu-cuda-12x
Using the python/pip from comfy embed (at F:\ComfyUI_v0.0.1_MK3_Testing\python_embeded\bin I think)

thx for having a look. i would guess its the tagger which dont wanna work with the newer/other onnx stuff. maybe it gets an update sometimes.


Support alternative f/F/t/T/;/, keymaps (fix #96)

I've changed the implementation a bit so that we can re-use the keys config option.
Thank you!


import_fs.default.cpSync is not a function

What version of Turborepo are you using?
latest
What package manager are you using / does the bug impact?
npm
What operating system are you using?
Windows
Describe the Bug
import_fs.default.cpSync is not a function..... when try to setup new turborepo app in step 3 after choosing name of app & package manager npm(8.19.2)
Expected Behavior
should be installed everything
To Reproduce

Use node 16 or greater for now. We'll add support for Node 14 shortly.

Use node 16 or greater for now. We'll add support for Node 14 shortly.

i use v16 & 18 give me same issue. but after using v17 its work fine. thanke you

Got the same error, Will  upgrade node

For me didn't work with v16.6.2 but the problem was solved with 16.13.0 🤷♀


Latest builds should include .tar.zip to be installable via npm

In an attempt to get around the unreleased fix for #593, I'm using the latest builds in the links in the readme. The problem is NPM wants a zipped tarball file, which is not provided.
See https://docs.npmjs.com/cli/install#description

This issue was selected to be spring-cleaned by a script. More information can be found here.
If anyone thinks this was a mistake and this issue should be reopened, please leave a message below explaining why. Before doing so, please consider reading the CONTRIBUTING file.


CBE Clima stopped working for us

Describe the bug
We have been having students use the CBE Clima tool to do site analysis for an assignment this past week, and as far as we knew, it was working for them.  But this afternoon, the webpage seemed to stop working, after a climate data set was selected, and the user clicked "OK" in the "Do you want to analyze data for xxxx location?"  The popup says the data file was successfully loaded, but all the tabs for the various aspects of climate data are grayed out, and don't recognize clicks.  This is both on the on-campus network, and various off-campus locations.
To Reproduce
Steps to reproduce the behavior:

Go to 'https://cbe.berkeley.edu/research/clima-tool/'
Click on 'Use the tool'
Select a climate location and click on the specific dot to open weather data window, and click on that to load it.
Select "Yes" when window pops up with "Analyze data from XYZ?"
Info bar at top for EPW changes from blue to green and says "The EPW was successfully loaded"
There is no indication of an error, but the page is just stuck there... tabs at top for various aspects of climate data are grayed out (see enclosed screenshot below), and do not respond to mouse-over or clicks of any kind

Expected behavior
What was happening after the EPW was successfully loaded was (I think...) the tabs at the top of the page would darken or shade on mouse-over, and then allow that tab to be clicked, which would open a window in the frame below with that aspect of climate data charted or graphed out.  You could then hover over another tab which would darken, click on it, and take you to that data as a graph/chart.
Screenshots

Desktop (please complete the following information):

OS: Various Apple and Windows OS's as different students are trying to access this page
Browser: Again, various browsers for Mac and Windows, but likely mostly Chrome and Firefox (though I've tried it on Safari as well... same result
Version: Likely many different browser versions.

Additional context
Add any other context about the problem here.

Thank you so much for reporting this issue. I am investigating the problem now. I deployed a test version of Clima to this URL. @Ecosopher64 and @giobetti could you please check that this new version is working? On my computer is working but it is slow.
If it is working I will propagate the changes to the main URL.

I investigated the issue and the error was caused by the ServersideOutputTransform. I updated the dependencies and this solved the issue. I, therefore, published a new version of the Clima application. please let me know if you are still experiencing issues. Thank you @Ecosopher64 for reporting the issue.

Seems to work well on my end.
Thanks for fixing this Federico!
Giovanni
On 22. Jan 2024, at 07:54, Federico Tartarini @.***> wrote:

I investigated the issue and the error was caused by the ServersideOutputTransform. I updated the dependencies and this solved the issue. I, therefore, published a new version of the Clima application. please let me know if you are still experiencing issues. Thank you @Ecosopher64https://github.com/Ecosopher64 for reporting the issue.
—
Reply to this email directly, view it on GitHubhttps://github.com/CenterForTheBuiltEnvironment/clima/issues/223#issuecomment-1903368397, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIWZJAAPXJ3B3RITPP7XAYTYPYEJLAVCNFSM6AAAAABCCWY7AGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBTGM3DQMZZG4.
You are receiving this because you were mentioned.Message ID: @.***>


Generate coverage reports for host specs

This PR changes the behaviour of RSpec::Puppet::Coverage#add_from_catalog so that we can now pass nil as the test_module param to prevent it from filtering out any of the resources, which we now do for :host specs. Additionally, Node[default] has been added to the default coverage filter as one of those internal resources Puppet creates that you don't really care about when calculating code coverage.
Fixes #466

Changes Unknown when pulling d0319c3e29ec5237fb9bbf63367e48040903e0e8 on issue-466 into ** on master**.

Changes Unknown when pulling 3c18bfd769b191d18abbfb02146bacdb3bde7119 on issue-466 into ** on master**.


Ada locked with Assets

When I transferred from Yoroi to Nami some of the coins seem to be locked with assets.

 This means you won't be able to send your full ada balane out of your wallet if you have assets in there. Users got confused with that and wondered why they can't send all their ADA. So in Nami we simply display you the effective ADA balance you can spend without assets. The other ADA are "locked" or needed for the assets.

 How to send the "locked" ADA as well at the same time?


[RESTEASY-2888] Change sub-modules to use their direct parent module …

…as it's parent. Clean up the pom's and dependency tree as much as possible.
https://issues.redhat.com/browse/RESTEASY-2888
While I did clean the POM's up a bit during this, that part is less critical to me at this point. If we'd prefer a separate change for that I understand and will change this to only move the parent POM's.

@asoldano @ronsigal What do you think about this?

Given the approval I'm merging this :)


Add support for Pod Security Admission - Cluster K3S

Main Issue: https://github.com/rancher/dashboard/issues/7119
The support for selecting the default Pod Security Admission should also be available when the cluster is K3S.
Below is the edit page for the RKE2 cluster as a demonstration:

@jiaqiluo please mind to link the issues when these are affected.
https://github.com/rancher/dashboard/issues/8068
PSA value should not be reset if we enable PSA for K3.

The current UI does not offer the possibility to set a PSP for any K3S version. Does this ticket mean that this feature should now be enabled?

hi @kwwii. The security feature we want to enable for k3s clusters is PSA, more specifically using PSACT, not PSP. They are two different things :)

@jiaqiluo I don't think that K3S currently has any UI for setting PSPs. Does this mean that there is a new feature for supporting PSAs in K3S? I don't think that we had this on our radar of outstanding UI work.

hi @kwwii
You are right that we do not have this feature request, and even the PRD documentation does not mention it (sorry that I did not realize this when I made the issue).   I think it made sense to expose the option in the UI because the Rancher backend supports using PSACT in K3S clusters; also, we already have it in the UI for RKE2 clusters.
This can be treated as a new feature request. I notice the linked PR is already merged and this issue is labeled "to test". Grate job UI team!

@jiaqiluo Sorry, I wasn't trying to point fingers - and wasn't aware that the work is already finished :-(
I wanted to ensure that everything gets done properly but apparently overlooked something.

@kwwii  No worries!

Sharing the basic, applicable use cases from the internal K8s 1.25 test plan here for track-ability.
ENVIRONMENT

Rancher install: Docker
Rancher version: v2.7-head https://github.com/rancher/rancher/commit/1dd2af2d214b159c2c8ffcfc5838b6caece381cd
Browser: Chrome

TEST RESULT

Scenario
Test Case
Result

1
As a standard user, provision a K3s 1.25 node driver with PSA value rancher-privileged, create a deployment with this cluster-level PSA and validate it is successful
:white_check_mark:

2
As a standard user, provision a K3s 1.25 node driver with PSA value rancher-restricted, create a deployment with a namespace of PSA level restricted and validate it fails
:white_check_mark:

3
As a standard user, provision a K3s 1.24 node driver with no PSA value, upgrade to v1.25 with PSA level rancher-privileged, create a deployment with this cluster-level PSA and validate it is successful
:white_check_mark:

Scenario 1

In Rancher UI as a standard user, navigated to Cluster Management > Create.
In the Security section, updated the PSA dropdown to have value rancher-privileged.
Edit as YAML and validate that spec.defaultPodSecurityAdmissionConfigurationTemplateName is set to rancher-privileged.
Provisioned the cluster and validated that the cluster and nodes came up as Active in Cluster Management and Cluster Explorer.
Viewed the cluster's YAML and validate that spec.defaultPodSecurityAdmissionConfigurationTemplateName is set to rancher-privileged.
Verified the workloads/pods in System project page are up and Active.
Created a deployment with the container image nginx:latest and default settings in the default namespace; validated that the deployment came up as Active.

Scenario 2

Repeated scenario 1, but in step 2, chose PSA value rancher-restricted.

Step 3 through 6 were successful, but the value in spec.defaultPodSecurityAdmissionConfigurationTemplateName reflect as rancher-restricted.

Created a new namespace called test-namespace in new project test-project with the following PSA levels:

Created a deployment with the container image nginx:latest in the new test-namespace namespace; validated that the deployment fails as expected with the following message:

Scenario 3

Repeated scenario 1 steps 1-4, but ensured that the K8s version is v1.24 with no PSA level set.
Upgraded the K8s version from v1.24 -> v1.25 and ensured that PSA level rancher-privileged is set.
Validated that the upgrade was successful and the cluster and nodes have the new K8s version in Cluster Management and Cluster Explorer.
Repeated scenario 1 steps 5-7 with the same successful results.

As these are basic use cases, if there are more advanced workflows that are found to have separate issues, separate issues will be logged at that time.


New package: ParameterEstimation v0.1.0

Registering package: ParameterEstimation
Repository: https://github.com/iliailmer/ParameterEstimation.jl
Created by: @iliailmer
Version: v0.1.0
Commit: 3597f5e9450b5afcd4540cff13fb15651b217242
Reviewed by: @iliailmer
Reference: https://github.com/iliailmer/ParameterEstimation.jl/issues/44
Description: ParameterEstimation.jl is a Julia package for estimating parameters and initial conditions of ODE models given measurement data.

will add required compats shortly


Provide more custom widgets

For example, the widget used to describe margin and padding like:

for describing aligned widgets like:

and more user-friendly custom widgets

refernce: webflow's editor

margin: ruoyu
color: yangfeng


Size of messages in hare protocol are too large for P2P network (esp. SVP)

Listed some potential issues to address once we run the hare protocol on a large scale.
The protocol specifies running that hare with committees of size N= 800, and so f=401.

[ ] 1. size of messages. most messages contain a certificate assembled of f messages. SVP is even larger. A recommended solution is to implement references (pointers) in hare messages, that would significantly reduce the size of messages.

[x] 2. VRF. We would need to run the VRF over N messages every round (expect for proposal). We use the BLS signature scheme, as our choice of VRF, and its implementation is not optimised; see https://github.com/spacemeshos/go-spacemesh/issues/1648 and https://github.com/spacemeshos/go-spacemesh/issues/975.
There were thoughts of choosing a different construction for our VRF (https://github.com/spacemeshos/research/issues/15). Note that sticking with BLS may allow us to aggregate signatures (and public keys), which may be useful for syncing the hare results (see https://github.com/spacemeshos/go-spacemesh/issues/1825).

[x] 3. active set calculation. this is not necessarily relevant for a large scale, but for long epochs. The hare traverses over a full epoch to get the number (and set of ids) of total active miners in consensus. Once epochs become 4032 layers, this may take a long time.

#3287 would give us more insight into how much we need to reduce the message sizes by, and whether the current sizes are truly problematic.
Note: the only message that actually contains a "certificate", as per the current implementation, is the notify message
https://github.com/spacemeshos/go-spacemesh/blob/develop/hare/algorithm.go#L655
That is the only time the SetCertificate method is called on the hare message builder.
Certificates are currently not included in the status messages because (1) in the first iteration, preround messages (and thus the preround certificates) are assumed to have been seen (and constructed) by the beginning of the status round, and (2) the commit certificates from previous iterations of a consensus process are constructed and then broadcasted by the end of the notify round.


IOError: [Errno 2] No such file or directory

4.Since py-faster-rcnn does not support multiple training datasets, we need to merge VOC 2007 data and VOC 2012 data manually. Just make a new directory named VOC0712, put all subfolders except ImageSets in VOC2007 and VOC2012 into VOC0712(you'll merge some folders). I provide a merged-version ImageSets folder for you, please put it into VOCdevkit/VOC0712/.
when i follow this step and marged with provided Imageset than i got  this error
'USE_GPU_NMS': True}
Loaded dataset voc_0712_trainval for training
Set proposal method: gt
Appending horizontally-flipped training examples...
voc_0712_trainval gt roidb loaded from /home/user01/Music/fc/py-R-FCN/data/cache/voc_0712_trainval_gt_roidb.pkl
Traceback (most recent call last):
File "./tools/train_net.py", line 104, in
imdb, roidb = combined_roidb(args.imdb_name)
File "./tools/train_net.py", line 69, in combined_roidb
roidbs = [get_roidb(s) for s in imdb_names.split('+')]
File "./tools/train_net.py", line 66, in get_roidb
roidb = get_training_roidb(imdb)
File "/home/user01/Music/fc/py-R-FCN/tools/../lib/fast_rcnn/train.py", line 142, in get_training_roidb
imdb.append_flipped_images()
File "/home/user01/Music/fc/py-R-FCN/tools/../lib/datasets/imdb.py", line 111, in append_flipped_images
assert (boxes[:, 2] >= boxes[:, 0]).all()
AssertionError
but if i use the Imageset from VOC2007 than after finish all ite i got this error,does anyone face same problem?
im_detect: 4948/4952 0.097s 0.001s
im_detect: 4949/4952 0.097s 0.001s
im_detect: 4950/4952 0.097s 0.001s
im_detect: 4951/4952 0.097s 0.001s
im_detect: 4952/4952 0.097s 0.001s
Evaluating detections
Writing aeroplane VOC results file
Traceback (most recent call last):
File "./tools/test_net.py", line 90, in
test_net(net, imdb, max_per_image=args.max_per_image, vis=args.vis)
File "/home/user01/Music/fc/py-R-FCN/tools/../lib/fast_rcnn/test.py", line 298, in test_net
imdb.evaluate_detections(all_boxes, output_dir)
File "/home/user01/Music/fc/py-R-FCN/tools/../lib/datasets/pascal_voc.py", line 321, in evaluate_detections
self._write_voc_results_file(all_boxes)
File "/home/user01/Music/fc/py-R-FCN/tools/../lib/datasets/pascal_voc.py", line 248, in _write_voc_results_file
with open(filename, 'wt') as f:
IOError: [Errno 2] No such file or directory: '/home/user01/Music/fc/py-R-FCN/data/VOCdevkit0712/results/VOC0712/Main/comp4_33830d8c-2942-4517-b6ca-6a2beeaa1c62_det_test_aeroplane.txt'

I have the same error, I just mkdir -p /home/user01/Music/fc/py-R-FCN/data/VOCdevkit0712/results/VOC0712/Main/ ,and retrain .

same question , and I fond that I change my PascalVOC2007 to PascalVOC0712 and I forget to change "/home/user01/Music/fc/py-R-FCN/data/VOCdevkit2007" to "VOCdeviket0712". now I'm retest again. (we needn't to retrain)


Listt not found, PHP 7.0.14

Hey, I've added to my composer.json

...
"widmogrod/php-functional": "*"
...

but i get

Class 'Widmogrod\Primitive\Listt' not found

when i try to run
<?php
namespace App\Controller;
use App\Controller\AppController;
use Cake\Core\Configure;
use Widmogrod\Functional as f;
use Widmogrod\Primitive\Listt;

class DebugController extends AppController
{
    public function initialize()
    {
        parent::initialize();
        $this->Auth->allow(['functional']);
    }

    public function functional()
    {
        $list = Listt::of([
            ['id' => 1, 'name' => 'One'],
            ['id' => 2, 'name' => 'Two'],
            ['id' => 3, 'name' => 'Three'],
        ]);
        exit();
    }
}

Unfortunately I cannot confirm this.
What I did:

checkout latest version
install composer dependencies
run tests

and everything works.
I you could provide me means to reproduce I could help to solve it.
Maybe issue is with composer autoloader cache?


Abode not working in 0.101

Home Assistant release with the issue: 0.101.0b0
Last working Home Assistant release (if known): 0.100.3
Operating environment (Hass.io/Docker/Windows/etc.):
Ubuntu Venv
Integration:
https://rc--home-assistant-docs.netlify.com/integrations/abode/
Description of problem:
With the config flow, the abode integration does not work. If I include the following in the config:
abode:
  username: !secret abode_username
  password: !secret abode_password

I get the error:
Log Details (ERROR)
Sat Oct 26 2019 15:45:33 GMT-0400 (Eastern Daylight Time)
Error handling request
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.6/site-packages/aiohttp/web_protocol.py", line 418, in start
    resp = await task
  File "/srv/homeassistant/lib/python3.6/site-packages/aiohttp/web_app.py", line 458, in _handle
    resp = await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/real_ip.py", line 40, in real_ip_middleware
    return await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/ban.py", line 73, in ban_middleware
    return await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/auth.py", line 136, in auth_middleware
    return await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/view.py", line 122, in handle
    result = await result
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/config/config_entries.py", line 154, in get
    return await super().get(request, flow_id)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/helpers/data_entry_flow.py", line 78, in get
    result = await self._flow_mgr.async_configure(flow_id)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/data_entry_flow.py", line 86, in async_configure
    if cur_step.get("data_schema") is not None and user_input is not None:
AttributeError: 'NoneType' object has no attribute 'get'

If I remove the entry from configuration.yaml and use the UI to add Abode, I get the following error:
Log Details (ERROR)
Sat Oct 26 2019 15:49:20 GMT-0400 (Eastern Daylight Time)
Error handling request
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.6/site-packages/aiohttp/web_protocol.py", line 418, in start
    resp = await task
  File "/srv/homeassistant/lib/python3.6/site-packages/aiohttp/web_app.py", line 458, in _handle
    resp = await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/real_ip.py", line 40, in real_ip_middleware
    return await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/ban.py", line 73, in ban_middleware
    return await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/auth.py", line 136, in auth_middleware
    return await handler(request)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/view.py", line 122, in handle
    result = await result
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/config/config_entries.py", line 163, in post
    return await super().post(request, flow_id)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/http/data_validator.py", line 48, in wrapper
    result = await method(view, request, *args, **kwargs)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/helpers/data_entry_flow.py", line 90, in post
    result = await self._flow_mgr.async_configure(flow_id, data)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/data_entry_flow.py", line 89, in async_configure
    result = await self._async_handle_step(flow, cur_step["step_id"], user_input)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/data_entry_flow.py", line 132, in _async_handle_step
    result: Dict = await getattr(flow, method)(user_input)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/abode/config_flow.py", line 47, in async_step_user
    await self.hass.async_add_executor_job(Abode, username, password, True)
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/lib/python3.6/site-packages/abodepy/__init__.py", line 84, in __init__
    self._load_cache()
  File "/srv/homeassistant/lib/python3.6/site-packages/abodepy/__init__.py", line 478, in _load_cache
    self._save_cache()
  File "/srv/homeassistant/lib/python3.6/site-packages/abodepy/__init__.py", line 483, in _save_cache
    UTILS.save_cache(self._cache, self._cache_path)
  File "/srv/homeassistant/lib/python3.6/site-packages/abodepy/utils.py", line 11, in save_cache
    with open(filename, 'wb') as handle:
PermissionError: [Errno 13] Permission denied: './abode.pickle'

cc: @shred86

I'm not having any luck duplicating this. I just did a clean install of 0.101b2 in a virtual environment in MacOS and Ubuntu. Both appear to be working fine for me setting up Abode from the UI or configuration.yaml. I noticed you are running 0.101b0, but I don't think there's been any real changes since my commits were merged except one small PR someone made.
What version of Ubuntu is this and what is it running on?

Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.3 LTS
Release:	18.04
Codename:	bionic

on an Intel NUC. I used b2, but I guess the issue started with b0 (which is when the PR was merged). .

What version of Python are you testing this with?

I setup HA in a venv using Python 3.7.4, 3.7.3 and 3.6.1. I am testing on MacOS and Ubuntu 19.04. Still unable to duplicate. Will keep looking into it.

@arsaboo I assume you've tried deleting the abode.pickle file in the root of your config?
I did make some changes to the utils file in the last couple version releases which I think are making their way into .101 but only for handling loading issues.

@MisterWil Yes, I tried deleting the .pickle files with .101, but I still get the same errors.
There are a few things that I tried. I used the old Abode code (from 100.3) with abodepy==0.16.6 and that worked in both .100.3 and .101. With this setup, I only see abode_cache.pickle file in my config directory in .101 (not sure if I am supposed to see the abode.pickle there as well). So, the problem should be with the new integration code.
Is there any way to log the full path and permissions where the pickles files are being?

I am having the exact same issue and would also like that information.  I will be happy to help troubleshoot if you need additional information from a second setup.

I also didn't have this issue but I think its a simple fix. After looking through some other components I suspect it has to deal with the integration now being set up with async event calls and the defined pickle cache file path being prepended with the relative current working directory ./ - something none of the other integrations do. I've removed it in #28389 and hopefully it'll get pulled into a patch release soon.

I tried the fix in my local instance and I am still getting the same error:
Log Details (ERROR)
Thu Oct 31 2019 17:32:18 GMT-0400 (Eastern Daylight Time)
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/data_entry_flow.py", line 73, in async_init
    return await self._async_handle_step(flow, flow.init_step, data)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/data_entry_flow.py", line 132, in _async_handle_step
    result: Dict = await getattr(flow, method)(user_input)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/abode/config_flow.py", line 79, in async_step_import
    return await self.async_step_user(import_config)
  File "/srv/homeassistant/lib/python3.6/site-packages/homeassistant/components/abode/config_flow.py", line 47, in async_step_user
    await self.hass.async_add_executor_job(Abode, username, password, True)
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/lib/python3.6/site-packages/abodepy/__init__.py", line 84, in __init__
    self._load_cache()
  File "/srv/homeassistant/lib/python3.6/site-packages/abodepy/__init__.py", line 478, in _load_cache
    self._save_cache()
  File "/srv/homeassistant/lib/python3.6/site-packages/abodepy/__init__.py", line 483, in _save_cache
    UTILS.save_cache(self._cache, self._cache_path)
  File "/srv/homeassistant/lib/python3.6/site-packages/abodepy/utils.py", line 11, in save_cache
    with open(filename, 'wb') as handle:
PermissionError: [Errno 13] Permission denied: './abode.pickle'```

Note that this is part of the abodepy.
@prestoja Can you also try the fix as a custom_component and test?

@MisterWil I do see abodepy_cache.pickle with the current DEFAULT_CACHEDB = "./abodepy_cache.pickle", so not sure if that is the problem. It sounds like the problem is with the way abodepy is saving the pickle file. Ring has a slightly different way of saving the pickle file.

@prestoja Can you also try the fix as a custom_component and test?

Doesn't work for me either.  When trying to add via Integrations UI I get this:
2019-10-31 14:46:25 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/opt/hass/lib/python3.7/site-packages/aiohttp/web_protocol.py", line 418, in start
    resp = await task
  File "/opt/hass/lib/python3.7/site-packages/aiohttp/web_app.py", line 458, in _handle
    resp = await handler(request)
  File "/opt/hass/lib/python3.7/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/components/http/real_ip.py", line 40, in real_ip_middleware
    return await handler(request)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/components/http/ban.py", line 73, in ban_middleware
    return await handler(request)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/components/http/auth.py", line 136, in auth_middleware
    return await handler(request)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/components/http/view.py", line 122, in handle
    result = await result
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/components/config/config_entries.py", line 163, in post
    return await super().post(request, flow_id)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/components/http/data_validator.py", line 48, in wrapper
    result = await method(view, request, *args, **kwargs)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/helpers/data_entry_flow.py", line 90, in post
    result = await self._flow_mgr.async_configure(flow_id, data)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/data_entry_flow.py", line 89, in async_configure
    result = await self._async_handle_step(flow, cur_step["step_id"], user_input)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/data_entry_flow.py", line 132, in _async_handle_step
    result: Dict = await getattr(flow, method)(user_input)
  File "/opt/hass/lib/python3.7/site-packages/homeassistant/components/abode/config_flow.py", line 47, in async_step_user
    await self.hass.async_add_executor_job(Abode, username, password, True)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/hass/lib/python3.7/site-packages/abodepy/__init__.py", line 84, in __init__
    self._load_cache()
  File "/opt/hass/lib/python3.7/site-packages/abodepy/__init__.py", line 478, in _load_cache
    self._save_cache()
  File "/opt/hass/lib/python3.7/site-packages/abodepy/__init__.py", line 483, in _save_cache
    UTILS.save_cache(self._cache, self._cache_path)
  File "/opt/hass/lib/python3.7/site-packages/abodepy/utils.py", line 11, in save_cache
    with open(filename, 'wb') as handle:
PermissionError: [Errno 13] Permission denied: './abode.pickle'

@prestoja I am glad, I am not the only one and the bug is reproducible :)

Alrighty, worked with @arsaboo and with his help we narrowed down the issue and I believe we've got this one kicked with the PR. 💯