[SchedulerBinding] SchedulerBinding.instance.scheduleTask is jammed when Priority is idle

I found SchedulerBinding.instance.scheduleTask can be stucked in a specific scene.
Here is my example code
const tag = "ScheduleTest";

class ScheduleTestPage1 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          Center(
            child: Container(
              width: 50,
              height: 50,
              child: CircularProgressIndicator(),
            ),
          ),
          FlatButton(
              onPressed: () {
                Navigator.of(context).push(MaterialPageRoute(builder: (context) {
                  return ScheduleTestPage2();
                })).then((value) {
                  SchedulerBinding.instance.scheduleTask(() {
                    print("$tag>>>>>>scheduleTask1");
                  }, Priority.touch);

                  Future.delayed(Duration(seconds: 1), () {
                    SchedulerBinding.instance.scheduleTask(() {
                      print("$tag>>>>>>scheduleTask2");
                    }, Priority.touch);
                  });
                });
              },
              child: Text("click me "))
        ],
      ),
    );
  }
}

class ScheduleTestPage2 extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return _ScheduleTest2State();
  }
}

class _ScheduleTest2State extends State<ScheduleTestPage2> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Container(
          width: 100,
          height: 50,
          child: FlatButton(
            onPressed: () {
              Navigator.of(context).pop();
            },
            child: Text("Back"),
          ),
        ),
      ),
    );
  }

  @override
  void dispose() {
    super.dispose();
    SchedulerBinding.instance.scheduleTask(() {
      print("$tag>>>>>> call ScheduleTestPage2 dispose");
      // do something such as Exception .    throw Exception("Exception Test");
    }, Priority.idle);
  }
}

The console just print 1 log.

After debug the SchedulerBinding, I found the task was not been executed because of these code.
https://github.com/flutter/flutter/blob/80f15dcfb93867f640e39d099abdc6cb5b1f9bad/packages/flutter/lib/src/scheduler/binding.dart#L1173-L1177
The transientCallbackCount  will be increased by Ticker in SingleTickerProviderStateMixin.didChangeDependencies
https://github.com/flutter/flutter/blob/80f15dcfb93867f640e39d099abdc6cb5b1f9bad/packages/flutter/lib/src/scheduler/ticker.dart#L90-L99
I draw a timeline might explain the issue.

Because of _taskQueue.isEmpty is not true, so the remain task will not have chance to be executed  :(

Hi @SixSheeppp
As the docs says:

In your code you have a CircularProgressIndicator which is a ProgressIndicator but one of your tasks has a priority bellow animation which means it will only run once the ProgressIndicator is done and that is preventing all your tasks to run.
You have to choices: override schedulingStrategy or change your task with Priority.idle to some priority higher or equals to Priority.animation.
I do think the issue is still valid since even the first task with a priority higher than animation is not running.

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.295, on Mac OS X 10.15.7 19H2 darwin-x64, locale en)
    • Flutter version 1.26.0-2.0.pre.295 at /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision c19fdad097 (4 hours ago), 2021-01-11 22:19:02 -0500
    • Engine revision 0ed964d6b7
    • Dart version 2.12.0 (build 2.12.0-212.0.dev)

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

[!] Xcode - develop for iOS and macOS (Xcode 12.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.1, Build version 12A7403
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

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

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

[✓] IntelliJ IDEA Community Edition (version 2020.3.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 52.1.5
    • Dart plugin version 203.6912

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

[✓] Connected device (3 available)
    • sdk gphone x86 64 (mobile) • emulator-5554 • android-x64    • Android 11 (API 30) (emulator)
    • macOS (desktop)            • macos         • darwin-x64     • Mac OS X 10.15.7 19H2 darwin-x64
    • Chrome (web)               • chrome        • web-javascript • Google Chrome 87.0.4280.141

! Doctor found issues in 1 category.
Process finished with exit code 0

Hi @SixSheeppp
As the docs says:

In your code you have a CircularProgressIndicator which is a ProgressIndicator but one of your tasks has a priority bellow animation which means it will only run once the ProgressIndicator is done and that is preventing all your tasks to run.
You have to choices: override schedulingStrategy or change your task with Priority.idle to some priority higher or equals to Priority.animation.
I do think the issue is still valid since even the first task with a priority higher than animation is not running.

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.295, on Mac OS X 10.15.7 19H2 darwin-x64, locale en)
    • Flutter version 1.26.0-2.0.pre.295 at /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision c19fdad097 (4 hours ago), 2021-01-11 22:19:02 -0500
    • Engine revision 0ed964d6b7
    • Dart version 2.12.0 (build 2.12.0-212.0.dev)

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

[!] Xcode - develop for iOS and macOS (Xcode 12.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.1, Build version 12A7403
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

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

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

[✓] IntelliJ IDEA Community Edition (version 2020.3.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 52.1.5
    • Dart plugin version 203.6912

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

[✓] Connected device (3 available)
    • sdk gphone x86 64 (mobile) • emulator-5554 • android-x64    • Android 11 (API 30) (emulator)
    • macOS (desktop)            • macos         • darwin-x64     • Mac OS X 10.15.7 19H2 darwin-x64
    • Chrome (web)               • chrome        • web-javascript • Google Chrome 87.0.4280.141

! Doctor found issues in 1 category.
Process finished with exit code 0

Hi @SixSheeppp
As the docs says:

In your code you have a CircularProgressIndicator which is a ProgressIndicator but one of your tasks has a priority bellow animation which means it will only run once the ProgressIndicator is done and that is preventing all your tasks to run.
You have to choices: override schedulingStrategy or change your task with Priority.idle to some priority higher or equals to Priority.animation.
I do think the issue is still valid since even the first task with a priority higher than animation is not running.
flutter doctor -v

Hi @SixSheeppp
As the docs says:

In your code you have a CircularProgressIndicator which is a ProgressIndicator but one of your tasks has a priority bellow animation which means it will only run once the ProgressIndicator is done and that is preventing all your tasks to run.
You have to choices: override schedulingStrategy or change your task with Priority.idle to some priority higher or equals to Priority.animation.
I do think the issue is still valid since even the first task with a priority higher than animation is not running.
flutter doctor -v

Hi @SixSheeppp
As the docs says:

In your code you have a CircularProgressIndicator which is a ProgressIndicator but one of your tasks has a priority bellow animation which means it will only run once the ProgressIndicator is done and that is preventing all your tasks to run.
You have to choices: override schedulingStrategy or change your task with Priority.idle to some priority higher or equals to Priority.animation.
I do think the issue is still valid since even the first task with a priority higher than animation is not running.
flutter doctor -v

Sorry for wrong action :( , could you reopen this issue?
My current soluation is to change the Task prioiry to animation .

Hi @SixSheeppp
As the docs says:

In your code you have a CircularProgressIndicator which is a ProgressIndicator but one of your tasks has a priority bellow animation which means it will only run once the ProgressIndicator is done and that is preventing all your tasks to run.
You have to choices: override schedulingStrategy or change your task with Priority.idle to some priority higher or equals to Priority.animation.
I do think the issue is still valid since even the first task with a priority higher than animation is not running.
flutter doctor -v

Sorry for wrong action :( , could you reopen this issue?
My current soluation is to change the Task prioiry to animation .

I'm hitting a similar issue - once I schedule a task with Priority.idle in my app, no tasks (even with Priority.animation or Priority.touch) get executed. The schedulingStrategy callback is not even called for them from then on.
Is it the same as this issue?
If the SchedulingBinding scheduler can easily get stuck forever, shouldn't this get a higher priority?

I see only one output of the ScheduleTest>>>>>>scheduleTask1 on the latest versions of stable & master.
Updating labels.
Launching lib/main.dart on Pixel 7 in debug mode...
✓  Built build/app/outputs/flutter-apk/app-debug.apk.
Connecting to VM Service at ws://<IP_ADDRESS>:57386/S05WLUFn-Uc=/ws
D/VRI[MainActivity](31623): Draw frame after cancel
W/WindowOnBackDispatcher(31623): OnBackInvokedCallback is not enabled for the application.
W/WindowOnBackDispatcher(31623): Set 'android:enableOnBackInvokedCallback="true"' in the application manifest.
I/flutter (31623): ScheduleTest>>>>>>scheduleTask1
W/WindowOnBackDispatcher(31623): OnBackInvokedCallback is not enabled for the application.
W/WindowOnBackDispatcher(31623): Set 'android:enableOnBackInvokedCallback="true"' in the application manifest.
W/WindowOnBackDispatcher(31623): OnBackInvokedCallback is not enabled for the application.
W/WindowOnBackDispatcher(31623): Set 'android:enableOnBackInvokedCallback="true"' in the application manifest.

flutter doctor -v
[!] Flutter (Channel stable, 3.19.3, on macOS 14.3.1 23D60 darwin-arm64, locale en-GB)
    • Flutter version 3.19.3 on channel stable at /Users/nexus/dev/sdks/flutter
    ! Warning: `flutter` on your path resolves to /Users/nexus/dev/sdks/flutters/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutter. Consider adding /Users/nexus/dev/sdks/flutter/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/nexus/dev/sdks/flutters/bin/dart, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutter. Consider adding /Users/nexus/dev/sdks/flutter/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ba39319843 (2 weeks ago), 2024-03-07 15:22:21 -0600
    • Engine revision 2e4ba9c6fb
    • Dart version 3.3.1
    • DevTools version 2.31.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Users/nexus/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.2)
    • Xcode at /Applications/Xcode-15.2.0.app/Contents/Developer
    • Build 15C500b
    • CocoaPods version 1.14.3

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

[✓] Android Studio (version 2023.1)
    • Android Studio at /Users/nexus/Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.2.5)
    • IntelliJ at /Users/nexus/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 77.2.2
    • Dart plugin version 232.10286

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

[✓] Connected device (3 available)
    • Pixel 7 (mobile) • 28291FDH2001SA • android-arm64  • Android 14 (API 34)
    • macOS (desktop)  • macos          • darwin-arm64   • macOS 14.3.1 23D60 darwin-arm64
    • Chrome (web)     • chrome         • web-javascript • Google Chrome 123.0.6312.58
    ! Error: Browsing on the local area network for Dean’s iPad. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)

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

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 3.21.0-11.0.pre.64, on macOS 14.3.1 23D60 darwin-arm64, locale en-GB)
    • Flutter version 3.21.0-11.0.pre.64 on channel master at /Users/nexus/dev/sdks/flutters
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 0e268b5024 (7 hours ago), 2024-03-21 00:34:15 -0400
    • Engine revision a73e01364d
    • Dart version 3.4.0 (build 3.4.0-253.0.dev)
    • DevTools version 2.34.0-dev.5

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Users/nexus/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.2)
    • Xcode at /Applications/Xcode-15.2.0.app/Contents/Developer
    • Build 15C500b
    • CocoaPods version 1.14.3

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

