Fixes SUPPRESS_ERROR_PAGE warning after webview_flutter_android upgrade

Connection with issue(s)
Resolve issue #2150

Testing and Review Notes
The SUPPRESS_ERROR_PAGE feature was discontinued according to this change in Webkit's WebViewFeature.java.
The recent upgrade of webkit to 1.10.0 in webview_flutter_android causes the webview to be null.
This suppresses references to SUPPRESS_ERROR_PAGE.

How override error pages if we no longer have disableDefaultErrorPage ?

@EArminjon I can't say. This was a featured that was never launched in webkit:

Remove unlaunched suppressErrorPage API
Removing this abandoned API, which was never launched.

This is a change performed in WebViewFeature.java almost a year ago.

I need this fix ASAP, because I have this error.
A webview is just blank.

@pichillilorenzo I also need this fix, the webview just throw a SUPPRESS_ERROR_PAGE when opening.

your code does the trick but the webkit update gets me another error if i open a webview in a new flutter page and i pop it, the app just crashes :
E/AndroidRuntime( 4220): java.lang.IncompatibleClassChangeError: Found interface androidx.webkit.ScriptHandler, but class was expected (declaration of 'androidx.webkit.ScriptHandler' appears in /data/app/~~.......
E/AndroidRuntime( 4220): 	at com.pichillilorenzo.flutter_inappwebview_android.types.UserContentController.removeAllPluginScripts(UserContentController.java:310)

i guess it is because the webkit version in build.gradle is still in 1.8.0 (where the ScriptHandler is defined as an abstract class) and in the updated webkit (located in webview_flutter_android) the ScriptHandler is an interface, it creates a conflict between the two versions
if i replace with a newer webkit version (in android/build.gradle line 52) it fixes my bug :
dependencies {
    implementation 'androidx.webkit:webkit:1.11.0'
    implementation 'androidx.browser:browser:1.6.0'
    implementation 'androidx.appcompat:appcompat:1.6.1'
    implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
}

@Manuito83 can you tell me if you reproduce as well ?

yes it also works with 1.10.0 but not with the actual one (1.8.0) defined in flutter_inappwebview_android/android/build.gradle

LGTM

Does not work for me:
  flutter_inappwebview:
    git:
      url: https://github.com/Manuito83/flutter_inappwebview.git
      ref: v6.0.0-fix-suppress-error-page
      path: flutter_inappwebview

followed by:
flutter clean && flutter pub get
results in the same issue in release mode. Am i doing something wrong here @Manuito83 ?

Personally i make the fix different :
Old code
if (!WebViewFeature.isFeatureSupported(WebViewFeature.SUPPRESS_ERROR_PAGE) &&
      webView.customSettings.disableDefaultErrorPage) {}

New code (as feature no longer supported and so should match 'false')
if (webView.customSettings.disableDefaultErrorPage) {

I also updated webkit inside android/build.gradle
implementation 'androidx.webkit:webkit:1.11.0'

Personally i make the fix different to still support disableDefaultErrorPage :
Old code
if (!WebViewFeature.isFeatureSupported(WebViewFeature.SUPPRESS_ERROR_PAGE) &&
      webView.customSettings.disableDefaultErrorPage) {}

New code (as feature no longer supported and so should match 'false')
if (webView.customSettings.disableDefaultErrorPage) {

I also updated webkit inside android/build.gradle
implementation 'androidx.webkit:webkit:1.11.0'

I can create a new PR for that.
Please fix it, I need this update ASAP, thx.

Personally i make the fix different to still support disableDefaultErrorPage :
Old code
if (!WebViewFeature.isFeatureSupported(WebViewFeature.SUPPRESS_ERROR_PAGE) &&
      webView.customSettings.disableDefaultErrorPage) {}

New code (as feature no longer supported and so should match 'false')
if (webView.customSettings.disableDefaultErrorPage) {

I also updated webkit inside android/build.gradle
implementation 'androidx.webkit:webkit:1.11.0'

I can create a new PR for that.

Please fix it, I need this update ASAP, thx.

Can you test https://github.com/pichillilorenzo/flutter_inappwebview/pull/2231 ?

@pichillilorenzo

Personally i make the fix different to still support disableDefaultErrorPage :
Old code
if (!WebViewFeature.isFeatureSupported(WebViewFeature.SUPPRESS_ERROR_PAGE) &&
      webView.customSettings.disableDefaultErrorPage) {}

New code (as feature no longer supported and so should match 'false')
if (webView.customSettings.disableDefaultErrorPage) {

I also updated webkit inside android/build.gradle
implementation 'androidx.webkit:webkit:1.11.0'

I can create a new PR for that.

Please fix it, I need this update ASAP, thx.

Can you test #2231 ?

Yes, I have test #2231 , and

Personally i make the fix different to still support disableDefaultErrorPage :
Old code
if (!WebViewFeature.isFeatureSupported(WebViewFeature.SUPPRESS_ERROR_PAGE) &&
      webView.customSettings.disableDefaultErrorPage) {}

New code (as feature no longer supported and so should match 'false')
if (webView.customSettings.disableDefaultErrorPage) {

I also updated webkit inside android/build.gradle
implementation 'androidx.webkit:webkit:1.11.0'

I can create a new PR for that.

Please fix it, I need this update ASAP, thx.

Can you test #2231 ?

I have all the code checked, but I wonder how can I test your code on my own device.

I implemented
dependencies {
    implementation 'androidx.webkit:webkit:1.11.0'
    implementation 'androidx.browser:browser:1.6.0'
    implementation 'androidx.appcompat:appcompat:1.6.1'
    implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
}

in my projects build.gradle but am still getting the  java.lang.IncompatibleClassChangeError
[AndroidInAppWebViewWidget] (android) AndroidInAppWebViewWidget calling "dispose" using []
E/AndroidRuntime(10863): FATAL EXCEPTION: main
E/AndroidRuntime(10863): Process: com.example.letts_news, PID: 10863
E/AndroidRuntime(10863): java.lang.IncompatibleClassChangeError: Found interface androidx.webkit.ScriptHandler, but class was expected (declaration of 'androidx.webkit.ScriptHandler' appears in /data/app/~~qjcoDlweDOdhaTmOimMemg==/com.example.letts_news-ubVVtKNAKvjVDbcv-qI7KA==/base.apk)
E/AndroidRuntime(10863): 	at com.pichillilorenzo.flutter_inappwebview_android.types.UserContentController.removeAllPluginScripts(UserContentController.java:309)
E/AndroidRuntime(10863): 	at com.pichillilorenzo.flutter_inappwebview_android.types.UserContentController.dispose(UserContentController.java:470)
E/AndroidRuntime(10863): 	at com.pichillilorenzo.flutter_inappwebview_android.webview.in_app_webview.InAppWebView.dispose(InAppWebView.java:2065)
E/AndroidRuntime(10863): 	at com.pichillilorenzo.flutter_inappwebview_android.webview.in_app_webview.FlutterWebView.dispose(FlutterWebView.java:154)
E/AndroidRuntime(10863): 	at io.flutter.plugin.platform.PlatformViewsController$1.dispose(PlatformViewsController.java:254)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.dispose(PlatformViewsChannel.java:150)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:58)
E/AndroidRuntime(10863): 	at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:267)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:292)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(Unknown Source:12)
E/AndroidRuntime(10863): 	at android.os.Handler.handleCallback(Handler.java:942)
E/AndroidRuntime(10863): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(10863): 	at android.os.Looper.loopOnce(Looper.java:201)
E/AndroidRuntime(10863): 	at android.os.Looper.loop(Looper.java:288)
E/AndroidRuntime(10863): 	at android.app.ActivityThread.main(ActivityThread.java:7872)
E/AndroidRuntime(10863): 	at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime(10863): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
E/AndroidRuntime(10863): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)

I've been stuck on this for most of the day so any direction would be appreciated

I implemented
dependencies {
    implementation 'androidx.webkit:webkit:1.11.0'
    implementation 'androidx.browser:browser:1.6.0'
    implementation 'androidx.appcompat:appcompat:1.6.1'
    implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
}

in my projects build.gradle but am still getting the  java.lang.IncompatibleClassChangeError
[AndroidInAppWebViewWidget] (android) AndroidInAppWebViewWidget calling "dispose" using []
E/AndroidRuntime(10863): FATAL EXCEPTION: main
E/AndroidRuntime(10863): Process: com.example.letts_news, PID: 10863
E/AndroidRuntime(10863): java.lang.IncompatibleClassChangeError: Found interface androidx.webkit.ScriptHandler, but class was expected (declaration of 'androidx.webkit.ScriptHandler' appears in /data/app/~~qjcoDlweDOdhaTmOimMemg==/com.example.letts_news-ubVVtKNAKvjVDbcv-qI7KA==/base.apk)
E/AndroidRuntime(10863): 	at com.pichillilorenzo.flutter_inappwebview_android.types.UserContentController.removeAllPluginScripts(UserContentController.java:309)
E/AndroidRuntime(10863): 	at com.pichillilorenzo.flutter_inappwebview_android.types.UserContentController.dispose(UserContentController.java:470)
E/AndroidRuntime(10863): 	at com.pichillilorenzo.flutter_inappwebview_android.webview.in_app_webview.InAppWebView.dispose(InAppWebView.java:2065)
E/AndroidRuntime(10863): 	at com.pichillilorenzo.flutter_inappwebview_android.webview.in_app_webview.FlutterWebView.dispose(FlutterWebView.java:154)
E/AndroidRuntime(10863): 	at io.flutter.plugin.platform.PlatformViewsController$1.dispose(PlatformViewsController.java:254)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.dispose(PlatformViewsChannel.java:150)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:58)
E/AndroidRuntime(10863): 	at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:267)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:292)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
E/AndroidRuntime(10863): 	at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(Unknown Source:12)
E/AndroidRuntime(10863): 	at android.os.Handler.handleCallback(Handler.java:942)
E/AndroidRuntime(10863): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(10863): 	at android.os.Looper.loopOnce(Looper.java:201)
E/AndroidRuntime(10863): 	at android.os.Looper.loop(Looper.java:288)
E/AndroidRuntime(10863): 	at android.app.ActivityThread.main(ActivityThread.java:7872)
E/AndroidRuntime(10863): 	at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime(10863): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
E/AndroidRuntime(10863): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)

I've been stuck on this for most of the day so any direction would be appreciated

You can test https://github.com/pichillilorenzo/flutter_inappwebview/pull/2231

@EArminjon
Cannot thank you enough, this worked for me.
Strangely i could not just clone and checkout the PR and build - have some weird problems in my flutter config still....   I was however able to patch .pub-cache with the changes and it fixes the problem perfectly.
Again thanks!  how the change is merged into the package
Jim

it worked for me and i bumped implementation 'androidx.webkit:webkit:1.11.0' in build.gradle:
pubspec.yaml
dependency_overrides:
  flutter_inappwebview_android:
    git:
      url: https://github.com/tkreuder/flutter_inappwebview.git
      ref: v6.0.0-fix-suppress-error-page
      path: flutter_inappwebview_android

