text:
[firebase_messaging] onMessage is missing notification.image

Issue
notification.image is missing from _onMessage
I know my server is working correctly because when my app is running in the background, and I send a notification over to my Android, the image appears. but when I try to handle the notification in foreground mode, I want to catch it with _onMessage and show the image in a flushbar. But I cannot because notification.image is missing.
The expected behaviour is notification.image should be present.
The Code
class FirebaseMessenger {
  static final FirebaseMessenger _singleton = FirebaseMessenger._internal();
  final FirebaseMessaging _fcm = FirebaseMessaging();
  static BuildContext _context;

  FirebaseMessenger._internal() {
    _fcm.configure(
      onMessage: _onMessage,
      onLaunch: _onLaunch,
      onResume: _onLaunch,
    );
    _fcm.requestNotificationPermissions(
        IosNotificationSettings(sound: true, badge: true, alert: true, provisional: true));
  }

  Future<dynamic> _onMessage(Map<String, dynamic> json) async {
      Log.debug(json.toString());
      var fbMessage = FirebaseMessage.fromJson(json);
       _showFlushbar(fbMessage);
  }
}

Output of Log.debug
{
notification: {
  title: perrylicious,
  body: Replied to your comment: Can't wait to come here next Friday!!! 🥩
},
data: {
  flashReply: 92,
  postId: 134,
  goto: post,
  click_action: FLUTTER_NOTIFICATION_CLICK
}
}

Flutter Doctor
E:\Magic\burntoast\crust>flutter doctor -v
[√] Flutter (Channel stable, v1.17.2, on Microsoft Windows [Version 10.0.16299.15], locale en-AU)
    • Flutter version 1.17.2 at C:\Apps\Flutter
    • Framework revision 5f21edf8b6 (11 days ago), 2020-05-28 12:44:12 -0700
    • Engine revision b851c71829
    • Dart version 2.8.3

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Users\Luna\AppData\Local\Android\Sdk
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = C:\Users\Luna\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    • All Android licenses accepted.

[√] Android Studio (version 3.6)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] Connected device (1 available)
    • SM G970F • RF8M21WE1TT • android-arm64 • Android 10 (API 29)

• No issues found!

Hello, Is there any chance we can get this ? I really need it to display a local notification when the app receives notification in the foreground.
It's really simple to add this feature, and i think it's much needed, Thanks.

authors: psyanite walidbagh

repo: FirebaseExtended/flutterfire


text:
Cloud firestorm unsafe operations

Android studio shows this error:
flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.13.6/android/src/main/java/io/flutter/plugins/firebase/cloudfirestore/CloudFirestorePlugin.java uses unchecked or unsafe operations.
It only notifies this error sometimes. I am running the latest version of the cloud_firestore. I appeared before with older versions.

Hey, as part of our on-going work for #2582, this has been resolved in our Firebase Firestore rework (#2913) - which has now been merged into master. We'll look at publishing some prereleases in the next few days. Thank you

source: gharchive/issue

license_type: permissive

license_source: github-api


text:
[AdMob] Question: Why it means for admob plugin?

Im reading the file README to understand how it works and see it:
It's not possible to specify a banner ad's size.
But what is means?
Because i see the adsize parameter:
BannerAd myBanner = BannerAd(
  adUnitId: BannerAd.testAdUnitId,
  size: AdSize.smartBanner,
  targetingInfo: targetingInfo,
);

See:   size: AdSize.smartBanner
Can anyone help me?
Thanks.

It looks like the README wasn't updated after https://github.com/FirebaseExtended/flutterfire/commit/88adb30d4b8ced81090f29e0895dc8ba2fbdbf34 was committed.
The plugin does support AdSize. We'll make sure this is fixed as we work on https://github.com/FirebaseExtended/flutterfire/issues/2521

The firebase_admob plugin will be deprecated in April 2021 in favor of Google Mobile Ads SDK for Flutter.
Google Mobile Ads SDK for Flutter is a new Flutter plugin that supports more Ads formats than firebase_admob does. Google Mobile Ads SDK for Flutter currently supports loading and displaying banner, interstitial (full-screen), native ads, and rewarded video ads across AdMob and AdManager. It also supports displaying banner and native ads as Widgets as opposed to being overlayed over all app content.
We're now recommending projects currently using firebase_admob migrate to Google Mobile Ads SDK for Flutter following the instructions outlined here.
Issues with migrating or with using the new package should now be raised over on the Google Mobile Ads SDK for Flutter repository.


text:
[firebase_storage] FirebaseStorage.instance.ref().child(path).getDownloadURL never returns

When 10+ different users are requesting getDownloadURL for the same path at the same time, for some users it hangs in await and never returns:
FirebaseStorage.instance.ref().child(path).getDownloadURL();
I'm referencing mp3 files and I have validated that the files are present in storage and 9 out of 10 clients are able to fetch the files. Once it fails, shortly after the client that first failed to get the download URL is able to fetch another one without problems.

Is it important to get the download URL from a storage reference in the client side ?
If it is not, then you can save a download URL in Cloud Firestore or in Realtime Database and give the URL from there to the client side every time.
I may be wrong, as I don't know what is your purpose in doing this.
FirebaseStorage.instance.ref().child(path).getDownloadURL();

Hey @MathiasSolling, the storage package has gone through a number of major releases since this issue. Are you able to let us know if this issue persists? Thanks.


text:
🐛 [firebase_auth 0.18.3] checkActionCode throws TypeError and never completes Future

Bug report
Describe the bug
Calling FirebaseAuth.checkActionCode() with a valid value throws an uncaught exception:
nexttick.js:37 Uncaught TypeError: Right-hand side of 'instanceof' is not callable
    at dart.LazyJSType.new.isRawJSType (types.dart:219)
    at dart.LazyJSType.new.is (types.dart:225)
    at dart.LegacyType.new.is (types.dart:414)
    at Function.is_FutureOr [as is] (future.dart:43)
    at dart.NullableType.new.as (types.dart:390)
    at js_util.dart:158
    at e.g (promise.js:826)
    at Oe (promise.js:1166)
    at _e (promise.js:1140)
    at le.t.fc (promise.js:1111)
    at he (run.js:124)

Steps to reproduce
Steps to reproduce the behavior:
Tested on Flutter Web:

Call FirebaseAuth's checkActionCode
See exception in console output

Expected behavior
The expected behavior is that the Future returned in checkActionCode will be completed with success or error.

Additional context
Firebase config in index.html:
  <script src="https://www.gstatic.com/firebasejs/7.14.3/firebase-app.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.3/firebase-auth.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.3/firebase-analytics.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.14.3/firebase-firestore.js"></script>
  <script>
    // Firebase configuration
    var firebaseConfig = {
      apiKey: "...",
      authDomain: "...",
      databaseURL: "...",
      projectId: "...",
      storageBucket: "...",
      messagingSenderId: "...",
      appId: "...",
      measurementId: "..."
    };
    // Initialize Firebase
    firebase.initializeApp(firebaseConfig);
    firebase.analytics();
  </script>

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, 1.23.0-18.1.pre, on Microsoft Windows [Version 10.0.19041.630], locale en-US)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[√] Chrome - develop for the web
[√] Android Studio (version 4.1.0)
[√] Android Studio
[√] IntelliJ IDEA Community Edition (version 2020.2)
[√] IntelliJ IDEA Ultimate Edition (version 2020.2)
[√] Connected device (3 available)

• No issues found!

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
Dart SDK 2.11.0-213.1.beta
Flutter SDK 1.23.0-18.1.pre
app 1.0.0+1

dependencies:
- cloud_firestore 0.14.3 [flutter meta quiver firebase_core firebase_core_platform_interface cloud_firestore_platform_interface cloud_firestore_web]
- cupertino_icons 1.0.0
- firebase_auth 0.18.3 [meta firebase_core firebase_core_platform_interface firebase_auth_platform_interface firebase_auth_web flutter]
- firebase_core 0.5.2 [firebase_core_platform_interface flutter quiver meta firebase_core_web]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- flutter_auth_buttons 0.8.0 [flutter]
- flutter_svg 0.19.1 [flutter meta path_drawing vector_math xml]
- flutter_web_plugins 0.0.0 [flutter js characters collection meta typed_data vector_math]
- google_sign_in 4.5.6 [google_sign_in_platform_interface flutter meta google_sign_in_web]
- http 0.12.2 [http_parser path pedantic]
- provider 4.3.2+2 [flutter nested collection]

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:
- async 2.5.0-nullsafety.1 [collection]
- boolean_selector 2.1.0-nullsafety.1 [source_span string_scanner]
- characters 1.1.0-nullsafety.3
- charcode 1.2.0-nullsafety.1
- clock 1.1.0-nullsafety.1
- cloud_firestore_platform_interface 2.2.0 [flutter meta collection firebase_core plugin_platform_interface]
- cloud_firestore_web 0.2.1 [flutter flutter_web_plugins http_parser meta firebase_core firebase_core_web cloud_firestore_platform_interface js]
- collection 1.15.0-nullsafety.3
- convert 2.1.1 [charcode typed_data]
- fake_async 1.2.0-nullsafety.1 [clock collection]
- firebase_auth_platform_interface 2.1.3 [flutter meta firebase_core plugin_platform_interface]
- firebase_auth_web 0.3.2 [flutter flutter_web_plugins meta http_parser intl firebase_core firebase_core_web firebase_auth_platform_interface js]
- firebase_core_platform_interface 2.0.0 [flutter meta plugin_platform_interface quiver]
- firebase_core_web 0.2.1 [firebase_core_platform_interface flutter flutter_web_plugins meta js]
- google_sign_in_platform_interface 1.1.2 [flutter meta quiver]
- google_sign_in_web 0.9.2 [google_sign_in_platform_interface flutter flutter_web_plugins meta js]
- http_parser 3.1.4 [charcode collection source_span string_scanner typed_data]
- intl 0.16.1 [path]
- js 0.6.3-nullsafety.1
- matcher 0.12.10-nullsafety.1 [stack_trace]
- meta 1.3.0-nullsafety.4
- nested 0.0.4 [flutter]
- 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]
- pedantic 1.9.2 [meta]
- petitparser 3.1.0 [meta]
- plugin_platform_interface 1.0.3 [meta]
- quiver 2.1.5 [matcher meta]
- sky_engine 0.0.99
- source_span 1.8.0-nullsafety.2 [charcode collection path term_glyph]
- stack_trace 1.10.0-nullsafety.2 [path]
- stream_channel 2.1.0-nullsafety.1 [async]
- string_scanner 1.1.0-nullsafety.1 [charcode source_span]
- 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]
- typed_data 1.3.0-nullsafety.3 [collection]
- vector_math 2.1.0-nullsafety.3
- xml 4.5.1 [collection convert meta petitparser]

Reproducible on latest master 1.24.0-8.0.pre.321 with
  firebase_auth: ^0.18.3
  firebase_core: ^0.5.2

  <script src="https://www.gstatic.com/firebasejs/7.20.0/firebase-app.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.20.0/firebase-auth.js"></script>