[✓] Android Studio (version 2023.1)
    • Android Studio at /Users/nexus/Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.2.5)
    • IntelliJ at /Users/nexus/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 77.2.2
    • Dart plugin version 232.10286

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

[✓] Connected device (4 available)
    • Pixel 7 (mobile)                • 28291FDH2001SA        • android-arm64  • Android 14 (API 34)
    • macOS (desktop)                 • macos                 • darwin-arm64   • macOS 14.3.1 23D60 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad • darwin         • macOS 14.3.1 23D60 darwin-arm64
    • Chrome (web)                    • chrome                • web-javascript • Google Chrome 123.0.6312.58
    ! Error: Browsing on the local area network for Dean’s iPad. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)

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

• No issues found!

This is affecting customer: money. See b/348139405 for more details.

I believe this is what is happening:
scheduleTask() starts the event loop by calling _ensureEventLoopCallback() if the task queue is empty (i.e. isFirstTask). The assumption is that if there are existing tasks in the queue, the event loop should still be alive.
_ensureEventLoopCallback() in turn calls _runTasks().
void _runTasks() {
  _hasRequestedAnEventLoopCallback = false;
  if (handleEventLoopCallback()) {
    _ensureEventLoopCallback();
  } // runs next task when there's time
}

runTasks() calls handleEventLoopCallback() and if the return value is true, keeps the event loop alive by calling _ensureEventLoopCallback(). Hence handleEventLoopCallback() should only return false when there are no more events in the task queue, as the dartdoc suggests.
I think the root cause lies with handleEventLoopCallback() returning false even though there are still tasks in the queue.
The highest priority task is returned from the queue. It is passed into schedulingStrategy() to determine whether the task should run. The default strategy returns false if the priority is Priority.idle and transientCallbackCount > 0. When this happens, the function returns false and the event loop is stopped, even though the task queue is non-empty.
  /// Execute the highest-priority task, if it is of a high enough priority.
  ///
  /// Returns true if a task was executed and there are other tasks remaining
  /// (even if they are not high-enough priority).
  ///
  /// Returns false if no task was executed, which can occur if there are no
  /// tasks scheduled, if the scheduler is [locked], or if the highest-priority
  /// task is of too low a priority given the current [schedulingStrategy].
  ///
  /// Also returns false if there are no tasks remaining.
  @visibleForTesting
  @pragma('vm:notify-debugger-on-exception')
  bool handleEventLoopCallback() {
    if (_taskQueue.isEmpty || locked) {
      return false;
    }
    final _TaskEntry<dynamic> entry = _taskQueue.first;
    if (schedulingStrategy(priority: entry.priority, scheduler: this)) {
      try {
        _taskQueue.removeFirst();
        entry.run();
      } catch (exception, exceptionStack) {
        // <removed for brevity>
      }
      return _taskQueue.isNotEmpty;
    }
    return false;  // <-- this should return true, since there are indeed still tasks in the queue
  }

When a new task is later scheduled, even if it now has a high priority, _ensureEventLoopCallback is not called because the task queue is non-empty.
Henceforth, the event loop is never triggered for the rest of the app lifecycle, which causes subsequent scheduled tasks to no longer be run.
If the analysis above is correct, this issue could be fixed by changing return false; to return true; here.