It's Works for me

@EArminjon @jwbrown @RaymondGsc @ndavis-rxss @tkreuder @Julied5 @Manuito83 @subzero911  Open your PR on the forked project here and I will merge.  There is a new package now. zikzak_inappwebview

Released new version 6.1.0 with the fix, thanks!

@pichillilorenzo is this update requires to have SDK version 3.5.0 or it might be used on a lower bound? because it's kinda high & not everyone has updated to latest version
The current Dart SDK version is 3.4.3.

Because app_namespace depends on flutter_inappwebview >=6.1.0 which requires SDK version >=3.5.0 <4.0.0, version solving failed.

You can try the following suggestion to make the pubspec resolve:
* Consider downgrading your constraint on flutter_inappwebview: flutter pub add flutter_inappwebview:^6.0.0

@abdallah-odeh currently the InAppWebView widget for MacOS is only supported starting from Flutter version ">=3.24.0" (which is based on Dart 3.5.0)


[WARNING] The POM for org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 is missing, no dependency information available

When running the release script:
[WARNING] The POM for org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 is missing, no dependency information available
[WARNING] Failed to retrieve plugin descriptor for org.eclipse.m2e:lifecycle-mapping:1.0.0: Plugin org.eclipse.m2e:lifecycle-mapping:1.0.0 or one of its dependencies could not be resolved: Failure to find org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced
Downloading: https://repo.maven.apache.org/maven2/org/codehaus/mojo/versions-maven-plugin/2.7/versions-maven-plugin-2.7.jar
Downloaded: https://repo.maven.apache.org/maven2/org/codehaus/mojo/versions-maven-plugin/2.7/versions-maven-plugin-2.7.jar (310 kB at 434 kB/s)
[WARNING] The POM for org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 is missing, no dependency information available
[WARNING] Failed to retrieve plugin descriptor for org.eclipse.m2e:lifecycle-mapping:1.0.0: Plugin org.eclipse.m2e:lifecycle-mapping:1.0.0 or one of its dependencies could not be resolved: Failure to find org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building App Engine Plugins Core Library 0.7.4-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 is missing, no dependency information available
[WARNING] Failed to retrieve plugin descriptor for org.eclipse.m2e:lifecycle-mapping:1.0.0: Plugin org.eclipse.m2e:lifecycle-mapping:1.0.0 or one of its dependencies could not be resolved: Failure to find org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced

What did you do to solve this issue? Thank you

@abrahamhp please see #776: we pushed the lifecycle mapping into an M2Eclipse-specific profile that won't be activated by default.


ModelAdmin Menu Icon Class Documentation Added + Namespace Permissions

Undocumented feature private static $menu_icon_class added to documentation page. This was discussed on the SS4 Forum and would be a nice addition to the official documentation.
Namespace added to permission check for Model Admin view.

I have made the changes, hopefully they're ok

I think I sorted adding the changes in the right version this time :)
Thanks.


Give better control over inline inputs

Fixes #2471
I'm soft-deprecating the old comment attribute in favor of this new one. Gives three modes "inline", "external" and "auto".

Fixed in 5ed650c


darkmode contact not visible

I would like to work on this issue @jeevika17

I would like to work on this issue @tushargupta1504


Upload UI for local and external datasets

The design upload UI for local and external datasets:

User wants to upload files from local system and using an external URL. Files are expected to be no bigger than 5 mb.

Design upload UI for local and external datasets

@jrmartin @zsinnema what should be the file extensions and max file size that would be acceptable for upload on the drop zone area.

@jrmartin @zsinnema what should be the file extensions and max file size that would be acceptable for upload on the drop zone area.

@vidhya-metacell The file extensions should be .json and .ttl . The max file size should be 5mb.


while deleting a single password all the passwords are deleted

Describe the bug
when deleting a single password it should only delete that password but all the passwords are deleted
Expected behavior
only one password should be deleted
please assign this issue to me @jinx-vi-0

It is working perfectly.

It is working perfectly

no it is not atleast on the deployed version

It is working perfectly.

may be you did not understand

Message on the Discord thread. We will discuss it there.

oh sorry its working fine


RangeError: Maximum call stack size exceeded for large ArrayBuffer

Hello,
I am running into the following error:
RangeError: Maximum call stack size exceeded.
I am converting an ArrayBuffer to a Base64String using the encoding function.
I am getting this ArrayBuffer as a response from a server.  The ArrayBuffer length is 92778.  I am thinking that this is causing the problem.  Could someone confirm that this may cause this error?  And if there is a workaround that may be able to help.
Below is the code that I am running to generate the string
var base64 = require('base-64');
var pdf_base64Str = base64.encode(String.fromCharCode.apply(null, new Uint8Array(response.data)));

Thanks

I suspect this is not a base-64 bug.
Is this enough to reproduce the issue?
String.fromCharCode.apply(null, new Uint8Array(response.data));

To work around the problem you could batch the calls to String.fromCharCode. Don’t call it just once, but call it once for every 1024 entries, for example, and them concatenate the resulting strings.

Thanks so much.  that did the trick


Add MinIO to docker-compose for S3 integration tests

Builds on #46 and #47 by adding MinIO to the docker-compose configuration. This gets the unit tests all passing.

Merged with #52.


[FEATURE REQ] DefaultAzureCredential should use "Try" methods instead of relying on Exceptions

Library name
Azure.Identity
Please describe the feature.
This is related to the block of code here: https://github.com/Azure/azure-sdk-for-net/blob/4b2579556b7271587d2fb122163e23090a043597/sdk/identity/Azure.Identity/src/DefaultAzureCredential.cs#L167-L181
The GetTokenFromSourcesAsync() and related functions sequentially try to acquire credentials from a list of TokenCredential sources. The problem with this is that DefaultAzureCredential is heavily used in many SDKs, and the list of sources is long. This generates enormous "exception spam" which pollutes logs such as Application Insights, debug output, etc...
Throwing exceptions like this is very inefficient as well, noticeably slowing down clients that use the Azure SDK, even if they don't directly use this class!

To cater for scenarios like this where failure is expected, methods such as TryGetTokenAsync should be added to the TokenCredential that return a boolean "false" on failure instead of throwing an exception. If the error message is desired, then that should be returned via an out parameter (or some sort of Diagnostics context) instead of an Exception.

Consider creating a class that is a generic list of token sources that can be tried in order. The DefaultAzureCredential class is not the only scenario where this makes sense. Instead of a fixed-length array of 8 items maximum, use a List. This new general-purpose class could then be used by DefaultAzureCredential and also by Microsoft customers that use this SDK.

The order in which credentials are tried doesn't particularly matter, as long as the first one that succeeds in the sequence originally specified is selected. A significant performance boost may be possible by trying all sources in parallel via Task.WaitAny().

Thank you for your feedback.  Tagging and routing to the team members best able to assist.

Hi @peter-bertok - Thanks for the feedback.

To cater for scenarios like this where failure is expected, methods such as TryGetTokenAsync should be added to the TokenCredential that return a boolean "false" on failure instead of throwing an exception. If the error message is desired, then that should be returned via an out parameter (or some sort of Diagnostics context) instead of an Exception.

Regarding usage of exceptions to indicate error scenarios, this is consistent with both the .NET and Azure SDK design guidelines. See the below links for reference.
https://docs.microsoft.com/en-us/dotnet/standard/design-guidelines/exception-throwing
https://azure.github.io/azure-sdk/dotnet_introduction.html#dotnet-errors
In addition, out parameters are not supported in async methods, so a TryGetTokenAsync pattern would not work well here.

Consider creating a class that is a generic list of token sources that can be tried in order. The DefaultAzureCredential class is not the only scenario where this makes sense. Instead of a fixed-length array of 8 items maximum, use a List. This new general-purpose class could then be used by DefaultAzureCredential and also by Microsoft customers that use this SDK.

We have this today - it's called ChainedTokenCredential - https://github.com/Azure/azure-sdk-for-net/blob/32061eceda56d8a86381c3a4a309bc0ba7aa8ec7/sdk/identity/Azure.Identity/README.md#define-a-custom-authentication-flow-with-the-chainedtokencredential

The order in which credentials are tried doesn't particularly matter, as long as the first one that succeeds in the sequence originally specified is selected. A significant performance boost may be possible by trying all sources in parallel via Task.WaitAny().

If ordering is to be preserved on selection, then you'd always be bound by the response time of the earlier credentials in the chain. I think this would defeat the purpose of a WaitAny() call. In addition, for production scenarios where performance matters most, the latter credentials in the chain are typically never used or considered.
In summary, DefaultAzureCredential is designed to be the best "getting started" credential choice and is intended to satisfy the most common scenarios. If performance optimization is a goal, I'd recommend configuring the DefaultAzureCredentialOptions to eliminate unwanted credentials from the chain or constructing a ChainedTokenCredential containing only the credentials required for your scenario, ordered for optimal performance. In cases where controlling the exact behavior is required, it is also possible to create a custom implementation of TokenCredential.

Regarding usage of exceptions to indicate error scenarios, this is consistent with both the .NET and Azure SDK design guidelines. See the below links for reference. https://docs.microsoft.com/en-us/dotnet/standard/design-guidelines/exception-throwing https://azure.github.io/azure-sdk/dotnet_introduction.html#dotnet-errors

High-level rules for user-facing API surfaces do not necessarily apply to internal framework logic. These calls are expected to fail, which by definition makes them non-exceptional. A standard optimization is to use "Try" methods, or some other method of detecting failure without throwing an exception. This is common practice throughout the .NET standard library.

In addition, out parameters are not supported in async methods, so a TryGetTokenAsync pattern would not work well here.

Sure, but it's possible to return a class or tuple type with multiple values in it, including a success/failure code and error message. An exception should be thrown only if all authentication sources fail.

If ordering is to be preserved on selection, then you'd always be bound by the response time of the earlier credentials in the chain. I think this would defeat the purpose of a WaitAny() call. In addition, for production scenarios where performance matters most, the latter credentials in the chain are typically never used or considered.