flutter doctor -v
[√] Flutter (Channel master, 1.24.0-8.0.pre.321, on Microsoft Windows [Version 10.0.19041.630], locale et-EE)
    • Flutter version 1.24.0-8.0.pre.321 at C:\Development\flutter_master
    • Framework revision 05dadb0120 (9 hours ago), 2020-11-20 07:33:05 +0530
    • Engine revision a0da844845
    • Dart version 2.12.0 (build 2.12.0-50.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at C:\Users\marku\AppData\Local\Android\sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\201.6953283\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

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

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.7.7)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.7.30621.155
    • Windows 10 SDK version 10.0.18362.0

[√] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\201.6953283
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] IntelliJ IDEA Ultimate Edition (version 2020.2)
    • IntelliJ at C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\202.7660.26
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart

[√] Connected device (5 available)
    • SM G950F (mobile) • ce12171c51cc001c03 • android-arm64  • Android 9 (API 28)
    • Windows (desktop) • windows            • windows-x64    • Microsoft Windows [Version 10.0.19041.630]
    • Web Server (web)  • web-server         • web-javascript • Flutter Tools
    • Chrome (web)      • chrome             • web-javascript • Google Chrome 86.0.4240.198
    • Edge (web)        • edge               • web-javascript • Microsoft Edge 86.0.622.68

• No issues found!

Minimal reproducible code sample
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:firebase_dynamic_links/firebase_dynamic_links.dart';
import 'package:flutter/material.dart';
import 'package:flutter_signin_button/flutter_signin_button.dart';

final FirebaseAuth _auth = FirebaseAuth.instance;

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(AuthExampleApp());
}

/// The entry point of the application.
///
/// Returns a [MaterialApp].
class AuthExampleApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Firebase Example App',
      theme: ThemeData.dark(),
      home: SignInPage(),
      routes: {"signInPage": (ctx) => SignInPage()},
    );
  }
}

/// Entrypoint example for various sign-in flows with Firebase.
class SignInPage extends StatefulWidget {
  /// The page title.
  final String title = 'Anonymous number link test';

  @override
  State<StatefulWidget> createState() => _SignInPageState();
}

class _SignInPageState extends State<SignInPage> {
  String uid = "";
  String code = "";

  @override
  void initState() {
    initDynamicLinks();
    changeUidText(_auth.currentUser);
    _auth.userChanges().listen(changeUidText);
    super.initState();
  }

  void initDynamicLinks() async {
    final PendingDynamicLinkData data = await FirebaseDynamicLinks.instance.getInitialLink();
    final Uri deepLink = data?.link;

    if (deepLink != null) {
      String linkCode = deepLink.queryParameters['oobCode'];
      print(linkCode);
      if (linkCode != null) {
        setState(() {
          code = linkCode;
        });
      }
    }

    FirebaseDynamicLinks.instance.onLink(onSuccess: (PendingDynamicLinkData dynamicLink) async {
      final Uri deepLink = dynamicLink?.link;
      if (deepLink != null) {
        String linkCode = deepLink.queryParameters['oobCode'];
        print(linkCode);
        if (linkCode != null) {
          setState(() {
            code = linkCode;
          });
        }
      }
    }, onError: (OnLinkErrorException e) async {
      print('onLinkError');
      print(e.message);
    });
  }

  void changeUidText(User user) {
    setState(() {
      if (user == null) {
        uid = "Signed out";
        return;
      }
      uid = user.uid;
      if (user.phoneNumber != null) {
        uid += " " + user.phoneNumber;
      }
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
        actions: <Widget>[
          Builder(builder: (BuildContext context) {
            return FlatButton(
              child: const Text('Sign out'),
              textColor: Theme.of(context).buttonColor,
              onPressed: () async {
                final User user = await _auth.currentUser;
                if (user == null) {
                  Scaffold.of(context).showSnackBar(const SnackBar(
                    content: Text('No one has signed in.'),
                  ));
                  return;
                }
                _signOut();
                final String uid = user.uid;
                Scaffold.of(context).showSnackBar(SnackBar(
                  content: Text(uid + ' has successfully signed out.'),
                ));
              },
            );
          })
        ],
      ),
      body: Builder(builder: (BuildContext context) {
        return ListView(
          padding: EdgeInsets.all(8),
          scrollDirection: Axis.vertical,
          children: <Widget>[
            Text(uid),
            _EmailLinkSignInSection(),
            Text(code),
            RaisedButton(
              child: Text("Check sign in code"),
              onPressed: () async {
                var result = (await FirebaseAuth.instance.checkActionCode(code));
                print(result.operation);
              },
            ),
            TextField(
              onChanged: (value) => setState(() => code = value),
            ),
          ],
        );
      }),
    );
  }

  // Example code for sign out.
  void _signOut() async {
    await _auth.signOut();
  }
}

class _EmailLinkSignInSection extends StatefulWidget {
  @override
  State<StatefulWidget> createState() => _EmailLinkSignInSectionState();
}

class _EmailLinkSignInSectionState extends State<_EmailLinkSignInSection> {
  final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
  final TextEditingController _emailController = TextEditingController();

  String _userEmail;

  @override
  Widget build(BuildContext context) {
    return Form(
        key: _formKey,
        child: Card(
            child: Padding(
          padding: EdgeInsets.all(16),
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.start,
            children: <Widget>[
              Container(
                child: Text('Test sign in with email and link', style: TextStyle(fontWeight: FontWeight.bold)),
                alignment: Alignment.center,
              ),
              TextFormField(
                controller: _emailController,
                decoration: const InputDecoration(labelText: 'Email'),
                validator: (String value) {
                  if (value.isEmpty) return 'Please enter your email.';
                  return null;
                },
              ),
              Container(
                padding: const EdgeInsets.only(top: 16.0),
                alignment: Alignment.center,
                child: SignInButtonBuilder(
                  icon: Icons.insert_link,
                  text: "Sign In",
                  backgroundColor: Colors.blueGrey[700],
                  onPressed: () async {
                    await _signInWithEmailAndLink();
                  },
                ),
              ),
            ],
          ),
        )));
  }

  @override
  void dispose() {
    _emailController.dispose();
    super.dispose();
  }

  void _signInWithEmailAndLink() async {
    try {
      _userEmail = _emailController.text;
      await _auth.sendSignInLinkToEmail(
          email: _userEmail,
          actionCodeSettings: ActionCodeSettings(
              url:
              'https://react-native-firebase-testing.firebaseapp.com/emailSignin',
              handleCodeInApp: true,
              iOSBundleId: 'io.flutter.plugins.firebaseAuthExample',
              androidPackageName: 'io.flutter.plugins.firebaseauthexample'));
      Scaffold.of(context).showSnackBar(SnackBar(
        content: Text("An email has been sent to ${_userEmail}"),
      ));
    } catch (e) {
      print(e);
      Scaffold.of(context).showSnackBar(SnackBar(
        content: Text("Sending email failed"),
      ));
    }
  }
}

https://www.gstatic.com/firebasejs/8.0.2/firebase-auth.js doesn't seem to help.