Duplicate issue: #82016.
There were some attempts there for a PR (#116422) but was abandoned.

cc @goderbauer who might be able to help here.

@lauweijie please let us know if the priority here is right as well. If we have a workaround, we can reduce the priority.


Wrong URL in the "recent commit" section

Hello
The URL in the "Recent commit" doesn't follow the permalink used in .cherry.js
It gave me an URL with the following format : https://github.com/${project_name}/commit/${sha1}
But my project name isn't the same as the github one.
Could we configure the repository name in the .cherry.js file ?

Just setting a repository name wouldn't be enough as we still wouldn't know if it is on GitHub, GitLab, or something else. The ideal solution is the one we used for permalinks.
The problem, however, is that the link you mentioned is generated on the fly, in the back-end, where we don't have all the information coming from cherry config.
https://github.com/cherrypush/cherrypush.com/blob/6b98a62c0f785d48363d6d40f80b90eb33ea7c6d/app/helpers/application_helper.rb#L44-L45
I'm afraid that adding another configuration in the back-end will tend to overcomplicate things. So I'd tend towards a solution similar to permalink, where we add another option to the cherry config file, like below. Wdyt?
commitUrl: (commitSha) => `https://github.com/upflow/upflow/commit/${commitSha}`

That's fine for me :)

Okay. I'm thinking about making the following changes...
I'll describe it here, and let it sink for a few days before implementing it.
I believe a basic config file should contain nothing more than metrics and plugins:
{
  plugins: { ... },
  metrics: [{ ... }]
}

i.e, you don't even need to set a project name. Cherry should guess it based on your git remote origin.
Behind the scenes, however, Cherry guesses your repository info, such as:
{
  repository: {
    host: 'github', // from git remote origin
    owner: 'cherrypush', // from git remote origin
    name: 'cherrypush.com', // from git remote origin
    subdir: 'frontend', // calculated by comparing the path of the config file to the `git rev-parse --show-toplevel`
  },
  plugins: { ... },
  metrics: [{ ... }]
}

These would not be required, but, of course, you'd be able to manually set them if you see fit.
The most important advantages I see are:

(1) this is retro-compatible, since it will still work for your project without you having to make any changes
(2) it works out-of-the box for new users, that won't need to set up a project_name or any of that
(3) we stay flexible, cause now you can customize all of these params as you see fit (you just don't need to)

Let me know if you can anticipate any flaws or if you'd rename any of the params.
I'll probably work on it next weekend. 🏋

It seems great, it would give everything you need in order to generate URLs.
How will you make the difference between Gitlab and Github (or other)

Yes, based on the host, we can probably compose the all the URLs following a specific pattern. And there are not so many hosts, so it's ok. I'll open a PR so we can review this implementation.

I've made a bit too many unrelated changes to the CLI, so I'll take some time to cautiously review it:

https://github.com/cherrypush/cherry-cli/pull/100


Intake

Please also add limit switches that confirm when intake is OPEN, rotated UP, and rotated DOWN. Thanks!

Outdated and unneeded


ios下 左右滑动会触发苹果自带的前进后退功能，然后路由加载效果会出现两次

me too , but  we don't known how to resolve it . does any suggestions?

@xiaomiwujiecao can judge paltform by change resource code to aviod this problem in ios


RHS of contains is not parsed correctly. Data type mismatch error

@Sample
Scenario: Sample Scenario
* def actual=
"""
{
"id": "abcd",
"name": "abc",
}
"""
* def exp= {"name": "abc"}
* match actual contains '#(^*exp)'
Error -
$ | data types don't match (MAP:STRING)
{"id":"abcd","name":"abc"}
'#(^*exp)'
This works well in Version 1.0.0, but not in 1.1.0
sample.zip

@surenderRsingh I have no idea why it used to work, and I don't think it is valid.
please refactor the tests to be something like this:
* def actual = { id: 'abcd', name: 'abc' }
* def exp = { name: 'abc' }
* match actual == '#(^*exp)'
* match actual contains any exp

you are welcome to challenge this, but you can submit a PR to fix this and use this issue as a reference

Standard form expressions is used, directly from documentation.

@surenderRsingh in that example the LHS is an array.


[Question] Share Workbook status

Is there a way to find out Share Workbook status? I thought it's ShareDoc property but it's always false. I could not find corresponding property in excelpackage object.

Good question, don't know. You can rename the xlsx to zip, unzip it and look at the xml files, see if ShareDoc is there. I don't if the EPPlus library exposes that. Those are the first couple clues.

Found nothing intersting in xml files.

Was that xlsx one created with the module? Wonder if it gets sets based on how/where it gets created?

No, it was created manualy.


Optimize "GlobalErrorHandler" and refactor "SpringUtils".

Optimize "GlobalErrorHandler" for the correct response status from ResponseStatusException and refactor "SpringUtils"， renname cfgContext to applicationContext and modify the type to ApplicationContext.

I think we need more reliable libraries. You can implement the parts you need to reference in Shenyu

I will fix this.

Codecov Report

Merging #2040 (b14b03a) into master (044bcf1) will decrease coverage by 0.24%.
The diff coverage is 69.23%.

@@             Coverage Diff              @@
##             master    #2040      +/-   ##
============================================
- Coverage     60.88%   60.63%   -0.25%
+ Complexity     4026     4015      -11
============================================
  Files           602      602
  Lines         17716    17723       +7
  Branches       1687     1689       +2
============================================
- Hits          10787    10747      -40
- Misses         6057     6097      +40
- Partials        872      879       +7

Impacted Files
Coverage Δ

...enyu/web/configuration/SpringExtConfiguration.java
0.00% <0.00%> (ø)

.../apache/shenyu/web/handler/GlobalErrorHandler.java
86.36% <66.66%> (-13.64%)
:arrow_down:

...yu/admin/spring/ShenyuApplicationContextAware.java
100.00% <100.00%> (ø)

...rg/apache/shenyu/admin/spring/SpringBeanUtils.java
100.00% <100.00%> (ø)

...ache/shenyu/client/tars/common/dto/TarsRpcExt.java
0.00% <0.00%> (-30.77%)
:arrow_down:

...ache/shenyu/plugin/grpc/cache/GrpcClientCache.java
70.58% <0.00%> (-23.53%)
:arrow_down:

...enyu/client/tars/TarsServiceBeanPostProcessor.java
33.82% <0.00%> (-22.06%)
:arrow_down:

...che/shenyu/sync/data/http/HttpSyncDataService.java
72.81% <0.00%> (-8.74%)
:arrow_down:

...he/shenyu/plugin/grpc/client/ShenyuGrpcClient.java
8.69% <0.00%> (-4.35%)
:arrow_down:

...henyu/plugin/grpc/resolver/ShenyuNameResolver.java
60.00% <0.00%> (-4.22%)
:arrow_down:

... and 2 more

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 044bcf1...b14b03a. Read the comment docs.


Process.Parent property is null on Linux if the process name contains a space

Discovered in #12894
https://github.com/PowerShell/PowerShell/blob/5ef69e88bc2a6e500349a8eec8d13bb27e143e3e/src/System.Management.Automation/CoreCLR/CorePsPlatform.cs#L972-L985
If a process name contains a space (like  (ConsoleHost mai) vs (bash)) the split returns additional extra element and we get wrong value with parts[3].
The fix could be - search ) to skip the process name.
/proc/[pid]/stat format for reference https://man7.org/linux/man-pages/man5/proc.5.html
Steps to reproduce
(Get-Process -Name 'process name').Parent

Expected behavior
# Returns parent process object

Actual behavior
# Returns null

Environment data

pwsh 7.1 Preview3

I'm willing to contribute assuming help is still wanted. I have found a fix by modifying CorePsPlatform.cs, solely. The fix involves skipping the process name, as suggested. I will open a PR once I have approval. :)

Keep in mind that you could have a process name itself with one or more parentheses.  Something like:
17718 (really weird process(  ) name) T 15873 17718 15873 34816 ....
Since, per standard, the rest of the line should all be numeric fields, it might be valuable to look for the ')' in reverse and then parse from there.  You could also do a regular expression, but you have to anchor it to the start and end to ensure proper parsing:
'^\d+ \(.+\) [A-Z] (?<parent>\d+)(?: \d+){48}$'
In the above, the 'parent' named capture group would be the parent PID.  The regular expression, while computationally expensive, is probably the most robust way in my opinion.

@NoMoreFood I have accounted for the last occurring ')' using Substring and LastIndexOf, I had a feeling that will be less expensive than a regex but still work everytime, without fail.
I have a question regarding your standard process of raising a PR; will I have to fork the repo and submit a branch from there or will I be added as a collaborator and directly set an upstream branch to this repo?

Standard practice is to fork the repository, create a branch in your repository, and then
submit a pull request to merge changes in that branch into the upstream.  One the pull is submitted, this project has a bunch of test that will kick in for coding style and regression testing so watch your PR to make sure those all pass.  You'll also likely be asked to create a regression test for this problem.

Thanks for the info! I have raised PR #12925


converted to support node 6+ and not require babel

Resolves https://github.com/okgrow/merge-graphql-schemas/issues/31

Any interest in this @RodMachado ?

@tlivings I'm having trouble understanding why we would want to do this. Can you explain? ES6 modules are the future. Actually they're the present.

Most es6 is supported in Node6+ today. There is no need to be transpiling for any of the features you were using other than import. If you wish to use es6 module imports, then :+1: but at the very least it shouldn't require babel-runtime just to use this module.

Most are. But not import, which we want to use (it's been standard for 2 years). Node will always be behind so I don't think removing transpilation is a goal.

This doesn't stop you from using import in projects that utilize this library. Import is buying you nothing other than syntax sugar here - but my main point was that consumers shouldn't be required to install babel when using this module (see linked issue).

Hey @tlivings! Sorry for not responding earlier!
I agree with @pauldowman in that we want to continue using import and babel for any future es6 features. I also find it really weird that you, as a user, are being required to install babel because of code that is not used by the package in a production environment, after all we do transpile it.
So, here's what I propose. Instead of changing the src and test code to be compatible with current node version, how about if we changed the publish script to run from the dist folder, and by doing that, the published package would only contain the transpiled code.
Currently we transpile the code with the prepublish script. We just need to change it so that it copies the package.json file to the dist folder. I'll change our Semaphore script to run npm publish from the dist folder.
I believe this would solve your issue. What do you think?

@RodMachado afaik the problem is in the transpiled code for merge_resolvers.js as follows:
var _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray');

I don't think changing the publish behavior will help here.
I would recommend not transpiling all the way back to es2015. The node4 or node6 presets should be fine for your purposes since this is not an isomorphic module in the first place.
Thanks!

I am closing the PR and leaving the issue #31 with the same comments to await resolution.

@RodMachado Updated #31 with additional problem spots. Updating your preset should help quite a bit. Keep in mind that people may be consuming this module that are using node4+ and not transpiling code :)


Wellness Encounters Missing

It looks like we might have a wellness encounter issue after merging #715
Recent runs show no diagnoses of diabetes or hypertension, and some (all?) modules that wait for wellness encounters are not seeing states entered.
Verified with generate.track_detailed_transition_metrics = true and examining the output, and examining CSV files.

Commenting out the following lines in the EncounterModule fixes the issue, but then we can still have wellness encounters occurring in the middle of hospitalizations, etc.
//    if (person.hasCurrentEncounter()) {
//      // Don't start a new encounter here if there is already an active encounter
//      return false;
//    }

Maybe something is leaving an Encounter open?


Fix and extend libcpp

Two patches:

fix some const usage and except + safety in libcpp containers;
add some algorithms to libcpp.algorithm (the ones I happened to need).

This ended up exposing some latent bugs... I've merged and fixed them.


drt: routing finishes with 0 violations, but creates a short on met1

While chasing an LVS issue in a design, it looks like detailed routing created a short on met1 without reporting it as a violation:
    Completing 100% with 0 violations.
    elapsed time = 00:00:00, memory = 25517.50 (MB).
[INFO DRT-0199]   Number of violations = 0.

But there is a short between nets net718 and _017753_ on met1. This is a screenshot of just met1:

Coordinates: 1448.994, 167.121

Testcase: drt-drc-bug.tar.gz

Working on it

Thanks @osamahammad21! Any clues here?

There is a lot of discussion going on.  The basic issue is that the short falls right on the boundary between two workers and there is some conflict over ownership of the shapes and markers.  It is getting attention.

Thanks @maliberty, that gives me a possible workaround (running with ROUTING_CORES=1)

Its not such the number of threads as it is the boundary condition.  I don't think it will help but you can try.

Do we need to run convolutions over the routing grid,  or is there a more efficient solution here?

There's just a bug that needs fixing

Changing the number of threads won't change a thing. I have a local change that solves this violation. But the real problem I see here is that 0 violations doesn't actually mean 0 violations. This is because of the nature of GC being run on separate workers not on the whole design, so it's affected by what the drWorker initializes it with.

@antonblanchard The pr is merged into master, so the issue is fixed now.


Flaky KqpJoinOrder.OverrideStatsTPCDS64*

https://nebius.testmo.net/automation/runs/results/32980?group_by=automation_run_tests:status_id&group_id=3&test_id=737149651
https://nebius.testmo.net/automation/runs/results/32980?group_by=automation_run_tests:status_id&group_id=3&test_id=737149654

It was broken in https://github.com/ydb-platform/ydb/pull/5556/files


”Tăureni”, ”Fânațe”, ”Moara de Jos” are listed in the drop-down menu

Description:
When user writes ”Tăureni”, ”Fânațe”, ”Moara de Jos” the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Tăureni"

Expected results
The location appears in the drop-down menu as "Sat Tăureni, MUREȘ (Tăureni)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Fânațe"

Expected results
The location appears in the drop-down menu as "Sat Fânațe, MUREȘ (Tăureni)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Moara de Jos"

Expected results
The location appears in the drop-down menu as "Sat Moara de Jos, MUREȘ (Tăureni)".


Fix nonconcurrent tests

The cargo testsuite relies on a clean test “root” for every test (i.e. #[test]-annotated function). It relied on the test crate's behavior to spawn a new thread for each test, which isn't done when tests aren't run concurrently, breaking the test suite. In this PR, I'm using backtraces to figure out which test is being run, which is much more robust. I also cleaned up the root initialization logic so that it no longer recursive calls the init function.
Fixes #6746

r? @ehuss
(rust_highfive has picked a reviewer for you, use r? to override)

Ping @ehuss

Thanks for the PR!  I don't think we can use backtraces to detect the current test, though. For example, on mac it runs about 5 times slower than normal.
Would you be willing to try a solution that involves creating a new proc-macro attribute? I think this should work: Create a new #[cargo_test] attribute which replaces the existing #[test] attribute. It should add a #[test] attribute, and also add a call to an initialization function at the top of the test.  This initialization function can then use thread-local data to determine if it is a new test or not, and store the appropriate thread-local TASK_ID.

Done. I've put all the attribute changes in a separate commit for the reviewer's benefit.

Would it be possible to keep the attribute short, like #[cargo_test]?  What I was thinking is that the attribute would inject a call to an initialization function at the top of the test, and then remove the call to init from paths::root.  This should ensure the test is only initialized once, and only for that test.  The init function would need to check a thread-local value to determine if it is a new test, or if it is a test reusing a thread (in which case an new ID would be issued).  Also, keeping the project named cargo_test would make its intent clearer if/when adding other macros.

Would it be possible to keep the attribute short, like #[cargo_test]?

I wanted to keep the proc_macro hygenic. If you don't think that's useful, that can be done.

What I was thinking is that the attribute would inject a call to an initialization function at the top of the test, and then remove the call to init from paths::root. This should ensure the test is only initialized once, and only for that test. The init function would need to check a thread-local value to determine if it is a new test, or if it is a test reusing a thread (in which case an new ID would be issued).

This is possible but it's a pretty significant rewrite of what I've done so far for IMO very little gain. Are you worried about the perf of the Mutex?

:umbrella: The latest upstream changes (presumably #6883) made this pull request unmergeable. Please resolve the merge conflicts.

I wanted to keep the proc_macro hygenic. If you don't think that's useful, that can be done.

I don't know what this means here.  I'm not sure how injecting a call to an init function should affect hygene.

Are you worried about the perf of the Mutex?

Well, this as-is doesn't work. I'm not sure, but it looks to have some race conditions.  I would lean towards a simple solution, more analogous to traditional test suite "setup" functions, that gets run before the test starts.

I don't know what this means here. I'm not sure how injecting a call to an init function should affect hygene.

The init function is not defined by the proc macro, so if you don't pass in the path to the init function, the macro is just making up the path out of thin air, which may or may not be imported at the place the function is defined.

Well, this as-is doesn't work. I'm not sure, but it looks to have some race conditions.

I think it works fine, and there's no opportunity for a race condition because mostly everything is thread-local. The tests are currently failing because I think I changed some #[test] attributes that were inside the test cases.

@ehuss I answered your questions.

Pushed changes. If the current code is acceptable I'd prefer a quick merge since this bitrots pretty quickly.

Thanks!
I rebased and included some updates to make it publishable.
@bors r+

:pushpin: Commit a8c22ca1e801df08a515ac7a16a35034e753fa7e has been approved by ehuss

:hourglass: Testing commit a8c22ca1e801df08a515ac7a16a35034e753fa7e with merge d5723eb81a5a6755c0da6a2627f18318c031721d...

:sunny: Test successful - checks-travis, status-appveyor
Approved by: ehuss
Pushing d5723eb81a5a6755c0da6a2627f18318c031721d to master...

I am seeing thread 'publish_lockfile::note_resolve_changes' panicked at 'path.metadata() failed with The system cannot find the file specified. (os error 2)', tests\testsuite\support\paths.rs:197:25 and then all other tests are failing with thread 'registry::resolve_and_backtracking' panicked at 'Once instance has previously been poisoned', src\libstd\sync\once.rs:362:21

Can you run it again with RUST_BACKTRACE=1?

Looks like delling my cit folder fixed the problem. Sorry for the noize.

@Eh2406 I'm having a hard time reproducing the issue you are seeing.  I had a few questions:

Does it get stuck permanently?  That is, every time you run cargo test it fails until you manually delete cit?
Have you figured out a way to reliably cause it to happen? If so, can you list the exact steps?
Are you just running cargo test, or are you giving other flags?
If you can recreate it, can you modify the do_op function to print which file it is trying to delete?
Is there anything unusual about your system?  Is it running Defender or any other AV?  Are you using an editor or IDE that might be indexing the target directory?  Do you have an SSD?

Oh, I reproduced it!  I think lowering down to 2 cpu's was the trick.
I'll dig in a little more.


MATLAB language server

Language server
matlab-language-server
Requested feature
Mathworks have recently released an lsp for MATLAB (https://github.com/mathworks/MATLAB-language-server).
Other clients which have this feature
No Vim implementation only VSCode

closed by #2643


Add support for exceptions during code generation

Description
This PR allows exceptions during code generation
Motivation
Consider the following code:
    ...
    template <x64::cpu_isa_t isa>
    void jit_refine_anchors_kernel_fp32<isa>::generate() {
        ...
        vpextrd(val.cvt32(), ymm_val, i);
        ...
    }
    ...
    status_t create_kernel() override {
        const status_t code = jit_generator::create_kernel();
        if (code != dnnl::impl::status::success) {
            IE_THROW() << "Could not create kernel. Error code: " << std::to_string(code) << ". " <<
                          "Xbyak error code: " << Xbyak::ConvertErrorToString(Xbyak::GetError());
        }
        kernel_ = reinterpret_cast<decltype(kernel_)>(jit_ker());
        return code;
    }
    ...

We would see the error during code generation const status_t code = jit_generator::create_kernel(); that is sounds like bad combination, but it is not obvious where is an error code.
If we allow exceptions, then in line vpextrd(val.cvt32(), ymm_val, i); will be thrown an exception with error bad combination and it makes obvious that it happens due to wrong register type Ymm instead of Xmm (vpextrd is working with Xmm registers)

@dmitry-gorokhov Please, take a look at this PR and assign reviewers

@lohika-denis-kotov, did you estimate the impact on the binary size?

@lohika-denis-kotov, did you estimate the impact on the binary size?

@maxnick In intel_cpu plugin we have enabled exception anyway. This feature show error exactly where it happened. Do you concern that intel_cpu binary could increase ?

Yes, exactly, since we link onednn statically.

@lohika-denis-kotov, did you estimate the impact on the binary size?

@maxnick In intel_cpu plugin we have enabled exception anyway. This feature show error exactly where it happened. Do you concern that intel_cpu binary could increase ?

Yes, exactly, since we link onednn statically.

@maxnick This #ifndef DNNL_ENABLE_EXCEPTIONS do not enable exceptions for intel_cpu plugin by default.
It allow using CMake to define macro DNNL_ENABLE_EXCEPTIONS and enable exceptions for intel_cpu
I have measured the size of binary with and without enabled exceptions:
libopenvino_intel_cpu_plugin.so
without exception - 38.9 MB (38,863,216 bytes)
with exception - 38.7 MB (38,691,568 bytes)

By some reason on my machine with exceptions enabled or Xbyak size of libopenvino_intel_cpu_plugin.so dropped.
I've verified it few times

@maxnick If no other question, could you approve this PR ?

I am ok to enable Exceptions by default in debug build. At the same time given possible negative impacts I would propose to leave Release build untouched.

@dmitry-gorokhov These results I've provided for Release mode, we could also enable it for Release.
But this feature not enable exception by default, it is also required changes in main openvino repo:
target_compile_definitions(intel_cpu_plugin PRIVATE DNNL_ENABLE_EXCEPTIONS)

@dmitry-gorokhov

I am ok to enable Exceptions by default in debug build. At the same time given possible negative impacts I would propose to leave Release build untouched.

These results I've provided for Release mode, we could also enable it for Release. But this feature not enable exception by default, it is also required changes in main openvino repo:
target_compile_definitions(intel_cpu_plugin PRIVATE DNNL_ENABLE_EXCEPTIONS)

Yes, I understand that,
My point was that compile definition in OV repo should be added only for debug build.


Create CONTRIBUTING.md

Signed-off-by: John Collier<EMAIL_ADDRESS>

@mike-hoang Review comments addressed.

/lgtm

/retest


markdown: Fix error in markdown documentation and tests.

While trying to fix #7099, I observed that in the docs, the term should be marked_expected_output and not expected_marked_output as seen in https://github.com/zulip/zulip/blob/master/zerver/fixtures/markdown_test_cases.json#L7. Also in markdown_test_cases.json, the field should be text_content and not test_content.

Merged, thanks @rheaparekh!  I also added 8f9463bd72feca24498155688316a25e687b4760 on top to prevent typos like this in the future :)


feat(module:i18n): update date-fns to 2.x

PR Checklist
Please check if your PR fulfills the following requirements:

[ ] The commit message follows our guidelines: https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/CONTRIBUTING.md#commit
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Application (the showcase website) / infrastructure changes
[ ] Other... Please describe:

What is the current behavior?

Issue Number: N/A
What is the new behavior?
Does this PR introduce a breaking change?
[x] Yes
[ ] No

Other information

下一个版本是 9.0 了么？这样合进去不会有 breaking change 吗

这个PR应该是废弃了，合的是分支，不是 master
Wendell<EMAIL_ADDRESS>于2019年11月5日周二 下午6:45写道：

下一个版本是 9.0 了么？这样合进去不会有 breaking change 吗
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/NG-ZORRO/ng-zorro-antd/pull/4345?email_source=notifications&email_token=AFNO4ISMKIQ6AMQA4CXOG3LQSFFDTA5CNFSM4JE57CQ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDCM37I#issuecomment-549768701,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFNO4IQWCMUHGUMMZ4ENB4DQSFFDTANCNFSM4JE57CQQ
.


Is the project actively maintained?

Hi all,
Together with a few colleagues, we've been testing this plugin and found some things we would like to contribute. Then we browsed the PRs and saw that some of those things were already implemented by @atsaki. We also saw that, although, people commented very positively in the PRs, they are still pending (the oldest one is from Nov last year).
So, our question is, are the original developers still maintaining the plugin?
Or, are there forks already being maintained independently?
Cheers,

Hi,
Sorry to say but the original Developers have left Klarna, and we are not actively using it anymore therefor we do not maintain it.
We will update the description asap.
Kind regards

@tobpal Thanks for the quick reply.
Please let me use this post to ping the people that contributed the last so we can have a discussion about where to take the project.
ping @atsaki, @mindjiver, @lndbrg, @wico, @petrhosek
Anyone willing to jointly take over the maintenance of the plugin?

Hi! Since me, @loa and @lndbrg are no longer employed by Klarna and have no access to a Cloudstack instance it's hard for us to perform any development or maintenance.
So if someone out there would like to take over the maintenance it would be great. I mostly did the release engineering parts of tagging and uploading the resulting gem.

I'd be happy to see the project live on, but not with me as one of the maintainers. :)

Good old times :)

Hi guys,
Thanks for all the input.
We, at Schuberg Philis, would be happy to continue the project.
We run our cloud on Apache CloudStack and are actively contributing to that project as well.
So it would make much sense for us to pick this project up, since it is a key component for our development activities (i.e. it integrates two major tools we use).
Please let us know if you would be interested in passing on the development of vagrant-cloudstack to us. We would, of course, import the git tree with the original code and commits to our organisation in github, and take it from there.

From my point of view: That's the best way forward!

@miguelaferreira I also developed/mainted the Packer builder for Cloudstack ( https://github.com/mindjiver/packer-cloudstack ) is that something you use as well?

@mindjiver Thanks. In principle yes. But I won't have the free cycles to commit to both projects. I've asked internally to see if someone steps up.

I've created a repo under our organisation https://github.com/schubergphilis/vagrant-cloudstack
I've moved the entire git tree there, and merged the pending PRs.
Once we are ready to make a new release, we will probably need some help with uploading it to RubyGems.org since you guys own the gem too.
@mindjiver I found colleagues interested in committing to the packer-cloudstack project.
Shall we do the same type of transfer for this project too? Or do you have something else in mind?

@miguelaferreira Either that or I would need a API end point to test towards. If your things are internal then I guess the best thing is to move over the development to your org. I'm happy to help out with any questions about the project.

@loa  could you add me to the gem project on rubygems.org?
My profile: https://rubygems.org/profiles/miguelaferreira

@mindjiver Well, I think that the best would be to transfer the project since our cloud is not public. However, if you still want to contribute we can try to find a solution to give you access to a testing environment.

@miguelaferreira It's fine by my if you continue development :smile: I have used CloudStack enough in my time.

@miguelaferreira I'm not part of Klarna any longer. Me still being owner of the gem  is probably a mistake.
It's better if @wico changes the ownership since he's working at Klarna.

@miguelaferreira I would be happy you continue development of this project :)

@loa I'll look at it in a less busy minute.

As a user, I too would be quite interested in seeing this plugin continue with development. I would help out in the coding but I don't know any Ruby

@loa @mindjiver @lndbrg I will transfer that repo to @miguelaferreira
+
I'll change the https://rubygems.org/gems/vagrant-cloudstack (gem)ownership to miguelferreira too.
Any dissenting votes?

@wico Sounds great

:+1:
:shipit:

quorum reached. I'll start the repo-transfer now, the gem-ownerships comes tomorrow (I'm not at klarna actually).

Super! Thanks a lot guy.

"You can only transfer a repository from an organization to yourself at this time" ;)
[ ] GitHUB

I guess that means you would need to do it in two steps?

"Something went wrong with that request. Please try again." ;)
However - check your inbox. There should be an incoming request.