It's surprisingly common to run code on highly locked-down Azure servers, developer workstations with web proxies, disconnected Internet, etc...
The performance of these calls matters because they're in the critical path for many SDK components.
If any of them reach out to the network, e.g.: <IP_ADDRESS> or the AAD endpoints, then these should be overlapped to the maximum extent possible to minimize the latency hit if there's a timeout. A rough outline of the code would be:
var tasks = new Task<TryAuthResult>[8];
for( ... ) { tasks[i] = sources[i].TryAuthAsync(...); }
for( ... ) { if (( await tasks[i]).Success return tasks[i].Result;  }
// If nothing short-circuited above, throw aggregate exception here
// Cancel remaining tasks in a finally block.

In summary, DefaultAzureCredential is designed to be the best "getting started" credential choice and is intended to satisfy the most common scenarios. If performance optimization is a goal, I'd recommend configuring the DefaultAzureCredentialOptions to eliminate unwanted credentials from the chain or constructing a ChainedTokenCredential containing only the credentials required for your scenario, ordered for optimal performance. In cases where controlling the exact behavior is required, it is also possible to create a custom implementation of TokenCredential.

In my humble opinion, performance should be everyone's goal, always. Aiming for the highest possible quality is especially important for such commonly used libraries.
Simply including a couple of Azure SDK NuGet packages has seen my web app startup time go from milliseconds to tens of seconds! Watching the logs shows that an awful lot of time is spent on internal "noise" like this. It's distressing to see Microsoft's .NET slow down to Enterprise Java levels.
As a random example, the Application Insights SDK pulls in Azure.Identity and invokes this class without any code written by the end-user! Customizing its behavior for performance is not always an option, because it has a "codeless attach" mode.
Please consider all end-users, not just demo or "getting started" scenarios.

Simply including a couple of Azure SDK NuGet packages has seen my web app startup time go from milliseconds to tens of seconds! Watching the logs shows that an awful lot of time is spent on internal "noise" like this. It's distressing to see Microsoft's .NET slow down to Enterprise Java levels.

To clarify - we definitely value performance in the SDKs. However, I'd be quite surprised if the the exceptions being thrown is the significant factor in startup times you are experiencing.
We are aware of a recent performance regression in 1.5.0 related to the ManagedIdentity endpoint discovery in DefaultAzureCredential (see #24767), so I'm curious if this is what you are experiencing. Setting the ExcludeManagedIdentityCredential property in the DefaultAzureCredentialOptions would confirm.


Add Service

As a coordinator, I want a section where people can suggest other ways of helping Ukrainians
so that we expand our website from user input.

https://wehelp.live/add


Can't use cmd+` as a shortcut on macOS

VSCode Version:
OS Version:

Steps to Reproduce:

Open keyboard shortcuts (json or with gui)
Set some command to cmd+`
Press cmd+`

Does this issue occur when all extensions are disabled?: Yes/No

Duplicate of https://github.com/microsoft/vscode/issues/79832

On mac, cmd + ` is typically reserved to loop through windows of an application. The keybinding needs to be removed from the OS in order for it to function in applications that have multiple windows.


KafkaProducer: Backpressure for Ack'd messages

Motivation
Our current implementation of polling librdkafka for new message acknowledgements in KafkaProducer did not support backpressure. Also, it made use of some weak references which we generally want to avoid due to performance reasons.
Modifications

create a new class called KafkaBackPressurePollingSystem
implement backpressure for KafkaProducer's poll-loop with KafkaBackPressurePollingSystem
fix typo in SwiftKafkaTests

TODO

[x] write sensible tests for this backpressure mechanism and the state machine
[x] how to handle dependency injection into our KafkaBackPressurePollingSystem, given that some of its dependencies are not Sendable
[x] discuss if we want to expose a Kafka.run() method to the user or if we want to keep the poll task to ourselves (cc: @FranzBusch )

Thanks for your review! I have implemented your changes and added 3 test cases 😄
I still get warnings about conforming to Sendable. Please see my comments inline!

@FranzBusch I have made the KafkaBackPressurePollingSystem generic in https://github.com/swift-server/swift-kafka-gsoc/pull/53/commits/624477c7a39c98e717f6be65ec712d734dbc6556, let me know what you think!

Having back pressure makes no sense as librdkafka is queuing the messages regardless, closing, but keeping branch for reference


shellEnv platform/terminal -> platform/shell

Fixes #145405

Since this is strictly debt, should we wait until next week to merge it?

Should be safe so thought now it fine


deis config:set numbers as string error

Running deis config:set PARAM="7782089", when I get this env var,(for example in node process.env['PARAM'];) I'm getting 7.782089e+06. Should come as string like "7782089" right?.
I'm using deis 1.4.0.
Thanks

Is this during the build (i.e. git push deis) or in the actual container? Can you please run deis run env in the application for me?

Is after build, running deis run env the output is PARAM=7782089, I got a workaround, using single quotes inside double quotes eg: deis config:set PARAM="'7782089'". Worked fine, but it's weird :P.

this is probably an app issue, most likely due to the integer getting casted to a float. AFAICT it looks fine from Deis' end.

I just found out that all numbers are stored as floating point numbers in Javascript, so yes this is an application issue.

I got the same issue using PHP

@raphaelluchini running docker inspect <your app name>_v<version>.web.1 in the node where the app is scheduled you can see in the "Env" section of the output how the variable is stored in the docker image. You will see PARAM=7782089


Upgrade @actions/core to avoid set-output deprecation warnings

Description
This PR updates @actions/core dependency
Motivation and Context
Currently using this action results in warnings issues by github actions:
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/

According to this article these warning can be resolve by using newer version of @actions/core:
https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
How Has This Been Tested?
I've run my github actions job with the version from main which resulted in the warnings and then with the version from my fork/branch which resulted in no warnings (while remaining functionally identical).
Screenshots (if appropriate):

:tada: This PR is included in version 1.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[Request]

I love everything about this module. I was just wonder if it's possible to have a way to pause about-time from the small UI.

Yeah, Shift-clicking the time will toggle the AT realtime clock on or off.

Thank you so much, I didn't even realize it!


Accept date separation

Nice feature would be to support dates like: 22/05/90

There are many mask plugins that can format dates. I have tried to keep autoNumeric focused on currency formatting.
I will keep this in mind on future versions.
Thanks

But its already solved, it done loose any value its just an extra functionality in 2 lines? :(

While the regular expression allows dates like: 22/05/9015/ it does not
limit the input and would allow 99/99/9999. This would require
validation on focus out to ensure proper dates are entered.
On 5/11/2015 8:00 AM, Simon Dragsbæk Petersen wrote:

But its already solved, it done loose any value its just an extra
functionality in 2 lines? :(
—
Reply to this email directly or view it on GitHub
https://github.com/BobKnothe/autoNumeric/issues/140#issuecomment-100898819.

Or just accept that people aren't stupid and make the able to make their own validation, depending on their own formatting

I share your sentiment but you would be surprised by some of the
questions I get.

I personally think that if someone wants date masks they should look at
specialized libraries built for that purpose, such as moment. Autonumeric
does currency formatting exceptionally well. Don't dilute the pool or focus
on something that isn't core to currency handling. Excellent options exists
for date handling - this isn't one of them.
On Mon, May 11, 2015, 12:43 PM Bob Knothe<EMAIL_ADDRESS>wrote:

I share your sentiment but you would be surprised by some of the
questions I get.

—
Reply to this email directly or view it on GitHub
https://github.com/BobKnothe/autoNumeric/issues/140#issuecomment-101013435
.

Well said - thank you.
On 5/11/2015 2:22 PM, Ray wrote:

I personally think that if someone wants date masks they should look at
specialized libraries built for that purpose, such as moment. Autonumeric
does currency formatting exceptionally well. Don't dilute the pool or
focus
on something that isn't core to currency handling. Excellent options
exists
for date handling - this isn't one of them.
On Mon, May 11, 2015, 12:43 PM Bob Knothe<EMAIL_ADDRESS>wrote:

I share your sentiment but you would be surprised by some of the
questions I get.

—
Reply to this email directly or view it on GitHub

https://github.com/BobKnothe/autoNumeric/issues/140#issuecomment-101013435

.

—
Reply to this email directly or view it on GitHub
https://github.com/BobKnothe/autoNumeric/issues/140#issuecomment-101023685.

haven't found any librarys that mask input fields as good as this one, thats why i use it for multiple things, i also use moment.js for validation the date :+1:

Robin Herbots input mask
(http://robinherbots.github.io/jquery.inputmask/) does a good job on
mask besides currency.
On 5/12/2015 3:10 AM, Simon Dragsbæk Petersen wrote:

haven't found any librarys that mask input fields as good as this one,
thats why i use it for multiple things, i also use moment.js for
validation the date :+1:
—
Reply to this email directly or view it on GitHub
https://github.com/BobKnothe/autoNumeric/issues/140#issuecomment-101183628.


Periodogram now automatically removes nans from lightcurve

Following a discussion had on the development of a tutorial, I've updated the LightCurve and Periodogram classes so that the check for NaN values in the light curve is now checked in the LightCurve.to_periodogram() function, instead of the Periodogram.from_lightcurve() function. If there are NaN values present when to_periodogram() is called, the function removes them and logs a warning informing the user of what's happening.

To be honest having played around with it a little I dont think the warning is necessary--- the removal of NaNs is just absorbed into the process.

I agree that:

removing NaNs should probably happen in the from_lightcurve function so the behavior is consistent regardless of how the periodogram is created;
I would at most use log.debug to log NaNs being removed -- it is not worth a noisy warning in my opinion.

Hey all,
I've made the changes proposed above & discussed in the telecon-- from_lightcurve makes the checks now, which is in line with the BLSPeriodogram class as well.


Clarify the fields that is available only for Bot Mgmt Ent customer (Botxxx, JA3)

Hi @kyouheicf The log field files are Code generated by logshare-api. They cannot be edited directly in Github. Just to confirm, did you do that update first?

@pedrosousa Can you help move this forward as we did the previous one?
https://github.com/cloudflare/cloudflare-docs/pull/8504


Icon request: SuperHosting.BG

URL for the brand / site / app
https://en.superhosting.bg/
Logo resources for the icon
No response
Anything else?
No response

Here you go!
https://github.com/aegis-icons/aegis-icons/blob/master/SVG/SuperHosting.BG.svg

:question: How to add icon(s) to Aegis?
:star: Support this project by giving a star! Just adding like to this comment is also appreciated.


Python logging enhancements

Link to issue this resolves

n/a

What I did

Python exception backtraces were sent as multiple separate lines. This
is inconvenient for logging services like Papertrail and OCI Logging
which create a record for each line. This patch formats the backtrace
as a single line.
The Call ID is logged with all log lines. This makes it easier to
identify which log lines belong to which call.
The current time is no longer logged.  Log destinations such as
Papertrail and OCI Logging record and display the log event time, so
this information is redundant.
Log to debug by default, but all FDK logging can still be seen by setting FDK_LOGGING=1.

How I did it

Changed the formatter for the root logger to include fn_request_id, which is a context variable set by runner.handle_request before calling the user's code.
Changed other fdk logging from info to debug and only set FDK logging to DEBUG if FDK_DEBUG is defined.

How to verify it

Start the fdk
% env FDK_DEBUG=1 FN_FORMAT=http-stream FN_LISTENER=unix://tmp/funk.sock fdk samples/echo/func.py
None - fdk - DEBUG - entering handle
None - fdk - DEBUG - FN_FORMAT is set, value: http-stream
None - fdk - DEBUG - FN_LISTENER is set, value: unix://tmp/funk.sock
None - fdk - DEBUG - in http_stream.start
None - fdk - DEBUG - deleting socket files if they exist
None - fdk - DEBUG - CHMOD 666 //tmp/phonyfunk.sock
None - fdk - DEBUG - phony socket permissions: 0o140666
None - fdk - DEBUG - calling '.start_serving()'
None - fdk - DEBUG - sym-linking //tmp/funk.sock to //tmp/phonyfunk.sock
None - fdk - DEBUG - socket permissions: 0o140666
None - fdk - DEBUG - starting infinite loop
None - fdk.async_http.server - DEBUG - Starting worker [55911]

Invoke from another terminal
% curl -v --unix-socket /tmp/funk.sock -H "Fn-Call-Id: SPECIALSTUFF" -H "Fn-Deadline: 2030-01-01T00:00:00.000Z" -XPOST -d"{}" http://function/call

See logs now include the call id
None - fdk.async_http.app - DEBUG - got response from function
None - fdk - DEBUG - in pure_handler
None - fdk - DEBUG - in handle_request
None - fdk - DEBUG - request headers. gateway: False {'host': 'function', 'user-agent': 'curl/7.64.1', 'accept': '*/*', 'fn-call-id': 'SPECIALSTUFF', 'fn-deadline': '2030-01-01T00:00:00.000Z', 'content-length': '2', 'content-type': 'application/x-www-form-urlencoded'}
SPECIALSTUFF - fdk - DEBUG - context provisioned
SPECIALSTUFF - fdk - DEBUG - setting headers. gateway: False
SPECIALSTUFF - fdk - DEBUG - function result obtained
SPECIALSTUFF - fdk - DEBUG - request execution completed

or if an exception is thrown
CREMEBRULEE - fn - ERROR - Hello, hello? What's going on? What's all this shouting? We'll have no trouble here!:  File "/Users/mrcurtis/p/fn/all/fdk-python/fdk/runner.py", line 87, in handle_request\n    response_data = await with_deadline(ctx, handler_code, body)\n  File "/Users/mrcurtis/p/fn/all/fdk-python/fdk/runner.py", line 67, in with_deadline\n    raise ex\n  File "/Users/mrcurtis/p/fn/all/fdk-python/fdk/runner.py", line 58, in with_deadline\n    result = handle_func(ctx, data=data)\n  File "func.py", line 23, in handler\n    raise ValueError("Hello, hello? What's going on? What's all this shouting? We'll have no trouble here!")\n

One line description for the changelog

Python logging enhancements

One moving picture involving robots (not mandatory but encouraged)

(0)_________________
/ \

(It's a Portal turret. It hasn't seen you.)

This looks good to me.


[v10.6.2] Install-HydrationEpac fails when scriptType set to script and pipelineType is GitHubActions

Describe the bug
Install-HydrationEpac throws an error at the step where it copies pipeline files if you select script type, and also github actions.
Renaming StarterKit/Pipelines/GitHubActions/templates-ps1-use-scripts to templates-ps1-scripts fixes this issue.
I don't see any references to templates-ps1-use-scripts in the code. Only templates-ps1-scripts.
To Reproduce
Steps to reproduce the behavior:
Run Install-HydrationEpac and select Git Hub Actions as the pipeline type and script as the script type.
Screenshots
Copying starter kit  GitHub Actions workflows (GitHub-Flow) from './StarterKit/Pipelines/GitHubActions/GitHub-Flow/*.yml' to ./.github/workflows
Copying starter kit  GitHub Actions reusable workflows (use scripts) from './StarterKit/Pipelines/GitHubActions/templates-ps1-scripts/*.yml' to ./.github/workflows
Press Enter to continue:
Install-HydrationEpac: Unable to create pipeline. Please rerun hydration and confirm the pipeline responses in the New-HydrationAnswerFile cmdlet interview.

EPAC Version
10.6.2

I'll take a look at that as well, thank you!


Autoform 'update' form data not showing within tabs

I am trying to group autoform fields into individual tabs but the data on an 'update' form is all blank.
I am just using the basic tabs example. Here is what the autoform template looks like...
<template name="updateRecipe">

Update Recipe - {{recipeName}}

    {{#basicTabs name="" tabs=tabs}}

        {{#autoForm collection="Recipes" id="updateRecipeForm" type="method-update" meteormethod="updateRecipe" doc=this class="form-inline"}}

          {{#tabContent slug="details"}}
              {{> afQuickField name='recipeName'}}
              {{> afQuickField name='purpose'}}
              {{> afQuickField name='source'}}
              {{> afQuickField name='description' rows=6}}
              {{> afQuickField name='image'}}
          {{/tabContent}}

          {{#tabContent slug="ingredients"}}

Ingredients

              {{> afQuickField name='yieldWeightPerUnit'}}
              {{> afQuickField name='yieldNumberOfUnits'}}
              {{> afArrayField name='recipeIngredients'}}
          {{/tabContent}}

          {{#tabContent slug="method"}}

Method

              {{> afArrayField name='method'}}
          {{/tabContent}}

          <button type="submit" class="btn btn-primary">Update</button>

        {{/autoForm}}

    {{/basicTabs}}

</template>

Not sure if it's related but I am using iron router for the update page like this...
Router.route('/recipes/update/:_id', function () {
  var item = Recipes.findOne({_id: this.params._id});
  this.render('updateRecipe', {data: item});
}, {
  name: 'recipe.show'
});

So just to clarify. If I don't use the tabs in the template, all the data from the document shows up as it should. If I use the tabs, all the fields are blank.
Thanks

I think this is more a problem with autoform. It probably expects the form context to be in the immediate parent to the form fields and doesn't iterate up contexts until it finds the form. I'm not totally sure, but I did write such functionality into templates:forms so this is the first thing that comes to mind.


replace keyof ReactSVG with SVGElementType

Closes #2667
What is the purpose of this pull request?

[ ] New Icon
[x] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other:

Description

The ReactSVG type has been removed from @types/react 19. The suggested replacement (at least, for lucide's use case) is to use SVGElementType instead.
The two imports removed from createLucideIcon.ts were actually unused and do not need to be replaced.
The use of import type in lucide-react/src/types.ts brings it in sync with lucide-react-native/src/types.ts.
Before Submitting

[x] I've read the Contribution Guidelines.
[x] I've checked if there was an existing PR that solves the same issue.

@aslilac Thanks for the heads-up.
Hmm, SVGElementType is specific to @types/react 19, which means that a project with an older version will not work.
So I think a better idea is to define the element in ReactSVG ourselves so we are not dependent on @types/react

I think a better idea is to define the element in ReactSVG ourselves so we are not dependent on @types/react

That sounds like a good call. I vendored in its definition, with links to the original source.


Echo Dot responds with "I don't know what went wrong" when trying to control device, although flow works flawless

SUMMARY
I created a flow to allow turning my Yamaha amplifier on/off through Alexa:
I'm using iptables to get around the port 80 / admin issue:
*filter :INPUT ACCEPT [19503:5794156] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [16918:3841349] COMMIT *nat :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 10080 -A PREROUTING -p udp -m udp --dport 80 -j REDIRECT --to-ports 10080 COMMIT
ECHO DEVICES

MODULE VERSION

node-red-contrib-amazon-echo 0.1.9

CONFIGURATION

[{"id":"dc4ad69.3be90a8","type":"amazon-echo-hub","z":"85a56912.9744","port":"10080","processinput":0,"x":110,"y":160,"wires":[["56c24782.5ab5a8"]]},{"id":"56c24782.5ab5a8","type":"amazon-echo-device","z":"85a56912.9744","name":"Yamaha","topic":"","x":300,"y":160,"wires":[["bada4520.6cfb3"]]}]

(only the relevant part is pasted)
CONSOLE OUTPUT

No entries in node-red-log during execution

STEPS TO REPRODUCE

Set up flow
Call Alexa turn on Yamaha

EXPECTED RESULTS

Flow should deliver the "on" command
Alexa should return or positive response

ACTUAL RESULTS

Flow delivers the expected "on" command
Alexa tells me: "I don't know what went wrong"

Looks similar to #100

@TheLongAndOnly Have you checked the network interfaces and restart of the Echo devices?
Troubleshooting page
Alexa: "I am not quite sure what went wrong"

Check that your Node-Red instance is not running on multiple network interfaces from the same network.
For example, your Node-Red may be listening on ethernet and WiFi interfaces. Issue #77
Restart your Alexa devices. Issue #81


Use generated keywords file from VSCode extension

monarch.ts is generated by our documentation server and could be updated easily, by anyone who can copy paste it from VSCode extension sources.
I will try to keep it up to date with each Warp 10 release.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

transpilation commited


Variable is not defined error for f-string debug statement

Environment data

Language Server version: Pylance v2020.12.0
OS and version: Windows 10 20H2 19042.662
Python version (& distribution if applicable, e.g. Anaconda): Python 3.9.0

Expected behaviour
Pylance can see the variable in f-string debug statement.
Actual behaviour
<variable_name[:-1]> is not defined error is raised by Pylance
Code Snippet / Additional information

test_var = 123
print(f"{test_var=}")

Error: "test_va" is not defined Pylance(reportUndefinedVariable)

Thanks for the bug report. This will be fixed in the next release. In the meantime, you can work around the issue by inserting a space before the "=" token in the f-string expression.

This issue has been fixed in version 2020.12.1, which we've just released. You can find the changelog here: https://github.com/microsoft/pylance-release/blob/master/CHANGELOG.md#2020121-9-december-2020


Error when updating keybase

I received an error when updating keybase related to the FUSE kext on macOS.
my log id: 2d5b5f778e5ab0f686d5011c

Does this page help? https://github.com/keybase/client/wiki/Troubleshooting

No, a reboot does appear to have done the trick though.


Investigate why thread-based timeouts test intermittently failing on python2.7

Description

Steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Additional information you deem important (e.g. issue happens only occasionally):

Closed by #323


Add support for LZMA compressed lumps

https://developer.valvesoftware.com/wiki/BSP_(Source)#Lump_compression

Why are you loading assets from console builds...
This won't get picked up by myself until after the rewrite for TASBox (which itself is behind various other TASBox tickets)

I think some TF2 maps use them


ReturnRequest technical committee feedback

Description
changed description of timestamps
Closes #

MS2 Criteria
(to be filled out by PR reviewer)

[x] the model validates with the BAMM SDS SDK in the version specified in the Readme.md of this repository by the time of the MS2 check  (e.g., 'java -jar bamm-cli.jar -i <path-to-aspect-model> -v ). The  BAMM CLI is available here and in GitHub
[x] use Camel-Case (e.g., "MyModelElement" or "TimeDifferenceGmtId", when in doubt follow https://google.github.io/styleguide/javaguide.html#s5.3-camel-case)
[x] the identifiers for all model elements start with a capital letter except for properties
[x] the identifier for properties starts with a small letter
[x] all model elements at least contain the fields "name" and "description" in English language.
[x] no duplicate names or preferredNames within an Aspect (e.g. a Property and the referenced Characteristic should not have the same name)
[x] the versioning in the URN follows semantic versioning, where minor version bumps are backwards compatible and major version bumps are not backwards compatible.
[x] use abbreviations only when necessary and if these are sufficiently common
[x] avoid redundant prefixes in property names (consider adding properties to an enclosing Entity or even adapt the namespace of the model elements, e.g., instead of having two properties DismantlerId and DismantlerName use an Entity Dismantler with the properties name and id or use a URN like io.catenax.dismantler:0.0.1)
[x] fields preferredName and description are not the same
[x] preferredName should be human readable and follow normal orthography (e.g., no camel case but normal word separation)
[x] name of aspect is singular except if it only has one property which is a Collection, List or Set. In theses cases, the aspect name is plural.
[x] units are referenced from the BAMM unit catalog whenever possible
[x] use constraints to make known constraints from the use case explicit in the aspect model
[x] when relying on external standards, they are referenced through a "see" element
[x] all properties with an simple type have an example value
[ ] metadata.json exists with status "release"

MS3 Criteria
(to be filled out by semantic modeling team before merge to main-branch)

[x] All required reviewers have approved this PR (see reviewers section)
[x] The new aspect (version) will be implemented by at least one data provider
[x] The new aspect (version) will be consumed by at least one data consumer
[x] There exists valid test data
[x] In case of a new (incompatible) major version to an existing version, a migration strategy has been developed
[x] The model has at least version '1.0.0'

@bs-jokri
as agreed in todays core team modelling round: after MS2 is provided MS3 from product is given, as long as models are unchaged (shared meeting between technical committee and product with discussion iof changes)

@mthiers the ECA check does not work as you use another email address in your commit as you have registered with eclipse. Please fix the author info of the commit, eg by git commit --amend --author="John Doe<EMAIL_ADDRESS>with the email used in the eclipse account.

Superseded by #65


Increase xVMHyperV VM guest StartupMemory max limit and MinimumMemory max limit from 17GB to 64GB

Fixes #93

This change is

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

@MnrGreg I'm not sure why the maximum was set at 16GB? Can you update the documentation and add a line in the README.md with your change?

Reviewed 2 of 2 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

I think all the memory properties need to be reviewed. Gen 1 VM max memory is 1TB but Gen 2 VM is 12 TB according to 2016 scalability guide
The resource current maximum is 1048576MB which is the 1TB limit for Gen1.
I don't know where / when the validateset on Startup, Minimum and Maximum where established but I think they need to be adjusted to the most modern limits. Could you update them all with regards to most up 2 date values?

@bgelens Yes, but the 2008 R2 Gen 1 maximum is 64GB. Therefore, I think we have two options:

We set the maximum to 64GB to maintain full compatibility across all hosts.
If we want to support both 2008R2 and 2012 (and later) maximums, we need to drop the [ValidateRange()] and implement that functionality separately.

If we wanted to support Gen 2 maximums, the second option also makes sense. Thoughts?

@iainbrighton I don't think it's a good idea to constraint users on newer OSes from using this resource (although, probably not many VMs with these huge sizes will be created by this resource. But can't assume right! ;) ).
I think your suggested option 2 is the desired option and put in some validate logic based on OS and limits in the functions. To make this clear to the end-user, the readme should be updated to explain that the behavior is a per platform version limit and the description in the schema should make users aware as well.
Other thoughts? @dscottraynsford @MnrGreg

I would be inclined to set the limits as per option 1 now, and then open another issue to implement option 2?

@iainbrighton Created a new issue as you suggest #102
In this PR we go with the upper limit of 2008R2 of 64GB for startup and minimum memory.
@MnrGreg could you make this PR editable by maintainers by checking the box on the right side? Or fix the merge conflict in the README please. Thanks!

@iainbrighton moved README comment to Unreleased section and allowing edits from Maintainers. thanks

Reviewed 2 of 2 files at r3.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

DSCResources/MSFT_xVMHyperV/MSFT_xVMHyperV.psm1, line 131 at r3 (raw file):

        # Startup RAM for the VM
        [ValidateRange(32MB,65536MB)]

All these parameters need to be adjusted to match style guidelines:
https://github.com/PowerShell/DscResources/blob/master/StyleGuidelines.md#correct-format-for-parameter-block
E.g.
[Parameter()]
[ValidateRange(32MB,65536MB)]
[Uint64]
$StartupMemory

Comments from Reviewable

 I'll merge this once #100 is merged

Reviewed 1 of 2 files at r3, 1 of 1 files at r4.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

DSCResources/MSFT_xVMHyperV/MSFT_xVMHyperV.psm1, line 131 at r3 (raw file):
Previously, PlagueHO (Daniel Scott-Raynsford) wrote…
All these parameters need to be adjusted to match style guidelines:
https://github.com/PowerShell/DscResources/blob/master/StyleGuidelines.md#correct-format-for-parameter-block
E.g.
[Parameter()]
[ValidateRange(32MB,65536MB)]
[Uint64]
$StartupMemory

FYI I'll fix these in a later commit. Raised #104 to track

Comments from Reviewable

Reviewed 1 of 1 files at r4.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

DSCResources/MSFT_xVMHyperV/MSFT_xVMHyperV.psm1, line 131 at r3 (raw file):
Previously, bgelens (Ben Gelens) wrote…
FYI I'll fix these in a later commit. Raised #104 to track

All good! I just thought I'd mention it :grin:

Comments from Reviewable


convert insecure-random rule to use walk function

PR checklist

[x] Addresses an existing issue: #680

Overview of change:
Converts insecure-random rule to use walk function

I'll rebase this PR once #686 is approved & merged.


How to get IoU in validation metrics?

Hi,
I'm running an instance segmentation model (queryinst), and the validation logs contain the following:
{"mode": "val", "epoch": 1, "iter": 100, "lr": 0.0,
"bbox_mAP": 0.979, "bbox_mAP_50": 0.983, "bbox_mAP_75": 0.983, "bbox_mAP_s": -1.0,
"bbox_mAP_m": -1.0, "bbox_mAP_l": 0.979, "bbox_mAP_copypaste": "0.979 0.983 0.983 -1.000 -1.000 0.979",
"segm_mAP": 0.921, "segm_mAP_50": 0.983, "segm_mAP_75": 0.983, "segm_mAP_s": -1.0,
"segm_mAP_m": -1.0, "segm_mAP_l": 0.921, "segm_mAP_copypaste": "0.921 0.983 0.983 -1.000 -1.000 0.921"}

How can I include additional metrics, like segm/bbox IoU in this?
Thanks
Edit:
I've just noticed on larger validation sets that there are 2 separate entries for val in the log file, e.g. after epoch 8 I get this:
{"mode": "train", "epoch": 8, "iter": 7150, "lr": 5e-05, "memory": 9352, "data_time": 0.00686, "stage0_loss_cls": 0.0, "stage0_pos_acc": 100.0, "stage0_loss_bbox": 0.08268, "stage0_loss_iou": 0.0569, "stage0_loss_mask": 0.03742, "stage1_loss_cls": 0.0, "stage1_pos_acc": 100.0, "stage1_loss_bbox": 0.03378, "stage1_loss_iou": 0.02396, "stage1_loss_mask": 0.0348, "stage2_loss_cls": 0.0, "stage2_pos_acc": 100.0, "stage2_loss_bbox": 0.02977, "stage2_loss_iou": 0.02085, "stage2_loss_mask": 0.03426, "stage3_loss_cls": 0.0, "stage3_pos_acc": 100.0, "stage3_loss_bbox": 0.02862, "stage3_loss_iou": 0.02, "stage3_loss_mask": 0.03339, "stage4_loss_cls": 0.0, "stage4_pos_acc": 100.0, "stage4_loss_bbox": 0.02888, "stage4_loss_iou": 0.02012, "stage4_loss_mask": 0.03425, "stage5_loss_cls": 0.0, "stage5_pos_acc": 100.0, "stage5_loss_bbox": 0.02893, "stage5_loss_iou": 0.02018, "stage5_loss_mask": 0.03425, "loss": 0.60305, "grad_norm": 30.55146, "time": 0.44809}
{"mode": "val", "epoch": 8, "iter": 4772, "lr": 5e-05, "bbox_mAP": 0.989, "bbox_mAP_50": 0.99, "bbox_mAP_75": 0.99, "bbox_mAP_s": -1.0, "bbox_mAP_m": -1.0, "bbox_mAP_l": 0.989, "bbox_mAP_copypaste": "0.989 0.990 0.990 -1.000 -1.000 0.989", "segm_mAP": 0.99, "segm_mAP_50": 0.99, "segm_mAP_75": 0.99, "segm_mAP_s": -1.0, "segm_mAP_m": -1.0, "segm_mAP_l": 0.99, "segm_mAP_copypaste": "0.990 0.990 0.990 -1.000 -1.000 0.990"}
{"mode": "val", "epoch": 8, "iter": 2386, "lr": 5e-05, "memory": 9352, "data_time": 0.00707, "stage0_loss_cls": 0.0, "stage0_pos_acc": 100.0, "stage0_loss_bbox": 0.08284, "stage0_loss_iou": 0.05611, "stage0_loss_mask": 0.0345, "stage1_loss_cls": 0.0, "stage1_pos_acc": 100.0, "stage1_loss_bbox": 0.03609, "stage1_loss_iou": 0.02452, "stage1_loss_mask": 0.0358, "stage2_loss_cls": 0.0, "stage2_pos_acc": 100.0, "stage2_loss_bbox": 0.03275, "stage2_loss_iou": 0.02257, "stage2_loss_mask": 0.03543, "stage3_loss_cls": 0.0, "stage3_pos_acc": 100.0, "stage3_loss_bbox": 0.03332, "stage3_loss_iou": 0.0228, "stage3_loss_mask": 0.03543, "stage4_loss_cls": 0.0, "stage4_pos_acc": 100.0, "stage4_loss_bbox": 0.03324, "stage4_loss_iou": 0.02263, "stage4_loss_mask": 0.03591, "stage5_loss_cls": 0.0, "stage5_pos_acc": 100.0, "stage5_loss_bbox": 0.03384, "stage5_loss_iou": 0.02314, "stage5_loss_mask": 0.03572, "loss": 0.63663, "time": 0.18482}

My val set has 4772 elements, so why is the second val entry there in the middle of the validation iterations?

COCO api does not support the IOU metric, it only supports bbox and instance segmentation mAP.

My val set has 4772 elements, so why is the second val entry there in the middle of the validation iterations?
One of the 'val' is to evaluate, another 'val' is to post the losses on val dataset.

But the IOU calculation already exists in MMdet, as it's used for the mAP calculations (e.g. see recall.py), also there's IOU calculation in the training loss (e.g. stage0_loss_iou). So, I'm not sure how the COCO api is relevant here.

Loss and evaluation metrics are two different concepts.

That's understood, but IOU is a metric commonly used for bbox and segm problems, and it would be trivial to add regardless of the COCO api, and in fact there's already an IOU calculation in the COCO evaluation, since it's required for the mAP calculations, right? So, would that be possible to report the bbox and segm (where applicable) IOU in the validation metrics?


Generate definition when using [FromQuery]

public class MyModel
{
    public int Prop1 { get; set; }
    public int Prop2 { get; set; }
    public int UnwantedProperty { get; set; }
}

public IActionResult ListAsync([FromQuery] MyModel sieveModel)
{
    ...
}

When using [FromQuery] this piece of JSON is generated:
"parameters":[
   {
      "name":"Prop1",
      "in":"query",
      "required":false,
      "type":"integer",
      "format":"int32"
   },
   {
      "name":"Prop2",
      "in":"query",
      "required":false,
      "type":"integer",
      "format":"int32"
   },
   {
      "name":"UnwantedProperty",
      "in":"query",
      "required":false,
      "type":"integer",
      "format":"int32"
   }
]

Is there any way to make MyModel to appear in the "definitions".

If I'm understanding your question correctly - you're asking how to omit UnwantedProperty from the generated Swagger?
If you don't want it in the docs, then I'm assuming you don't want it to be bound to a query parameter full stop? If so, I would recommend being a little more stringent with your use of model binding so that you're only allowing data through the parameters you intend it to come from. For example, in your case you can explicitly tell AspNetCore to ignore certain parameters when it's binding requests to models. And, Swashbuckle will also reflect this change and rightly omit it from the docs:
public class MyModel
{
    public int Prop1 { get; set; }
    public int Prop2 { get; set; }
    [BindNever]
    public int UnwantedProperty { get; set; }
}

@domaindrivendev That's useful and probably will work, but it won't work when using some third-party models, you would need some way to configure it fluently.

If you don't have access to the model source code, you can explicitly remove parameters from any operation with an Operation Filter (see readme).


Enumeration values are not validated against the enum type

In the following specification myenum is supposed to be an integer-valued enumeration, but its enum property is a list of mixed types. Unexpectedly, the validator does not report any error.
swagger: '2.0'
info:
  title: "bad api"
  version: "1.0.0"
host: localhost
schemes:
  - https
basePath: /path
paths:
  "/main":
    get:
      responses:
        200:
          description: "Main entry point"
definitions:
  myenum:
    type: integer
    enum:
      - not an integer
      - 2

Has this been resolved in latest version ?

Not yet, no.  But a Pull Request is always welcome!  Here is the file that would need to be edited.


feat(besu): transaction manager introduce 'none' for not using privacy

Is your feature request related to a problem? Please describe.
For Hyperledger Besu, privacy is a addon feature, which is not supported out of the box. I think we should give that flexibility here as well. The parameter network.config.transaction_manager is bound to have two values - "tessera" or "orion", which makes the users to provide a value anyway otherwise network schema validation will break.
Describe the solution you'd like
Introduce option of 'none' for transaction_manager in case somebody doesn't want to use privacy member.
Describe alternatives you've considered
Currently to make it work, pass a value for transaction_manager and its related fields like "tm_version","tm_tls","tm_trust" and "tm_nodes"

I will check this.


[fix bug 1107542] Show search on viewport<=1000px

Since this design glitch was introduced by the change I made it's better to be resolved in this PR.
We already switch to "mobile view" (bringing the avatar on center) when the viewport changes < 1000px (@breakDesktop). It's more consistent to do the same on the navbar and switch to the hamburger button for user actions. I amended the commit.

Coverage remained the same when pulling 2d1e662b5afe362d72efe86133c22ced6ac701c0 on comzeradd:search-on-home into 91ed5e3eeb1f926d7864ea75a3a8a4f562a659f7 on mozilla:master.

I suggest for the logged in home page we keep the search box for the desktop view as is and keep this PRs functionality for only the mobile view.

Ok, so I amended the commit. The search now is viewable on the mobile view on the top navbar, except the home page where it's displayed inside the main content.

Coverage remained the same when pulling ce84f9ce55d4814bd21a59d67c91409bf2d4e038 on comzeradd:search-on-home into 1a049d2a138a54129a124d7f7b5c0910068b2720 on mozilla:master.

Coverage remained the same when pulling ce84f9ce55d4814bd21a59d67c91409bf2d4e038 on comzeradd:search-on-home into 1a049d2a138a54129a124d7f7b5c0910068b2720 on mozilla:master.

@johngian r?

lgtm r+
:rocket: : :cake:


New salvage expedition ambience.

About the PR
Adds a new salvage expedition ambience.
Media
https://github.com/space-wizards/space-station-14/assets/147350443/49ece534-705b-446d-8a35-4e85c1ac5176

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

add: added new expedition ambience

hoping, praying to god i did this correctly.


Updated dependencies

Verified app still builds

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: lyonsbp sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

👍


If-Modified-Since header for RSS download

Search the latest downloaded file and put it's mtime in the header.

This cannot be determined from the file modification times reliably:
if not all episodes are downloaded, but only a couple of them either because of the -e option or a partial download, there is no mtime which is earlier than the last modification time of the RSS, so it won't download missing episodes, only when the RSS is updated.
as I don't want to add an option for this (like --force to download anyway or --check-rss-time for using this feature), because it would be anything but simple, this will not be implemented.
This could only be done with additional metadata, but I don't want to store any metadata besides the downloaded files.

Checking gaps and partially downloaded files would still not be enough.


Problems saving twitter threads

{{renderer archive https://twitter.com/BrianFeroldi/status/1690699697458122754}} doesn't seem to produce a valid archive.
This is likely because of twitter make it hard to scrape a thread, possibly. But reporting here, to see if this is expected behaviour.
Thanks for working on this plugin though from the conversation thread in the logseq discussion forum.

You're right on. Twitter has put blockers in place to prevent scraping. Even the Internet Archive is having trouble with this link. But Logseq should be able to embed Twitter links with {{twitter [url]}}.
On our end, the local archival process is limited because Logseq plugins are sandboxed to only support client-side JavaScript. Since we can only use what we can run in the browser, we're unable to spin up a more sophisticated renderer for pages.
I have #1 open to potentially setup an API that'll render the pages remotely. But that defeats the purpose of archiving locally.
Sorry about this one and thanks for the feedback.

This is likely because of twitter make it hard to scrape a thread

I noticed that i can't even see the whole thread anymore without being logged in, just the specific linked post. So Twitter isn't really a public source anymore.
You can see threads and comments with Nitter, an alternative open source Twitter front-end focused on privacy. Consider supporting the creator if you see value in it.
Example: https://nitter.net/BrianFeroldi/status/1690699697458122754
Just replace the domain twitter.com with nitter.net in a URL to use it. You can archive that URL then.
Example: https://web.archive.org/web/20240109171846/https://nitter.net/BrianFeroldi/status/1690699697458122754
There is also Thread Reader, but you have to be logged in to Twitter to ask their bot to archive a thread.
Example:
https://threadreaderapp.com/thread/1690699697458122754.html
https://web.archive.org/web/20240109172431/https://threadreaderapp.com/thread/1690699697458122754.html
I'm not sure if these services would be a trusted source in academic context since these services could technically change the content. You might have to save the Twitter page directly while being logged in, e.g. with some browser extension.


Detect X Server shutdown or document how to end succade

Currently, without taking proper precautions, succade might keep on running even if the X Server is being shut down. We should research if there is a way to detect when X (or alternatively succade's parent process) is gone. If that's not reliably possible, we should document this somehow (for example, add an example that shows how to modify the sxhkd hotkeys to also shut down succade properly.

We might be able to use getenv("DISPLAY"), as $DISPLAY should not be set when X isn't running. Haven't looked into it in detail yet, though.


Feedback on dev docs

Fixes small typos and adds some suggestions to:

the documentation page
the developers guide page

Some comments

For me in the General BrainGlobe documentation, the links to anaconda open in the same tab. If these are considered external, should they open in a separate one? As @adamltyson pointed out, in numpy and others anaconda links also open in the same tab, so maybe we just leave it as it is.
I changed "developers" to "developer's" but not sure what is correct tbh. Found a few examples of "Developer's" but native speakers here disagree...
I also suggested a new title for the "Image definition" section. Initially it made me think it was about image resolution, so I wonder if "image space definition" or "coordinate space definition/convention" is a bit more clear?
In the left hand side navigation panel, "cellfinder" and "cellfinder-core" appear under 'Developers guide', but 'cellfinder' also appears later outside 'Developers guide'.

For me in the General BrainGlobe documentation, the links to anaconda open in the same tab. If these are considered external, should they open in a separate one? As @adamltyson pointed out, in numpy and others anaconda links also open in the same tab, so maybe we just leave it as it is.

I've raised #34, I think it would be good to be consistent here. Especially as lots of other scientific python packages use the same sphinx theme, so we want to make it obvious which pages are external.

In the left hand side navigation panel, "cellfinder" and "cellfinder-core" appear under 'Developers guide', but 'cellfinder' also appears later outside 'Developers guide'.

Does this not make sense? There are specific developers guides for these tools, but they have their own (user-facing) docs.


Create Min_time.py

hactoberfest2022

Please make a program also with your class and // is not used in python as a comment. Make sure you write your name in file as a comment and contributors.md file
Waiting for your next PR!!!


Service file not being used?

is anything from this file being used in this website?
https://github.com/xcash-rocks/xcash-website/blob/master/src/app/services/http-request.service.ts

I believe this is for the metrics section.

yes, http-request.service.ts is used for the metrics section

@zachhildreth why do you ask or can we close that issue?

This should be solved. Closed due to inactivity.


Relative paths in snippets do not show up in preview

A relative image path inside a snippet does not render the same as the relative path specified directly.

I'm still seeing broken image links in preview when there is a root relative link ( (/help/main-guide/admin/assets/image.png) ) instead of a relative link ( (assets/image.png) ).

I think this is working now in 2.0.7 but I want to test some more.

Confirmed fixed


fixing issues

coverage: 98.649% (-0.009%) from 98.658%
when pulling 6682e8272cf2f33e64f5786cd9565fa42e11a487 on aurzenligl/issues
into 2037af4bc850a7a41dcee459f20202688f089c3c on master.


Ability to search internet for an image

As long as you know there's an ability to search an image in the internet by a search motor like Google or etc.
The most well known app is Google lens (etc) which needs Google app to be installed (you now how large is that app) that makes me crazy , for an image search you have to install two apps with plenty of unnecessary stuff which i personally always debloat them from my system (& you?)
There is some third party apps in play store that can do that thing which are so light weight but a gallery app with that feature is something awesome
It can be like a layout with a clipping box you simply resize an press search and then it opens up in the browser
So that would be great if you bring this option to your great app
Thanks in advance

Lile #99


[Backend] Create Delete Questions API  for Q&A

Description

[ ] Currently there is no api to delete the question, need an api to be created under question folder which will take the id and delete the data from db.
[ ] Only admins should have access to this api, so make sure to add the required validations.

@Kajol-Kumari  can you please assign this to me.


fix: a build error on the latest nightly

releases as version 2.0.0 on crates.io

It works, thank you!


Fix potential non-random UUIDs

Use ReadFull to fetch random bytes from crypto/rand instead of calling
Read directly as Read may read less bytes than asked.
Fix satori/go.uuid#73

@satori you may want to have a quick look at this merge-request and the related issue as it affects the uniqueness guarantee of uuids generated by the library.

Is @satori still active?


[FIX] fix doc

Description
Fix documentation regarding deprecation of the repo -> url with type package in favour of the pip -> index_urls option.
Self Check:
Strike through any lines that are not applicable (~~line~~) then check the box

[ ] Attached issue to pull request
[ ] Changelog entry
[ ] Type annotations are present
[ ] Code is clear and sufficiently documented
[ ] No (preventable) type errors (check using make mypy or make mypy-diff)
[ ] Sufficient test cases (reproduces the bug/tests the requested feature)
[ ] Correct, in line with design
[ ] End user documentation is included or an issue is created for end-user documentation (add ref to issue here: )
[ ] If this PR fixes a race condition in the test suite, also push the fix to the relevant stable branche(s) (see test-fixes for more info)

Renders as such:

And

Processing this pull request

Merged into branches master in 418638b4d473a08b31f092657f9e88935b272565

Processing #6198.


Disappearing Policy Reports

Hi,
I have a NetworkAssertion with a schedule every 5 mins.
It creates a CronJob with successfulJobsHistoryLimit: 3
Upon completion of the Job the operator creates a PolicyReport with
ownerReference of the probe pod.
The problem is when the owning probe pod drops out of the history
and is deleted, the PolicyReport disappears until the next Job run,
e.g
Policy Report okay (0-15 min elapsed), disappears (15-20 min elapsed), repeat cycle.
Should (can) the operators upsert of PolicyReport be amend to update the ownerReference
to the latest pod to remove the race condition and stop reports disappearing.
Best Regards

I haven't tried to replicate this issue yet but agree the policy report shouldn't be bound to the probe's lifecycle.
It should be cleaned up when the network assertion is deleted.
Thanks for the bug report.

Thank you for the exceptionally rapid fix.
I tested the branch fix and the ownership is resolved.
Unfortunately it seems it uncovers  a latent bug where the summary of tests is not correct.
2 tests, one switches to failed, then a subsequent run both pass, but summary has pass:2 fail:1.
Probably previously masked by this now fixed bug.
I will raise a separate issue.
Best Regards.


Python 3.4; twisted vs. asyncio in txaio

We migrated from channels 0.8 to 0.9.x (currently on master).
(So maybe I missed sth. that changed from 0.8 to 0.9.x)
Daphne is updated and on master too.
Django 1.9.4
Python 3.4.3
runserver with --noasgi works as expected.
but with asgi every websocket connection results in:
  File "/usr/local/lib/python3.4/dist-packages/twisted/python/log.py", line 101, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/local/lib/python3.4/dist-packages/twisted/python/log.py", line 84, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/local/lib/python3.4/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/local/lib/python3.4/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/local/lib/python3.4/dist-packages/twisted/internet/posixbase.py", line 597, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/local/lib/python3.4/dist-packages/twisted/internet/tcp.py", line 209, in doRead
    return self._dataReceived(data)
  File "/usr/local/lib/python3.4/dist-packages/twisted/internet/tcp.py", line 215, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/local/lib/python3.4/dist-packages/twisted/protocols/basic.py", line 571, in dataReceived
    why = self.lineReceived(line)
  File "/usr/local/lib/python3.4/dist-packages/twisted/web/http.py", line 1720, in lineReceived
    self.allContentReceived()
  File "/usr/local/lib/python3.4/dist-packages/twisted/web/http.py", line 1799, in allContentReceived
    req.requestReceived(command, path, version)
  File "/usr/local/lib/python3.4/dist-packages/twisted/web/http.py", line 832, in requestReceived
    self.process()
  File "/usr/local/lib/python3.4/dist-packages/daphne/http_protocol.py", line 67, in process
    protocol = self.factory.ws_factory.buildProtocol(self.transport.getPeer())
  File "/usr/local/lib/python3.4/dist-packages/twisted/internet/protocol.py", line 135, in buildProtocol
    p = self.protocol()
  File "/usr/local/lib/python3.4/dist-packages/autobahn/websocket/protocol.py", line 665, in __init__
    self.is_closed = txaio.create_future()
  File "/usr/local/lib/python3.4/dist-packages/txaio/_unframework.py", line 43, in _throw_usage_error
    "To use txaio, you must first select a framework "
builtins.RuntimeError: To use txaio, you must first select a framework with .use_twisted() or .use_asyncio()

How can we set use_twisted() or use_asyncio() ?
Daphne seems to require twisted. Why use twisted if there is asyncio (py3.4+)?

Daphne uses twisted because I'd have to write two separate codebases for asyncio and twisted otherwise so I could support 2.7 as well, which I do plan to do eventually, but it should work just fine for now; I only run on 3.4 when I'm developing channels and I've never seen this.
What version of Twisted and autobahn do you have locally?

autobahn: 0.10.9
Twisted: 15.5.0

Yeah, I'm on 0.12.1 locally - let me know if that fixes it and I can add an explicit version requirement.

Works just fine with autobahn 0.12.1.

Hmm, daphne already depends on autobahn>=0.12 - did you upgrade using pip?

The project runs in a docker container and all requirements are installed using pip.  The requirements.txt had autobahn pinned to 0.10.9.

Ah, okay, that explains it - I'll close this then, since the package version declarations are accurate.


To Reproduce
          Maybe.just(10)
                 .filter(i->{
                     lazy = false;
                     return i>10;
                 });

            assertTrue(lazy);

Expected behavior
The predicate passed to filter should be called until a terminal operation on Maybe is called.
Screenshots / test / examples
See test example above.
Additional context
Also will impact LazyEither.filter as this delegated to Maybe.filter

Merged


Create a ZuulException to be passed to ZuulRuntimeException in SimpleHostRoutingFilter

Fixes #3033

Codecov Report

Merging #3067 into master will decrease coverage by 0.07%.
The diff coverage is 52.63%.

@@             Coverage Diff              @@
##             master    #3067      +/-   ##
============================================
- Coverage     65.85%   65.77%   -0.08%
- Complexity     1439     1441       +2
============================================
  Files           182      182
  Lines          6756     6773      +17
  Branches        814      818       +4
============================================
+ Hits           4449     4455       +6
- Misses         1998     2005       +7
- Partials        309      313       +4

Impacted Files
Coverage Δ
Complexity Δ

.../cloud/netflix/zuul/util/ZuulRuntimeException.java
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

...oud/netflix/zuul/filters/post/SendErrorFilter.java
68.08% <50%> (-1.49%)
12 <0> (ø)

...ix/zuul/filters/route/SimpleHostRoutingFilter.java
85.34% <52.94%> (-3.24%)
49 <3> (+3)

...etflix/turbine/stream/HystrixStreamAggregator.java
73.68% <0%> (-5.27%)
8% <0%> (-1%)

.../netflix/eureka/server/EurekaServerConfigBean.java
21.77% <0%> (-0.24%)
30% <0%> (-1%)

...loud/netflix/zuul/metrics/EmptyCounterFactory.java
100% <0%> (+50%)
2% <0%> (+1%)
:arrow_up:

Continue to review full report at Codecov.

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


DiscordSRV Support/Lobby

So, doing /dvc start is a bit clanky and insecure. For instance, you could do /dvc start and someone else could join the voice chat.
My proposed solution is to add an optional toggle to access discordSRV's linked accounts API. This way all you would have to do is join the VC, and then it'll know which mc player it is. No need for /dvc start or /dvc stop

That could work, however, I am not sure how to do error handling. Suppose someone with the mod joins. How do we tell them that we can't make an audio sender? Users would have to give the bot permissions to disconnect them from the VC.
I think #23 is a better solution to this problem.

Im am not sure which mod you are referring to. TO issue the limitation due to the audio sender, like you said disconnecting the player would be the better option.

I accidently closed the issue

I got an awesome idea, so basically there's a lobby, whenever no one is near a Player A (who uses discord), they get moved to the lobby. However when they get near another player with SVC, they get moved to the next available VC. If there is no available VCs they get notified about it in MC. This way people will only hog ontu the VCs when it is being used.

Im am not sure which mod you are referring to. TO issue the limitation due to the audio sender, like you said disconnecting the player would be the better option.

Audio senders are what we use to make a player talk using audio from discord. They do not work if the player has SVC installed on their client

I got an awesome idea, so basically there's a lobby, whenever no one is near a Player A (who uses discord), they get moved to the lobby. However when they get near another player with SVC, they get moved to the next available VC. If there is no available VCs they get notified about it in MC. This way people will only hog ontu the VCs when it is being used.

This could work, could you make another issue for it? Also FYI, it's unlikely that I will be implementing this anytime soon.

Audio senders are what we use to make a player talk using audio from discord. They do not work if the player has SVC installed on their client

For the lobby, option they just wont get moved to the VC.

This could work, could you make another issue for it? Also FYI, it's unlikely that I will be implementing this anytime soon.

Ill just rename this issue, cause they go hand in hand. Its a solution to a solution.

The lobby idea wouldn't require DiscordSRV. I will make another issue for it


SQL digest support inline view

What type of PR is this：

[x] bug
[ ] feature
[ ] enhancement
[ ] others

Which issues of this PR fixes ：
for https://github.com/StarRocks/starrocks/issues/4606

run starrocks_be_unittest

run starrocks_clang-format


scene graph data for coco test online server

hello,thanks for you work,i can not find image scene graph for test serve,would you mind providing it? I refer to SAGE ,however,i find this issue https://github.com/yangxuntu/SGAE/issues/18 which means image scene graph for test serve is not right

I checked the data in coco_pred_sg_test.npy and found that the data is correct but the dictionary is mismatching. The relation label in  coco_pred_sg_test.npy starts from 0, while the relation dictionary in coco_pred_sg_rela.npy starts from 408.
Therefore, in order to get the correct relation labels, you should add 408 to the relation label in  coco_pred_sg_test.npy .


Remove reliance on document.currentScript

Removing recently added dependency on document.currentScript which is unavailable in IE11
Fixes https://github.com/Polymer/web-component-tester/issues/602
[x] CHANGELOG.md has been updated

So, this is a change in behavior though, yeah?

Instead of loading wct's browser.js with an npm query param, now the toplevel page needs to be loaded with the npm query param. Is this documented somewhere? I think it should definitely be in the changelog.

@rictic I added behavior that checked for "npm mode" by incorrectly choosing to use document.currentScript -- That check itself breaks in IE11 and people that could care less about npm mode are effected.

The top-level page is loaded with the npm query param by wct.  That behavior already happened.

I'll put the note in the changelog, but we havent really covered anything wrt npm testing with wct yet... That is forthcoming

So previously you would both load the toplevel page with ?npm=true and you would load browser.js as browser.js?npm=true?

Ah ok, yeah a line in the changelog is enough then. I'm not sure I 100% get the change, but I'm not blocking this PR from landing.


New

Description

Name:

HD Derivation Scheme:

Symbol:

Documentation:

Reason:
Checklist
Finish check list here.

Nhận


Updating for v9: update dependencies and CI

Hello everyone!
This PR is referencing this issue.
Quick question, should I leave "pino-std-serializers": "^6.0.0" like this? Or do we expect a major release after the update for v9?
Thank you in advance!
@jsumners

Quick question, should I leave "pino-std-serializers": "^6.0.0" like this? Or do we expect a major release after the update for v9?

We will not be able to release new versions of ecosystem modules until pino@9 is ready to be released. The updated ecosystem modules will be remain on their respective next branches until that time (see https://github.com/orgs/pinojs/projects/1). Any modules that have dependencies on each other should use git URLs to specify the dependencies until we are ready to publish actual versions.

I never used such a syntax, I researched a little bit and I hope this is the correct one, but correct me if I'm wrong!

Because test response comes always with different uncovered line numbers, I'm a bit confused!
Thank you in advance as always for your response!

The primary issue is that this test is failing under Node 20: https://github.com/pinojs/pino-http/blob/9bf08025852013b5927b5b275ec5bc23fb38a015/test/test.js#L477-L517
It's not clear to me why. I reduced the issue down to the following script that works correctly under Node 18 but returns a 400 response under node 20:
'use strict'

const http = require('http')
const net = require('net')

const server = http.createServer(function (req, res) {
  res.statusCode = 200
  res.end('ok')
})

server.listen(0, '<IP_ADDRESS>', function (err) {
  if (err) {
    console.error(err)
    server.close()
    return
  }

  const client = net.connect(server.address().port, '<IP_ADDRESS>', () => {
    client.write('GET /delayed HTTP/1.1\r\n\r\n')
  })

  client.on('data', (data) => {
    console.log('data: ', data.toString())
    client.destroy()
    server.close()
  })
})

@mcollina any ideas here?

@Ranieri93 you should be able to rebase now to get passing tests.


Return proper exit codes from commands

It seems that most everything currently returns 0, even when things fail. The following should be happening:
When a command calls exit(status_code), or its main method returns, store exit code, then call pthread_exit, and return exit code.

I think I have solved this issue. The bad news is I used a global variable (global_errno) and redefined exit as a function.
You can test it with commit b5f1cb5

Can I close this issue?


Security Audit

Use a 3rd party to perform a security audit of KEDA.
CNCF provides this and can be requested.

Audit was requested, RFP was sent out and audit will start soon.

Report is available here.
https://github.com/trailofbits/publications#cloud-native-reviews

Blog post:

https://ostif.org/our-audit-of-kubernetes-event-driven-autoscaling-keda-is-complete/
https://www.cncf.io/blog/2023/02/02/results-of-the-keda-security-engagement/
Tweet: https://twitter.com/kedaorg/status/1621507811095244801


Removing stories from main application

This PR removes the individual stories from the main application and setups a plugin system that is checked upon initialization for any stories installed by the user. See https://github.com/cosmicds/cosmicds-hubble for the Hubble's Law story repo.

@nmearl For testing this, I assume that you'd recommend installing this branch together with the cosmicds-hubble master in the same environment?

Yeah, that's right.

Does it make sense to change setup.cfg in cosmicds-hubble to point here (just while testing), rather than the cosmicds master? I'm just thinking about checking if there are any issues with the removed dependencies that we were talking about earlier.


Update from OliverBalfour/obsidian-pandoc

Push changes from main repo

There really isn't a reason to keep this fork updated given that Oliver has become active again and is maintaining the plugin. We'll do some cleanup soon.

I think according to this https://github.com/OliverBalfour/obsidian-pandoc/issues/139 that Oliver wants to pass the repo to this GitHub org and there hasn't been an update in a few months. This can be closed though if it's better to come from the current repo maintainer.

Ah I missed the development. Thanks for the update!

This would be really useful. I get by so far, but I already know that there will be a date at which I will have to ditch obsidian pandoc for the more complicated rmd-instance solely because no images will become a deal-breaker. So far, I can get by. I might also just write my own dirty hack for this that is in conceptualisation so far.
Given that there are 2 and a half-ish alternative relative image path fixes up so far in that #139, I am at least hopeful that it might get resoved at some point. What confuses me is the "alternative relative image [...]". This suggests that a solution exists which allows image export already, but that there might be better methods of doing so. To my knowledge, that is not the case.

As  far as I know, images are just not implemented at all so far. (At least the doc's don't seem to mention them at all, and any and all attempts at exporting an image so far has failed miserably on my end.)
Can someone with a bit more knowledge on the current state of things perhaps confirm if that assumption of mine is correct as of right now?
If I am wrong, please help me figure out how to do so :P


plotbase.plot_phased_mag_series: add model option

looks like the following if you use it

Thanks, this is pretty awesome!
Minor comment on the linewidth of the model plot: let's make this linewidth=2 or so instead of linewidth=1 so it's a bit more prominent.
Also, I'll take advantage of you working on this file already to ask if you mind adding a plot_phased_magseries function wrapper in plotbase.py that just calls plot_phased_mag_series with all the same args. This will make it mirror the lcfit.[fitype]_fit_magseries functions and makes for a bit more fluent API.

done, see pic

Awesome, thanks again!


Select number of days scrolled

With the current version, if you change to less than 7 days displayed with the numberOfDays props, the scroll is really weird. It jumps an amount of numberOfDays in your scroll. And you quickly lose track of your weeks.
If you check what Google Agenda is doing, when you have 7 days displayed, the scroll amount is 7 days.
If you have less than 7 days displayed, it will scroll 1 day. That way you always have control.
I think we have two options here:

we add a new prop to select the numberOfDaysJump so we can handle this option manually.
we do the math and scroll 7 days when 7 days shown, otherwise 1 day.

Here a small video showing the behavior on Google Agenda:
https://user-images.githubusercontent.com/130704/131230903-15fd63d6-ef32-45b9-af92-c517f628074e.MP4
What do you think?

Thanks @rdewolff, I agree with this. I would prefer a general prop such as numberOfDaysJump, jumpOnlyOneDay, or something similar, to allow the developer selecting the best option for them.
I'm very busy at the moment, so I don't know when I will be able to implement this :slightly_frowning_face:.
I would be happy to give pointers if you want to implement it yourself and send a PR :slightly_smiling_face:

Small update: I've been trying to implement this feature. At first, it should not be too hard, but I run into an unexpected issue. See this examples with 3 and 5 days in the grid:

With 5 days it looks good, but with 3 days the days get slightly (and progressively) shifted in the horizontal axis (I hope it can be noted in the GIF). This is due to a small differences in pixels in the width of the days. Specifically:

If the width of grid is divisible by the numberOfDays, all the days have the exact same width (the 5 days case, in my example)
If is not divisible, some days may have off-by-one different widths in pixels (the 3 days case)
When setting "how much to scroll" I used the snapToInterval prop, which receives a number --> the width of the day --> all days should have the same width for it to work
Different screens and numberOfDays may present or not this issue

I'm trying to solve this to release this feature


Unable to create different dashboards (for specific tenant) | unable to filter logs by index (for specific tenant)   [BUG]

What is the bug?
User permission not being applied in specific tenant.
How can one reproduce the bug?
Steps to reproduce the behavior:

I logged in with admin into opensearch dashboard and switched to custom tenant called "rmk" and created simple dashboard using gauge count which has container* index pattern  (index pattern "container*" was created first).
I then created a user to map it to the role I had created for rmk tenant.

What is the expected behavior?
My expectation is that the user can only view logs and dashboard related to container* but after the security permissions applied the user is unable to view any dashboard or logs in discovery in "rmk" tenant. However, when I logged in with admin back again, I noticed that the dashboard and saved objects were visible in global and rmk tenant.
What is your host/environment?

OS: [e.g. iOS] -- Linux/UNIX ( AWS - EKS)
opensearch - dashboard (helm chart- 1.2.0 / app version - 1.2.0 )
opensearch - (helm chart 1.7.4 / app version 1.2.4 )
Plugins -- ( Did not add additionally, default from helm chart app version 1.2.0)

Do you have any screenshots?
When the user logs in (tenant "rmk") the permission applied by the admin does not apply. The page seems blank when discover, dashboard or visualise is clicked at left bar.

Could someone help me understand the steps required to give only permissions related to read and search container* pattern for specific tenant?

.kibana* needs to be added in index.

@rashed-k This sounds like a support issue, we have many questions and answers on the OpenSearch forums - check it them out here https://forum.opensearch.org/c/security/3


Cannot load VAE from the hpcai-tech/OpenSora-VAE-v1.2

I modify the config and run with the following error.
OSError: PixArt-alpha/pixart_sigma_sdxlvae_T5_diffusers does not appear to have a file named config.json.
In the code,
def OpenSoraVAE_V1_2(
    micro_batch_size=4,
    micro_frame_size=17,
    from_pretrained=None,
    local_files_only=False,
    freeze_vae_2d=False,
    cal_loss=False,
):
    vae_2d = dict(
        type="VideoAutoencoderKL",
        from_pretrained="PixArt-alpha/pixart_sigma_sdxlvae_T5_diffusers",
        subfolder="vae",
        micro_batch_size=micro_batch_size,
        local_files_only=local_files_only,
    )
    vae_temporal = dict(
        type="VAE_Temporal_SD",
        from_pretrained=None,
    )
    shift = (-0.10, 0.34, 0.27, 0.98)
    scale = (3.85, 2.32, 2.33, 3.06)
    kwargs = dict(
        vae_2d=vae_2d,
        vae_temporal=vae_temporal,
        freeze_vae_2d=freeze_vae_2d,
        cal_loss=cal_loss,
        micro_frame_size=micro_frame_size,
        shift=shift,
        scale=scale,
    )

    if from_pretrained is not None and not os.path.isdir(from_pretrained):
        model = VideoAutoencoderPipeline.from_pretrained(from_pretrained, **kwargs)
    else:
        config = VideoAutoencoderPipelineConfig(**kwargs)
        model = VideoAutoencoderPipeline(config)

        if from_pretrained:
            load_checkpoint(model, from_pretrained)
    return model

The from_pretrained path of vae_2d and vae_temporal are given, and the path of vae_temporal is None. How can I load the whole VAE from the checkpoint download from hpcai-tech/OpenSora-VAE-v1.2 ?
Thank you!

After testing, in our case, we find this problem only happens when you can no access to huggingface.com (e.g., mainland China). A quick fix is:
export HF_ENDPOINT=https://hf-mirror.com

Then you can successfully download from huggingface.

Moved to #525


PR #64 move forwards and back a word

https://github.com/antirez/linenoise/pull/64
Requires careful review

Related https://github.com/antirez/linenoise/pull/6