[CP] [stable] Add interface to a few classes which had missed it.

Commit(s) to merge
7e56658645f9d3a0ccc1b402fdc7add91a2f2067
Target
stable
Prepared changelist for beta/stable
https://dart-review.googlesource.com/c/sdk/+/305281
Issue Description
A few pure interface classes were not marked as interface in the 3.0 release.
It's better to fix that soon, so this is landed as a breaking change, preferably in the next patch release.
What is the fix
Add interface to the class declarations.
Has fixed the very few occurrences of extends ClassName in the SDK and other already known 3.0-migrated code (mainly in the SDK itself).
Why cherry-pick
The sooner the modifier is added, the easier it is to land it.
Every library which migrates to Dart 3.0 increases the risk of there being some Dart 3.0 code which extends these interface classes, even if there is very little code with reason to do so.
The CL merges cleanly against the SDK, Flutter and Google internal code.
Risk
low
Issue link(s)
https://dartbug.com/52334
Extra Info
No response

@leafpetersen can you take a look here?

Per the linked bug, this is an approved breaking change.  Code LGTM.  Agreed we should get this in ASAP.

@lrhn you are free to submit this change!

CL has landed.


BannerAd does not react to tap gesture. Exception: Trying to use platform views with API 19, required API level is: 20

Plugin Version
1.3.0
Steps to Reproduce

Create flutter app with minSdkVersion = 19. According to the official docs 19 is the minimum supported version: quick-start
Display AdWidget(ad: BannerAd(...))
Run the app and tap on the banner

Expected results:
Browser is opened with the add information
Actual results:
Nothing happens visually but exception in thrown in the logs with "Trying to use platform views with API 19, required API level is: 20"

Logs