I did get the request and accepted it :+1:

perfect, done, looks good to me.

I will now start by updating the README, review PRs, etc
And along the way, move the repo to Shuberg Philis organisation

Thanks. Please keep that little piece of code in a good shape. :) Especially @mindjiver will appreciate that!

We will do our best and contribution is, of course, always welcome.

@loa FYI: the related gem is now owned by @miguelaferreira.

@mindjiver OK with transfering packer-cloudstack to @miguelaferreira too?
@miguelaferreira We probably continue using that packer-"plugin" in the future, but there should be no problem to contribute to you then.

@wico  I've asked @mindjiver to change the license of the packer project to Apache 2.0 because that fits bets with our open-source software policy. However, if that is too much work we can also work with the Mozilla license, although not ideal.
What we can't do, is relicense it ourselves. So, the license we get from you is the one that stays. Hence the request.
I do have some colleagues very eager to start maintaining the packer-cloudstack project since they are working on integrating terraform with cloudstack. So, please do let me know when I can give them the news :)

As packer-cloudstack inherited the MPL2-0 license from the original packer tree, I personally think its not possible to re-license it (at least we are not allowed to do so afaik).

I've checked with a colleague that is part of the Apache Foundation and his interpretation was that, since the packer-cloudstack project has its own code base (i.e. it does not share code with the "parent" project), ti would be fine to have a different license.
But as I said, if checking this is too much trouble, or you guys just don't feel comfortable doing it, that's fine. We can work with the Mozilla license.