Logs
TypeError: Right-hand side of 'instanceof' is not callable
    at dart.LazyJSType.new.isRawJSType (http://localhost:61201/dart_sdk.js:6097:35)
    at dart.LazyJSType.new.is (http://localhost:61201/dart_sdk.js:6101:19)
    at dart.LegacyType.new.is (http://localhost:61201/dart_sdk.js:6209:24)
    at Function.is_FutureOr [as is] (http://localhost:61201/dart_sdk.js:3961:24)
    at dart.NullableType.new.as (http://localhost:61201/dart_sdk.js:6175:39)
    at http://localhost:61201/dart_sdk.js:60098:136
    at e.g (https://www.gstatic.com/firebasejs/8.0.2/firebase-auth.js:1:28817)
    at Re (https://www.gstatic.com/firebasejs/8.0.2/firebase-auth.js:1:29843)
    at Ce (https://www.gstatic.com/firebasejs/8.0.2/firebase-auth.js:1:29734)
    at de.t.fc (https://www.gstatic.com/firebasejs/8.0.2/firebase-auth.js:1:30574)
    at fe (https://www.gstatic.com/firebasejs/8.0.2/firebase-auth.js:1:27643)

I have the same error. It's only happening on web, iOS seems fine.
Flutter (Channel beta, 1.24.0-10.2.pre, on macOS 11.0.1 20B29 darwin-x64, locale en-GB)
firebase_core: ^0.5.2+1
firebase_auth: ^0.18.3+1

Is there any workaround to this or any previous version that works? This is breaking my app 😞

I have the same error. It's only happening on web, iOS seems fine.
Flutter (Channel beta, 1.24.0-10.2.pre, on macOS 11.0.1 20B29 darwin-x64, locale en-GB)
firebase_core: ^0.5.2+1
firebase_auth: ^0.18.3+1

<script src="https://www.gstatic.com/firebasejs/8.1.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.1.1/firebase-auth.js"></script>

Is there any workaround to this or any previous version that works? This is breaking my app 😞
[EDIT] Workaround: Skip checkActionCode and go straight to applyActionCode 😌

Yeah, we skipped checkActionCode too in our app.

This problem is not something we have much control over as far as I can tell. I did a bit of digging and found the dart SDK is making the equivalent following check in JavaScript:
const OPERATIONS = {EMAIL_SIGNIN: "EMAIL_SIGNIN", PASSWORD_RESET: "PASSWORD_RESET", RECOVER_EMAIL: "RECOVER_EMAIL", VERIFY_EMAIL: "VERIFY_EMAIL"};

//...however it is initialised by Firebase web SDK
const actionCodeInfo = firebase.auth.ActionCodeInfo();

// this throw an error because OPERATIONS is an object, not a class
if(actionCodeInfo instanceof OPERATIONS){
...
}

results in the following error:
Uncaught TypeError: Right-hand side of 'instanceof' is not callable

I had a look into the dart SDK and noticed the offending function has been removed in this commit recently.
I tested checkActionCode on the flutter dev channel which is using the latest dart SDK and it works as expected.

I conform - that checkActionCode and applyActionCode are working as expected in dev channel.

I'm going to assume this issue has now been resolved given the amount of time elapsed without feedback.

authors: casadogg gabriel-casado kaumudpa markusaksli-nc recycledhominid russellwheatley


text:
🐛 [firebase_messaging] The onMessageOpenedApp method doesn't get triggered after click the notification in example.

Bug report
Running the example in (flutterfire->firebase_messaging), the onMessageOpenedApp method was never get triggered.
Steps to reproduce
Steps to reproduce the behavior:

Running the example in (flutterfire->firebase_messaging)
Click 'send message' button
After the notification appear, click it.

Expected behavior
The onMessageOpenedApp method can be get triggered.

Additional context

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
[✓] Flutter (Channel master, 2.1.0-13.0.pre.133, on macOS 11.2.3 20D91 darwin-x64, locale zh-Hans-CN)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[!] Xcode - develop for iOS and macOS
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.1)
[✓] Connected device (2 available)

! Doctor found issues in 1 category.

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
firebase_messaging % flutter pub deps -- --style=compact
Dart SDK 2.13.0-143.0.dev
Flutter SDK 2.1.0-13.0.pre.133
firebase_messaging 9.0.0

dependencies:
- firebase_core 1.0.1 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_core_platform_interface 4.0.0 [flutter meta plugin_platform_interface]
- firebase_messaging_platform_interface 2.0.0 [firebase_core flutter meta plugin_platform_interface]
- firebase_messaging_web 1.0.1 [firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- meta 1.3.0

dev dependencies:
- async 2.5.0 [collection]
- 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]
- mockito 5.0.2 [analyzer build code_builder collection dart_style matcher meta path source_gen test_api]
- plugin_platform_interface 2.0.0 [meta]
- test 1.16.5 [analyzer async boolean_selector coverage http_multi_server io js node_preamble package_config path pedantic pool shelf shelf_packages_handler shelf_static shelf_web_socket source_span stack_trace stream_channel typed_data web_socket_channel webkit_inspection_protocol yaml test_api test_core]

transitive dependencies:
- _fe_analyzer_shared 18.0.0 [meta]
- analyzer 1.2.0 [_fe_analyzer_shared cli_util collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
- args 2.0.0
- boolean_selector 2.1.0 [source_span string_scanner]
- build 2.0.0 [analyzer async convert crypto glob logging meta path]
- built_collection 5.0.0
- built_value 8.0.3 [built_collection collection fixnum]
- characters 1.1.0
- charcode 1.2.0
- cli_util 0.3.0 [meta path]
- clock 1.1.0
- code_builder 3.7.0 [built_collection built_value collection matcher meta]
- collection 1.15.0
- convert 3.0.0 [typed_data]
- coverage 1.0.1 [args logging package_config path source_maps stack_trace vm_service]
- crypto 3.0.0 [collection typed_data]
- dart_style 1.3.14 [analyzer args path pub_semver source_span]
- fake_async 1.2.0 [clock collection]
- file 6.1.0 [meta path]
- firebase_core_web 1.0.1 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
- fixnum 1.0.0
- flutter_web_plugins 0.0.0 [flutter js characters collection meta typed_data vector_math]
- glob 2.0.0 [async collection file path pedantic string_scanner]
- http_multi_server 3.0.0 [async]
- http_parser 4.0.0 [charcode collection source_span string_scanner typed_data]
- io 1.0.0 [meta path string_scanner]
- js 0.6.3
- logging 1.0.0
- matcher 0.12.10 [stack_trace]
- mime 1.0.0
- node_preamble 1.4.13
- package_config 2.0.0 [path]
- path 1.8.0
- pedantic 1.11.0
- pool 1.5.0 [async stack_trace]
- pub_semver 2.0.0 [collection]
- shelf 1.1.0 [async collection http_parser path stack_trace stream_channel]
- shelf_packages_handler 3.0.0 [path shelf shelf_static]
- shelf_static 1.0.0 [convert http_parser mime path shelf]
- shelf_web_socket 1.0.1 [shelf stream_channel web_socket_channel]
- sky_engine 0.0.99
- source_gen 0.9.10+4 [analyzer async build dart_style glob meta path pedantic source_span]
- source_map_stack_trace 2.1.0 [path stack_trace source_maps]
- source_maps 0.10.10 [source_span]
- source_span 1.8.1 [collection path term_glyph]
- stack_trace 1.10.0 [path]
- stream_channel 2.1.0 [async]
- string_scanner 1.1.0 [charcode source_span]
- term_glyph 1.2.0
- test_api 0.2.19 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- test_core 0.3.15 [analyzer async args boolean_selector collection coverage glob io meta package_config path pedantic pool source_map_stack_trace source_maps source_span stack_trace stream_channel vm_service yaml matcher test_api]
- typed_data 1.3.0 [collection]
- vector_math 2.1.0
- vm_service 6.1.0+1
- watcher 1.0.0 [async path pedantic]
- web_socket_channel 2.0.0 [async crypto stream_channel]
- webkit_inspection_protocol 1.0.0 [logging]
- yaml 3.1.0 [collection source_span string_scanner]

After checking the code in [firebase_mesagging], I found that when click the notification, ”Messaging#onMessageOpenedApp“ seem to never being invoked.
FlutterFirebaseMessagingPlugin.java:
  @Override
  public boolean onNewIntent(Intent intent) {
    if (intent == null || intent.getExtras() == null) {
      return false;
    }

    // Remote Message ID can be either one of the following...
    String messageId = intent.getExtras().getString("google.message_id");
    if (messageId == null) messageId = intent.getExtras().getString("message_id");
    if (messageId == null) {
      **********************************
      ** messageId wiil always be null**
      **********************************
      return false;
    }

    RemoteMessage remoteMessage = FlutterFirebaseMessagingReceiver.notifications.get(messageId);

    // If we can't find a copy of the remote message in memory then check from our persisted store.
    if (remoteMessage == null) {
      remoteMessage = FlutterFirebaseMessagingStore.getInstance().getFirebaseMessage(messageId);
      // Note we don't remove it here as the user may still call getInitialMessage.
    }

    if (remoteMessage == null) {
      return false;
    }

    // Store this message for later use by getInitialMessage.
    initialMessage = remoteMessage;

    FlutterFirebaseMessagingReceiver.notifications.remove(messageId);
    channel.invokeMethod(
        "Messaging#onMessageOpenedApp",
        FlutterFirebaseMessagingUtils.remoteMessageToMap(remoteMessage));
    mainActivity.setIntent(intent);
    return true;
  }

The message_id will always be null.
FlutterLocalNotificationsPlugin.java:
  private static Notification createNotification(Context context, NotificationDetails notificationDetails) {
        setupNotificationChannel(context, NotificationChannelDetails.fromNotificationDetails(notificationDetails));
        Intent intent = getLaunchIntent(context);
        intent.setAction(SELECT_NOTIFICATION);
        intent.putExtra(PAYLOAD, notificationDetails.payload);
        ******************************************************************
        ** no message_id or google.message_id was setted here ********
        ******************************************************************
        PendingIntent pendingIntent = PendingIntent.getActivity(context, notificationDetails.id, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        DefaultStyleInformation defaultStyleInformation = (DefaultStyleInformation) notificationDetails.styleInformation;
        NotificationCompat.Builder builder = new NotificationCompat.Builder(context, notificationDetails.channelId)
                .setContentTitle(defaultStyleInformation.htmlFormatTitle ? fromHtml(notificationDetails.title) : notificationDetails.title)
                .setContentText(defaultStyleInformation.htmlFormatBody ? fromHtml(notificationDetails.body) : notificationDetails.body)
                .setTicker(notificationDetails.ticker)
                .setAutoCancel(BooleanUtils.getValue(notificationDetails.autoCancel))
                .setContentIntent(pendingIntent)
                .setPriority(notificationDetails.priority)
                .setOngoing(BooleanUtils.getValue(notificationDetails.ongoing))
                .setOnlyAlertOnce(BooleanUtils.getValue(notificationDetails.onlyAlertOnce));
      .........
  }

It seems that when we create notification and message_id isn't setted by us.

@windows7lake

Hi @windows7lake
As mentioned in the documentation

A Stream event will be sent if the app has opened from a background state (not terminated)

The message that appears in the example app if you tap the FAB is received in the onMessage and then shown as a heads-up notification by flutter_local_notifications. You would not expect the tapped message to open to trigger the onMessageOpenedApp since it didn't open the app.
If you want access to a callback when the heads-up notification is pressed please look into the documentation for flutter_local_notifications.
If you send a message to the app from an API call or from Firebase Console and press the notification when the app is backgrounded the onMessageOpenedApp stream fires as expected.
Closing this since the package is working as intended.
Thank you


text:
🐛 [Firebase_Auth] Phone Auth keep crash on IOS

Bug report
PhoneAuthProvider.credential or signInWithCredentialwill result in a crash with any parameter on IOS after update firebase_core to 1.0.2
Steps to reproduce

Call this API on an IOS emulator or real device

Expected behavior
NO Crash
Additional Infomation

I have successfully implement SMS auth for a long time and haven't change anything
This bug will just crash the app without any Exception. I manually tracked this and it seems App crash after calling PhoneAuthProvider.credential and signInWithCredential.

Sample Code
      print('verificationId on input sms code: $verificationId');
      print('smsCode: $smsCode');
      print('before call PhoneAuthProvider.credential');
      final authCredential = PhoneAuthProvider.credential(
        verificationId: verificationId,
        smsCode: smsCode,
      );
      print('after call PhoneAuthProvider.credential');
      print('authCredential.providerId: ${authCredential.providerId}');
      print('authCredential.token: ${authCredential.token}');
      print('authCredential.signInMethod: ${authCredential.signInMethod}');
      print('before call signInWithCredential');
      final result = await _firebaseAuth.signInWithCredential(authCredential);
      print('after call signInWithCredential');
      print('result.user.uid: ${result.user.uid}');

Output
flutter: verificationId on codeSent: ... // same to below
flutter: verificationId on input sms code: ... // same to above (some time print end here, maybe just fail to print following info when crash)
flutter: smsCode: 121212
flutter: before call PhoneAuthProvider.credential
flutter: after call PhoneAuthProvider.credential
flutter: authCredential.providerId: phone
flutter: authCredential.token: null // always null no matter sms code is right or not
flutter: authCredential.signInMethod: phone
flutter: before call signInWithCredential // crash here

Possible problem

Android phone work perfectly
I also use signInWithCredential on the third part login and it works perfectly.
I guess something wrong with the PhoneAuthProvider.credential or phone sign-in method of signInWithCredential on the IOS part

Hi @Peng-Qian
Could you please provide your flutter doctor -v and flutter pub deps -- --style=compact?
Could you provide the output of flutter doctor -v when it crashes?
Thank you

[✓] Flutter (Channel beta, 2.1.0-12.2.pre, on macOS 11.2.3 20D91 darwin-x64, locale en-NZ)
    • Flutter version 2.1.0-12.2.pre at /Users/pq/Developer/SDK/flutter
    • Framework revision 5bedb7b1d5 (3 weeks ago), 2021-03-17 17:06:30 -0700
    • Engine revision 711ab3fda0
    • Dart version 2.13.0 (build 2.13.0-116.0.dev)

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

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

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

[✓] IntelliJ IDEA Ultimate Edition (version 2020.2.3)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 50.0
    • Dart plugin version 202.7319.5

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

[✓] Connected device (1 available)
    • iPhone 12 Pro Max (mobile) • E32A9A4C-EA7C-4C6F-AC08-B35179C19C60 • ios • com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)

• No issues found!

Dart SDK 2.13.0-116.0.dev
Flutter SDK 2.1.0-12.2.pre
echo 1.0.0+1

dependencies:
- animations 2.0.0 [flutter]
- bloc 6.1.3 [meta]
- blurhash_dart 1.0.0 [image]
- built_collection 5.0.0
- built_value 8.0.4 [built_collection collection fixnum]
- cached_network_image 3.0.0-nullsafety [flutter flutter_cache_manager octo_image]
- cloud_firestore 1.0.4 [cloud_firestore_platform_interface cloud_firestore_web firebase_core firebase_core_platform_interface flutter meta]
- crypto 3.0.1 [collection typed_data]
- cupertino_icons 1.0.2
- dartz 0.9.2
- equatable 2.0.0 [collection meta]
- file 6.1.0 [meta path]
- firebase_analytics 7.1.1 [firebase_analytics_platform_interface firebase_analytics_web firebase_core flutter meta]
- firebase_auth 1.0.2 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
- firebase_core 1.0.3 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_database 6.1.2 [firebase_core flutter]
- firebase_dynamic_links 0.8.0 [flutter firebase_core]
- firebase_storage 8.0.2 [firebase_core firebase_core_platform_interface firebase_storage_platform_interface firebase_storage_web flutter]
- flare_flutter 3.0.0 [collection flutter meta]
- flushbar 1.10.4 [flutter]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- flutter_bloc 6.1.3 [flutter bloc provider]
- flutter_blurhash 0.5.4-nullsafety.0 [flutter meta pedantic]
- flutter_cache_manager 3.0.1 [clock collection file flutter http image path path_provider pedantic rxdart sqflite uuid]
- flutter_facebook_login 3.0.0 [flutter collection]
- flutter_hooks 0.16.0 [flutter]
- flutter_localizations 0.0.0 [flutter intl characters clock collection meta path typed_data vector_math]
- flutter_slidable 0.5.7 [flutter]
- flutter_spinkit 5.0.0 [flutter]
- flutter_sticky_header 0.5.0 [flutter value_layout_builder]
- font_awesome_flutter 9.0.0 [flutter]
- freezed_annotation 0.12.0 [collection json_annotation meta]
- geocoding 2.0.0 [flutter geocoding_platform_interface]
- geolocator 7.0.1 [flutter geolocator_platform_interface geolocator_web]
- get_it 5.0.6 [async meta]
- google_fonts 2.0.0 [flutter http path_provider crypto]
- google_maps_flutter 2.0.3 [flutter flutter_plugin_android_lifecycle google_maps_flutter_platform_interface]
- google_maps_webservice 0.0.20-nullsafety.3 [http meta json_annotation]
- google_sign_in 5.0.1 [google_sign_in_platform_interface google_sign_in_web flutter meta]
- http 0.13.1 [http_parser meta path pedantic]
- image 3.0.2 [archive meta xml]
- image_cropper 1.4.0 [flutter]
- image_gallery_saver 1.6.8 [flutter]
- image_picker 0.7.4 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface image_picker_for_web]
- injectable 1.1.2 [get_it]
- intl 0.17.0 [clock path]
- material_floating_search_bar 0.3.3 [flutter meta]
- modal_bottom_sheet 2.0.0 [flutter]
- octo_image 1.0.0-nullsafety.1 [flutter flutter_blurhash]
- path 1.8.0
- path_provider 2.0.1 [flutter path_provider_platform_interface path_provider_macos path_provider_linux path_provider_windows]
- pedantic 1.11.0
- permission_handler 6.1.1 [flutter meta permission_handler_platform_interface]
- photo_manager 1.0.6 [flutter]
- photo_view 0.11.1 [flutter]
- pin_code_fields 7.0.0 [flutter]
- provider 4.3.3 [collection flutter nested]
- recase 3.0.1
- rxdart 0.26.0
- share 2.0.1 [meta mime flutter]
- shared_preferences 2.0.5 [meta flutter shared_preferences_platform_interface shared_preferences_linux shared_preferences_macos shared_preferences_web shared_preferences_windows]
- shimmer 1.1.2 [flutter]
- sign_in_with_apple 3.0.0 [flutter meta]
- sliding_up_panel 1.0.2 [flutter]
- sliver_tools 0.2.1 [flutter]
- transparent_image 2.0.0
- uuid 3.0.3 [crypto]
- wakelock 0.5.0+2 [flutter meta wakelock_macos wakelock_windows wakelock_platform_interface wakelock_web]

dev dependencies:
- bloc_test 7.1.0 [bloc test meta mockito]
- build_runner 1.11.5 [args async build build_config build_daemon build_resolvers build_runner_core code_builder collection crypto dart_style glob graphs http_multi_server io js logging meta mime path pedantic pool pub_semver pubspec_parse shelf shelf_web_socket stack_trace stream_transform timing watcher web_socket_channel yaml]
- built_value_generator 8.0.4 [analyzer build build_config built_collection built_value source_gen quiver]
- flutter_launcher_icons 0.9.0 [args image path yaml]
- 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]
- freezed 0.12.7 [analyzer build build_config meta source_gen freezed_annotation]
- injectable_generator 1.1.2 [build source_gen path glob analyzer meta code_builder dart_style injectable collection]

dependency overrides:
- analyzer 1.3.0 [_fe_analyzer_shared cli_util collection convert crypto glob meta package_config path pub_semver source_span watcher yaml pedantic]
- args 2.0.0
- crypto 3.0.1 [collection typed_data]
- glob 2.0.1 [async collection file path pedantic string_scanner]
- http 0.13.1 [http_parser meta path pedantic]
- http_parser 4.0.0 [charcode collection source_span string_scanner typed_data]
- json_annotation 4.0.1
- plugin_platform_interface 2.0.0 [meta]
- quiver 3.0.1 [matcher]
- yaml 3.1.0 [collection source_span string_scanner]

transitive dependencies:
- _fe_analyzer_shared 19.0.0 [meta]
- archive 3.1.2 [crypto path]
- async 2.5.0 [collection]
- boolean_selector 2.1.0 [source_span string_scanner]
- build 1.6.3 [analyzer async convert crypto glob logging meta path]
- build_config 0.4.6 [checked_yaml json_annotation meta path pubspec_parse yaml]
- build_daemon 2.1.10 [built_collection built_value http_multi_server logging pedantic path pool shelf shelf_web_socket stream_transform watcher web_socket_channel]
- build_resolvers 1.5.4 [analyzer build crypto graphs logging meta path package_config pool pub_semver]
- build_runner_core 6.1.10 [async build build_config build_resolvers collection convert crypto glob graphs logging meta path package_config pedantic pool timing watcher yaml]
- characters 1.1.0
- charcode 1.2.0
- checked_yaml 1.0.4 [json_annotation source_span yaml]
- cli_util 0.3.0 [meta path]
- clock 1.1.0
- cloud_firestore_platform_interface 4.0.1 [collection firebase_core flutter meta plugin_platform_interface]
- cloud_firestore_web 1.0.4 [cloud_firestore_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- code_builder 3.7.0 [built_collection built_value collection matcher meta]
- collection 1.15.0
- convert 3.0.0 [typed_data]
- coverage 1.0.2 [args logging package_config path source_maps stack_trace vm_service]
- dart_style 1.3.14 [analyzer args path pub_semver source_span]
- fake_async 1.2.0 [clock collection]
- ffi 1.0.0
- firebase 9.0.1 [http http_parser js]
- firebase_analytics_platform_interface 1.1.0 [flutter meta]
- firebase_analytics_web 0.2.0+1 [firebase firebase_analytics_platform_interface flutter flutter_web_plugins meta]
- firebase_auth_platform_interface 4.0.1 [firebase_core flutter meta plugin_platform_interface]
- firebase_auth_web 1.0.4 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser intl js meta]
- firebase_core_platform_interface 4.0.0 [flutter meta plugin_platform_interface]
- firebase_core_web 1.0.2 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
- firebase_storage_platform_interface 2.0.1 [collection firebase_core flutter meta plugin_platform_interface]
- firebase_storage_web 1.0.3 [async firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta]
- fixnum 1.0.0
- flutter_plugin_android_lifecycle 2.0.1 [flutter]
- flutter_web_plugins 0.0.0 [flutter js characters collection meta typed_data vector_math]
- geocoding_platform_interface 2.0.0 [flutter meta plugin_platform_interface]
- geolocator_platform_interface 2.0.0 [flutter plugin_platform_interface vector_math meta]
- geolocator_web 2.0.2 [flutter flutter_web_plugins geolocator_platform_interface]
- google_maps_flutter_platform_interface 2.0.2 [flutter meta plugin_platform_interface stream_transform collection]
- google_sign_in_platform_interface 2.0.1 [flutter meta quiver]
- google_sign_in_web 0.10.0 [google_sign_in_platform_interface flutter flutter_web_plugins meta js]
- graphs 0.2.0
- http_multi_server 2.2.0 [async]
- image_picker_for_web 2.0.0 [image_picker_platform_interface meta flutter flutter_web_plugins]
- image_picker_platform_interface 2.0.1 [flutter meta http plugin_platform_interface]
- io 0.3.5 [meta path string_scanner]
- js 0.6.3
- logging 1.0.0
- matcher 0.12.10 [stack_trace]
- meta 1.3.0
- mime 1.0.0
- mockito 4.1.4 [analyzer build code_builder collection dart_style matcher meta source_gen test_api]
- nested 1.0.0 [flutter]
- node_preamble 1.4.13
- package_config 2.0.0 [path]
- path_provider_linux 2.0.0 [path xdg_directories path_provider_platform_interface flutter]
- path_provider_macos 2.0.0 [flutter]
- path_provider_platform_interface 2.0.1 [flutter meta platform plugin_platform_interface]
- path_provider_windows 2.0.0 [path_provider_platform_interface meta path flutter ffi win32]
- permission_handler_platform_interface 3.1.1 [flutter meta plugin_platform_interface]
- petitparser 4.0.2 [meta]
- platform 3.0.0
- pool 1.5.0 [async stack_trace]
- process 4.2.1 [file path platform]
- pub_semver 2.0.0 [collection]
- pubspec_parse 0.1.8 [checked_yaml json_annotation pub_semver yaml]
- shared_preferences_linux 2.0.0 [flutter file meta path path_provider_linux shared_preferences_platform_interface]
- shared_preferences_macos 2.0.0 [shared_preferences_platform_interface flutter]
- shared_preferences_platform_interface 2.0.0 [flutter]
- shared_preferences_web 2.0.0 [shared_preferences_platform_interface flutter flutter_web_plugins meta]
- shared_preferences_windows 2.0.0 [shared_preferences_platform_interface flutter file meta path path_provider_platform_interface path_provider_windows]
- shelf 1.1.0 [async collection http_parser path stack_trace stream_channel]
- shelf_packages_handler 3.0.0 [path shelf shelf_static]
- shelf_static 1.0.0 [convert http_parser mime path shelf]
- shelf_web_socket 0.2.4+1 [shelf stream_channel web_socket_channel]
- sky_engine 0.0.99
- source_gen 0.9.10+3 [analyzer async build dart_style glob meta path pedantic source_span]
- source_map_stack_trace 2.1.0 [path stack_trace source_maps]
- source_maps 0.10.10 [source_span]
- source_span 1.8.1 [collection path term_glyph]
- sqflite 2.0.0+3 [flutter sqflite_common path]
- sqflite_common 2.0.0+2 [synchronized path meta]
- stack_trace 1.10.0 [path]
- stream_channel 2.1.0 [async]
- stream_transform 2.0.0
- string_scanner 1.1.0 [charcode source_span]
- synchronized 3.0.0
- term_glyph 1.2.0
- test 1.16.5 [analyzer async boolean_selector coverage http_multi_server io js node_preamble package_config path pedantic pool shelf shelf_packages_handler shelf_static shelf_web_socket source_span stack_trace stream_channel typed_data web_socket_channel webkit_inspection_protocol yaml test_api test_core]
- test_api 0.2.19 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- test_core 0.3.15 [analyzer async args boolean_selector collection coverage glob io meta package_config path pedantic pool source_map_stack_trace source_maps source_span stack_trace stream_channel vm_service yaml matcher test_api]
- timing 0.1.1+3 [json_annotation]
- typed_data 1.3.0 [collection]
- value_layout_builder 0.2.0 [flutter]
- vector_math 2.1.0
- vm_service 6.1.0+1
- wakelock_macos 0.1.0 [flutter flutter_web_plugins wakelock_platform_interface]
- wakelock_platform_interface 0.2.0 [flutter meta]
- wakelock_web 0.2.0 [flutter flutter_web_plugins js wakelock_platform_interface]
- wakelock_windows 0.1.0 [flutter wakelock_platform_interface win32]
- watcher 1.0.0 [async path pedantic]
- web_socket_channel 1.2.0 [async crypto stream_channel]
- webkit_inspection_protocol 1.0.0 [logging]
- win32 2.0.4 [ffi]
- xdg_directories 0.2.0 [meta path process]
- xml 5.0.2 [collection meta petitparser]

@Peng-Qian
Can you try the official firebase_auth plugin example and check if you get same error / crash ?

I think this is potentially fixed by #5675

not really fixed, this bug still there in non-null-safety dart SDK version

authors: Peng-Qian Salakar darshankawar markusaksli-nc


text:
[firebase_auth_web] Add missing confirmPasswordReset function.

Description
This adds the confirmPasswordReset implementation to firebase_auth_web. Currently missing.
Related Issues

None I could see.

Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] If the pull request affects only one plugin, the PR title starts with the name of the plugin in brackets (e.g. [cloud_firestore])
[x] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See [Contributor Guide]).
[x] All existing and new tests are passing.
[x] I updated/added relevant documentation (doc comments with ///).
[x] The analyzer (flutter analyze) does not report any problems on my PR.
[x] I read and followed the [Flutter Style Guide].
[x] I updated pubspec.yaml with an appropriate new version according to the [pub versioning philosophy].
[x] I updated CHANGELOG.md to add a description of the change.
[x] I signed the [CLA].
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[x] No, this is not a breaking change.

/cc @hterkelsen
/cc @bparrishMines

@slightfoot any chance of flutter formating the PR? Thanks!

@domesticmouse hey Brett. Long time. Done and pushed. Sorry mate thought it was formatted.

Thanks Simon, and yeah, it’s been way too long!

This has now been published. Thanks

source: gharchive/pull-request

authors: Salakar domesticmouse slightfoot


text:
docs: firebase_auth -> firebase_messaging in overview

Description
In the docs for Firebase Cloud Messaging, the installation references firebase_auth. It should reference firebase_messaging
Checklist

[X] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[X] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See [Contributor Guide]).
[X] All existing and new tests are passing.
[X] I updated/added relevant documentation (doc comments with ///).
[X] The analyzer (melos run analyze) does not report any problems on my PR.
[X] I read and followed the [Flutter Style Guide].
[X] I signed the [CLA].
[X] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change.
[X] No, this is not a breaking change.

I can still see firebase_auth on the website. Is the website not built yet?


text:
🛑 Andrisani Socios Admin is down

In 04c35ce, Andrisani Socios Admin (https://socios.andrisani.com.ar) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Andrisani Socios Admin is back up in 5aa039c.

repo: FirenzeDigital/upptime

license: MIT


text:
🛑 A museum of relationships is down

In 81f16f7, A museum of relationships (https://amor.fitz.ms) was down:

HTTP code: 0
Response time: 0 ms

Resolved: A museum of relationships is back up in ec4a1ef after 5 minutes.

repo: FitzwilliamMuseum/uptime


text:
🛑 Collection is down

In 95ffe67, Collection (https://data.fitzmuseum.cam.ac.uk) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Collection is back up in 0a29616 after 9 minutes.


text:
Add funk hole by destroid

Song Name
funk hole
Artist Name
destroid
Source
Youtube
Youtube Link
https://youtu.be/IWrZ0t185z0?si=BH4vrq8Gq9JED46W
Direct File Link
https://youtu.be/IWrZ0t185z0?si=BH4vrq8Gq9JED46W
Song ID
1
Start Offset [ms]
No response
Extra
Created from Auto Nong.
Created for level: 98437696

reject

repo: FlafyDev/auto-nong-indexes


text:
关于开源的数据集问题

您好，想问一下，这个开源的中文训练数据集除了wudao还包括了一些其他的数据集，这些数据是都参与了我们BGE模型的微调吗，还是说只用了wudao的数据进行微调呢

您好，都使用了，可以参考 https://github.com/FlagOpen/FlagEmbedding/tree/master/FlagEmbedding/baai_general_embedding

感谢您的回复！

repo: FlagOpen/FlagEmbedding


text:
Need help with English datasets

HI , amazing work , highly inspirational. Thanks a lot for make it opensource .
which datasets did you use for pre-training english only model? , it is mentioned that you used the below for pretraining
https://github.com/FlagOpen/FlagEmbedding/blob/master/FlagEmbedding/baai_general_embedding/README.md
Pre-training data:
English: Pile, wikipedia, and msmarco
can you let us know did use entire pile + wiki + msmarco for tine turning or a sample of it?
Also for fine turning , you mentioned 200 million English text pairs (634GB)
https://data.baai.ac.cn/details/BAAI-MTP
sentence-transformers Data
wikipedia
cc-net
stackexchange
reddit
S2orc
again , can you let us know if you have used the entire corpus of them or just a portion of them.
Thanks

Hi, thanks for your interest in our work!
We use the entire corpus to do pretrain and fine-tune.

@staoxiao ,
Is it possible to share the train data that you collected from various sources as a single zip file.
I'm trying to reproduce your training process with few tweaks, having the exact dataset will be helpful in making comparisions.
Looking forward to your response.

Hi, also curious if it'd be possible to release the formatted english training dataset

@staoxiao
awaiting your response.

@ashokrajab , the pre-training data is too large to share, and I think that you use the raw data from the original dataset is enough. We have released the training data for bge model: https://github.com/hanhainebula/FlagEmbedding/tree/new-flagembedding-v1/dataset

authors: ashokrajab austinmw bharadwajyadati staoxiao


text:
BGE-M3评估效果提问

想问下，我在用evaluate的过程中，先执行的对bge-m3的dense retrieval的评估，然后pooling_method不管选mean还是cls，recall20 100的分数都是0.0，非常奇怪，参数没有修改，但是用了自己的qa数据集

Generate Corpus Embedding
python step0-generate_embedding.py --encoder /bge-m3 --index_save_dir /step1 --max_passage_length 512 --batch_size 256 --fp16 --pooling_method cls --normalize_embeddings True

Search Results
python step1-search_results.py --encoder /bge-m3 --languages zh_cn --index_save_dir /step1 --result_save_dir /result --qa_data_dir /qa--threads 16 --batch_size 32 --hits 1000 --pooling_method mean --normalize_embeddings True --add_instruction False

Print and Save Evaluation Results
python step2-eval_dense_mkqa.py --encoder /bge-m3 --languages zh_cn --search_result_save_dir /result --qa_data_dir qa --eval_result_save_dir /evalresult --metrics recall@20 recall@100 --threads 32 --pooling_method mean --normalize_embeddings True
第二次试mean的时候忘记把第一步的也改成mean了，但是三个都是cls的时候是直接0.0
我的数据集有1760条，有些回答是重复的，因为是单个长回答对应的几个问题，我就拆分放在不同行单独放开了，很奇怪为什么是0.0，按道理数据集小应该也不至于到0.0？
感觉和mean cls没有关系，是因为第一步generate corpus embedding里对应的不是自己的数据集，还是自己的数据集的回答有点长，所以导致0.0

是不是我的问答对里面回答直接是最早放给step0里去embedding的行列目标所导致的

没有太理解这个问题。您确定把corpus、query以及qrel文件都换成自己的数据集了吗？ 建议参考该评测脚本：https://github.com/FlagOpen/FlagEmbedding/blob/master/FlagEmbedding/baai_general_embedding/finetune/eval_msmarco.py 更加简单，只需准备187和188行的两个数据

挺确定的，还有一个问题，在MLDR里面dense_retrieval的step2的171行里：
script_path = download_evaluation_script('trec_eval')
这个trec_eval在哪啊

没有太理解这个问题。您确定把corpus、query以及qrel文件都换成自己的数据集了吗？ 建议参考该评测脚本：https://github.com/FlagOpen/FlagEmbedding/blob/master/FlagEmbedding/baai_general_embedding/finetune/eval_msmarco.py 更加简单，只需准备187和188行的两个数据

你好，想请问一下可以用eval_msmarco.py 这个方法去评测reranker模型吗？如果可以的话，应该怎么去使用？


text:
包含多余的全角空格“　”

部分正文中的全角空格是用来替代未识别字符？未识别字符用"囗"替代？

已完成。

repo: FleetingWang/chinese-poetry


text:
Crash after applying policy change having opened directly from search results

This affects the debug build only (SHA1: ec919291c3fd092e8290a745686d8a18836e9be6). These are the steps that I went through:

Load PolicyPlus
Press Ctrl+F
Enter "teredo" as a search term then click Search
Select "Set Teredo State" then click Go
Change the policy from "Not Configured" to "Disabled"
Click OK

PolicyPlus throws the following exception:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at PolicyPlus.Main.ShouldShowCategory(PolicyPlusCategory Category)
   at PolicyPlus.Main.ShowSettingEditor(PolicyPlusPolicy Policy, AdmxPolicySection Section)
   at PolicyPlus.Main.ShowSearchDialog(Func`2 Searcher)
   at PolicyPlus.Main.ByTextToolStripMenuItem_Click(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.ProcessCmdKey(Message& m, Keys keyData)
   at System.Windows.Forms.ToolStripManager.ProcessShortcut(Message& m, Keys shortcut)
   at System.Windows.Forms.Form.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.ContainerControl.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.PreProcessMessage(Message& msg)
   at System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg)
   at System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg)

************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
Policy Plus
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/kerframil/Downloads/PolicyPlusDev.exe
----------------------------------------
Microsoft.VisualBasic
    Assembly Version: 10.0.0.0
    Win32 Version: 14.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
Accessibility
    Assembly Version: 4.0.0.0
    Win32 Version: 4.7.2556.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

However, PolicyPlus does not crash if one instead clicks Cancel at step #6, then opens the policy from the right pane before applying the change.

Oops, this was introduced in https://github.com/Fleex255/PolicyPlus/commit/f9b11eef8f536576a385971d6ed1d554e0205091 when reducing the jumping around that happened after changing a policy. Fixed in https://github.com/Fleex255/PolicyPlus/commit/08c51c11f8a2f496f262722c8a29f17f3b8180f6; the Debug build has been updated. Thanks for the detailed repro!

All is well with the new build. Thanks!


text:
add ssl chain support to webserver #1417

Addressed issues:

Fixes #1417

Can you resync this please?

repo: Flexget/Flexget

license: mit

license_source: bigquery


text:
Notifier plugin and interface

Motivation for changes:
Notification are currently just output plugins that operate only on task.accepted. This new interface and plugin allow to tweak that.
Detailed changes:

Maintain backwards compatibility, no upgrade actions required.
Converted pushover plugin to use a new interface
Added render()  to Task for consistent render calls.
Added a way to suppress missing phase plugin messages in log.
Added traceback to task.traceback on crash.
Created notify plugin that operates on these notifiers group plugins:

Can now select to iterate over any entry container, not just accepted.
Can set the scope to task, and send only 1 notification per task, regardless of entry containers

Operates on exit phase only.
Created notify_crash plugin that operate on_task_abort and calls notify plugin with a hardcoded config to operate on task scope.

Config usage if relevant (new plugin or updated schema):
Schema:
schema = {
        'type': 'object',
        'properties': {
            'to': {'type': 'array', 'items':
                {'allOf': [
                    {'$ref': '/schema/plugins?group=notifiers'},
                    {'maxProperties': 1,
                     'error_maxProperties': 'Plugin options within notify plugin must be indented '
                                            '2 more spaces than the first letter of the plugin name.',
                     'minProperties': 1}]}},
            'scope': {'type': 'string', 'enum': ['task', 'entries']},
            'what': one_or_more({'type': 'string', 'enum': ENTRY_CONTAINERS})
        },
        'required': ['to'],
        'additionalProperties': False
    }

Usage:
test_notify:
  mock:
    - {title: "foo", url: 'http://bla.com'}
    - {title: "bar2", url: 'http://bla2.com'}
  regexp:
    accept:
      - bar2
  notify:
    to:
      - pushover:
          userkey: userkey
          apikey: apikey
    what:
      - undecided
      - accepted
  scope: entries
  disable: [seen]
  manual: yes

Notify crash schema:
    schema = {
        'type': 'object',
        'properties': {
            'to': {'type': 'array', 'items':
                {'allOf': [
                    {'$ref': '/schema/plugins?group=notifiers'},
                    {'maxProperties': 1,
                     'error_maxProperties': 'Plugin options within notify plugin must be indented '
                                            '2 more spaces than the first letter of the plugin name.',
                     'minProperties': 1}]}}

        },
        'required': ['to'],
        'additionalProperties': False
    }

Usage:
notify_crash:
  to:
    - pushover:
        userkey: userkey
        apikey: apikey
        message: "Task has crashed {{task.abort_reason}} {{task.traceback}}"

notify_crash plugin could probably best be used in a global template.
To Do:

[ ] Convert all notifier plugin to follow new interface:

[x] notify_osd
[x] notify_sns
[x] notify_xmpp
[x] notifymyandroid
[x] prowl
[x] pushalot
[x] pushbullet
[x] rapidpush
[ ] send_email This plugin uses a hack to operate on task scope, changing it would trigger a functional change for a lot of people. Will change if asked to.
[x] slack
[x] sms_ru
[x] telegram
[x] pushover

[ ] Think of way to test this

Notify plugin should be the way to do multi recipient notifications, deprecate such features from some of the notification plugins.

Ability to specify template in "notify" plugin so it does not need to be done in each notify plugin?

Option "what" is almost never anything else than "accepted". Should not be mandatory and default to that?

Task render shoud work with template filenames somehow?

Idea was that we should have nice build in templates in "templates/plugin_name/xxxx.html"
(ehh, looks like there are now completely different kind of templates there ... swagger-ui.html, api_response.html. It was NOT ment for UI templates.)

Notify plugin should probably be THE way to do multi recipient notifications, deprecate such features from some of the notification plugins? By multi recipient do you mean several apikeys per config? Because we do not offer a way to do that via the notify plugin. This kinda relates to the second point I guess.
Ability to specify template in "notify" plugin so it does not need to be done in each notify plugin? That was my initial thinking, that each plugin config will constitute ONLY of its connection data, and it will not have anything related to the message data itself. Is that what you mean?
Option "what" is almost never anything else than "accepted". Should not be mandatory and default to that? It's not mandatory and accepted is already the default :smile:
Task render should work with template filenames somehow? Yeah, I'm not sure how those work...

Yeah, like

  notify:
    to:
      - pushover:
          userkey: userkey
          apikey: apikey
      - pushover:
          userkey: another_userkey
          apikey: another_apikey

I believe some notifiers accept multiple recipients already via config, but this would make it unnecessary feature. Although it may be preferable in some cases.

Probably same idea, although I don't see example template use in description.

Excellent

Templates work a bit poorly ATM. Look at "output/html.py", which is still best implementation I believe. This needs to be unified somehow. So each plugin could have a default template in a filesystem, and a set of other choices. Build in ones should be possible to use simply with "name" rather than full path.

This already works, to takes a list of plugins, they do not have to be unique. So both ways can be supported at the same time.
2 + 4. OK, i see how templates are used. Should be no problem adding a template attribute and rendering it. The thing that bugs me about having global attribute names which will remove all data handling from the notifer plugins themselves, is what if a user wanted to send several notification per notify plugin usage but with different data:

notify:
  to:
    - pushover: <opts>
         message: "foo"
    - telegram: <opts>
        message: "bar"

but maybe that's not a common scenario...

authors: liiight paranoidi


text:
🛑 Elysium is down

In a5a4384, Elysium (https://elysium.glowberry.xyz) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Elysium is back up in ffa4ba4 after 14 minutes.

repo: FlingisenFlong/flingchat-uptime


text:
WIP: Diff plugin outputs

Implements #73

@FloEdelmann please have a look, at my opinion this PR can be merged now.
Sample usage:

It doesn't show files with no changes and also mentions completely added/removed files/directories.
PS: Thanks for your precedence/precendence bug :wink:

Now I'm also working on the travis integration, so this PR shouldn't be merged at this point.

@FloEdelmann Could you please also give travis the GITHUB_USER_TOKEN?

Updated plugin output diff comment

Updated plugin output diff comment

Updated plugin output diff comment

This test looks pretty good to me. @FloEdelmann please have a look at this (feel free to add some dummy commits changing fixture or plugin files) and tell me your opinion on this.

Updated plugin output diff comment

Updated plugin output diff comment

Updated plugin output diff comment

Updated plugin output diff comment

Updated plugin output diff comment

Updated plugin output diff comment

@FloEdelmann I hope I've fixed (almost) all of your issues. I skipped using url shorteners as most of them require a secret token which has to be set as secret variable and so on. What do you think are good fixtures to use as test fixtures (when plugin script changes)?

@FloEdelmann I'd prefer the tests directory. Sure, it's not included in the Travis tests (fixture_valid.js isn't, too, so it's not the only non-travis-test), but you can run the script and locally test your changes. You don't use it as a library. However, it might be a possibility to move all command line scripts into one directory-

Updated plugin output diff comment

Updated plugin output diff comment

authors: FloEdelmann fxedel

repo: FloEdelmann/open-fixture-library


text:
Icons disappear after restart

Describe the bug
Icons disappear after restart.
It seems to have started after updating Obsidian to version 1.2.0.
Reinstall of the plugin did not work.
Warning: reinstalling the plugin removes all config, so make sure to keep a backup of the previous config (data.json in the plugin folder).
Edit: I do not have sync enabled, only Git is active for syncing to GitHub.
To Reproduce
Steps to reproduce the behavior:

Add an Icon to a file or folder
Check the data.json file in the plugin folder to verify that the changes are saved
Close Obsidian
Start Obsidian
Icon does not appear
Verify data.json to see that the config is still present

Expected behavior
Previous icons to be displayed
Additional context
The issue seems to have started when updating Obsidian, after the restart the plugin did no longer show in the overview under 'Community plugins'. After reinstalling the plugin the plugin started to work, however icons are no longer shown.

The error in the console:

Here is my error, looks the same as @Devenda
Uncaught TypeError: Cannot read properties of undefined (reading 'children')
    at eval (plugin:obsidian-icon-folder:2283:29)
    at Array.forEach (<anonymous>)
    at eval (plugin:obsidian-icon-folder:2277:14)
    at Array.forEach (<anonymous>)
    at addIconsToDOM (plugin:obsidian-icon-folder:2267:19)
    at IconFolderPlugin.handleChangeLayout (plugin:obsidian-icon-folder:3892:9)
    at eval (plugin:obsidian-icon-folder:3797:82)
    at t.tryTrigger (app.js:1:939830)
    at t.trigger (app.js:1:939763)
    at e.trigger (app.js:1:1867928)
eval @ plugin:obsidian-icon-folder:2283
eval @ plugin:obsidian-icon-folder:2277
addIconsToDOM @ plugin:obsidian-icon-folder:2267
handleChangeLayout @ plugin:obsidian-icon-folder:3892
eval @ plugin:obsidian-icon-folder:3797
t.tryTrigger @ app.js:1
t.trigger @ app.js:1
e.trigger @ app.js:1
e.updateLayout @ app.js:1
r @ app.js:1

I fixed that error by checking for null, but icons still do not load.
if (titleEl && titleEl.children && (titleEl.children.length === 2 || titleEl.children.length === 1)) {

This is fixed with #165, but I cannot test nor review it because I cannot access the insider builds. I'm very sorry about that. I'll fix this whenever v2.0.0 is publicly available.

Great! Thank you for the heads up and for maintaining the plugin!

authors: Devenda FlorianWoelki NightOwlCoder

repo: FlorianWoelki/obsidian-icon-folder


text:
Add support for using cert manager to issue TLS certs

Description

This allows K8s to use cert-manager.io to issue TLS certs for both the core Forge apps and the Instances.
Related Issue(s)

Checklist

[x] I have read the contribution guidelines
[ ] Suitable unit/system level tests have been added and they pass
[x] Documentation has been updated

[ ] Upgrade instructions
[x] Configuration details
[ ] Concepts

[ ] Changes flowforge.yml?

[ ] Issue/PR raised on FlowFuse/helm to update ConfigMap Template
[ ] Issue/PR raised on FlowFuse/CloudProject to update values for Staging/Production

Labels

[ ] Backport needed? -> add the backport label
[ ] Includes a DB migration? -> add the area:migration label

Looks fine, just two small suggestions in the secrets naming convention.

authors: hardillb ppawlowski

repo: FlowFuse/helm


text:
Exporting columns that are defined by ComponentRenderer

I have several grid columns that have custom renderers
Column myColumn = this.addColumn(new ComponentRenderer<>(this::createUserNumber))
These columns do not get included in the export.  Is there a way to configure the exporter to include these values as part of the export?

You can create a hidden column (column.setVisible(false)) that will render the values that you would like to see in the export, and configure them to be included in the report with exporter.setExportColumn(hiddenColumn, true);
There is an example of this in the demo (see lastName column)

I missed that detail when going through the demos.  Thanks for the quick response.

authors: josegulisano mlopezFC

repo: FlowingCode/GridExporterAddon


text:
Support team-creation

working at : https://github.com/FlowingSPDG/get5-web-go/tree/team_create
{
    "logo": "",
    "name": "wasd",
    "tag": "wasddd",
    "flag": "jp",
    "public_team":false,
    "auths": ["76561198072054549","76561198112965241"]
 }

"auths" should be string array for now

https://github.com/FlowingSPDG/get5-web-go/pull/40


text:
update get_emb_sz method

Updates get_emb_sz to ensure the order of embedding sizes is as expected which might not have been the case with just using Dict key order.

Code changes look fine, but I am wondering whether we should just drop the Dict version. I get that it is easier to specify a single column override with the Dict, but it is really not that hard to generate a vector of overrides + nothing with a generator. It's so deep into the API hierarchy too that we can forgo the same level of convenience we apply to the top level functions.
And if the consuming model building function always expects an in-order vector, then the Dict approach doesn't really make sense.

Yeah, that does make sense. I think I'll then just remove the method which takes in a Dict, and update the tabularclassification notebook to show an example of using custom embedding sizes for people new to FastAI.jl or julia.

Thanks Manikya for the change! Is this ready to merge?

If everything looks okay with the changes, then yeah it should be.

authors: darsnack lorenzoh manikyabard


text:
correction: typo in definition of FBbt:00040055 'labial sensory center'

Typo in bold.
"Region of the gnathal ganglion of the adult brain containing terminals of peripheral axons from the posterior branch of the maxillary-labial nerve, from of a subset of gustatory receptor neurons of labellum sensilla. Three distinct subregions can be identified: a posterior zone (LS1), a ventral protrusion on the posterior side of LS1 (LS2) and an anterior medial zone (LS3)."

Changed "from of a" to "from a" in the definitions of FBbt:00040055 (labial sensory center), FBbt:00040056 (posterior maxillary sensory center), and FBbt:00040057 (anterior maxillary sensory center).


text:
reCAPTCHA v3 not working

Thanks for a great looking theme for YOURLS!
I have an issue with getting reCAPTCHA v3 working on the front end:
When submitting the form, the $_POST data only contains the 'url' and 'keyword' values, there are no other keys/values in $_POST. So the necessary 'token' (or 'g-recaptcha-response'?) and 'action' are missing:
This is $_POST : array(2) { ["url"]=> string(34) "https://github.com/Flynntes/Sleeky" ["keyword"]=> string(0) "" }
So this makes the final reCAPTCHA verification respond with: { "success": false, "error-codes": [ "missing-input-response" ] }
and the page shows: reCAPTCHA failed
Settings: enableRecaptcha is enabled and recaptchaV3SiteKey and recaptchaV3SecretKey are both set correctly in config.php.
The recaptchaV3SiteKey also shows correctly in the resulting HTML for api.js?render= and  as first parameter of grecaptcha.execute.
Any idea how to fix this? Thanks!

This can be fixed by preventing the default form button execution:
Add the following line after line 6 in the frontend/footer.php:
event.preventDefault();
Should look like this:
<script>
	$('#shortenlink').submit(function(event) {
		if (<?php echo (int)enableRecaptcha  ?>) {
						event.preventDefault();
                        grecaptcha.ready(function() { etc. etc.

This can be fixed by preventing the default form button execution:
Add the following line after line 6 in the frontend/footer.php:
event.preventDefault();
Should look like this:
<script>
	$('#shortenlink').submit(function(event) {
		if (<?php echo (int)enableRecaptcha  ?>) {
						event.preventDefault();
                        grecaptcha.ready(function() { etc. etc.

@RuudvanReenen thanks for this. I spent more time than I care to admit trying to fix this.
Oddly, it works fine in Safari without the fix, only Firefox complains.

@RuudvanReenen thanks for this. I spent more time than I care to admit trying to fix this.
Oddly, it works fine in Safari without the fix, only Firefox complains.

Source
https://blog.chromium.org/2021/05/update-on-user-agent-string-reduction.html

We plan to gradually reduce, in a phased manner, the granularity of available information in the User-Agent header field, as well as the navigator.userAgent, navigator.appVersion, and navigator.platform JS APIs.
Once this is complete, you will still be able to reliably get the browser major version, platform name, and distinguish between desktop and mobile (or tablet), solely from the User-Agent string. For more advanced use cases, you should migrate to the User Agent Client Hints API.
Note: We have no plans to change the User-Agent string on Android WebView or Chrome for iOS at this time, but will make public updates if and when that changes.
Our current high-level plan is as follows:
Beginning in M92, we plan to start sending deprecation notices for the navigator.userAgent, navigator.appVersion, and navigator.platform getters in the DevTools Issues tab.
In the coming weeks, we will announce an Origin Trial for sites to opt in to receiving the fully reduced User-Agent. We expect to run the Origin Trial for at least 6 months to provide enough time for sites to opt in, test, and provide feedback on the feasibility and compatibility of our desired end state.
We will evaluate feedback from Origin Trial partners and the community, and based on this feedback proceed to Phases 3 through 7 of our plan (see next section for details), giving the ecosystem adequate time to adapt in between them. Otherwise, depending on feedback we will reconsider the best course of action.
For sites with complex use cases that require more time for migration, we aim to offer the ability to extend the current User-Agent behavior for at least an additional 6 months (through a "reverse Origin Trial").
Proposed rollout plan
We plan to roll out these changes slowly and incrementally in 7 Phases—pending Origin Trial feedback—and plan to publish an update soon on the proposed timing and milestones beyond Phase 1.
Reduction Preparation
Phase 1: Warn about accessing navigator.userAgent, navigator.appVersion, and navigator.platform in DevTools, beginning in M92.

This is mentioned on Chrome blogs, and in my dev console, it shows prevention to ReCaptcha js.

hiya,
any updates on that topic, it is same for me, recaptcha not working, same:

<script src="https://www.google.com/recaptcha/api.js?render=<?php echo recaptchaV3SiteKey ?>"></script>
<script>
	const shortenForm = document.querySelector("form#shortenlink");
	if (shortenForm) {
		shortenForm.addEventListener("submit", function(e){
			**e.preventDefault();**
			grecaptcha.ready(function() { etc..

for me here, seems quick fix applies not in this case.
Any findings?

Hej,
I ran into the same issue, but I was able to resolve it by deactivating the standard reCaptcha plugin.

authors: RuudvanReenen gjelbrim ihatemyisp un99known99 yyppsk

repo: Flynntes/Sleeky


text:
NTR: branched chain amino acid-free formula

Hi, I am interested in a term such as this for a project. Please feel free to recommend any alterations
Term: branched chain amino acid-free formula
Definition: A dietary supplement formulated to contain little to no branched chain amino acids (BCAA), typically recommended for individuals with Maple Syrup Urine Disease
Parent term: dietary or therapeutic formulation food product(FOODON:00001809), open to recommendations for a preferred parent class, this term denotes it may get merged with ‘dietary supplement’ in the future
Synonyms: BCAA-free medical formula, BCAA-free formula
An example of a product like this is: https://www.hcp.meadjohnson.com/products/metabolic-products/bcad-1/

Sounds good. I'll leave it open for comment for a week, and then add it in.

Do I call you my definition source?
New term id in foodon draft is:
http://purl.obolibrary.org/obo/FOODON_00003450

@ddooley Thanks for getting that started. Here's a source that describes a little more of formula design and composition if you'd like to include that. I can also be the definition source if preferred.
https://www.sciencedirect.com/science/article/pii/S1096719209005289?casa_token=11OFs4JGaf0AAAAA:vtFdNggBf2dMMPFs-atz6Ezqr5RqB48WUIFp_6nm328MQ2i7Bq7OIpYhL4t0ctmI_sPy9U8uhA

authors: ddooley laurenechan

repo: FoodOntology/foodon


text:
🛑 Homepage is down

In e50ae86, Homepage (https://forgoodeyesonly.eu) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Homepage is back up in e9b7a7e after 17 minutes.

repo: ForGoodEyesOnly/status


text:
Test compilation troubles in Visual Studio

While testing the project build with @NikolaiSviridov, we've discovered that our tests don't compile in Visual Studio with weird error messages.
Investigation is required.

I builded tests in Visual Studio 2019, but for this I had to first consolidate the nugets.

--- a/src/WpfMath.Tests/WpfMath.Tests.fsproj
+++ b/src/WpfMath.Tests/WpfMath.Tests.fsproj
@@ -6,20 +6,23 @@
         <Deterministic>false</Deterministic>
     </PropertyGroup>
     <ItemGroup>
-        <PackageReference Include="ApprovalTests" Version="3.0.19" />
-        <PackageReference Include="Foq" Version="1.7.3" />
-        <PackageReference Include="FSharp.Core" Version="4.2.3" />
+        <PackageReference Include="ApprovalTests" Version="4.2.2" />
+        <PackageReference Include="Foq" Version="1.8.0" />
+        <PackageReference Include="FSharp.Core" Version="4.7.0" />
         <PackageReference Include="FSharp.Core.Fluent-4.0" Version="1.0.0.6" />
-        <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
-        <PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
-        <PackageReference Include="System.ValueTuple" Version="4.4.0" />
-        <PackageReference Include="xunit" Version="2.1.0" />
-        <PackageReference Include="xunit.abstractions" Version="2.0.0" />
-        <PackageReference Include="xunit.assert" Version="2.1.0" />
-        <PackageReference Include="xunit.core" Version="2.1.0" />
-        <PackageReference Include="xunit.extensibility.core" Version="2.1.0" />
-        <PackageReference Include="xunit.extensibility.execution" Version="2.1.0" />
-        <PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
+        <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.3.0" />
+        <PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
+        <PackageReference Include="System.ValueTuple" Version="4.5.0" />
+        <PackageReference Include="xunit" Version="2.4.1" />
+        <PackageReference Include="xunit.abstractions" Version="2.0.3" />
+        <PackageReference Include="xunit.assert" Version="2.4.1" />
+        <PackageReference Include="xunit.core" Version="2.4.1" />
+        <PackageReference Include="xunit.extensibility.core" Version="2.4.1" />
+        <PackageReference Include="xunit.extensibility.execution" Version="2.4.1" />
+        <PackageReference Include="xunit.runner.visualstudio" Version="2.4.1">
+          <PrivateAssets>all</PrivateAssets>
+          <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
+        </PackageReference>
         <ProjectReference Include="../WpfMath/WpfMath.csproj" />
     </ItemGroup>
     <ItemGroup>

xunit.runner.visualstudio gives a good hint here, thank you!

@rstm-sf, @NikolaiSviridov, could you, guys, please check if the tests now run/compile in your environments? My VS2019 installation is likely FUBAR and I cannot trust it.

The only problem with #217

Yas, I'm aware. Thanks for check!

authors: ForNeVeR rstm-sf

repo: ForNeVeR/wpf-math


text:
Alert Internet Explorer Users of limited functionality

Feature Request
As a user of Internet Explorer
I want to be alerted that IE has limited support from RetroQuest
So that I do not assume that RetroQuest is broken
Acceptance Criteria
Given I open RetroQuest in IE
When the page loads
Then I'm alerted that my browser has limited support from RetroQuest

Since IE support has been discontinued, people should not be using the browser. Rather than adding in functionality with no clear removal date, we're instead going to opt for the site just not working on IE.

authors: LowBudgetMan MarkJRust

repo: FordLabs/retroquest


text:
Make sure destination paths are not well known locations.

It would be a shame if someone set config.path.dest to a location like c:\windows or c:\program files and then had all those files blown away during a clean.
Have functions.configPathsAreGood make sure the destination path is not a well known location that should be protected.

Done. ^_^

repo: ForestMist/feri


text:
Add LanceDB Vector store

Great work on this repo @yyiilluu and team!
Lancedb is open source, serverless, setup free vectordb. This integration will allow using lancedb as base search tool without any additional steps, or setup.

@AyushExel can you try to resolve this
Run python -m poetry install
Skipping virtualenv creation, as specified in config file.
Installing dependencies from lock file
Warning: poetry.lock is not consistent with pyproject.toml. You may be getting improper dependencies. Run `poetry lock [--no-update]` to fix it.

Because autochain depends on lancedb (>=0.1.16) which doesn't match any versions, version solving failed.
Error: Process completed with exit code 1.

I've tried to update the lockfile with the same poetry version it was last updated with (1.4.2). Hopefully, this resolves the issue

thanks for your contribution!

authors: AyushExel yyiilluu

repo: Forethought-Technologies/AutoChain


text:
Need to update apiVersion of MutatingWebookConfiguration and ValidatingWebookConfiguration

Warning: admissionregistration.k8s.io/v1beta1 MutatingWebhookConfiguration is deprecated in v1.16+, unavailable in v1.22+; use admissionregistration.k8s.io/v1 MutatingWebhookConfiguration
Warning: admissionregistration.k8s.io/v1beta1 ValidatingWebhookConfiguration is deprecated in v1.16+, unavailable in v1.22+; use admissionregistration.k8s.io/v1 ValidatingWebhookConfiguration

#192 solved this.

authors: jrcast maxres-fr

repo: ForgeRock/secret-agent


text:
Fix transitions and clipping

#77 Entrance transitions were completely broken, as was all dynamic clipping. Upgrading to react-native-svg@5.2.0 fixed this; however, that upgrade necessitated upgrades to react-native@0.45.0 and react@16.0.0-alpha.12.
Also cleaned up a related hack (from #74) that is not needed anymore, and some bogus props that made debugging more confusing :P

@chrisbolin approved pending getting CI to pass

released as victory-native@0.10.0

authors: boygirl chrisbolin

repo: FormidableLabs/victory-native


text:
Consolidate constant values

Currently, some constant values like system namespace or wire protocol version are defined as plain string literals at random places all over the code base. This will soon become a tech debt and will probably bite our ass pretty soon in the future. Thus it's a good idea to consolidate these values into one/few places (think of the error_definitions.h for example).

I changed most of the places to use constants instead of same string literals via https://github.com/FoundationDB/fdb-document-layer/pull/109

repo: FoundationDB/fdb-document-layer


text:
Mailspring won't open after installing a theme

Hi,
I downloaded this repo. I have Added a name, display name, title, and description for my theme to package.json, and changed the directory name to match.
Opened N1 and install the theme by going to Mailspring > Install New Theme... and selecting the directory.
Choose Developer > Run With Debug Flags for easier debugging.
Now my client won't open. In console I have error:
ln: failed to create symbolic link '/myhomefolder/snap/mailspring/209/.config/gtk-2.0/gtkfilechooser.ini': File exists
Gtk-Message: Failed to load module "gail"
Gtk-Message: Failed to load module "atk-bridge"
Gtk-Message: Failed to load module "canberra-gtk-module"
Running database migrations
App load time: 247ms
{"error":null}
In mailspring's windows I have error:
Error: Failed to execute 'add' on 'DOMTokenList': The token provided ('theme-Dark Blue') contains HTML space characters, which are not valid in tokens.
at ThemeManager.activateThemePackage (/src/theme-manager.es6:135:29)
at new AppEnvConstructor (/src/app-env.es6:95:17)
at Object. (/src/secondary-window-bootstrap.es6:18:17)
at Object. (/src/secondary-window-bootstrap.es6:26:1)
at Module._compile (module.js:569:30)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:503:32)
at tryModuleLoad (module.js:466:12)
at Function.Module._load (module.js:458:3)
at Module.require (module.js:513:17)
at require (internal/module.js:11:18)
at setupWindow (file:///snap/mailspring/209/usr/share/mailspring/resources/app.asar/static/index.js:47:3)
at window.onload (file:///snap/mailspring/209/usr/share/mailspring/resources/app.asar/static/index.js:75:5)
Can you please help me fix this issue?

The Hints are there:
ln: failed to create symbolic link '/myhomefolder/snap/mailspring/209/.config/gtk-2.0/gtkfilechooser.ini': File exists
try renaming the original symbolic link with .bak extension (ie; abc.ini to abc.ini.bak)
Error: Failed to execute 'add' on 'DOMTokenList': The token provided ('theme-Dark Blue') contains HTML space characters, which are not valid in tokens.
try renaming the theme name to theme-Dark_Blue, essentially getting rid of space, you may use any character instead of space _ is just what's used as convention

Hey folks thanks for reporting this - I'll see if I can fix the way
Mailspring handles this in the next update so this isn't an issue.
Ben
On Mon, Jun 18, 2018 at 6:59 AM, Danish notifications@github.com wrote:

The Hints are there:
ln: failed to create symbolic link '/myhomefolder/snap/
mailspring/209/.config/gtk-2.0/gtkfilechooser.ini': File exists
try renaming the original symbolic link with .bak extension (ie; abc.ini
to abc.ini.bak)
Error: Failed to execute 'add' on 'DOMTokenList': The token provided
('theme-Dark Blue') contains HTML space characters, which are not valid in
tokens.
try renaming the theme name to theme-Dark_Blue, essentially getting rid of
space, you may use any character instead of space _ is just what's used
as convention
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Foundry376/Mailspring-Theme-Starter/issues/1#issuecomment-398030515,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABBDH844Wuj0XFYLSaVEJLE9T_E2hJqvks5t95YMgaJpZM4TQND_
.

Hey! This should be resolved by https://github.com/Foundry376/Mailspring/commit/5ae7e205147fde43ac75fc31d677bb110c0bd929 - the app will display an error if your theme's styles can't be compiled and offer to reset to the default theme.

awesome! thank you!

authors: Foundry376 bengotow kpalczewski toxicmender


text:
Add MurMur-Delphi

Adds a specific seeded hashing algorithm that seems to be missing with most crypto suites.

Thanks, merged!


text:
게시글 소개 로직 변경으로 인한 코드 수정

제가 한 일은요!!

기존의 게시글 을 조회하면서 게시글 소개를 표시할떄 그냥 content를 반환해서 마크다운 문법이 다 들어갔지만,
introduce 를 따로 분리 함으로써 정상적으로 보일 수 있게 했습니다.
Board 엔티티에 introduce 컬럼을 추가했습니다.
Board 서비스 코드를 일부 리팩토링 했습니다.

에러가 발생합니다

introduce 컬럼을 추가하여 기존의 테스트코드에서 board 를 post하는 부분에서 에러가 발생합니다.
확인하고 수정해주세요 @honghyunin

모든 변경사항을 확인했습니다 요청하신 사항은 확인 이후 작업하겠습니다!
추후 리팩토링에 관한 논의를 거쳐 전체적으로 수정할 필요가 있을 것 같습니다 !!

저도 같은 생각입니다!!
추후 논의 후 리팩토링 진행합시다.

repo: Frame-in-Puzzle/Puzzle-Server


text:
Handle item requiring explicit entry

HEAD NOTE: this issue will be split into multiple ones later.
Other documentation: https://france-ioi.github.io/algorea-devdoc/items/contests/
Overview
When visiting an item with no explicit entry, the last attempt is retrieved and if none exists, one is created.
When visiting an item with ~no~ explicit entry, the last attempt is retrieved and if none exists, none is created because the item must be started (an attempt must be created) manually by the user.
(From now when you read "item", read "item with explicit entry")
Changes to the item page
When an item is not started, we can check the entry state of the item (<> can the user enter/start or not) using get entry state backend service.
For now, when entry_participant_type === 'Team', we will refuse the entry because it implies to take other parameters into account like entry_min_admitted_members_ratio and so on ; it will be done later.
Use cases
item.permissions.canView >= 'content'
Nothing to do, display the item as usual. Under the hood, it means that the user has already "started" the activity
`item.permissions.canView === 'none'
Nothing to do, display the usual message "You have not access to this item …"
item.permissions.canView === 'info'
Display a section with a "Start" button, the duration if there's one and the max attempts if allow_multiple_attempts === true. When the start button is clicked, create an attempt and refetch item & its children. Creating the attempt will set the item.permissions.canView to a value >= "content".
There will be additional info to display base on the values of can_enter_(from|until) and entering_time_(min|max) :construction:
Changes to the item form
In "Advanced parameters", add a new select field entry_min_admitted_members_ratio with options ['None', 'All']
It should visible even when entry_participant_type === 'User' because a user is a group of 1.
For design information, browse through "activities-skills > header > team registration" which is the most resembling screen (link to come :construction:)
Tests

I am a student (I have not created the item, I'm not owner…), I have to click "Start" to enter.

Test with duration & no duration
Test with entering_time_(min|max) & no entering_time_*

I created the item, I am admin (owner of the item), I'm not concerned by the entering_time_(min|max) nor the duration

Test with an attempt.

done in #1758

authors: ThomasJuster smadbe

repo: France-ioi/AlgoreaFrontend