[ +373 ms] I/flutter (  778): ----------------FIREBASE CRASHLYTICS----------------
[   +1 ms] I/flutter (  778): PlatformException(error, java.lang.IllegalStateException: Trying to use platform views with API 19, required API level is: 20
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.ensureValidAndroidVersion(PlatformViewsController.java:395)
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.onTouch(PlatformViewsController.java:342)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.touch(PlatformViewsChannel.java:199)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:72)
[        ] I/flutter (  778):   at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
[        ] I/flutter (  778):   at android.os
[  +11 ms] I/flutter (  778):
[        ] I/flutter (  778): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607:7)
[        ] I/flutter (  778): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167:18)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #2      AndroidViewController.sendMotionEvent (package:flutter/src/services/platform_views.dart:810:5)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #3      AndroidViewController.dispatchPointerEvent (package:flutter/src/services/platform_views.dart:908:7)
[        ] I/flutter (  778): <asynchronous suspension>
[   +4 ms] I/flutter (  778): ----------------------------------------------------
[  +19 ms] I/flutter (  778): ----------------FIREBASE CRASHLYTICS----------------
[   +5 ms] I/flutter (  778): PlatformException(error, java.lang.IllegalStateException: Trying to use platform views with API 19, required API level is: 20
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.ensureValidAndroidVersion(PlatformViewsController.java:395)
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.onTouch(PlatformViewsController.java:342)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.touch(PlatformViewsChannel.java:199)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:72)
[        ] I/flutter (  778):   at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
[        ] I/flutter (  778):   at android.os
[   +7 ms] I/flutter (  778):
[        ] I/flutter (  778): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607:7)
[        ] I/flutter (  778): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167:18)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #2      AndroidViewController.sendMotionEvent (package:flutter/src/services/platform_views.dart:810:5)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #3      AndroidViewController.dispatchPointerEvent (package:flutter/src/services/platform_views.dart:908:7)
[        ] I/flutter (  778): <asynchronous suspension>
[   +4 ms] I/flutter (  778): ----------------------------------------------------
[  +66 ms] I/flutter (  778): ----------------FIREBASE CRASHLYTICS----------------
[   +1 ms] I/flutter (  778): PlatformException(error, java.lang.IllegalStateException: Trying to use platform views with API 19, required API level is: 20
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.ensureValidAndroidVersion(PlatformViewsController.java:395)
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.onTouch(PlatformViewsController.java:342)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.touch(PlatformViewsChannel.java:199)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:72)
[        ] I/flutter (  778):   at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
[        ] I/flutter (  778):   at android.os
[        ] I/flutter (  778):
[        ] I/flutter (  778): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607:7)
[        ] I/flutter (  778): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167:18)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #2      AndroidViewController.sendMotionEvent (package:flutter/src/services/platform_views.dart:810:5)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #3      AndroidViewController.dispatchPointerEvent (package:flutter/src/services/platform_views.dart:908:7)
[        ] I/flutter (  778): <asynchronous suspension>
[   +3 ms] I/flutter (  778): ----------------------------------------------------
[        ] I/flutter (  778): ----------------FIREBASE CRASHLYTICS----------------
[   +5 ms] I/flutter (  778): PlatformException(error, java.lang.IllegalStateException: Trying to use platform views with API 19, required API level is: 20
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.ensureValidAndroidVersion(PlatformViewsController.java:395)
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.onTouch(PlatformViewsController.java:342)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.touch(PlatformViewsChannel.java:199)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:72)
[        ] I/flutter (  778):   at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
[        ] I/flutter (  778):   at android.os
[   +2 ms] I/flutter (  778):
[        ] I/flutter (  778): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607:7)
[        ] I/flutter (  778): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167:18)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #2      AndroidViewController.sendMotionEvent (package:flutter/src/services/platform_views.dart:810:5)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #3      AndroidViewController.dispatchPointerEvent (package:flutter/src/services/platform_views.dart:908:7)
[        ] I/flutter (  778): <asynchronous suspension>
[   +4 ms] I/flutter (  778): ----------------------------------------------------
[   +1 ms] I/flutter (  778): ----------------FIREBASE CRASHLYTICS----------------
[   +1 ms] I/flutter (  778): PlatformException(error, java.lang.IllegalStateException: Trying to use platform views with API 19, required API level is: 20
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.ensureValidAndroidVersion(PlatformViewsController.java:395)
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.onTouch(PlatformViewsController.java:342)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.touch(PlatformViewsChannel.java:199)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:72)
[        ] I/flutter (  778):   at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
[        ] I/flutter (  778):   at android.os
[   +1 ms] I/flutter (  778):
[        ] I/flutter (  778): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607:7)
[        ] I/flutter (  778): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167:18)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #2      AndroidViewController.sendMotionEvent (package:flutter/src/services/platform_views.dart:810:5)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #3      AndroidViewController.dispatchPointerEvent (package:flutter/src/services/platform_views.dart:908:7)
[        ] I/flutter (  778): <asynchronous suspension>
[   +4 ms] I/flutter (  778): ----------------------------------------------------
[   +5 ms] I/flutter (  778): ----------------FIREBASE CRASHLYTICS----------------
[   +2 ms] I/flutter (  778): PlatformException(error, java.lang.IllegalStateException: Trying to use platform views with API 19, required API level is: 20
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.ensureValidAndroidVersion(PlatformViewsController.java:395)
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.onTouch(PlatformViewsController.java:342)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.touch(PlatformViewsChannel.java:199)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:72)
[        ] I/flutter (  778):   at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
[        ] I/flutter (  778):   at android.os
[        ] I/flutter (  778):
[        ] I/flutter (  778): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607:7)
[        ] I/flutter (  778): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167:18)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #2      AndroidViewController.sendMotionEvent (package:flutter/src/services/platform_views.dart:810:5)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #3      AndroidViewController.dispatchPointerEvent (package:flutter/src/services/platform_views.dart:908:7)
[        ] I/flutter (  778): <asynchronous suspension>
[   +3 ms] I/flutter (  778): ----------------------------------------------------
[   +1 ms] I/flutter (  778): ----------------FIREBASE CRASHLYTICS----------------
[   +1 ms] I/flutter (  778): PlatformException(error, java.lang.IllegalStateException: Trying to use platform views with API 19, required API level is: 20
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.ensureValidAndroidVersion(PlatformViewsController.java:395)
[        ] I/flutter (  778):   at io.flutter.plugin.platform.PlatformViewsController$1.onTouch(PlatformViewsController.java:342)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.touch(PlatformViewsChannel.java:199)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:72)
[        ] I/flutter (  778):   at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
[        ] I/flutter (  778):   at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
[        ] I/flutter (  778):   at android.os
[        ] I/flutter (  778):
[        ] I/flutter (  778): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607:7)
[        ] I/flutter (  778): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167:18)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #2      AndroidViewController.sendMotionEvent (package:flutter/src/services/platform_views.dart:810:5)
[        ] I/flutter (  778): <asynchronous suspension>
[        ] I/flutter (  778): #3      AndroidViewController.dispatchPointerEvent (package:flutter/src/services/platform_views.dart:908:7)
[        ] I/flutter (  778): <asynchronous suspension>
[   +4 ms] I/flutter (  778): ----------------------------------------------------
[  +12 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +29 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +286 ms] D/dalvikvm(  778): GC_FOR_ALLOC freed 5412K, 48% free 18601K/35464K, paused 61ms, total 62ms
[  +30 ms] E/File    (  778): fail readDirectory() errno=20
[        ] E/File    (  778): fail readDirectory() errno=20
[   +4 ms] E/File    (  778): fail readDirectory() errno=20
[ +241 ms] D/dalvikvm(  778): GC_FOR_ALLOC freed 3634K, 48% free 18535K/35464K, paused 60ms, total 60ms
[  +16 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +25 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +173 ms] E/File    (  778): fail readDirectory() errno=20
[        ] E/File    (  778): fail readDirectory() errno=20
[   +5 ms] E/File    (  778): fail readDirectory() errno=20
[ +210 ms] D/dalvikvm(  778): GC_FOR_ALLOC freed 3356K, 48% free 18788K/35464K, paused 61ms, total 61ms
[ +141 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +28 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +82 ms] E/File    (  778): fail readDirectory() errno=20
[        ] E/File    (  778): fail readDirectory() errno=20
[   +4 ms] E/File    (  778): fail readDirectory() errno=20
[ +196 ms] D/dalvikvm(  778): GC_FOR_ALLOC freed 4872K, 48% free 18777K/35464K, paused 63ms, total 63ms
[ +242 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +12 ms] E/File    (  778): fail readDirectory() errno=20
[        ] E/File    (  778): fail readDirectory() errno=20
[   +4 ms] E/File    (  778): fail readDirectory() errno=20
[  +12 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +121 ms] D/dalvikvm(  778): GC_FOR_ALLOC freed 3981K, 48% free 18494K/35464K, paused 59ms, total 59ms
[ +333 ms] D/dalvikvm(  778): GC_FOR_ALLOC freed 3469K, 48% free 18497K/35464K, paused 58ms, total 58ms
[  +33 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +36 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[        ] E/File    (  778): fail readDirectory() errno=20
[   +1 ms] E/File    (  778): fail readDirectory() errno=20
[   +5 ms] E/File    (  778): fail readDirectory() errno=20
[ +387 ms] D/dalvikvm(  778): GC_FOR_ALLOC freed 5014K, 48% free 18548K/35464K, paused 59ms, total 59ms
[  +54 ms] E/File    (  778): fail readDirectory() errno=20
[        ] E/File    (  778): fail readDirectory() errno=20
[   +5 ms] E/File    (  778): fail readDirectory() errno=20
[  +93 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +45 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +123 ms] D/dalvikvm(  778): GC_FOR_ALLOC freed 3663K, 48% free 18480K/35464K, paused 58ms, total 58ms
[ +188 ms] E/File    (  778): fail readDirectory() errno=20
[        ] E/File    (  778): fail readDirectory() errno=20
[   +4 ms] E/File    (  778): fail readDirectory() errno=20
[ +186 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +42 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +595 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +60 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +525 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +32 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +523 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +48 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +576 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +43 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +532 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +42 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +568 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +53 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +577 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +43 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +511 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +80 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +629 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +36 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +556 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +50 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +556 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +34 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +30 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +557 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +49 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +571 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +65 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +605 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +32 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +559 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +32 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +515 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +64 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +24 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +595 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +42 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +574 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +45 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +578 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[  +41 ms] E/PlatformViewWrapper(  778): Platform view cannot be composed without a surface.
[ +437 ms] I/FIAM.Display(  778): Unbinding from activity: MainActivity
[        ] I/FIAM.Headless(  778): Removing display event component
[   +5 ms] E/FIAM.Display(  778): Activity is finishing or does not have valid window token. Cannot show FIAM.
[ +783 ms] D/dalvikvm(  778): threadid=41: thread exiting, not yet detached (count=0)
[   +2 ms] D/dalvikvm(  778): threadid=51: thread exiting, not yet detached (count=0)
[  +41 ms] W/System  (  778): Ignoring header If-None-Match because its value was null.
[+5485 ms] Service protocol connection closed.
[        ] Lost connection to device.
[   +2 ms] DevFS: Deleting filesystem on the device (file:///data/data/net.u5dol.worldofgoals/cache/worldofgoalsHZGAIM/worldofgoals/)
[ +252 ms] Ignored error while cleaning up DevFS: TimeoutException after 0:00:00.250000: Future not completed
[   +1 ms] "flutter run" took 146,456ms.
[  +94 ms] ensureAnalyticsSent: 92ms
[   +1 ms] Running shutdown hooks
[        ] Shutdown hooks complete
[        ] exiting with code 0

[✓] Flutter (Channel stable, 3.0.4, on Manjaro Linux 5.18.6-1-MANJARO, locale en_US.UTF-8)
    • Flutter version 3.0.4 at /opt/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 85684f9300 (3 days ago), 2022-06-30 13:22:47 -0700
    • Engine revision 6ba2af10bb
    • Dart version 2.17.5
    • DevTools version 2.12.2

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /home/dvoloshyn/Android/Sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /home/dvoloshyn/.local/share/JetBrains/Toolbox/apps/AndroidStudio/ch-0/212.5712.43.2112.8512546/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • CHROME_EXECUTABLE = /usr/bin/chromium

[✓] Linux toolchain - develop for Linux desktop
    • clang version 13.0.1
    • cmake version 3.23.2
    • ninja version 1.11.0
    • pkg-config version 1.8.0

[✓] Android Studio (version 2021.1)
    • Android Studio at /home/dvoloshyn/.local/share/JetBrains/Toolbox/apps/AndroidStudio/ch-0/211.7628.21.2111.8309675
    • Flutter plugin version 67.1.1
    • Dart plugin version 211.7817
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7590822)

[✓] Android Studio (version 2021.2)
    • Android Studio at /home/dvoloshyn/.local/share/JetBrains/Toolbox/apps/AndroidStudio/ch-0/212.5712.43.2112.8512546
    • Flutter plugin version 67.1.2
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Ultimate Edition (version 2022.1)
    • IntelliJ at /home/dvoloshyn/.local/share/JetBrains/Toolbox/apps/IDEA-U/ch-0/221.5921.22
    • Flutter plugin version 69.0.4
    • Dart plugin version 221.5921.27

[✓] Connected device (4 available)
    • SM G7102 (mobile)            • 6424f8a5      • android-arm    • Android 4.4.2 (API 19)
    • sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 12 (API 32) (emulator)
    • Linux (desktop)              • linux         • linux-x64      • Manjaro Linux 5.18.6-1-MANJARO
    • Chrome (web)                 • chrome        • web-javascript • Chromium 103.0.5060.53 Arch Linux

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

• No issues found!

Hi @maheshmnj. Sorry, forgot to specify explicitly the most important detail.
You need to actually run it on Android 4.4 (API 19)
I run your code sample in emulator and on a real device with android 4.4.2 and it throws an exception in both cases without opening the browser.
Of course, when running on higher Android versions it works just fine.

It looks like the minimum supported API level for platform views is 20, and our public documentation needs to be updated to reflect that (it currently says API 19).
There's no workaround since we are limited by platform views. You can still use full screen ads on API 19 and below, but if you need to support banner ads on API 19, you'll need to file a feature request to the Flutter github to extend platform view support to API 19.


Lathes refactor

About the PR
Draft for now, just wanna solidify that i'm working on it
fixes #2709 eventually
Stuff i've done

Loc'd all research-related stuff
XAMLized all research-related UIs
Merged ProtolatheVisualizer and AutolatheVisualizer
Material states are no longer hardcoded (basically just replaced the material insertion code)
LatheVisualizer is better hopefully (still needs some work)

Stuff I'm gonna do

Lathe animations that actually work
Give all materials a color field and use that to color the insertion animation layer (this can also be used for a lot of other stuff)
Use RefreshParts
Refactor material storage code (i guess? not really sure what vera meant in #2709 about this)
Refactor ProtolatheDatabase and AutolatheDatabase so you don't have to specify every fucking recipe, it should just work when its unlocked (maybe add an 'excluded recipe' list rather than a 'allowed recipe' list)

Check lathe inserting animations. It seems that on current master they are rendered underneath the lathe itself.

Stale?

will come back later when i also work on rnd stuff


Project layout improvements

new config file for tracking workspace configuration options that are not project-specific
project-specific folders with subfolders to group various outputs
whisper outputs persisted to disk

closes #17


Works like a charm..few suggestions.

I am new to ARM so maybe it took a while for me to figure this one out.
The JSON code given here can be used for existing machine and new deployments, and I was testing new deployments and copied this under /virtualmachines resource.
It didnt like the type as "extensions" instead of "Microsoft.Compute/virtualMachines/extensions"
2. The github example that shows the URI actually exposes the script, and there could be security concern for enterprises. Storing the key in JSON is bad too.
the workaround I am using is to make these containers temporarily anonymous and then deleting it after provisioning.
New-AzureStorageContainerStoredAccessPolicy -container "customscripts" -Policy TempAnonymousRead -Starttime (get-date) -ExpiryTime ((get-date).Addminutes(15)) -Permission r
Another method I didnt try yet is to pass the SAS token in the FileURIs.

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

ID: 40aaccb8-19ba-168f-f5bf-65f1f5331541
Version Independent ID: 6cdfd166-633a-50a3-2b45-cde0e991e540
Content: Azure Custom Script Extension for Windows
Content Source: articles/virtual-machines/extensions/custom-script-windows.md
Service: virtual-machines-windows
GitHub Login: @zroiy
Microsoft Alias: roiyz

sorry I mean it LIKED "extensions" and NOT "Microsoft.Compute/virtualMachines/extensions" when this is a resource of VM resource itself.

@g0pinath thanks for the feedback. We will review and get back to you soon.

@g0pinath Thanks for the feedback! I have assigned the issue to the content author to investigate further and update the document as appropriate.

#reassign @roiyz-msft

We are currently closing out long standing backlog in order to better determine which issues are still valid and which have been addressed. If you are still seeing a specific problem with this document please open a new issue so we can properly assign the feedback to the correct author and get it addressed ASAP.
#please-close


open knesset committees scrapers and relevant data gathering / logic layers should be in knesset-data

issue handled in #118


ci: Fix failing github tests due to wrong test directories

1. Why is this change necessary?
Because failing workflows are not good.
2. What does this change do, exactly?
Change the test directories to find e2e tests.
3. Describe each step to reproduce the issue or behaviour.
Look at the Github pipeline.
4. Please link to the relevant issues (if any).
-
5. Checklist

[x] I have rebased my changes to remove merge conflicts
[ ] I have written tests and verified that they fail without my change
[ ] I have created a changelog file with all necessary information about my changes
[ ] I have written or adjusted the documentation according to my changes
[ ] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

Seems like the cypress tests still not finish for the administration :thinking:

We removed the e2e tests from the github pipeline, as they were always flaky, so i'm closing this PR for now.


Release Google.Cloud.WebRisk.V1Beta1 version 3.0.0-beta05

Changes in this release:
New features

Add IServiceCollection extension methods for client registration where an IServiceProvider is required. (commit 022fab2)

Created release for Google.Cloud.WebRisk.V1Beta1-3.0.0-beta05


Vickel: Watch allpcworld.site

Vickel requests the watch of the watch_keyword allpcworld\.site. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

allpcworld\.site has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


arm64 package for ubuntu

Hi
Very cool project! thank you for putting it out!
I'm trying to build it on M1 MacBook with vtk9.3
getting error
CMake Error at vtk9/VTK/build/vtk-config.cmake:1 (include):
  include could not find requested file:

    /Users/sakrist/Developer/vtk9/VTK/build/lib/cmake/vtk-9.3/vtk-config.cmake
Call Stack (most recent call first):
  dicom2mesh/CMakeLists.txt:5 (find_package)

Also tried to create docker container but did not work because there is no arm64 package to install.
Please, consider publishing arm64 package.

my bad, it actually builds fine. problem was because I moved vtk library manually.


Some question about Meta-KD

Sorry to bother you.When I run the 'bash examples/knowledge_distillation/meta_student_distill.sh' , the logs shows below:

Is this a version of easynlp promblem?I already run the 'pip install pai-easynlp' according to https://github.com/alibaba/EasyNLP readme.md.And I try :
$ git clone https://github.com/alibaba/EasyNLP.git
$ cd EasyNLP
$ python setup.py install
it failed because:

Thank you first for your issue, the namespace of args has no attribute 'use_torchxla', the correct attribute is 'use_torchacc'. The commit to fix this bug has been submitted.

This issue can be solved by this pr: https://github.com/alibaba/EasyNLP/pull/81


Add support for page breaks

Coverage increased (+0.08%) to 91.458% when pulling 5d0df8fa8665bd30aab0990db1762e5c1c07be55 on cascer1:feature/page-breaks into d712b615d1b77534c2338c2c645143e49b87a483 on Swagger2Markup:master.


itest: btcd backend logs not complete

Because btcd uses logrotate, when the log file size exceeds 10MB, it's compressed and saved as a .gz file, as shown in this line.
On the other hand, in the itest, only the uncompressed logs are saved, as shown in this line.
Debugging itest will sometimes need all the logs.
The logrorate settings should be configured for lnd nodes too, using --maxlogfiles=0 to disable log rotation when running integration tests.

I'll take this one.

I'll wait for #4617 to be merged.

For the second part of the problem we need to access this function in btcsuite/btcd...
https://github.com/btcsuite/btcd/blob/2d7825cf709fc6ac15921cecfd4d62ec78ccbba2/log.go#L118
I'll leave it for now.


Authorino env vars and command-line flags

Refactor names of the constants that hold env var names, for consistency
Add spec.deepMetricsEnabled: bool -> DEEP_METRICS_ENABLED
Add spec.listener.timeout: int -> TIMEOUT
General refactoring of the usage the env var refs (impl and tests), for consistency
Add spec.metrics.port ~> --metrics-addr=:port
spec.deepMetricsEnabled -> spec.metrics.deep
Set --enable-leader-election when spec.replicas > 1

Verification steps
kind create cluster --name authorino
make docker-build OPERATOR_IMAGE=authorino-operator:local
kind load docker-image authorino-operator:local --name authorino
kubectl create namespace authorino-operator
make install deploy OPERATOR_IMAGE=authorino-operator:local

# defaults
kubectl apply -f -<<EOF
apiVersion: operator.authorino.kuadrant.io/v1beta1
kind: Authorino
metadata:
  name: authorino
spec:
  listener:
    tls:
      enabled: false
  oidcServer:
    tls:
      enabled: false
EOF

# metrics
kubectl apply -f -<<EOF
apiVersion: operator.authorino.kuadrant.io/v1beta1
kind: Authorino
metadata:
  name: authorino
spec:
  listener:
    tls:
      enabled: false
  oidcServer:
    tls:
      enabled: false
  metrics:
    port: 5000
    deep: true
EOF

# leader election and authz timeout
kubectl apply -f -<<EOF
apiVersion: operator.authorino.kuadrant.io/v1beta1
kind: Authorino
metadata:
  name: authorino
spec:
  replicas: 2
  listener:
    tls:
      enabled: false
    timeout: 500
  oidcServer:
    tls:
      enabled: false
  metrics:
    port: 5000
    deep: true
EOF

Question, for curiosity. I get that multiple replicas can be used to scale horizontally for the gRPC (and recent HTTP auth endpoints). But how does the leader election work? I mean, N replicas are getting events on changes in authConfigs? IF so, what is the meaning of leader election. i.e., what can the leader do that others cannot do?

Thanks for the explanation, fair enough


Question: what is the preferred why to trigger a popup

Question: what is the preferred why (SEO wise) to trigger a popup if I cannot use buttons (design issue)?
I need this for site crawlers to crawl our modal content which contains important info.
Any thoughts?
Best.

Hi,
I'm not sure if I understand your question, but you don't need a button, you can show/hide modal in any event. Your app should know the best way to do this.
Best


Drag and Drop Error

When i try to drag the Blank-Grabber-main file to file explorer, an error shows up. Ive tried drag and drop on 3 different compressor applications and all have the same error.

Whats the error? I don't think its an error will the grabber but I can help.

Whats the error? I don't think its an error will the grabber but I can help. But first make sure your antivirus is off.

What application did you use to transfer the files over from?

its fixed


Changes the name of struct s2n_kem_keypair -> s2n_kem_params

Please note that while we are transitioning from travis-ci to AWS CodeBuild, some tests are run on each platform. Non-AWS contributors will temporarily be unable to see CodeBuild results. We apologize for the inconvenience.
Issue # (if available):
Description of changes:
Straightforward naming refactor:

struct s2n_kem_keypair -> struct s2n_kem_params
s2n_kem_params.negotiated_kem -> s2n_kem_params.kem

These changes are being made to logically accommodate future additions for PQ-TLS 1.3. In particular, the struct will augmented to store the shared secret (thus params makes more sense than keypair), and the associated KEM may not necessarily be the final KEM that gets negotiated in the handshake.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #1885 into master will decrease coverage by 0.00%.
The diff coverage is 97.72%.

@@            Coverage Diff             @@
##           master    #1885      +/-   ##
==========================================
- Coverage   81.43%   81.42%   -0.01%
==========================================
  Files         229      229
  Lines       16979    17011      +32
==========================================
+ Hits        13826    13851      +25
- Misses       3153     3160       +7


Fix 'check.yaml', fix #26

Dear GenoCAE maintainer, hi @kausmees,
Thanks for GenoCAE and I am happy that continuous integration is enabled to show off its quality!
Currently, however, the build fails, which I reported at #26, due to changes upstream. Here is the fix for that! I did not add anything new to the check.yaml script, just made it to work with a minimal amount of changes.
Cheers, Richek

Hey
Thanks for this update, I appreciate your maintenance of the continuous integration functionality.
Cheers,
K


XPATH not found

It's not because xpath is not found, the problem was that there was no video links text file where you write the liked streams

Fixed on commit 08c27f521d07193c7e31fcc46461ec46a4cb0ed2


Easier/cleaner way to write tree-sitter grammar

Describe the feature
Here https://mingodad.github.io/lua-wasm-playground/ there is an easier/cleaner way to write tree-sitter grammars like V (select Tree-sitter-ebnf-generator-V from Examples then click Run to see a full commented out grammar.js from the EBNF variant describng the grammar in  Input Text (arg[1])).
I hope it can be helpful !
Use Case
Less work and better communication of the intent.
Other Information
No response

Unfortunately, this repo has been archived for three years.
https://github.com/eatkins/tree-sitter-ebnf-generator
While it may serve us to tweak the grammar once-a-while, for a long-running and continuous development like V, we need a sustainable and well supported toolchain in order to rely upon the solutions

The code isn't big and I already did several fixes to it but a real parser would be better.
It for sure proved the point that having a declarative way to describe grammars is superior in my opinion.

In the long term, we should ditch tree-sitter completely, and use pure V imho.
Because of Tree Sitter, this project uses V, C, and JS, and the relationships between them are unclear and easy to forget.
It also uses a git submodule for tree-sitter, an improvement over the previous state, where you had to clone its repo separately and then keep it synchronized manually. However, it still complicates daily operations and requires a separate build process.
From a maintenance point of view, it would have been much simpler to use a single language for all of it.

I do not see how adding Lua to the mix will simplify things.

The simplification is on the grammar used to write a tree-sitter grammar the fact that the one pointed here is implemented in Lua is a implementation detail.


AUTHORS missing and/or incomplete

The CONTRIBUTING.rst file references AUTHORS, which currently does not exist.
Before a release:

It should be populated with an initial set of authors, or
The reference should be removed (see also release-proc.rst )

If the issue tagged by @ozgesurer above is resolved, then this one can be too


🐛 Add a requeue when getting a conflict on object update

What this PR does / why we need it:
This PR re-queues when hitting a conflict error when trying to update and object, or when an already exists error happens on object creation
Which issue(s) this PR fixes:
Fixes #15

/cc @kashifest
/cc @fmuyassarov

/test-integration

/test-integration

/lgtm


Please document the default build tasks and their order

The default build tasks and their order result from https://github.com/SAP/ui5-builder/blob/master/lib/tasks/taskRepository.js in combination with https://github.com/SAP/ui5-builder/blob/master/lib/builder/builder.js and e.g. https://github.com/SAP/ui5-builder/blob/master/lib/types/library/LibraryBuilder.js.
IMHO the default build tasks and their order should be documented somewhere. Currently they can only deduced by examining these files.

Thanks for reporting, we should definitely provide such a documentation


Dependency of symfony/polyfill-intl-idn#1.17.0 requires PHP 7.1

Guzzle version(s) affected: 6.5.5
PHP version: 5.6.40
cURL version: 7.64.1
Description
Any project that requires PHP ~5.6 can't use guzzle ~6.5 because symfony/polyfill-intl-idn uses a ??.
Parse error: syntax error, unexpected '?' in [code]/vendor/symfony/polyfill-php72/Php72.php on line 185

How to reproduce
{
    "require": {
        "guzzlehttp/guzzle": "~6.5",
    },
}

Possible Solution
Change dependency of symfony/polyfill-intl-idn to something else.
Additional context
This started happening recently. The requirements listed in the composer.json of guzzle 6.5.5 state PHP 5.5 is supported, but symfony/polyfill-intl-idn#1.17.0 requires PHP >=7.1.

You can use an older version of the poyfill.

Guzzle 6 does not work with PHP 5.6 because of this dependency. Symfony changed a file on 5/27 @ https://github.com/symfony/polyfill-php72/commit/9a142215a36a3888e30d0a9eeea9766764e96976#diff-0193b3f4f802075c7bbf313d5fb8afcb4adbc6b27c13e69387f4c79aaa76f08d which kills the polyfill.
I know this isn't guzzle's fault per se, it's theirs, but you're requiring it. I don't see how PHP 5.6 would survive a ?? (it can't).

With PHP 5.6 if you do this and absolutely nothing else, you'll get a parse error.
composer.json
{
    "require": {
        "guzzlehttp/guzzle": "~6.5"
    }
}

index.php
require dirname(dirname($_SERVER['SCRIPT_FILENAME'])) . '/vendor/autoload.php';

graham@Grahams-MacBook-Pro  /tmp/guzzle  cat composer.json
{
    "require": {
        "guzzlehttp/guzzle": "~6.5"
    }
}

 graham@Grahams-MacBook-Pro  /tmp/guzzle  composer56 update
Loading composer repositories with package information
Updating dependencies
Lock file operations: 10 installs, 0 updates, 0 removals
  - Locking guzzlehttp/guzzle (6.5.5)
  - Locking guzzlehttp/promises (1.4.1)
  - Locking guzzlehttp/psr7 (1.8.2)
  - Locking paragonie/random_compat (v2.0.20)
  - Locking psr/http-message (1.0.1)
  - Locking ralouphie/getallheaders (3.0.3)
  - Locking symfony/polyfill-intl-idn (v1.19.0)
  - Locking symfony/polyfill-intl-normalizer (v1.19.0)
  - Locking symfony/polyfill-php70 (v1.19.0)
  - Locking symfony/polyfill-php72 (v1.19.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 10 installs, 0 updates, 0 removals
  - Downloading symfony/polyfill-php72 (v1.19.0)
  - Downloading paragonie/random_compat (v2.0.20)
  - Downloading symfony/polyfill-php70 (v1.19.0)
  - Downloading symfony/polyfill-intl-normalizer (v1.19.0)
  - Downloading symfony/polyfill-intl-idn (v1.19.0)
  - Downloading guzzlehttp/guzzle (6.5.5)
  - Installing symfony/polyfill-php72 (v1.19.0): Extracting archive
  - Installing paragonie/random_compat (v2.0.20): Extracting archive
  - Installing symfony/polyfill-php70 (v1.19.0): Extracting archive
  - Installing symfony/polyfill-intl-normalizer (v1.19.0): Extracting archive
  - Installing symfony/polyfill-intl-idn (v1.19.0): Extracting archive
  - Installing ralouphie/getallheaders (3.0.3): Extracting archive
  - Installing psr/http-message (1.0.1): Extracting archive
  - Installing guzzlehttp/psr7 (1.8.2): Extracting archive
  - Installing guzzlehttp/promises (1.4.1): Extracting archive
  - Installing guzzlehttp/guzzle (6.5.5): Extracting archive
3 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
4 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

As you can see, the PHP 5.6 compatable version of the poylfil is loaded...

symfony/polyfill-intl-idn#1.17.0 requires PHP >=7.1.

No it doesn't: https://packagist.org/packages/symfony/polyfill-intl-idn#v1.17.0.

You're right, 1.17.0 doesn't require 7. When I composer update however I get the following, it installs 1.23.0.
➜  app git:(master) ✗ cat composer.json
{
    "require": {
        "guzzlehttp/guzzle": "~6.5"
    }
}
➜  app git:(master) ✗ composer update
Loading composer repositories with package information
Updating dependencies
Lock file operations: 8 installs, 0 updates, 0 removals
  - Locking guzzlehttp/guzzle (6.5.5)
  - Locking guzzlehttp/promises (1.4.1)
  - Locking guzzlehttp/psr7 (1.8.2)
  - Locking psr/http-message (1.0.1)
  - Locking ralouphie/getallheaders (3.0.3)
  - Locking symfony/polyfill-intl-idn (v1.23.0)
  - Locking symfony/polyfill-intl-normalizer (v1.23.0)
  - Locking symfony/polyfill-php72 (v1.23.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 8 installs, 0 updates, 0 removals
  - Installing symfony/polyfill-php72 (v1.23.0): Extracting archive
  - Installing symfony/polyfill-intl-normalizer (v1.23.0): Extracting archive
  - Installing symfony/polyfill-intl-idn (v1.23.0): Extracting archive
  - Installing ralouphie/getallheaders (3.0.3): Extracting archive
  - Installing psr/http-message (1.0.1): Extracting archive
  - Installing guzzlehttp/psr7 (1.8.2): Extracting archive
  - Installing guzzlehttp/promises (1.4.1): Extracting archive
  - Installing guzzlehttp/guzzle (6.5.5): Extracting archive
4 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
3 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

Probably because you are not running composer using PHP 5.6. Composer won't try and install PHP 5.6 compatable dependencies unless you tell it to in config or have 5.6 as your actual runtime version.
"config": {
    "platform": {
        "php": "5.6.40"
    }
},

Thanks that was it. Our ci server always uses 7 which is why this was a strange thing to track down. I appreciate your help triaging this.


Rules to deal with state (transition) failures

Implement rules to deal with state (transition) failures, i.e.

a (sub-)system or node is not in its intended state/mode
transition of a (sub-)system or node fails

This will probably go into the mode-manager as well. We just had the idea that behavior trees might be a good way to model these rules.

Merged to dev, marked as experimental in the documentation.


Navigation using get_simple_path ignores partially open tiles ; "Condition !nm.linked is true"

Operating system or device - Godot version:
Windows 10 / GD 2.1.2
Issue description:
Pathfinding using Navigation2D with a child TileMap whose tiles contain NavigationPolygons+Instances:
When invoking get_simple_path from the character (RigidBody2D > AnimationPlayer, 2 Sprite layers, CollisionShape2D, RayCast2D), any tiles which are not fully open are ignored. EG: In a build where stair tile NavPolygons did not include the leftmost and rightmost pixels (x of -8 or 8, leaving a 14 x 16 px NavPoly), function returned an empty path. Still happens with left/right and top/bottom bordered tiles, which use similar NavPolygons.
My project uses 16x16 map tiles and a 16x16 character. Shrinking the character sprites to below 14x14 did not solve the issue.
Possibly related is this error, which appears in the log/terminal when the function fires:
"ERROR: Navigation2D::_navpoly_unlink: Condition ' !nm.linked ' is true.
At: scene\2d\navigation2d.cpp:147"
Additional Information:
Both the character sprites and tilemap are set to scale 2x2, though the issue still occurred at 1x1. Tiles also contain StaticBody2D and CollisionPolygon2D to prevent accidentally crossing over navigation boundaries and allow physics interactions. As get_simple_path produces some less-than-efficient paths when there are no obstacles, I'm using the RayCast to check for collisions to target and just setting the path to the target point if there aren't any. Oddly enough, since I'm creating the Nav and Collision polygons programmatically  in a tool script, they don't actually appear in the scene graph.)

I think Navigation2D expects you to map the walkable area, rather than the unwalkable area (though this might change in later versions).

If you look at the screencap, I did that - the green (walkable) areas are navigation polygons, and the red/other colors are collision polygons.

@niodyn Ouch, sorry, I assumed the opposite...

The polygon points have to match for the connectiin to happen. I was
thinking maybe this could be improved to detect edge overlaps instead
On Feb 6, 2017 13:59, "Bojidar Marinov"<EMAIL_ADDRESS>wrote:

@niodyn https://github.com/niodyn Ouch, sorry, I assumed the opposite...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/7732#issuecomment-277743888,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF-Z29808tw24WNyvi0fwto_-dqtBsD7ks5rZ1FzgaJpZM4L3pmR
.

@reduz Ahh, I see. That's counter-intuitive, but certainly something I can work around. Yes, I think edge overlaps would make more sense to most people. Any ideas about the !nm.linked message, is it directly related to the edges not matching up?

@niodyn It comes from scene/2d/navigation2d.cpp:147. I guess it happens when a navpoly has absolutely no common points with the rest of the tree, or something like that.

Hmm... Is it really necessary to constantly output it as an error, then? It bogs down my game and floods the debugger...

Is there a way to suppress certain errors?

First of all thank you for your report and sorry for the delay.
We released Godot 3.0 in January 2018 after 18 months of work, fixing many old issues either directly, or by obsoleting/replacing the features they were referring to.
We still have hundreds of issues whose relevance/reproducibility needs to be checked against the current stable version, and that's where you can help us.
Could you check if the issue that you described initially is still relevant/reproducible in Godot 3.0 or any newer version, and comment about its current status here?
For bug reports, please also make sure that the issue contains detailed steps to reproduce the bug and, if possible, a zipped project that can be used to reproduce it right away. This greatly speeds up debugging and bugfixing tasks for our contributors.
Our Bugsquad will review this issue more in-depth in 15 days, and potentially close it if its relevance could not be confirmed.
Thanks in advance.
Note: This message is being copy-pasted to many "stale" issues (90+ days without activity). It might happen that it is not meaningful for this specific issue or appears oblivious of the issue's context, if so please comment to notify the Bugsquad about it.

Our Bugsquad will review this issue more in-depth in 15 days, and potentially close it if its relevance could not be confirmed.

As there was no update since the previous post, we close this issue.
If it is still relevant in the way it was described and discussed above, please comment to ask for it to be reevaluated. If it is only partly relevant, or if the original issue has changed, it would be better to open a new issue (potentially referring to this one) focused on the current state.


Release cobigen-javaplugin-v2.2.2

This issue has been automatically created. It serves as a container for all release related commits

Automatically processed.
The decisions taken by the developer and the context of the decisions throughout the script:

User confirmed that tests are running on CI and the build is not failing.
User has accepted to continue when found that some files were outside of build folder name


narcissus 0.0.1

Type: Missing
Summary:
narcissus 0.0.1
Details:
ClearlyDefined license states:
This software is available under your choice of the following licenses:

MPL 1.1 or later: http://www.mozilla.org/MPL/
GPL 2.0 or later: http://www.gnu.org/licenses/gpl.html
LGPL 2.1 or later: http://www.gnu.org/licenses/lgpl.html
NPM: NONE

Resolution:
MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later
Affected definitions:

narcissus 0.0.1

@nellshamrell Can you merge this one?


Is future_egopose necessary for inference?

Thanks for your great work. I have a little question about future ego pose during inference? I may find a little tricky because flow prediction is a module before motion planning. In real cases, the flow prediction module has no chance of getting future ego pose. But the code may show future ego pose is irreplacable in inference. When I turn to None, the inference doesn't work.

I have understood the receptive field in the model, then info from future has been masked. No problems.

Hy synsin0, can u explain in detail about this future_ego_motion ? i am also having lot of confusion about this !

future_egomotion is used to warp the past features to the present's reference frame, see https://github.com/wayveai/fiery/blob/master/fiery/models/fiery.py#L143


Only the last 50 shots are showing

Describe the bug
My 51st and 52nd shot is not showing on my shots page on visualizer.coffee.  The plugin settings page on the DE1 did indicate that it has been uploading shots
To Reproduce
Steps to reproduce the behavior:

Pull a shot on the DE1
Go to https://visualizer.coffee/shots
No shots after my 50th are visible

Expected behaviour
All shots within the past month should be visible on the free tier (at least that was my understanding of the page). If this 50 shot limit is expected, it would be nice if it was documented somewhere.

The shots are showing up now. There must have just been a delay in processing them.


Sentry reporting undefined data

https://sentry.io/organizations/gooddollar/issues/1470208715/?environment=staging&project=1829798&referrer=alert_email
if you scroll to the bottom only context {"from": "emailconfirmation"} has value, error and message are undefined

@sirpy @AlexeyKosinski
Solution:
first of all, we need to remove undefined values from logging- so I will check all values passed to the log object to not contain undefined values.
Need to fix the main logMessage to avoid such log titles: ([ object: Object ]).
Currently, we pass message like this:
Sentry.captureException(new Error(errorMsg))

but the 'errorMsg' could be an object what causes the main message to be like [object: Object], so we can change it like this:
if (typeof errorMsg === 'object') {
  Sentry.captureException(new Error(errorMsg.message || JSON.stringify(errorMsg)))
} else {
  Sentry.captureException(new Error(errorMsg))
}

Also, I will add 'logMessage' object to the extra data to not miss any valuable information.
What do you think?

@yaroslav-fedyshyn-nordwhale

there's no problem passing undefined no need to clean
the question is if the log call  {"from": "emailconfirmation"} matches our logging convention format
because if it is it should be logged correctly
so either we are not using logging convention or in sentry logging code we are not handling logging convention correctly

@sirpy I see. Yes, the error logging in the EmailVerification component didn't match our convention. So I will fix it and check other error loggers to match our convention

Checked on the QA and eWallet environment.
The issue isn't reproduced. As I can see in console and Network tabs there is no [object object] in request.


Issue #97: Switch from Ant to Maven

For whatever reason, it is fixing issue #97

I don't understand how this fixes anything, but if it works, that's good enough for me. I should have moved to mvn a long time ago anyway.


Taskbar at bottom is above invisible other bar

I use LineageOS 21 (Android 14) on my Samsung Tab S5e (SM-T720) Tablet and like to use taskbar on second screen in desktop mode.
Desktop Mode is enabled in development options.
If I connect the tablet to display, the taskbar appears on connected monitor, but the taskbar floats above the bottom edge.
Found out there is an invisible bar with two invisible buttons. If  I click (and hold button) to the position in picture, the button gets visible. The second invisible button is at the left site

How I can get the taskbar at the bottom edge?
The Issue I had already on this device with  LineageOS 20 (Android 13)

Interesting, didnt think there was an invisible bar, but it seems like this is the case.


Upgrade project structure and update native trackers to version 5 (close #199)

In addition to upgrading the native trackers to v5, this PR brings bigger changes in the project which are aimed to make it easier to maintain it in the future.
Project structure
I ran into a series of problems when trying to update the project and demo app dependencies which ultimately made me choose to recreate the project from a blank template (using create-react-native-library scaffold).
I decided to do that because the way that we built the demo apps before was quite fragile. First, we built the main project using npm and the demo apps using yarn. The demo apps included the main project using a file:.. reference which copied the whole node_modules from the parent project that we then had to fix in a postinstall hook.
Instead, the new structure uses yarn for the whole project. All the build commands are executed from the top level (root folder) without switching into the example app sub-folder. In case one wants to execute a script that is defined in the example project (e.g., android to start the app on Android emulator), they can still do it like this:
yarn example android

I think that this simplifies the project and will make it easier to maintain and update in the future. There are also various other improvements that make it easier to work with the project such running yarn also installs the pods.
Translated Objective-C to Swift and Java to Kotlin
The second reason why I thought it's better to recreate the project is that this allowed me to adopt Swift and Kotlin (instead of Objective-C and Java) for the native code. Since the native trackers version 5 also transition to Swift and Kotlin, I thought it'd be better to make the change here too. This should also make it much easier to maintain the project and add new features.
Removed TV demo app
Another change aimed to improve the maintainability was to remove the TV demo app from the project. The TV demo app was exactly the same code as the other demo, it just had a different target to run on tvOS and Android TV. Having the same project duplicated twice was a burden for us to maintain, keep the dependencies up to date in both places and test. I don't think it provided enough value for us to justify it. We may decide to put the TV demo app in a separate repository with other examples (similar like we do for the JavaScript tracker).
Upgraded mobile native trackers to version 5
Finally, this PR upgrades the underlying native trackers to version 5, addressing issue #199.
One side-effect of upgrading to version 5 is that now it is necessary for users to add FMDB to their ios/Podfile file (unless using Expo Go). They will basically need to add this line to the file:
pod 'FMDB', :modular_headers => true

The reason for it is that the new iOS tracker is pure Swift and pure Swift projects in CocoaPods require that all dependencies have modular imports. However, the iOS tracker itself can't make define that, so we need to do it in the user app. I will make sure to document this in the install guide.
Reviewing
I appreciate that this is a huge change across many files that is almost impossible to review thoroughly. I tagged multiple reviewers because I thought it might be better to have more people do a light review to make it more likely to spot any problems. Thanks and please let me know if there is any way I can help with making it easier to review!

Thanks a lot @mscwilson!
Regarding the missing foreground event, I think that is a problem with the underlying iOS tracker. I know it does not happen in the iOS tracker demo app, but my guess is that's just a coincidence. Everything that is relevant to the foreground/background event tracking is handled by the iOS tracker. I could reproduce what happens in the iOS tracker and have created a task for it there including a hypothesis that I have: https://github.com/snowplow/snowplow-ios-tracker/issues/818
The userId is not null like the previousSessionId during anonymous tracking because it doesn't accept null in the schema. Otherwise we would make both null, I think that makes more sense than a 0-filled UUID.
I don't know where the difference in casing in the UUIDs is coming from, but that is just a visual difference because UUID is case insensitive.


Auto size all columns not work as expected

The current implementation of the columns_auto_size_mode=ColumnsAutoSizeMode.FIT_CONTENTS feature may not be working as expected. It seems that only some columns are properly sized and that you need to click the "Autosize Columns" button once to ensure that all columns are sized correctly.

Could this be related to auto sizing limitations due to virtualization?
https://www.ag-grid.com/javascript-data-grid/column-sizing/#auto-size-columns

Wait your new release, thank you for your help.


Access to Test Method parameters from TestCleanup.

Description
I have test method hooked up to a data source attribute that is passing to a parameter an object that needs to be disposed at the end of the test.  Consequently, I would like to have another function in the ITestDataSource interface that gives me back the object array that was just passed to the test function so that I can handle any objects in it that need to be disposed of.
Steps to reproduce
Here is a rough example.
This is an overridden data source attribute creating the object for the test, and using the object type in its display name:
public class ComplexTestAttribute : Attribute, ITestDataSource
{
    public IEnumerable<object[]> GetData(MethodInfo methodInfo)
    {
        for(int i = 0; i < 3; i++)
            yield return new object[1] { new ComplexObject(i) };
        }
    }

    public string GetDisplayName(MethodInfo methodInfo, object[] data)
    {
        if (data != null)
        {
            return string.Format(CultureInfo.CurrentCulture, "{0} ({1})", methodInfo.Name, data[0].GetType().Name);
        }
        return string.Format(CultureInfo.CurrentCulture, "{0} ({1})", methodInfo.Name, "Unknown driver");
    }

    //Theoretical cleanup function.
    public void TestCleanup(object[] data, TestContext testContext)
    {
        ComplexObject obj =  (ComplexObject)data[0];
        if(testContext.CurrentTestOutcome == UnitTestOutcome.Failed)
        {
            obj.HandleError();
        }
        obj.Dispose();
    }
}

And here is the test class that uses it:
[TestClass]
class myClass
{
    [ComplexTest]
    [TestMethod]
    void myTest(ComplexObject obj)
    {
        obj.RunTest();
    }
}

Expected behavior
It would be good to have a TestCleanup function in the ITestDataSource interface that takes the latest test record data AND the test context of the test.  This way any cleanup or other follow up logic could happen within the test thread.
Actual behavior
Right now, I have the ITestDataSource class as a subclass of my test class, so that it can call a function with access to the TestContext object.  However, since I have no access to the actual TestContext, or even to the test class instance that ran the object, I have to make my underlying TestContext object static, which is clearly not thread safe, and thus not conducive to parallelization.
Environment
Using Windows 10,
MSTest.TestFramework:  version 1.2.0

Wrong project.

Thought I had the wrong project for a minute there.

Here's an idea.  Perhaps some sort of CleanupData function added to the ITestDataSource interface would be good.  It could return void and have merely the same object[] parameter that is given to the GetDisplayName function, which should be guaranteed to contain the same object array that was passed to the test method using the data source attribute.

Last night I figured out a way to access the specific object after the test, although it is clearly a hack.  Through setting breakpoints, I found that the GetDisplayName function gets run after the test does.  Since it is given access to the object that just ran, I can use it to dispose of the object.  I would be good to have a function specifically dedicated to this type of use, though.

I have updated the request to reflect my new idea, plus added the idea of a special TestContext parameter to give more versatility within the test case's thread.


WIP --- feat(browser): chain promises in browser.get

Part of angular#3904

Looking at the log for the test failure, it's not the alert timeout issue. It looks like disabling synchronization in get() when using blocking proxy is broken.

Since it appears to be only the browser.get chaining that's causing problems, I've split everything else into a separate PR: https://github.com/angular/protractor/pull/4021

Looking through the tcpdump from the earlier failure, and it looks like bp.setSynchronization(true) is getting called before addBaseMockModules. BP then runs the wait script, which fails because angular isn't on the page. Not totally sure what's going on, but it is looking like there was some kind of ordering issue earlier.

@mgiambalvo @juliemr it appears the problem was solved by rebasing, whatever it was


Opt: aggressive code elimination removes too much

In the attached archive test.spv has  this condition:
     ....
         %40 = OpIEqual %bool %37 %uint_0
               OpSelectionMerge %if_merge None
               OpBranchConditional %40 %if_true %if_merge
    %if_true = OpLabel
         %43 = OpAccessChain %_ptr_Function_uint %group_id %int_0
         %44 = OpLoad %uint %43
         %46 = OpAccessChain %_ptr_Uniform_uint %buffer %int_0 %44
         %47 = OpLoad %uint %46
         %48 = OpBitcast %int %47
               OpStore %offset %48
               OpBranch %if_merge
      ....

After applying spirv-opt with -O that condition was removed (test-optimized.spv).
Also if I replace -O with -Oconfig with all options from -O except  --eliminate-dead-code-aggressive then conditional branch is not eliminated (test-optimized-non-aggressive.spv).
The above was tested with the latest master-tot binaries (SPIRV-Tools v2018.5-dev a3e3869540b7c2d2f01c846fc76453be55d1ac34). The same result if using VulkanSDK <IP_ADDRESS> or when I compile original shader with the latest DXC with -O3.
Old versions of spirv-opt did not expose this issue. The version that works well for us is the one that is used with DXC compiler with revision 524ffe2fda4ca5b2fcc271305681013fb2e61ba3 (it's relatively old, May 14, 2018). After that DXC compiler was updated to newer spirv-tools and starting from revision d849dc2b8672cf7e8527923b5b92f5875a3d60e2 (May 16, 2018) it exposes this optimization bug.
report.zip

Thanks. Looking at it now...

Suspecting spirv-tools 9ec3f81e5c5de63b864c1d568ee9b125dffc3367

Confirmed. Suspecting AtomicIAdd (and other atomics) not being treated as loads.

Took a quick look.  I agree.

This fixes the issue. Thanks.


easy.h should be in <curl-dir>/include/curl/

Output
# WARNING: curl extension might be required for fetching data.
===> phpbrew will now build 7.1.3
===> Loading and resolving variants...
Checking distribution checksum...
Checksum matched: 1306085cf74ba682dbcbfb4dff67b650
===> Distribution file was successfully extracted, skipping...
Found existing Makefile, running make clean to ensure everything will be rebuilt.
You can append --no-clean option after the install command if you don't want to rebuild.
===> Running make clean: /usr/bin/make -C '/home/max/.phpbrew/build/php-7.1.3' --quiet 'clean'
===> Checking patches...
Checking patch for replace apache php module name with custom version name
Found existing build.log, renaming it to /home/max/.phpbrew/build/php-7.1.3/build.log.1492332124
===> Configuring 7.1.3...

Use tail command to see what's going on:
   $ tail -F /home/max/.phpbrew/build/php-7.1.3/build.log

Error: Configure failed:
The last 5 lines in the log file:
checking whether to enable ctype functions... yes

checking for cURL support... yes

checking for cURL in default path... not found

configure: error: Please reinstall the libcurl distribution -

    easy.h should be in <curl-dir>/include/curl/

Please checkout the build log file for more details:
	 tail /home/max/.phpbrew/build/php-7.1.3/build.log

Expected Result
php-7.1.3 installed
Command
phpbrew install php-7.1.3 +dbs +mb +default
Build Log
https://gist.github.com/MaxHogervorst/1108ae9ce1a4d4a39d1f8bdd29dbb59e

Platform
OS:
Ubuntu 17.04
Running PHP:  7.1.0
Installing PHP: 7.1.3
This happens with anyversion i try
i've tried installing sudo apt-get install libcurl4-gnutls-dev and all the other versions of libcurl4

Getting the same issue after updating to Ubuntu 17.04. Looks like curl is located now in /usr/include/x86_64-linux-gnu/curl. As a temporary solution I symlinked the file:
cd /usr/include
sudo ln -s x86_64-linux-gnu/curl curl

workaround -> uninstall all libcurl libs like libcurl4-gnutls-dev
phpbrew install php-7.1.3 +dbs +mb +default
and then install libcurl again

Looks like the proper place to fix it is PHP itself: https://bugs.php.net/bug.php?id=74125.

me too

Fix

sudo ln -s /usr/include/x86_64-linux-gnu/curl curl
sudo apt-get install libcurl4-gnutls-dev

You can include the curl path with +curl=/path/to/libcurl/installation
The following has solved the problem for me on OSX after installing curl with brew
phpbrew install 7.1.7 +curl=/usr/local/opt/curl

#74125 is fixed in PHP 7.2. Anyone wants to verify the fix?

@timucingelici's workaround didn't work for me on Ubuntu 17.10:
$ phpbrew install 5.4.45 +curl=/usr/include/x86_64-linux-gnu/curl

...
Error: Configure failed:
The last 5 lines in the log file:
checking for cURL support... yes
checking if we should use cURL for url streams... no
checking for cURL in default path... not found
configure: error: Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/

$ ls -l /usr/include/x86_64-linux-gnu/curl/easy.h

-rw-r--r-- 1 root root 3.4K nov 28 10:59 /usr/include/x86_64-linux-gnu/curl/easy.h

First, I just want to say, I'm still kinda new here as where I'm sure most of you have been here much longer, but the more i use GitHub to fill in the gaps, the more I appreciate it. As it was pointed out here to us... Canonical - pulled a fast one on us when they moved the Curl Directory.  Thank you Oxicode for post commented on Jun 21, 2017 - your symbolic link got me past the Curl Hurtle.  However now i have another error...
------------------------------  THIS   ---------------------------------------------------------
checking for xml2-config path... (cached) /usr/bin/xml2-config
checking whether libxml build works... (cached) yes
checking for XSL support... yes
checking for EXSLT support... found
checking for zip archive read/writesupport... yes
checking pcre install prefix... no
checking libzip... no
checking for the location of zlib... configure: error: zip support requires ZLIB. Use --with-zlib-dir= to specify prefix where ZLIB include and library are located

Solved:
sudo apt-get install libcurl4-openssl-dev

Didn't work for me

^ the same

I've solved by https://github.com/phpbrew/phpbrew/issues/925#issuecomment-343151508

On Ubuntu bionic 18.04 LTS, install php 5.6 I got the following error:
configure: error: Please reinstall the libcurl distribution -

    easy.h should be in <curl-dir>/include/curl/

To fix it, I installed libcurl4-openssl-dev and symlinked the directory that contains curl headers:
/usr/local/include$ sudo ln -s /usr/include/x86_64-linux-gnu/curl/

Then I installed php 5.6 with the following command:
phpbrew install 5.6 +curl

Fix

cd /usr/local/include sudo ln -s /usr/include/x86_64-linux-gnu/curl curl
sudo apt-get install libcurl4-gnutls-dev

nice ,you help me solve the same problem.

I think several of these "solutions" solve this for newer PHP versions, but not for older PHP versions being built on reasonably recent Debian/Ubuntu. For example, none of them seem to solve the problem to allow building php5.4 on Debian Stretch.

I my case (MacOS Mojave), I had to use this to work with php 5.6.40:
phpbrew install --jobs=$(sysctl -n hw.ncpu) 5.6 \
    +default+mysql \
    +iconv="$(brew --prefix libiconv)" \
    +bz2="$(brew --prefix bzip2)" \
    +zlib="$(brew --prefix zlib)" \
    +curl="$(brew --prefix curl)"

phpbrew install --jobs=$(sysctl -n hw.ncpu) 5.6 \
    +default+mysql \
    +iconv="$(brew --prefix libiconv)" \
    +bz2="$(brew --prefix bzip2)" \
    +zlib="$(brew --prefix zlib)" \
    +curl="$(brew --prefix curl)"

@codeasashu  Exception: Variant "default+mysql" is not defined

Added a section to the troubleshooting guide: https://github.com/phpbrew/phpbrew/wiki/Troubleshooting#on-ubuntu-2004-easyh-should-be-in-curl-dirincludecurl
I used the fix by @mahagr and @Oxicode, which works fine on Ubuntu 20.04.

Fix
1. cd `/usr/local/include` `sudo ln -s /usr/include/x86_64-linux-gnu/curl curl`

2. `sudo apt-get install libcurl4-gnutls-dev`

this work for me on ubuntu 18.04 LTS


Device registration

I doing to tutorial on iOS SDK, registering a device on HCP.  Everything appears to be correct but I get a 503 - Service unavailable when I run the program  Where might I look for the problem?
Thanks

Hi @rosshigh ,
A 503 error might indicate a temporary outage of SAP Cloud Platform mobile services -- does the error still persists?

I tried it over the course of a week with the same result.  However, I just recreated everything from scratch and it worked!  Excellent, thank you for responding.

Issue may be closed

Thank you for your feedback. The issue seems to be resolved, so I am closing the issue.
If you still have questions, feel free to reopen the issue.


CLOUDP-212063: Fix flaky project updates and deletions

All Submissions:

[X] Have you signed our CLA?

duplicate of #1254


Add field to ProvVisConfig for node hover callbacks

Adds a new type, HoverCallback, and a field with type HoverCallback[] to ProvVisConfig to allow API users to take actions when nodes in the provenance visualization are hovered. Callbacks are provided the MouseEvent and the hovered node.
Persist needs this ASAP.

5/23/24 meeting decided this is no longer desired; either the related feature in Persist or this API.


Create a standard server feature interface for listing & configuring server prefixes and/or ports

Depends on https://github.com/aspnet/Hosting/issues/329
Once we have this then Hosting can use it to Console.WriteLine each address after IServerFactory.Start. See https://github.com/aspnet/Hosting/issues/328

Recomendation:
public interface IServerAddressesFeature
{
  IList<string> Addresses { get; }
}

Feels like we should break it into parts

We had a long discussion on that. The server may support a variety of formats, so only it can really break it into meaningful parts. e.g. http vs unix sockets vs named pipes, etc..
Note Add may have some normalization, like "8080" turning into "http://*:8080/".  Add may also throw if you give it unrecognized formats.

We also need to support the --port flag. Should that be another issue?

We had the idea today to directly support ports in server.uls. If you just provided an int then we would assume you meant http://*:port/ (or localhost?). The same goes for the IServerAddressesFeature.

From: David<EMAIL_ADDRESS>Sent: 9/10/2015 10:07 PM
To<EMAIL_ADDRESS>Cc: Chris<EMAIL_ADDRESS>Subject: Re: [Hosting] Create a standard server feature interface for listing & configuring server prefixes and/or ports (#331)
We also need to support the --port flag. Should that be another issue?

Reply to this email directly or view it on GitHub:
https://github.com/aspnet/Hosting/issues/331#issuecomment-139453437


Fix NetworkManager connection sharing

NetworkManager's connection sharing doesn't work for me on the current nixos-14.12 channel (8f11a84), partly because of bug #7593.  Here are the fixes I made to get it working again.  This allows NM to create networks in ad-hoc and access point modes.  I applied these patches on top of 8f11a84, successfully created ad-hoc and AP networks, and connected a Wii U to the AP network.  I haven't tested these patches against master because of the large build required (it's not convenient for me to do that right now).

CC @urkud as maintainer of NM and wpa_supplicant.

What has wpa_supplicant to do with CONFIG_AP? Is it wpa_supplicant actually sharing the connection?

Looks good to me.

CC @Phreedom, @wkennington as maintainers of NM and wpa_supplicant respectively.


Write a GO program to calculate simple interest

Description
Write a GO program to calculate simple interest
Simple interest = (principal amount * rate of interest * time) / 100
Principal : 1000
Rate      : 10
Time      : 5

Simple interest : 500

How to contribute

Save the solution in calculate_simple_interest.go file
Add calculate_simple_interest.go file in program/calculate-simple-interest folder

!assign


Fix incomplete paragraph about quotas

Replaced an incomplete paragraph regarding the quotas that Service Bus enforces, with a second instance of the link to the Service Bus Quotas Overview page.

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

@alexvy86 : Thanks for your contribution to the Azure documentation! The author, @sethmanheim, has been notified to review your proposed change.

@alexvy86 Hello and thanks for the catch! You are correct and we will get this merged right away. Again, thank you for the contribution. #sign-off


[reboot] Consider use margin-top rather than margin-bottom

The comments in _reboot.scss says

By default, <h1>-<h6> all receive top and bottom margins. We nuke the top
margin for easier control within type scales as it avoids margin collapsing.

This goal can also be achieved by using margin-top as long as it's consistent.
Besides, margin-top is much more intuitive and more useful for web layout.
For example: generally, an h2 element is the title of the following paragraphs, so we may want to distinguish it from its preceding contents, that means, we need a margin between a whatever tag and h2. And most of the time, we want this margin's height to be consistent. This cannot be achieved by only using margin-bottom.
Actually, medium.com has already adopted this idea for their article layout (as far as I can see, there's no margin-bottom for any major block on this page).

Besides, margin-top is much more intuitive and more useful for web layout.

I'd view that as more personal preference than anything else. When using typographic elements like headings in other instances, you might want no margin—top or bottom.
Thanks, but going to stick with margin-bottom for typography and ideally not setting any margin on other components whenever possible.


Uncaught ReferenceError: View360 is not defined

Description
Installation/setup of View360 using CDN (documentation) is not working.
Steps to check or reproduce

Paste this code into an HTML file:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8" />
    <link rel="stylesheet" href="https://naver.github.io/egjs-view360/release/latest/css/view360.min.css" />
</head>
<body>
    <div class="view360-container is-16by9">
        <canvas class="view360-canvas" />
    </div>

    <script src="https://naver.github.io/egjs-view360/release/latest/dist/view360.pkgd.js"></script>
    <script>
        const viewer = new View360("#viewer", {
            projection: new View360.EquirectProjection({
                src: "img.jpg",
                video: false
            })
        });
    </script>
</body>
</html>

Open the page in a browser and you should see an error in the console: Uncaught ReferenceError: View360 is not defined.

Hello @Ludus731.
It seems that https://naver.github.io/egjs-view360/release/latest/dist/view360.pkgd.js provides view360 v3, which is different from the documentation.
I think you can use https://naver.github.io/egjs-view360/release/4.0.0-beta.7/view360.pkgd.js instead.
We'll fix the incorrect part of the documentation soon.


rgw_hostname variable becomes empty

Bug Report
What happened:
After second (and several further) runs of playbook for deploying of my test Ceph cluster, I noticed that my radosgw section in ceph.conf became to look such way:
root@ceph-node-1:~# cat /etc/ceph/ceph.conf
[client.rgw.]
host =
keyring = /var/lib/ceph/radosgw/ceph-rgw./keyring
log file = /var/log/ceph/ceph-rgw-ceph-node-1.log
rgw frontends = civetweb port=<IP_ADDRESS>:80 num_threads=32

After first run, everything was fine.
Well, as far as I can see, new variable rgw_hostname is responsible for this - It becomes empty after two tasks in https://github.com/ceph/ceph-ansible/blob/master/roles/ceph-defaults/tasks/facts.yml#L228-L243.
Output of ansible-playbook with -vvv:
2018-08-26 00:00:25,413 p=17241 u=user |  TASK [ceph-defaults : set_fact rgw_hostname - fqdn] ******************************************************************************************************************************************************************************************
2018-08-26 00:00:25,414 p=17241 u=user |  task path: /home/user/ceph-ansible/roles/ceph-defaults/tasks/facts.yml:225
2018-08-26 00:00:25,414 p=17241 u=user |  Sunday 26 August 2018  00:00:25 +0700 (0:00:00.021)       0:00:12.385 *********
2018-08-26 00:00:25,500 p=17241 u=user |  ok: [ceph-node-1] => {
    "ansible_facts": {
        "rgw_hostname": ""
    },
    "changed": false,
    "failed": false
}
2018-08-26 00:00:25,506 p=17241 u=user |  TASK [ceph-defaults : set_fact rgw_hostname - no fqdn] ***************************************************************************************************************************************************************************************
2018-08-26 00:00:25,506 p=17241 u=user |  task path: /home/user/ceph-ansible/roles/ceph-defaults/tasks/facts.yml:235
2018-08-26 00:00:25,506 p=17241 u=user |  Sunday 26 August 2018  00:00:25 +0700 (0:00:00.092)       0:00:12.477 *********
2018-08-26 00:00:25,537 p=17241 u=user |  skipping: [ceph-node-1] => {
    "changed": false,
    "skip_reason": "Conditional result was False",
    "skipped": true
}

My group_vars:
[ceph-ansible]$ egrep -v '^$|^#' ./group_vars/*.yml
./group_vars/all.yml:---
./group_vars/all.yml:fetch_directory: ./ceph-cluster-data
./group_vars/all.yml:ceph_stable_release: luminous
./group_vars/all.yml:ceph_origin: repository
./group_vars/all.yml:ceph_repository: community
./group_vars/all.yml:mon_group_name: mons
./group_vars/all.yml:osd_group_name: osds
./group_vars/all.yml:rgw_group_name: rgws
./group_vars/all.yml:mgr_group_name: mgrs
./group_vars/all.yml:monitor_interface: ens4
./group_vars/all.yml:radosgw_interface: ens4
./group_vars/all.yml:ip_version: ipv4
./group_vars/all.yml:public_network: <IP_ADDRESS>/24
./group_vars/all.yml:cluster_network: <IP_ADDRESS>/24
./group_vars/all.yml:ntp_service_enabled: false
./group_vars/all.yml:osd_objectstore: bluestore
./group_vars/all.yml:radosgw_civetweb_port: 80
./group_vars/all.yml:radosgw_civetweb_num_threads: 32
./group_vars/all.yml:nfs_obj_gw: false
./group_vars/all.yml:ceph_iscsi_config_dev: false
./group_vars/all.yml:common_single_host_mode: true
./group_vars/all.yml:ceph_conf_overrides:
./group_vars/all.yml:  global:
./group_vars/all.yml:    mon_pg_warn_max_per_osd: 0
./group_vars/all.yml:    mon_allow_pool_delete: true
./group_vars/all.yml:    osd_pool_default_size: 1
./group_vars/all.yml:  mds:
./group_vars/all.yml:    mds_standby_replay: true
./group_vars/all.yml:  rgw:
./group_vars/all.yml:    rgw_dns_name: s3.domain.external
./group_vars/all.yml:    rgw_s3_auth_use_ldap: false
./group_vars/all.yml:    rgw_ldap_uri: ldaps://ad.domain.internal:636
./group_vars/mgrs.yml:---
./group_vars/mgrs.yml:ceph_mgr_modules: [status,dashboard,prometheus]
./group_vars/mons.yml:---
./group_vars/mons.yml:dummy:
./group_vars/osds.yml:---
./group_vars/osds.yml:osd_scenario: collocated
./group_vars/osds.yml:devices:
./group_vars/osds.yml:  - /dev/sdb
./group_vars/rgws.yml:---
./group_vars/rgws.yml:rgw_create_pools:
./group_vars/rgws.yml:  default.rgw.buckets.data:
./group_vars/rgws.yml:    pg_num: 16
./group_vars/rgws.yml:  default.rgw.buckets.index:
./group_vars/rgws.yml:    pg_num: 8

My inventory file:
ceph-ansible]$ cat inventory
[ceph-nodes]
ceph-node-1.domain.internal	ansible_user=user

[mons:children]
ceph-nodes

[osds:children]
ceph-nodes

[rgws:children]
ceph-nodes

[mgrs:children]
ceph-nodes

[mdss:children]
ceph-nodes

Environment:

OS: Fedora 28
Ansible version: 2.4.6
ceph-ansible version: v3.1.0
Ceph version: 12.2.7
Ceph OS: Ubuntu 16.04

@maxkochubey could you provide the output of :
hostname -s and hostname -f on your the node where you encountered this issue?
thanks

Hi, @guits!
This is local VM deployed with Vagrant.
So, hostname I set is:
ceph-node-1
root@ceph-node-1:~# hostname -f
ceph-node-1.domain.internal```

P.S. If I comment task `set_fact rgw_hostname - fqdn` in https://github.com/ceph/ceph-ansible/blob/master/roles/ceph-defaults/tasks/facts.yml#L228-L236, everyting works as expected.

Hey @maxkochubey I've forgotten to ask you the output of ceph -s -f json as well, sorry
thanks!

Sure, here it is:
{
  "fsid": "7a1db061-286c-4fbe-a873-a9438ef2b3d5",
  "health": {
    "checks": {},
    "status": "HEALTH_OK",
    "summary": [
      {
        "severity": "HEALTH_WARN",
        "summary": "'ceph health' JSON format has changed in luminous. If you see this your monitoring system is scraping the wrong fields. Disable this with 'mon health preluminous compat warning = false'"
      }
    ],
    "overall_status": "HEALTH_WARN"
  },
  "election_epoch": 7,
  "quorum": [
    0
  ],
  "quorum_names": [
    "ceph-node-1"
  ],
  "monmap": {
    "epoch": 1,
    "fsid": "7a1db061-286c-4fbe-a873-a9438ef2b3d5",
    "modified": "2018-09-05 10:38:58.739479",
    "created": "2018-09-05 10:38:58.739479",
    "features": {
      "persistent": [
        "kraken",
        "luminous"
      ],
      "optional": []
    },
    "mons": [
      {
        "rank": 0,
        "name": "ceph-node-1",
        "addr": "<IP_ADDRESS>:6789/0",
        "public_addr": "<IP_ADDRESS>:6789/0"
      }
    ]
  },
  "osdmap": {
    "osdmap": {
      "epoch": 28,
      "num_osds": 1,
      "num_up_osds": 1,
      "num_in_osds": 1,
      "full": false,
      "nearfull": false,
      "num_remapped_pgs": 0
    }
  },
  "pgmap": {
    "pgs_by_state": [
      {
        "state_name": "active+clean",
        "count": 72
      }
    ],
    "num_pgs": 72,
    "num_pools": 8,
    "num_objects": 208,
    "data_bytes": 3359,
    "bytes_used":<PHONE_NUMBER>,
    "bytes_avail":<PHONE_NUMBER>0,
    "bytes_total":<PHONE_NUMBER>0
  },
  "fsmap": {
    "epoch": 21,
    "id": 1,
    "up": 1,
    "in": 1,
    "max": 1,
    "by_rank": [
      {
        "filesystem_id": 1,
        "rank": 0,
        "name": "ceph-node-1",
        "status": "up:active"
      }
    ]
  },
  "mgrmap": {
    "epoch": 15,
    "active_gid": 24104,
    "active_name": "ceph-node-1",
    "active_addr": "<IP_ADDRESS>:6800/24399",
    "available": true,
    "standbys": [],
    "modules": [
      "dashboard",
      "prometheus",
      "status"
    ],
    "available_modules": [
      "balancer",
      "dashboard",
      "influx",
      "localpool",
      "prometheus",
      "restful",
      "selftest",
      "status",
      "zabbix"
    ],
    "services": {
      "dashboard": "http://ceph-node-1.domain.internal:7000/",
      "prometheus": "http://ceph-node-1.domain.internal:9283/"
    }
  },
  "servicemap": {
    "epoch": 4,
    "modified": "2018-09-05 10:55:19.378581",
    "services": {
      "rgw": {
        "daemons": {
          "summary": "",
          "ceph-node-1": {
            "start_epoch": 4,
            "start_stamp": "2018-09-05 10:55:18.859341",
            "gid": 24103,
            "addr": "<IP_ADDRESS>:0/2518453730",
            "metadata": {
              "arch": "x86_64",
              "ceph_version": "ceph version 12.2.8 (ae699615bac534ea496ee965ac6192cb7e0e07c0) luminous (stable)",
              "cpu": "Intel(R) Core(TM) i7-4510U CPU @ 2.00GHz",
              "distro": "ubuntu",
              "distro_description": "Ubuntu 16.04.5 LTS",
              "distro_version": "16.04",
              "frontend_config#0": "civetweb port=<IP_ADDRESS>:80 num_threads=32",
              "frontend_type#0": "civetweb",
              "hostname": "ceph-node-1",
              "kernel_description": "#157-Ubuntu SMP Thu Jul 12 15:51:36 UTC 2018",
              "kernel_version": "4.4.0-131-generic",
              "mem_swap_kb": "0",
              "mem_total_kb": "4046272",
              "num_handles": "1",
              "os": "Linux",
              "pid": "24263",
              "zone_id": "07bf4459-7343-4d7d-b9d3-deb09aedadf3",
              "zone_name": "default",
              "zonegroup_id": "7627c11f-f1d8-4700-a753-5b81c5dd579e",
              "zonegroup_name": "default"
            }
          }
        }
      }
    }
  }
}

@maxkochubey could you give #3095 a try ? I think it's better to fix the loop in the first task.
We should play either the first task or the second one, not both for a same play.

@guits, did you mean #3097 (#3095 was bad PR made with mistakes)?
Yes, the definition of a variable in the first task is, of course, the best approach.
It works well, thank you!

I meant #3096 sorry


Asset - show info about flag changes between runs

Asset meta changes are now visible on the bundle assets table and on the info side panel:

Also, meta-changes are taken in consideration when comparing the runs. An asset that has the same name and size will appear as changed when the initial flag was changed between builds.
Available on v4.17.0-beta.1


migrate oidc-discovery-provider to spire module

NB: This actually renames cgr.dev/chainguard/oidc-discovery-provider to cgr.dev/chainguard/spire-oidc-discovery-provider, which I think is more correct anyway (it's the name of the package, for example).
If this sounds okay, we can see if anybody uses it that needs to be notified of the change.

This LGTM.
We should sort out what sort of traffic this gets and plan a withdraw of the old tags as part of the migration to the new repo.

Looking through traffic I've only been able to identify our own traffic pushing and pulling the image to test it. Otherwise there are no logged-in users pulling the image, and even anonymous pulls look like our own testing in terms of useragents, timing and volume relative to our pushes.
I believe this change should be safe to make.


Unable to run reg-pilot-webapp via docker-compose.

When I tried to run the webapp, I encountered some errors and couldn't start the service normally. The following is the process of my attempts.
When I execute the following command， An error occurs:
docker-compose -f docker-compose.yml up -d

The image on Docker Hub is : linux/arm64/v8.

I tried to delete the image in the docker-compose.yml: image: 2byrds/reg-webapp:latest.

The following error has occurred.

So, how can the pilot-webapp be made to run properly? thanks

@HunnySajid are you able to take a look at this? Also collaborate with @ronakseth96 to take a look at the CI/CD setup for reg-pilot-webapp, we'd want to do similar to the other repos: posted latest images to GLEIF-IT on merge, supporting multiplatform, run the tests on each merge, etc.


[WIP] - Argparser Module

Well detailed description of the change :

Adds argparse capabilities.

Resolves: #
#570
Type of change:

[ ] Bug fix

[ ] New feature

[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Housekeeping

[ ] Tests have been updated to reflect the changes done within this PR (if applicable).

[ ] Documentation has been updated to reflect the changes done within this PR (if applicable).

Preview (Screenshots) :

Fair play for attempting this in C, I probably would have done it in Dictu itself 😄

Fair play for attempting this in C, I probably would have done it in Dictu itself 😄

Would be a 1000% easier I'm sure. I have everything working. Just need to track down the memory leaks reported. :(


Description
Utilities to quickly configure the position of an element.
Design
https://getbootstrap.com/docs/5.3/utilities/position/
Tokens

[ ] Tokens for this component are ready

Tasks
### 💻 Tasks
- [ ] Check in Bitbucket if the classes are used: if not close the ticket
- [ ] HTML/CSS implementation
- [ ] Documentation in Storybook
- [ ] Visual regression tests
- [ ] Design review
- [ ] Remove position utilities coming form bootstrap

Usage analysis: found moderate usage for position-* classes (100+ results)


Is it possible to make ctrl+x cut line as with PC's

In some PC applications, if I press ctrl+x while nothing is highlighted, the current line of text will be cut and copied to the clipboard. So if I have this text:

Lorem ipsum dolor sit amet, <Cursor>consectetur adipiscing
elit, sed do eiusmod tempor incididunt ut labore et dolore

And I hit ctrl+x, it will result in this text:

<Cursor>elit, sed do eiusmod tempor incididunt ut labore et dolore

Is there a way to implement this functionality using Karabiner-Elements?

Correct me if I'm wrong, but I don't think there's a way to differentiate between "nothing is highlighted" and "some text is highlighted".
Probably better if you leave "Command+X" alone and map, say, "Option+X" to "Command+Right -> Command+Shift+Left -> Command+X". That will cut the whole line.