I think some code is shared (cloned) and reused from packer, thus I would stay with the MPL2-0 - however:
Its up to @mindjiver to transfer the repo and fiddle with licenses as @mindjiver's is the most up-to-date repo anyway (the version at klarna is 10 commits behind mindjiver:master).
I again say thanks for taking care of all this!

Just to let you know that i'm interested to help, since I have access to a cloudstack instance in our private IaaS, and using the plugin.

@dduportal you are very welcome to help in any way you can


⚠ Bofrost.de has degraded performance

In d4df37a, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1892 ms

Resolved: Bofrost.de performance has improved in 3df8cad after 13 minutes.


conformance: echoserver logging and shutdown is insufficient

echoserver logs are very sparse. For example: https://storage.googleapis.com/istio-prow/pr-logs/pull/istio_istio/44861/integ-cni_istio/1656532051194548224/artifacts/pilot-db897f21a3214f5399a68bd4e/TestGatewayConformance/_test_context/gateway-conformance-infra-state2110935622/primary-0/infra-backend-v2-74fdd9c89f-k5dlv_infra-backend-v2.log
This makes it hard to debug, as we don't even have timestamps on the logs.
The shutdown logic is also not sufficient. When it gets a SIGTERM, it exists with a non-zero exit code unexpectedly. This, in turn, triggers our tests to send alerts as we don't want pods to fail in our tests.
Example of the Pod after shutdown:
  containerStatuses:
  - containerID: containerd://f61d2e6ee6ba6d4c0fe860dbaccf54a4460067ab8c53c3113daf8a3d7ff019b3
    image: gcr.io/k8s-staging-ingressconformance/echoserver:v20221109-7ee2f3e
    imageID: gcr.io/k8s-staging-ingressconformance/echoserver@sha256:fa56a9251de6408c474d70a40f6cbf19c30954bb97dc1e6dfd5a3c9911b6991f
    lastState: {}
    name: infra-backend-v1
    ready: false
    restartCount: 0
    started: false
    state:
      terminated:
        containerID: containerd://f61d2e6ee6ba6d4c0fe860dbaccf54a4460067ab8c53c3113daf8a3d7ff019b3
        exitCode: 2
        finishedAt: "2023-05-11T16:17:07Z"
        reason: Error
        startedAt: "2023-05-11T16:16:34Z"

Writing a better echoserver seems like a great first issue. (just add logs...)

Sounds good, and as @bowei suggested might be reasonably low-hanging fruit for someone.
/triage accepted
However we're currently focused on getting our GA release completed (see milestone v1.0.0) and this would not seem to be something that would need to block the release, so we're not ready to prioritize this and we would ask that v1.0.0 milestone issues get priority so we can focus there, and come back to this after the release.

/remove-lifecycle rotten
I'd like to see this picked up.

I've been working with echo-basic and I'm planning to write up a brief document on how to do that.  I've added some logs as well, to be pushed.  Whoever takes this, ping me for details on how to work with echo-server.


⚠ Bofrost.at has degraded performance

In c8c65fd, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1923 ms

Resolved: Bofrost.at performance has improved in b3cb9f7.


[Settings] Incorrect color on checkbox description

Microsoft PowerToys version
0.1.0 (pre 0.53.0)
Running as admin

[ ] Yes

Area(s) with issue?
Settings
Steps to reproduce
Color settings:

Windows: Windows mode=dark, App mode=light
PT Settings: Mode = dark

✔ Expected Behavior
correct color
❌ Actual Behavior

Other Software
No response

cc: @niels9001

The was fixed in in 0.53.  Head over to https://aka.ms/installpowertoys to try it out


Noise Cancellation

Is your feature request related to a problem? Please describe.
Its really annoying to hear a room of 24 people all mashing their cherry MX brows when someone mentions an obscure framework and everyone wants to pretend to know what it is.
Describe the solution you'd like
It would be great to implement noise cancellation to DogeHouse so I dont have to rely on other people to use push to talk or a client side application like Nvida Broadcast.
Describe alternatives you've considered
Push to talk or a client side application like Nvida Broadcast

@hiluw we got push to talk, people just dont use it

That's my point. Noise suppression would let people who don't like push to talk still type without muting

Since project isn't continuing, I'll close this.


Would you like whether I propose a restyling logo also in svg format?

Hi, what do you mean by restyling?

I already have transform it in SVG but we could think if you want to change it or add some details..

Appreciate your help, but we already have the logo in SVG and are happy with it


refactor(isolated-declarations): reorganize scope tree

This reorganizes scope fields into levels which atomically follow the enter/leave pattern. It avoids tracking the same lenght and capacity separately for each property, and does not need to grow multiple vectors while traversing.

@lucab Just out of interest, did you see any performance change from this PR? I think it was before we added a benchmark on CodSpeed for isolated-declarations. I'm looking at revamping Semantic, and would be interested to know whether this move from "struct of arrays" style to "array of structs" was good or bad for perf.

@overlookmotel I didn't have good benchmarks to compare, but running some small examples through hyperfine and valgrind didn't show relevant changes in either directions. We can try reverting it (it seems @Dunqing may be doing that now) as see what was the real delta.
That said, here there was no consumer using the SoA to slice through a single field, but instead all Vecs were pushed/popped at the same time. Semantic may or may not have different access patterns to this one.

From the benchmark results, there is no difference in performance. However, this makes the code organization clearer.

OK cool. Thanks both for coming back. You're right lucab that Semantic may well have different access patterns, so a different approach may be appropriate there. But still interesting to know it made little difference in this case.


Error SQL statements in training steps

Thank you for your excellent work. However, when I used spider to train the model (I used the script bash train_pipeline.sh spider datasets/spider/train_spider.json datasets/spider/dev.json datasets/spider/tables.json datasets/spider/database). When sql_str is select count  (  *  )  from follows group by "value", an AssertionError occurs: Error col: "value".
I wonder what I should do to solve this problem. Should I skip all the SQL strings that cause such an error by using a simple try-except statement?
The traceback is:
  4%|█████▊                                                                                | 278/7000 [00:00<00:18, 371.50it/s]Traceback (most recent call last):
  File "/f/.conda/envs/SQL_GAR/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/f/.conda/envs/SQL_GAR/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/f/code/SQL/GAR/scripts/retrieval_model_train_script.py", line 271, in <module>
    main()
  File "/f/.conda/envs/SQL_GAR/lib/python3.7/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/f/.conda/envs/SQL_GAR/lib/python3.7/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/f/.conda/envs/SQL_GAR/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/f/.conda/envs/SQL_GAR/lib/python3.7/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/f/code/SQL/GAR/scripts/retrieval_model_train_script.py", line 39, in main
    dataset_name, train_file, tables_file, db_dir, output_dir
  File "/f/code/SQL/GAR/scripts/retrieval_model_train_script.py", line 118, in generate_triples_for_retrieval_model
    checker = RecallChecker(data_file, tables_file, db_dir, output_dir)
  File "/f/code/SQL/GAR/utils/recall_checker_utils.py", line 31, in __init__
    self.initialize(dataset_file, tables_file)
  File "/f/code/SQL/GAR/utils/recall_checker_utils.py", line 42, in initialize
    g_sql = rebuild_sql(db_id, self.db_dir, sql_nested_query_tmp_name_convert(query), self.kmaps, tables_file)
  File "/f/code/SQL/GAR/utils/evaluation/evaluate.py", line 537, in rebuild_sql
    sql = get_sql(schema, sql_str)
  File "/f/code/SQL/GAR/utils/evaluation/process_sql.py", line 630, in get_sql
    _, sql = parse_sql(toks, 0, tables_with_alias, schema)
  File "/f/code/SQL/GAR/utils/evaluation/process_sql.py", line 566, in parse_sql
    idx, group_col_units = parse_group_by(toks, idx, tables_with_alias, schema, default_tables)
  File "/f/code/SQL/GAR/utils/evaluation/process_sql.py", line 477, in parse_group_by
    idx, col_unit = parse_col_unit(toks, idx, tables_with_alias, schema, default_tables)
  File "/f/code/SQL/GAR/utils/evaluation/process_sql.py", line 241, in parse_col_unit
    idx, col_id = parse_col(toks, idx, tables_with_alias, schema, default_tables)
  File "/f/code/SQL/GAR/utils/evaluation/process_sql.py", line 209, in parse_col
    assert False, "Error col: {}".format(tok)
AssertionError: Error col: "value"
RESULT REPORT: Retrieval model fine-tune data failed!

(Because I added print(sql_str) to the Line 536 of utils/evaluation/evaluate.py, File "/f/code/SQL/GAR/utils/evaluation/evaluate.py", line 537, in rebuild_sql should be Line 536)

@fengh16 Hi Henry! It looks like a normalization bug in the Spider data, which wrongly recognizes the f1 column as a literal, and hence uses the value as the placeholder. You can just skip this particular instance, or edit line 36316 of train_spider.json file to "f1".
Side note: I cannot remember if there have other problematic instances (like this) in the original train set. Just uploaded a copy of the data on my end for your reference,
https://drive.google.com/file/d/1dxSK2jlrQyzr38jYrXZsIa76CF_d2hGY/view?usp=share_link


Spread client agent of mini-dashboard

In this pull request, we provide to meilisearch-js and to instant-meilisearch the agent from which they are called: the mini dashboard.
The agent is formatted like this: Meilisearch mini-dashboard (v.X.X.X)
A script is created to keep the version of the mini dashboard up to date in the version.js file located in the sources of the app. The script is run both before starting or building the application.
While it does ensure that during development the version is kept up to date, it does not change the file if these commands are not run.
Because of that, an annotation is added in the contributing guide explicitly asking for contributors to check the version of the version.js file and an additional test is added in the check-release.sh script ran during the CI tests.

[x] Spread the users agents everywhere a Meilisearch or instantMeilisearch client is created
[x] Create a version.js file containing the current version of the mini dashboard
[x] Create a version-script that updates the version.js file on every build and start
[x] Update the contributing guide with the new requirements on release
[x] Update the check-release script to ensure that the version.js is up to date with the release tag

bors retry


(Suggestion) Additional Settings For Custom Game

The following are some settings that could be added to make Custom Game more Customizable:
Health: Toggle
Glider/Karts: Toggle
Show Usernames In Game: Toggle
(Would hide all players usernames when toggled off for games of Hide and Seek)
Minimap: Toggle
(Would prevent players from using the minimap if toggled off for games of Hide and Seek)
Knockback: Selection
(Chose from Low, Medium, or High)
Ground-Pound Jump/Dive: Toggle
Gameshark Codes: Toggle
PvP Default: Toggle
(This changes the default PvP toggle, Making More Peaceful/Chaotic Custom Games, User can still toggle it on/off)
Custom Usernames: Toggle
(This would make using Custom Usernames instead of your Discord/Gmail unavailable/available)
Profanity Filter: Toggle
Join/Leave Chat Notification: Toggle
(Would send a message in chat if a user has Joined/Left)
Public Room: Toggle
(Maybe a Public room list could be added in the future, each user could only make one room each to prevent room spam, If Toggled off it would give you a link like normal)
Public Room Name: Text Box
(Requires Public Room Toggle to be active)
Public Room Password: Toggle + Text box
(Requires Public Room Toggle and Password Toggle to be active to use text box, Would show a lock next to the room and the room creator would give out a password to use to enter the room)
Other things that could be added to custom games:
Announcement Text box
(Would be under the chat box for only the room creator, would act like public game announcements from moderators)
Kicking
(If the room creator uses "/kick [user]", the user will be kicked and will be unable to join again for another 10 minutes and would not tell them to wait or show a timer in order prevent them from joining again, /ban could also be added)
Seeker
(If the room creator uses "/seek [user]" the user would become 1.5 times bigger, deal 8 damage on all hits, and become a bright red. They would also not be able to see usernames in game or use the minimap no matter what the username/minimap settings are set to.)

I agree. Developers will add features soon in this game.

Cool ideas!

Woah! Those are some really sweet ideas! Might take a ton of time for developing, but still, I would love to see all this in sm64js.com!

Nice ideas!

Custom games are depreciated for now.


The Discord server invitation link is no longer valid.

When trying to join the Discord server, I get the message that the invitation is no longer valid. Please update the README with a new link.

Updated invite link as I have time to begin properly working on this project.


CTRL + plus does not work

    hotkeys('ctrl-+, command-+', {splitKey: "-" }, (e) => {
        e.preventDefault();
        //do something...
    });

Never gets called (the browser zooms in).
Windows 10, Chrome 88.0.4324.182 - hotkeys-js 3.8.2

probably a duplicate of https://github.com/jaywcjlove/hotkeys/issues/108


undefined reference to taiMemcpy functions even with proper linking

i'm trying to dump a specific region of memory. to do that i'm using taiHEN's peek (taiMemcpyKernelToUser) function but even when compiling with the proper stubs linked, it'll throw
undefined reference to taiMemcpyKernelToUser

nevermind, managed to fix it.
i was using
-Llibtaihen_stub.a
instead of
-ltaihen_stub
closing...


invoices: expose custom tlv records from the payload

This PR extracts the received custom records from the hop payload and stores them in the invoice database. Users can retrieve the custom records through the usual invoice queries / subscriptions.

We could prevent this by filter the custom records when reading as we do in the hop, then the data is actually dropped when writing back. This would maintain the current behavior in that scenario.

Yes that is a nice safe guard that doesn't require a different db struct. It should be in place now

needs rebase

rebased


Update CODEOWNERS and MATAINERS

What type of PR is this?
Add one of the following kinds:

subproject management

What this PR does / why we need it:
Update codeowners and maintainers of SubscriptionStatus
fix https://github.com/camaraproject/SubscriptionStatus/issues/1

@hdamker MAINTAINERS.md has been updated.

Thanks - LGTM. So we are ready as soon @Ryaaan308 has accepted and subscribed to<EMAIL_ADDRESS>

Checking if this was solved @hdamker @Ryaaan308

@jgarciahospital the invite of @ryaaan308 failed unfortunately, I have just retried the invitation. You can see if this is solved if the the CODEOWNERS here in the PR is valid.
@chinaunicomyangfan @DanXu-ChinaTelecom: can you reach out to @ryaaan308 and ask to login to GitHub and look for a message like this on top of the camaraproject?:

@chinaunicomyangfan as an alternative you could delete @Ryaan308 from the CODEOWNERS file here and we are good to go.

@hdamker Sorry Herbert，last week I was on a vacation. Now I have already join in the project.

发件人: Herbert Damker @.>
发送时间: 2024年10月10日 4:54
收件人: camaraproject/SubscriptionStatus @.>
抄送: ShuoRan ChinaUnicom @.>; Mention @.>
主题: Re: [camaraproject/SubscriptionStatus] Update CODEOWNERS and MATAINERS (PR #5)
@chinaunicomyangfanhttps://github.com/chinaunicomyangfan as an alternative you could delete @Ryaan308 from the CODEOWNERS file here and we are good to go.
―
Reply to this email directly, view it on GitHubhttps://github.com/camaraproject/SubscriptionStatus/pull/5#issuecomment-2403411036, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AVQM6EQB5WR3LYDCEVXWN2DZ2WJ2FAVCNFSM6AAAAABPBMSTUWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBTGQYTCMBTGY.
You are receiving this because you were mentioned.Message ID: @.***>

@hdamker Sorry Herbert，last week I was on a vacation. Now I have already join in the project

@Ryaaan308 Welcome! Would you mind to join the mailing lists https://lists.camaraproject.org/g/sp-kyc and https://lists.camaraproject.org/g/all as well?

Hi @Ryaaan308 ,
Welcome.  This is Toshi @ToshiWakayama-KDDI , KnowYourCustomer SP lead/primary contact.  I would like to make direct contact with you, so, could you send me an email?  You can find my email address at CAMARA Subprojects Wiki ( https://lf-camaraproject.atlassian.net/wiki/spaces/CAM/pages/14552629/Sub+Projects ).
Thanks.


Allow for arbitrary source configurations

In the python sdk you can do something like the following with just a definition id and raw json config
sdk.sources.create_source(request=models.SourceCreateRequest(
    configuration={
        "credentials": {
            "personal_access_token": github_pat
        },
        "repositories": ["myorg/myrepo"]
    },
    name='Github Source',
    workspace_id=workspace_id,
    definition_id="ef69ef6e-aa7f-4af1-a01d-ef775033524e",
))

This doesn't appear to be possible in the Java sdk, which is inconvenient for use cases where config is basically just being passed through from the parent application (already verified with jsonschema and whatnot)

Nvm, I think you should actually be able to do it with the following:
SourceConfiguration.of(objectMapper.convertValue(myConfig, SourceGithub.class));


Error in transcribing Black Walder

The BGG spoiler says he's 3 Strength, but the Thronesdb entry says 5.

Apparently, that was a mistake :(


Creative mode issue

Arrows in creative mode don't work when dropoff is installed, work again if removed.

https://minecraft.curseforge.com/projects/awakening/issues/216

Oops. Sorry about it, fixed already in dev. environment, but still need a little testing, build and re-upload. 2.8.1 will be available later today. Thanks for contributing!

Fixed with this commit.
Mod file on curseforge is approved now, grab here.
Please, test it with your mod pack and check if everything will be fine.
Also, please, backup your mod config file if you have important data stored inside.

Thanks for the quick fix :)


ComputedSet (values-only ComputedPairs)

Right now, developers using ComputedPairs have to be careful not to use unstable keys. This can subtly cause extra recalculations:
local data = State({"Red", "Green", "Blue", "Yellow"})

print("Creating processedData...")

local processedData = ComputedPairs(function(key, value)
    print("  ...recalculating key: " .. key .. " value: " .. value)
    return value
end)

print("Removing Blue...")
data:set({"Red", "Green", "Yellow"})

Right now, the solution to this problem is to make the keys stable, usually by using the values as keys:
local data = State({Red = true, Green = true, Blue = true, Yellow = true})

print("Creating processedData...")

local processedData = ComputedPairs(function(key)
    print("  ...recalculating key: " .. key)
    return key
end)

print("Removing Blue...")
data:set({Red = true, Green = true, Yellow = true})

(see https://elttob.github.io/Fusion/tutorials/further-basics/arrays-and-lists/#optimisation)
An alternate solution could be to introduce a ComputedSet object (name open to bikeshedding) - this would act like ComputedPairs, but would ignore keys completely and cache values instead. The values would still have to be non-nil and unique however.
Hypothetical usage:
local data = State({"Red", "Green", "Blue", "Yellow"})

print("Creating processedData...")

local processedData = ComputedSet(function(value)
    print("  ...recalculating value: " .. value)
    return value
end)

print("Removing Blue...")
data:set({"Red", "Green", "Yellow"})

Potentially pretty valuable (especially if we can get ipairs internally for some extra speed), but the workaround of [val] = true seems good enough for now. This definitely isn't a blocking issue, but could be in the second release!

I've decided on an API design for this after much consideration with users.
I plan to replace ComputedPairs with 3 new mapping objects (names being bikeshedded).

ForKeys
Iterates over every pair of the input table. Transforms the key using the processor function (KI) -> KO. Puts transformed key and original value in output table.
Processing only occurs when a key is added. Transformed keys are cached. Values do not trigger processing but are forwarded to the output table directly.
Ideal for transforming sets, where elements are stored as keys.
ForValues
Iterates over every pair of the input table. Transforms the value using the processor function (VI) -> VO. Puts original key and transformed value in output table.
Processing only occurs when a key is added or when a key's value changes to a non-nil value. Transformed values are cached, though care needs to be taken with handling duplicate input values to ensure every value in the output table is unique.
Ideal for transforming unordered arrays, where order does not matter but duplicates are allowed.
ForPairs
Iterates over every pair of the input table. Transforms the pair using the processor function (KI, VI) -> (KO, VO). Puts transformed pair in output table.
Processing only occurs when a key is added or when a key's value changes to a non-nil value. Transformed pairs are cached by key.
Ideal for transforming ordered arrays and dictionaries, where both keys and values carry meaning.

Under this new system there is no direct replacement for ComputedPairs. While this may sound bad, it's actually great - it forces users to consider which behaviour they need, which means Fusion can better optimise for each case without user intervention or cognitive load.

Ideal for transforming unordered arrays, where order does not matter but duplicates are allowed.

In ForValues, you say this. But doesn't this introduce the initial issue of subtle recalculations?

Ideal for transforming unordered arrays, where order does not matter but duplicates are allowed.

In ForValues, you say this. But doesn't this introduce the initial issue of subtle recalculations?

Nope! The initial issue of subtle recalculations is down to keys being assumed to carry meaning, which they don't in ForValues.
To illustrate:
local array = Value({"Red", "Green", "Blue"})

ComputedPairs(array, function(key, value)
    -- notice ComputedPairs gives you the key
    -- ComputedPairs has to assume the key could be used to calculate the returned value here
    -- therefore, we can't reuse a value if it appears at a different key
    return {
        colour = value
    }
end))

ForValues(array, function(value)
    -- here, ForValues doesn't give us the key
    -- the key could never be used to calculate the returned value here
    -- therefore, we *can* reuse a value if it appears at a different key
    return {
        colour = value
    }
end))

Specifically with respect to duplicate values, the only condition is that two values in the output array never point to the same cached object. ForValues doesn't have to make any further guarantees.

Do we want the optional destructor to be called with the output of For*? Since that's how ComputedPairs currently works:
processor: (K, VI) -> VO,
destructor: (VO) -> ()?

So the idea would be as follows,
For ForKeys:
processor: (KI) -> KO,
destructor: (KO) -> ()?

For ForValues:
processor: (VI) -> VO,
destructor: (VO) -> ()?

For ForPairs:
processor: (KI, VI) -> (KO, VO)
destructor: (KO, VO) -> ()?

If we're on it, this is a good time to implement #97 along with it

Yes - I think that the destructor should be forwarded all returned values from the processor function, including any extra metadata the user wishes to provide (see #97).


transform cartesian to window coordinates problem

here the clip position's z element should between -w to w,rather than greater than 0.due to this mistakes,some cartesian my be clip to undefined by than comparison.

Thanks @Joyzen - we'll look into this and post updates in this issue. The lines mentioned -
https://github.com/CesiumGS/cesium/blob/10112c84d7de58067b04ccb641772165af4ba81b/Source/Scene/SceneTransforms.js#L242-L251


update

sorry, did not think I would also have this Co update

in the future try to author your commit messages in this format "this commit will _____________" omit the this commit will part but try to write it in that format.

so ex. 'update county parcel update date' ?
Rick Kelson
Utah AGRC
801.538.3237
gis.utah.gov
On Wed, Aug 17, 2016 at 2:20 PM, steveoh<EMAIL_ADDRESS>wrote:

in the future try to author your commit messages in this format "this
commit will _____________" omit the this commit will part but try to write
it in that format.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/agrc/agrc.github.io/pull/203#issuecomment-240535057,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF6ebf7Ws_lqUu7C6pkwznjKCHILHY2cks5qg20dgaJpZM4Jm0sO
.

this commit will "update the county parcel info for washington"


[Bug Report][Linux] Pure performance on Celeron

Case
Show one video stream on two FullHD displays.
System
Processor: Intel Celeron J1900 (4 x 1.99 GHz)
VGA: integrated
RAM: 4 GB
Displays: 2 x 1900x1080
OS: Ubuntu 22.04.1 LTS x64
Expectation / Reality
Smooth playback / There are Jerks.
Visual test
I run two mpv instances (one per display) and visually they play smoother.
Measure test
I use intel_gpu_top utility to compare GPU load.
Two mpv instances:

media_kit:

Demo sources
Script to run two mpv instances:
#!/bin/bash

path=~/Videos
mpv --fs --screen=0 --loop-playlist=inf $path &
mpv --fs --screen=1 --loop-playlist=inf $path

Demo Flutter project
media_kit_duo.zip

flutter is pretty heavy on gpu in general compared to other UI kits, when you pair that with mpv it gets really heavy, Gen7 also have really weak gpus, it also doesn't help that the intel driver for these devices really isn't that good either.
I highly doubt any gpu heavy flutter app will be very performant on these devices until flutter manages to enable impeller + vulkan for linux, I would say this is an upstream issue more then likely

The GTK/GDK's GL implementation is already very sluggish. https://github.com/flutter/flutter/issues/88996
At the moment, package:media_kit for GNU/Linux performs the worst.
In the latest update of Flutter, I have even noticed that two simultaneous Video cause second one to not use H/W at all. And... it's a regression in Flutter; nothing can be done on my end. A number of causes.
Lastly, your machine is already having 66% load in mpv while playing two videos... maybe it can play 3 videos at once. 2 videos at once + Flutter UI doesn't look that bad.

We're certainly open to improvements & indeed there's a large scope for GNU/Linux.


Added unit test for Barbican service in Ursula

Added the tests which will run after Ursula to check if the
barbican service is installed and works as intended.

we should add couple more test around create, show and delete

@nirajdp76  Added more tests

retest

retest


Please add recommended abbreviation for Container Apps

I'm guessing this would be ca or something?

Will it be 'ca' or 'aca'? Some abbreviations add Azure prefix and others not.
They only ones I see with Azure prefix are:

'aks' for azure kubernetes service
'asa' for azure stream analytics
'adf' for azure data factory

Good question!

I suggest

aca- for azure container app
ace- for azure container app environment

@thepaulmacca - Thanks for your feedback! We've updated our guidance with ctap. It should see it shortly. Prefixing with Azure (a) does create some challenges so we've opted not to here.
Best!


[web] Edge is timing out on Windows on LUCI

Even though tests on Edge work on local without issue, on LUCI Edge is timing out.  (Last lines: https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket.appspot.com/8887473986725606768/+/steps/felt_test/0/stdout?format=raw)
This might be due to Windows bots not having GPUs or depending on the Edge settings on the bots.
We should investigate more.

/cc @godofredoc @digiter

I sent my findings in an email. I'm closing this issue.
In summary the Windows LUCI we tried is able run ie11 and Edge (based on blink). We decide to continue with that bot configuration.


TF 2.0 support

Hi @amir-abdi, not an issue as such but I thought I'd let you know I've used this script (in TF1.14) to convert keras models trained in TF2.0 and saved as .h5 files into frozen .pb files and it works just fine. Thanks for putting it on github :)

Thanks @CharlieBickerton


ninja bombing needs converting to station beacons

the warp points are a bit jank and its better if its physical objects that exist
only thing that needs to be taken care of is to make sure objective is updated if its renamed or destroyed

new shitter tactic take all the ninja beacons and move them to some random thing in space / put them in arrivals

can jsut give them a pinpointer to theirs anyway so it wont matter

still a bad thing, if ninja is told to bomb the armoury that should be what happens and is why its limited to a radius around the target. if they can just bomb anywhere the crew moves beacons to then might as well remove the limit and say bomb whatever you want

hard coding areas into the game is bad

hard coding areas into the game is bad

Also giving players the ability to mess with antag objectives like that is bad.
If Ninja can't have a specific station area then the "bomb x area" should be reverted and then they just have C4 for the fun of it like the old days.

Yeah, I don't know, making it a physical object that players can move and are aware of just seems...very gameable. Maybe it doesn't have to be warp points, but some way of designating specific rooms as bomb targets seems ideal.

The objective should be changed in some way then, I am very against areas

it should either stay as mapped only or it should just be plain c4


Remove checkboxes from issue/pr templates.

Type of change
Other enhancement

Impact
no functional change

Development Phase
implementation

Nice. This would make it look more like my recent issue? I approve

One comment on the use of bullet points for headings: it means users need to be careful about making responses sub-bullets, which I don't think everyone will. For example, note the formatting (indents and dashes) required in "Please tell us about your environment".
Here's what it currently looks like in GitHub

Type of issue: bug report | feature request | other enhancement

Impact: no functional change | API addition (no impact on existing code) | API modification | unknown

Development Phase: request | proposal

Other information

If the current behavior is a bug, please provide the steps to reproduce the problem:

What is the current behavior?
What is the expected behavior?
Please tell us about your environment:

What is the use case for changing the behavior?

Should we eliminate the bullet points? If we want a bot to tag the issue based on the categories in the PR, we need some sort of structured text to guide it.

I'm not sure bullet points will provide that structure, especially if users aren't careful about consistently formatting to that structure. Also, shouldn't the section headings (in bold too) be sufficient to extract structure from it?


Fix error in blobstore tests

Codecov Report

Merging #152 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #152   +/-   ##
=======================================
  Coverage   88.28%   88.28%
=======================================
  Files          12       12
  Lines         777      777
=======================================
  Hits          686      686
  Misses         91       91

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 57d0870...ef6cdf6. Read the comment docs.


Fix StreamType.RAW frame processing

Fix for Issue #1100. It's solve my problem.

@vektory79 thanks for your contribution! 👍

Released in 1.10.4!
Thanks for the contribution!


Make package.json Yarn friendly, call cross-env instead of npm run in script aliases

Laravel Version: 5.6.12

Description:
In file package.json ( https://github.com/laravel/laravel/blob/v5.6.12/package.json ) there are commands in scripts object. 4 of them are cross-env commands, but the rest of them (3) are aliases that calls npm instead of cross-env directly.
I'm using Yarn and I think that the aliases should not make Yarn to call npm to call cross-env, but it should call cross-env directly.
So, I suggest to write full cross-env commands.
Instead of this
{
    "scripts": {
        "dev": "npm run development",
        "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
    }
}

it should be like this
{
    "scripts": {
        "dev": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
        "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
    }
}

and do the same with watch-poll and prod scripts...
The full package.json content should be like this:
{
    "private": true,
    "scripts": {
        "dev": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
        "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
        "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
        "watch-poll": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js -- --watch-poll",
        "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
        "prod": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
        "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
    },
    "devDependencies": {
        "axios": "^0.18",
        "bootstrap": "^4.0.0",
        "popper.js": "^1.12",
        "cross-env": "^5.1",
        "jquery": "^3.2",
        "laravel-mix": "^2.0",
        "lodash": "^4.17.4",
        "vue": "^2.5.7"
    }
}

This doesn't brake anything. This is a small but significant improvement and I think that @JeffreyWay may approve on my argument.

These are just aliases. now you have duplicated code, which is ripe for mistakes.

It takes two seconds to update your package.json file to use yarn, so I don't really see a problem here.

@JeffreyWay And I'm doing it for every project. :wink:


Match upvoty repo formatting TIKI standard

Make sure upvoty repo is formatted / organized consistently with our tiki software, and therefore ready to be deployed in app
Issues to look into:

how is minimum android sdk version handled w/ TIKI
pub specs of bigger projects with dependencies?

Acceptance criteria:
1- Upvoty repo fully functional & structured and formatted like all libraries in TIKI org
2- Settle all issues above
Time Estimate - 2 hours

Done, with help of Mike.  Time Overall - about 1.5 hours


You should add alignSelf: 'stretch' styles

Thanks for awesome component! I think you should add alignSelf: 'stretch' to all examples.
<Fumi
    style={{alignSelf: 'stretch'}}
    label={'Course Name'}
    iconClass={FontAwesomeIcon}
    iconName={'university'}
    iconColor={'#f95a25'}
/>

code samples and ss for without stretch:
<View style={{flex: 1, alignSelf: 'stretch', justifyContent: 'center', alignItems:'center', backgroundColor: 'red'}}>
          <Text style={{color: 'white', fontSize: 20, fontWeight: 'bold'}}>
            Test
          </Text>
          <Fumi
            label={'Course Name'}
            iconClass={FontAwesomeIcon}
            iconName={'university'}
            iconColor={'#f95a25'}
            />
</View>

with alignSelf: 'stretch'

Thanks for reporting @melihmucuk.
I tested the problem but couldn't reproduce. It's possible it has broken with certain react-native version. I've tested and it's working fine with react-native 0.36.1.
Closing the issue now but let me know if you still experience the problem!


Error at startup

Node red crash at startup.
31 Mar 11:12:15 - [red] Uncaught Exception:
31 Mar 11:12:15 - [error] TypeError: Cannot read properties of undefined (reading 'type')
    at Node.<anonymous> (/data/node_modules/node-red-contrib-esphome/build/nodes/out.js:48:36)
    at Generator.next (<anonymous>)
    at /data/node_modules/node-red-contrib-esphome/build/nodes/out.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (/data/node_modules/node-red-contrib-esphome/build/nodes/out.js:4:12)
    at Node._inputCallback (/data/node_modules/node-red-contrib-esphome/build/nodes/out.js:46:47)
    at /usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:210:26
    at Object.trigger (/usr/src/node-red/node_modules/@node-red/util/lib/hooks.js:166:13)
    at Node._emitInput (/usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:202:11)
    at Node.emit (/usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:186:25)
31 Mar 11:12:28 - [info]

node-red version 3.0.2
Config from UI only, device with password.

@stepek version Node-RED, nodejs, node-red-contrib-esphome?
what did you do to cause this?
you can show screen / flow?

I have the same problem.
There is another node connected to the "eshome-out" node that has the "Send value on start" option enabled.
If I disable this option, everything is fine

@amoebapl I corrected the error, the problem you have is that the value comes before the connection to the esphome device

@twocolors thanks ;)

@twocolors, After updating the files directly from github everything works as it should.
Thanks :)


Add boundary penalty to Game Logic

Extend GameLogic plugin to support paring a geofence boundary for the competition area:
For example, this sets a geofence boundary of ~10km2 in the Coast environment
      <geofence>
        0 0 10.96
        <size>3162.28 3162.28 221.92</size>
      </geofence>

This area is highlighted in green in the image shown in https://github.com/osrf/mbzirc/pull/38
When a robot moves beyond the competition boundary, a time penalty is applied. There is a buffer distance for it to move back by before another penalty is incurred. This is so that we don't immediately trigger another penalty when the USV oscillates due to waves.
Other changes:

other time penalty types are included in the enum but are not used yet.
boundary penalty events are logged
added test
added IMU to USV - so that it can be recognized as a robot by game logic plugin (any entity with a sensor).

To test:

launch coast world
ros2 launch ros_ign_gazebo ign_gazebo.launch.py ign_args:="-v 4 -r coast.sdf"

Spawn the USV
ros2 launch mbzirc_ign spawn.launch.py name:=usv world:=coast model:=usv type:=usv x:=-1450 y:=0 z:=0.3 R:=0 P:=0 Y:=0

In a separate terminal, monitor the events.yml log file, e.g.
tail -f /tmp/ign/mbzirc/logs/events.yml

Move the USV out of bounds and see 2 events triggered: started and exceed_boundary_1 in events.yml. A time penalty of 300 is also added to the total_score (total score is elapsed sim time + penalty).
ign service -s /world/coast/set_pose --reqtype ignition.msgs.Pose --reptype ignition.msgs.Boolean --timeout 300 --req 'name: "usv", position: {y: 2000.0}'

Move the USV back within bounds, e.g.
ign service -s /world/coast/set_pose --reqtype ignition.msgs.Pose --reptype ignition.msgs.Boolean --timeout 300 --req 'name: "usv", position: {y: 1000.0}'

Move the USV out of bounds again and see 2 more events triggered: exceed_boundary_2 and finished. The 2nd exceed_boundary causes termination of the run.
ign service -s /world/coast/set_pose --reqtype ignition.msgs.Pose --reptype ignition.msgs.Boolean --timeout 300 --req 'name: "usv", position: {y: 2000.0}'

@iche033 , just a reminder to fix the conflicts.

@iche033 , just a reminder to fix the conflicts.

thanks, fixed conflicts


Compatibilty with BetterNether

BetterEnd's hammers are incompatible with BetterNether's gems, and this is very odd. I mean, same creator, sister mods..?

What do you mean under "BetterEnd's hammers are incompatible with BetterNether's gems"?

Looks like there will be no answer, I'll close this


How to get a list of all available boards?

Perhaps there is one, but I can't find it in the code anywhere.
It seems the client only has methods for creating objects, not for getting them: https://github.com/plish/Trolly/blob/master/trolly/client.py
And the board doesn't have any classmethods to generate them either. THe board constructor requires a board_id so that's no option either.
Did I miss anything?

The top level I use is organisation, which doesn't allow you to get a list of lists but it does allow you to get all boards. Alternatively you could use member, which will allow you to get all boards.
I have had a little look around but can't find a method for getting all lists in one call.
The client is used for making calls, all get requests use the fetch_json method, which is call from the various methods inside the trello object.
Hope that helps. Any other questions let me know.

I'm working on a little modification of Trolly so you can easily get "your" info from the client (the /me/ member and related info for example).
With a bit of luck I can add a pull-request later today

You could look at passing me as the member_id to the member class. I believe that would show you all member information?

Just did a quick test using Member(client, 'me') and then calling get_boards and this returns all boards.

I've just created a pull request which addresses the issues, adds some more docs and makes usage generally a bit more convenient (for me at least).
Let me know what you think :)

Link: #24