Support the butterfly testing network

Issue summary

It appears that the butterfly network is here to stay and will be used to test new features even before they hit calibnet. We should add support for syncing to the butterfly network.
Task summary

[x] Find the bootstrap peers
[x] Find the version schedule
[x] Find the default policy schedule

Acceptance Criteria

[ ] sync to butterflynet from a snapshot
[ ] generate butterflynet snapshots

Other information and links

The required information might only exist in the source code of Lotus.

Oh, this is a dupe of #1440

We will probably not join butterflynet since it's (again) a private "dev-network" for lotus-only nodes.
Joining Interop network will make more sense for us. As its name stands it's used for cross implementation testing (so a mix of lotus/venus/forest nodes).

I can't seem to find any documentation about the interop network.

I can't seem to find any documentation about the interop network.

Same for me. I can only find documentation for butterflynet.
https://lotus.filecoin.io/kb/butterfly-network/

Okay, let's close this issue and only support mainnet and calibnet. It does make me a little sad to see butterflynet on https://status.filecoin.io knowing Forest isn't allowed to join but I can learn to live with it. :)

We've been invited into the butterfly network. This will let us test the network upgrade before it goes live on calibnet.
Parameters: https://github.com/filecoin-project/lotus/blob/release/v1.18.0/build/params_butterfly.go


Release 0.8?

I'm currently working as a background task on a bridge between BinAST and Ratel. However, Ratel 0.7.0 and Ratel 0.8.0 seem to be very different beasts, with very different ASTs.
Which version should I target? Is Ratel 0.8.0 meant to be released soon?

Definitely target 0.8! We should at least split out the AST, Lexer and Parser out so those can be pushed forward without the whole thing being stalled due to the transformer lagging behind.

I was thinking about this after replying here. Maybe it would be a worthy goal to set up a single, semi-standard, AST structure for all of the Rust projects? The one present now in Ratel I'm happy with, but it's not extensible (for things like TypeScript types or JSX) without changes, and it is bound to Arena allocator from toolshed, which makes it really really fast to generate, but also not as easy to manipulate, and it might not even be very feasible in all scenarios (such as language servers).

JSX would be a new Expression type, TypeScript is a bit more invasive as it requires both new nodes (type/interface declarations, namespaces etc.) and expansion on existing structures (appending types to function paremeters etc.).
I'm thinking if all of that can be made generic. I'm also reading through the de part of serde to see if we could apply the same model to the parser itself, so that it doesn't actually produce any AST at all, but emits events that can be used to produce an AST. I think such approach should also make it possible to create a source code -> BinAST conversion without even creating an AST.

JSX would be a new Expression variant, TypeScript is a bit more invasive as it requires both new nodes (type/interface declarations, namespaces etc.) and expansion on existing structures (appending types to function paremeters etc.).

Well, I guess it could be new function declarations/expressions.

I'm thinking if all of that can be made generic.

I think it can. For BinAST, we're generating the AST from a webidl. We "just" need a webidl for es6, one for JSX, etc. and the spec that if there's a sum type Expression in several webidls, then we're extending that sum type.

I think such approach should also make it possible to create a source code -> BinAST conversion without going through the AST construction phase.

That would be very nice. Also the opposite: a Ratel API that would let us output JS code, ideally without having to (visibly) go through an AST construction phase.

Also, filed https://github.com/binast/binjs-ref/issues/235.

Ok, so I played a bit in the playground and basically copied the deserialization from serde:
https://play.rust-lang.org/?version=stable&mode=debug&edition=2015&gist=79f0b07ceb8d797583829895e1b8f46c
Couple observations:

This is already quite hard to follow even for this toy AST I've made.
Bolting error handling on this might be painful (unlike serde, we want to continue parsing even through errors, accumulate those and send them in a batch for better UX).
This only works for returning values. Technically you can build a stateful Visitor that can write to internal buffer and always return (), but that sounds quite hackish.

More research is needed I suppose :)


Bumping github.com/Tnze/go-mc to v1.20.2

I think Dependabot is not enabled for this repo, otherwise it should have created a PR for this bump.


chore(main): release 1.3.1

:robot: I have created a release beep boop
1.3.1 (2024-09-27)
Bug Fixes

move install kubernetes to last (ba3e5d1)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.3.1
:sunflower:


Added manage pipeline, resource and organization

Refactored managePage to be 1 file, added functionality to add users to pipelines, resource and organization
Users can also be removed
Only issue currently is users are not automatically added to org when added to a pipeline. This should be another issue

Bug:
When an item is chosen from a dropdown (ie manage organisation) and the user changes to another mange page, the currently selected item from the dropdown persists to the new page.
organisation:

changed to pipeline:


Community Meeting April 12, 2022

At 11am Eastern, 8am Pacific, 3pm UTC; find your time
Video call link: https://meet.google.com/ohf-kwvd-mrp
Or dial: (US) +1<PHONE_NUMBER> PIN: 936<PHONE_NUMBER>#
More phone numbers: https://tel.meet/ohf-kwvd-mrp?pin=9361820877398
Or join via SIP<EMAIL_ADDRESS>Meeting recordings available on YouTube at https://www.youtube.com/channel/UCfP_yS5uYix0ppSbm2ltS5Q
This issue will collect prospective agenda topics. Add topics you'd like to discuss below!

Hi, Notice the date of the meeting changed to April 14th...

Just to clarify, the community meeting is still planned for Tuesday April 12th, at the normal time.

@imjasonh Ah oops, sorry for the mixup.

An Update on @imjasonh ™

0.4 status check

Recording: https://youtu.be/xbr0Pf02Jo


Groundwork for merging projects

apply google style formatting
add cmake support
code review for compiler.cc

Thank you for the clean up work! It seems that the strange crash has vanished (probably due to using C++ containers over C FILE and malloc operations), did you locate the problem or just eliminate it by writing more clean code ;-) ?

valgrind is happy, so am I!


Read data from weighing machine via USB to serial interface

What are you trying to do?
I want to read data from a digital weighing machine connected via USB to port COM4 on my Windows 10 computer.
To do so, I need to send the character 'P' to the weighing machine and then I need to read the response.
I was also trying to send the data as hex (0x50)  but it throws an error.
What happens?
Nothing. The port gets opened, but it looks like there is no communication with it. The err and result callback variables  show undefined, both of them.
What should have happened?
I was expecting to be able to send the character 'P' to the COM port and get a weight as a result.
Code to Reproduce the Issue
const SerialPort = require('serialport');

try {
    var com = new SerialPort('COM4',{
        autoOpen:false,
        baudRate: 115200,
        databits: 8,
        parity: 'none'
    });

    com.open(function (error) {
        if (error) {
            console.log('Error while opening the port ' + error);
        } else {
            console.log('Port open');
            var sentData = 'P'

            try {
                com.write(sentData, function (err, result) {
                    console.log(err);
                    console.log(result);
                });
            } catch (error) {
                console.log('Error');
                console.log(error);
            }

            com.close();
            console.log('Port closed')

        }
    });
} catch (error) {
    console.log(error);
}

Versions, Operating System and Hardware

<EMAIL_ADDRESS>Node.js v14.12.0
Windows 10 Home Edition
Hardware and chipset: Torrey PCR Commercial Weighing Machine

I am having an issue where I cannot read data from the serialport when I declare it as a variable. Try declaring it as a constant.
my issue

I am having an issue where I cannot read data from the serialport when I declare it as a variable. Try declaring it as a constant.
my issue

Thanks, @jsftsylvain I will give it a try and let you know what happens. Cheers!

I am having an issue where I cannot read data from the serialport when I declare it as a variable. Try declaring it as a constant.
my issue

Him @jsftsylvain You were right, declaring it as a const did the job.
I managed to solve this issue by subscribing to the port events outside of the scope of the open listener.
And I ended up creating my own wrapper for this job.
You can check it out here:
https://github.com/fdbatista/nodejs-torrey-weighing-machine
It is still work in progress, but any suggestions are welcome 👍
Thanks.


DragTarget does not accept int/String, Draggable fails

Steps to Reproduce

Run flutter create bug.
Run cd bug.
Update the file lib/main.dart as follows:import 'dart:math';
import 'package:flutter/material.dart';

void main() {
  runApp(DraggableIssue());
}

class DraggableIssue extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    int intFail = 5;
    dynamic dynamicSuccess = 5;
    return MaterialApp(
      home: Column(
        children: [
          DragTarget<int>(
            onWillAccept: (int data) => true,
            builder: (context, candidateData, rejectedData) {
              return Text('y ' +
                  candidateData.length.toString() +
                  ' n ' +
                  rejectedData.length.toString());
            },
          ),
          DragTarget<dynamic>(
            onWillAccept: (dynamic data) => true,
            builder: (context, candidateData, rejectedData) {
              return Text('y ' +
                  candidateData.length.toString() +
                  ' n ' +
                  rejectedData.length.toString());
            },
          ),
          Draggable<dynamic>(
            feedback: Text('dragging'),
            data: dynamicSuccess,
            child: Text('dynamic'),
          ),
          Draggable<int>(
            feedback: Text('dragging'),
            data: intFail,
            child: Text('int'),
          ),
        ],
      ),
    );
  }
}

Run flutter run -d linux (platform shouldn't matter here).
Drag the text "dynamic" over the numbers.
Drag the text "int" over the numbers.

Expected results: The two draggables should be accepted by both drag targets.
Actual results: The "dynamic" draggable gets rejected by the DragTarget<int> widget and, more importantly, the "int" draggable is completely ignored by the DragTarget<dynamic> widget. Same happens for String instead of int.

Logs

[  +94 ms] executing: [/opt/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +45 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] 63062a64432cce03315d6b5196fda7912866eb37
[   +4 ms] executing: [/opt/flutter/] git tag --points-at 63062a64432cce03315d6b5196fda7912866eb37
[  +16 ms] Exit code 0 from: git tag --points-at 63062a64432cce03315d6b5196fda7912866eb37
[        ] 1.26.0-1.0.pre
[  +50 ms] executing: [/opt/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[   +8 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/dev
[        ] executing: [/opt/flutter/] git ls-remote --get-url origin
[   +6 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +59 ms] executing: [/opt/flutter/] git rev-parse --abbrev-ref HEAD
[   +7 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] dev
[  +75 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +90 ms] executing: /opt/android-sdk/platform-tools/adb devices -l
[  +58 ms] List of devices attached
[   +4 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[ +107 ms] Skipping pub get: version match.
[ +125 ms] Found plugin integration_test at /opt/flutter/packages/integration_test/
[ +147 ms] Found plugin integration_test at /opt/flutter/packages/integration_test/
[   +6 ms] Generating /tmp/a/bug/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
[ +128 ms] Initializing file store
[  +11 ms] Skipping target: gen_localizations
[   +4 ms] complete
[   +6 ms] Launching lib/main.dart on Linux in debug mode...
[   +6 ms] /opt/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev /opt/flutter/bin/cache/artifacts/engine/linux-x64/frontend_server.dart.snapshot --sdk-root /opt/flutter/bin/cache/artifacts/engine/common/flutter_patched_sdk/ --incremental --target=flutter --debugger-module-names --experimental-emit-debug-metadata --output-dill /tmp/flutter_tools.JGZPLW/flutter_tool.ZAGLLL/app.dill --packages /tmp/a/bug/.dart_tool/package_config.json -Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts --track-widget-creation --filesystem-scheme org-dartlang-root --initialize-from-dill build/cache.dill.track.dill
[  +15 ms] Building Linux application...
[  +25 ms] <- compile package:bug/main.dart
[   +3 ms] executing: [build/linux/debug/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug /tmp/a/bug/linux
[  +46 ms] -- Configuring done
[   +6 ms] -- Generating done
[  +11 ms] -- Build files have been written to: /tmp/a/bug/build/linux/debug
[   +5 ms] executing: ninja -C build/linux/debug install
[  +18 ms] ninja: Entering directory `build/linux/debug'
[+5899 ms] [1/5] Generating /tmp/a/bug/linux/flutter/ephemeral/libflutter_linux_gtk.so, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_value.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/fl_view.h, /tmp/a/bug/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_
[  +11 ms] [ +133 ms] executing: [/opt/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] [  +71 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] [        ] 63062a64432cce03315d6b5196fda7912866eb37
[        ] [   +1 ms] executing: [/opt/flutter/] git tag --points-at 63062a64432cce03315d6b5196fda7912866eb37
[   +1 ms] [  +29 ms] Exit code 0 from: git tag --points-at 63062a64432cce03315d6b5196fda7912866eb37
[        ] [        ] 1.26.0-1.0.pre
[        ] [  +70 ms] executing: [/opt/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[        ] [   +6 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] [        ] origin/dev
[   +1 ms] [        ] executing: [/opt/flutter/] git ls-remote --get-url origin
[        ] [   +8 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] [        ] https://github.com/flutter/flutter.git
[        ] [ +107 ms] executing: [/opt/flutter/] git rev-parse --abbrev-ref HEAD
[        ] [  +14 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] [        ] dev
[   +1 ms] [  +89 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +1 ms] [   +4 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] [  +91 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[   +2 ms] [        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'PubDependencies' is not required, skipping update.
[        ] [ +138 ms] Initializing file store
[        ] [  +11 ms] Done initializing file store
[        ] [  +49 ms] Skipping target: gen_localizations
[   +1 ms] [+3028 ms] Skipping target: unpack_linux
[        ] [ +563 ms] Skipping target: kernel_snapshot
[        ] [ +407 ms] Skipping target: debug_bundle_linux_assets
[        ] [   +1 ms] Persisting file store
[        ] [  +12 ms] Done persisting file store
[   +1 ms] [   +6 ms] build succeeded.
[        ] [  +13 ms] "flutter assemble" took 4,351ms.
[        ] [  +32 ms] ensureAnalyticsSent: 26ms
[        ] [   +2 ms] Running shutdown hooks
[        ] [        ] Shutdown hooks complete
[        ] [   +2 ms] exiting with code 0
[+1375 ms] [2/5] Building CXX object CMakeFiles/bug.dir/flutter/generated_plugin_registrant.cc.o
[ +352 ms] [3/5] Building CXX object CMakeFiles/bug.dir/my_application.cc.o
[ +266 ms] [4/5] Linking CXX executable intermediates_do_not_run/bug
[        ] [4/5] Install the project...
[  +11 ms] -- Install configuration: "Debug"
[  +33 ms] -- Installing: /tmp/a/bug/build/linux/debug/bundle/bug
[        ] -- Set runtime path of "/tmp/a/bug/build/linux/debug/bundle/bug" to "$ORIGIN/lib"
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/icudtl.dat
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/lib/libflutter_linux_gtk.so
[ +107 ms] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/version.json
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/NOTICES
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/FontManifest.json
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/AssetManifest.json
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/fonts
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/fonts/MaterialIcons-Regular.otf
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/packages
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/packages/cupertino_icons
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/packages/cupertino_icons/assets
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/packages/cupertino_icons/assets/CupertinoIcons.ttf
[        ] -- Installing: /tmp/a/bug/build/linux/debug/bundle/data/flutter_assets/kernel_blob.bin
[  +51 ms] Building Linux application... (completed in 8.2s)
[ +327 ms] Observatory URL on device: http://<IP_ADDRESS>:46685/fjuDjpNeFg8=/
[+3403 ms] Caching compiled dill
[  +29 ms] Connecting to service protocol: http://<IP_ADDRESS>:46685/fjuDjpNeFg8=/
[   +3 ms] Launching a Dart Developer Service (DDS) instance at http://<IP_ADDRESS>:0, connecting to VM service at http://<IP_ADDRESS>:46685/fjuDjpNeFg8=/.
[ +316 ms] DDS is listening at http://<IP_ADDRESS>:43533/yMokt44rJWE=/.
[  +93 ms] Successfully connected to service protocol: http://<IP_ADDRESS>:46685/fjuDjpNeFg8=/
[  +19 ms] DevFS: Creating new filesystem on the device (null)
[  +27 ms] DevFS: Created new filesystem on the device (file:///tmp/bugVFIKMW/bug/)
[   +4 ms] Updating assets
[ +170 ms] Syncing files to device Linux...
[   +3 ms] <- reset
[        ] Compiling dart to kernel with 0 updated files
[   +2 ms] <- recompile package:bug/main.dart 206a2164-d44d-4488-baae-9e0b7f56ff9a
[        ] <- 206a2164-d44d-4488-baae-9e0b7f56ff9a
[ +153 ms] Updating files.
[        ] DevFS: Sync finished
[   +1 ms] Syncing files to device Linux... (completed in 160ms)
[        ] Synced 0.0MB.
[   +1 ms] <- accept
[   +8 ms] Connected to _flutterView/0x55dea090dd20.
[   +1 ms] Flutter run key commands.
[   +2 ms] r Hot reload. 🔥🔥🔥
[   +1 ms] R Hot restart.
[        ] h Repeat this help message.
[        ] d Detach (terminate "flutter run" but leave application running).
[        ] c Clear the screen
[        ] q Quit (terminate the application on the device).
[        ] An Observatory debugger and profiler on Linux is available at: http://<IP_ADDRESS>:43533/yMokt44rJWE=/
[        ] Running with unsound null safety
[        ] For more information see https://dart.dev/null-safety/unsound-null-safety
[+5262 ms] Service protocol connection closed.
[   +1 ms] Lost connection to device.
[   +6 ms] DevFS: Deleting filesystem on the device (file:///tmp/bugVFIKMW/bug/)
[ +253 ms] Ignored error while cleaning up DevFS: TimeoutException after 0:00:00.250000: Future not completed
[   +2 ms] "flutter run" took 19,108ms.
[  +11 ms] ensureAnalyticsSent: 8ms
[   +1 ms] Running shutdown hooks
[        ] Shutdown hook priority 4
[   +3 ms] Shutdown hooks complete
[        ] exiting with code 0

Analyzing bug...

   info • Unused import: 'dart:math' • lib/main.dart:1:8 • unused_import
   info • Unused import: 'package:bug/main.dart' • test/widget_test.dart:11:8 • unused_import
  error • The function 'MyApp' isn't defined • test/widget_test.dart:16:29 • undefined_function

3 issues found. (ran in 9.0s)

[✓] Flutter (Channel dev, 1.26.0-1.0.pre, on Linux, locale en_US.UTF-8)
    • Flutter version 1.26.0-1.0.pre at /opt/flutter
    • Framework revision 63062a6443 (3 days ago), 2020-12-13 23:19:13 +0800
    • Engine revision 4797b06652
    • Dart version 2.12.0 (build 2.12.0-141.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /opt/android-sdk
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = /opt/android-sdk
    • Java binary at: /home/adabru/work/armin/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Linux toolchain - develop for Linux desktop
    • clang version 11.0.0
    • cmake version 3.19.1
    • ninja version 1.10.2
    • pkg-config version 1.7.3

[✓] Android Studio (version 3.6)
    • Android Studio at /home/adabru/work/armin/android-studio
    • Flutter plugin version 49.0.1
    • Dart plugin version 192.8052
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

[✓] Connected device (1 available)
    • Linux (desktop) • linux • linux-x64 • Linux

! Doctor found issues in 1 category.

@adabru
I tried this on macOS (since you said platform shouldn't matter), but was unable to replicate the issue. I was able to drag dynamic and int onto V0N0 without any issues. Tried on latest master.

flutter doctor -v

[✓] Flutter (Channel master, 1.26.0-2.0.pre.64, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.26.0-2.0.pre.64 at
      /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 9ff4326e1f (76 minutes ago), 2020-12-17 06:19:05 +0000
    • Engine revision 6edb402ee4
    • Dart version 2.12.0 (build 2.12.0-157.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • 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-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

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

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

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

[✓] Connected device (3 available)
    • SM G975F (mobile) • RZ8M802WY0X • android-arm64  • Android 10 (API 29)
    • macOS (desktop)   • macos       • darwin-x64     • Mac OS X 10.15.4
      19E2269 darwin-x64
    • Chrome (web)      • chrome      • web-javascript • Google Chrome
      87.0.4280.88

• No issues found!

@darshankawar Hi
Have you observed whether these values are received?

Hi @darshankawar, this is what I see (y = yes/accepted, n = no/rejected):

dynamic on DragTarget<int>: y 0 n 1 (rejected)
dynamic on DragTarget<dynamic>: y 1 n 0 (accepted)
int on DragTarget<int>: y 1 n 0 (accepted)
int on DragTarget<dynamic>: y 0 n 0 (not recognized)

What I would expect is y 1 n 0 in every case. What bugs me most is that int on DragTarget<dynamic> is completely ignored so I can't create a visual indication.
Do you observe different values?

@adabru
Thanks for details. I do see the similar values:
dynamic on DragTarget: y 0 n 1 (rejected)
dynamic on DragTarget: y 1 n 0 (accepted)
int on DragTarget: y 1 n 0 (accepted)
int on DragTarget: y 0 n 0 (not recognized)

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.64, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.26.0-2.0.pre.64 at
      /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 9ff4326e1f (24 hours ago), 2020-12-17 06:19:05 +0000
    • Engine revision 6edb402ee4
    • Dart version 2.12.0 (build 2.12.0-157.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • 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-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

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

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

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

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • Mac OS X 10.15.4 19E2269
      darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 87.0.4280.88

• No issues found!


Prep v1.5 release branch (#2041)

Backport #2155
CONTRIBUTORS GUIDE: https://github.com/grafana/alloy/blob/main/docs/developer/contributing.md#updating-the-changelog
If this is your first PR or you have not contributed in a while, we recommend
taking the time to review the guide. It gives helpful instructions for
contributors around things like how to update the changelog.
-->
PR Description
Which issue(s) this PR fixes

Notes to the Reviewer
PR Checklist

[ ] CHANGELOG.md updated
[ ] Documentation added
[ ] Tests updated
[ ] Config converters updated

Something went wrong with creating this PR. Closing and trying again.


Add support for HikariCP connection pool

Hi @lorban ,
I have looked into your PR and besides fixing the conflict, I have few concerns.

I am not sure introducing provider predefined names (using c3p0 or hikari) config property is a clean way to do this. We already have .class to provide a implementation, so it makes more sense just to let this classname value to drive the rest of config bean set. Why need another short name?

It seems that the old PoolingConnectionProvider (old c3p0) iml actually initialized the underneath DataSource in the constructor, and then leave the actual initialize() method empty. I think these should be reversed, and provide a empty constructor so that we can load the provider same way as as any custom provider.

Some one mentioned in an Issue #19 that we have hard (compile) dependency on c3p0 with quartz, so I am hoping this PR change can also remove that. We can continue to package a CP package jar if we need to, but the maven pom dependencies on "quartz" should not contains it for client. Just like a SLF4J, they have to pick an implementation for their need.

Hi @lorban ,
I have looked into this PR and have few concerns (besides the file conflicts)

Adding new provider short name (eg: "c3p0" or "hiraki") is unnecessary and might be confusing to users. We already have the "connectionProvider.class." property, and this along should be unique and able to drive what's needed for rest of the bean properties.

The existing PoolingConnectionProvider (c3p0 impl) actually invoke initialization code in the constructor, and then leave the ConnectionProvider interface's "initialize()" method empty. This should really be reversed. We should provide a default empty constructor for c3p0 and use "initialize" properly. I would like to see our own provider impl should work load and work just like any other custom provider.

In Issue#19 someone points out we have a hard (compile) c3p0 maven dependency with quartz. I was hoping this PR can also address that. Would it make sense to not couple this dependency?

+1

see #126 , which replaces this PR.  Thanks, @lorban .


Standard_ Workflow parameters : After adding some new parameters save button is in disable state instead of enable

Describe the Bug with repro steps
1.Create a new stateful logic app in standard, open the designer.
2.Validate if 'Parameters' command button shows
3. Add some parameters , save and run the workflow.
4. Expected: Adding new parameters in parameters panel after running the workflow, Save button should be enabled.
Actual: After adding some new parameters save button is in disable state instead of enable.
What type of Logic App Is this happening in?
Standard (Portal)
Are you using Preview Designer or GA Designer
Preview
Workflow JSON
{
  "definition": {
    "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
    "actions": {
      "Response": {
        "type": "Response",
        "kind": "Http",
        "inputs": {
          "statusCode": 200
        },
        "runAfter": {}
      }
    },
    "contentVersion": "<IP_ADDRESS>",
    "outputs": {},
    "triggers": {
      "When_a_HTTP_request_is_received": {
        "type": "Request",
        "kind": "Http"
      }
    }
  },
  "connectionReferences": {},
  "parameters": {
    "a": {
      "type": "Array",
      "value": [
        1,
        2
      ]
    },
    "b": {
      "type": "Bool",
      "value": true
    },
    "c": {
      "type": "Int",
      "value": 123
    },
    "d": {
      "type": "String",
      "value": "abcdef"
    }
  }
}

Screenshots or Videos

Browser
Edge
Additional context
Environmental Details:
URL: https://aka.ms/emastaging
Version : 2.20501.1.1

NOTE: If we are making any changes in workflow save button is getting enable. But Save is not enabling if we are making changes in parameters panel(adding new parameters or editing the existing parameters).

Fixed outside of this repo, will be live with our next release


[frontend] Add async machete file listener (closes #81)

Present state findings:
Build output can be turned off by ImportSpecBuilder#usePreviewMode.
Sadly the logic of ImportSpecBuilder happens deeply within somewhat experimental and therefore inaccessible (actually we just do not want to touch experimental API parts directly) scope of ProjectAware.
By continuing with gradlelike solution we must for now agree to build output after floating refresh action (however there are other inaccuracies in build tab content produced i.a. Gradle so this seems to be a common thing).
A solution may appear in the future (e.g. once the ProjectAware gets stable).


Large number is multiplied with the embedding output

URL(s) with the issue:
The url with the issue is https://www.tensorflow.org/tutorials/text/transformer
Description of issue (what needs changing):
Clear description
While, I was checking the transformers code from this tensorflow documentation, in the Encoder subsection under Encoder and decoder section, I found that before adding positional encoding, square root of d_model is multiplied with the embedding output. I doubt what is the specific reason behind multiplying the embedding output with a large number. Attaching the screenshot of the specific code snippet from the link.

This Stack Overflow thread tries to address the very same question.
Perhaps you can engage with the community there to know more. Thanks!


Changing the color of the icon set in getCustomTabView when the user changes tab.

By default, MaterialTabs has a function to change the selected text color.
But in this instance, instead of using text in the tabs, I used getCustomTabView to change it into icon instead.
Now, how can I change the color of the icon when the user changes tabs?

@zheanzy16 Good point, there is no easy developer-friendly way of doing this currently with the library as it is.
I'll try to add this to the library whenever I find free time to do so, but what would be even better is if you could fork the library, implement it yourself and contribute back (if you'd like to of course!)

@zheanzy16 Nevermind, I ended up doing it myself. I'll upload a new version of the library later tonight. Thanks for reporting this issue!

@zheanzy16 A new version of the library (2.0.5) has been released. Check it out and let me know what you think!


Set hostname for dhcp networks

For dhcp networks, ensure the hostname is set when the ip address is allocated.
Unify behavior when network is referenced either by name or by id.
Fix bug using network after it was freed
Improve test for covering new behavior
Fixes #708
Please make sure you read the contributor documentation before opening a Pull Request.

Please do not conflate all the changes into a single commit. You're solving different problems with the same PR (which is acceptable), but you should have multiple commits (eg: the fixes about the network resource being released twice should be part of a different commit)

I tend to do this except that in this case, without this change, the refactoring for setting the hostname doesn't work. The test fails. I generally don't like to make commits that don't work.
On the other hand, the way the reference to the network is freed depends on the re-organization of the code introduced. I could make a fix for that under the actual code structure, but that change will be completely lost in the second commit.

thx @flavio and @pablochacin  for this. i will have a look to this PR also next week

To elaborate more on why I'm not so convinced about using the Ref() method.
When dealing with resource cleanup a Go developer doesn't have a double garbage collector running like in this case, where we have Go's GC and the one implemented inside of libvirt.
When dealing with resources like a database object a Go developer has still to take care of invoking some finalization code before Go's GC takes the object instance out of reach. The developer does that by leveraging the defer construct and by taking a close look at how return statements are used.
I would prefer to ignore the Ref() method and take a more "idiomatic" approach to this problem. I would also, with a later series of PRs, refactor this portion of code to make it more manageable. Right now I admit that understanding when to do a defer/Free/nothing at all is complicated, but that's caused by the incredible length and branching we have in this area of the codebase.

@flavio I gave a try to your proposal and the resulting code is extremely convoluted and hard to maintain because it must ensure it will work on every possible code execution path. It is a lot of changes for something that we expect to solve by refactoring the code.
One alternative could be to change the pendingMapping structure and pass the network name or ID instead of the reference to the network and then whoever takes care of these pending mappings will obtain and release the network reference from this name or ID. I think this is trade-off between idiomatic solution and refactoring the code (it is a minor change in the code)
If you disagree with this alternative, then do you want to include this refactoring in the present PR? I would prefer not, but this is the only alternative to introducing multiple Free in the code, I prefer to refactor the code.

Let's go ahead with the Ref() approach for now. We can try to get rid of them with a future PR

@pablochacin @flavio  regarding the Ref or not Ref approach.
I'm fine with both approaches, BUT please add some comment on the design.
I remember to have looked in the past how we process networks and until you don't dive in actively in the code, you can't understand ( the code is also pretty complicated for good and bad reasons).
So if we can have comments explaining how we use the REF and why, this will be appreciate, because I have already forgotten that part of code. :grin:
A part of this,  I think we might check 2 times the testacc because imho we are modifying them to pass in an usual way and this could be there is a regression since we need to modify them to make them pass see my comments.
Thx sofar.. :sun_with_face:

I have updated the PR. I think I've addressed all the concerns except the change in the test, as @MalloZup pointed out.
I finally changed the code not to pass a reference to the network in the structure of the pending interface, but the network name. I think this way we delegate to the routine that handles the pending interfaces when tp acquire an release the network reference.

@MalloZup I would be fine approving this PR. What do you think?
Also, once merged, how can we tag a new release including this fix?

@flavio  ok I will prepare a new tag including this fix. Then we can build the RPM . @dmacvicar  is ok for you at this point to do a new release? I think we have a release draft but is more a sketch. I will need to go trough the PR merged and summarize them.
Sofar thx lot for helping and contributing. Looking forward :sunflower:  :guitar:

see  https://github.com/dmacvicar/terraform-provider-libvirt/releases/tag/untagged-30bccf4e7c1526ff1438 but is not complete.
If you want to help feel free @flavio , otherwise I will do it during the day.
@pablochacin @flavio  if you want a RPM package from master you could use the unstable repo just trigger it from the service.
If you wanna right there feel free to ask via obs I will accept.
https://build.opensuse.org/package/show/systemsmanagement:terraform:unstable/terraform-provider-libvirt

Thanks a lot, @MalloZup. Not sure what can/should/must do here.

we need to release a new version. I will make it happen


[WIP] Make language of error messages selectable in cli

Ref #759

Coverage remained the same at 90.972% when pulling c445e8457e18337be4a4a893db9a3b5b682bd9f5 on takahi-i:select-language-for-errors into e41a39bfd7f4337c6b8aa7d808ba23466392a273 on redpen-cc:master.

Coverage remained the same at 90.972% when pulling 6383f05296ffc0190d407d392b49d2b5946f385c on takahi-i:select-language-for-errors into e41a39bfd7f4337c6b8aa7d808ba23466392a273 on redpen-cc:master.

Coverage increased (+0.007%) to 90.979% when pulling 2c2726a78839647c7444c0a8dd673bf87e690bf8 on takahi-i:select-language-for-errors into e41a39bfd7f4337c6b8aa7d808ba23466392a273 on redpen-cc:master.


Support New Items Link

HI, May I know is this bot support new items link?

will fix this weekend


Check port conflict with pending containers

Swarm checks port conflict with existing containers at create time. In concurrent container creation, it should also check pending containers which are under construction. This corner case is amplified by Docker compose.
Fix #2499.
Signed-off-by: Dong Chen<EMAIL_ADDRESS>

Ping @nishanttotla, @allencloud.
Test failure is tracked by #2575, not related to this change.


Issue #698: Literal \n in crc.log

This is a fix for somewhat of an antipattern in forming log entries. For example, this
logging.Debugf("Download saved to %v \n", resp.Filename)

results in
time="2019-10-08T16:31:17-04:00" level=debug msg="Download saved to /tmp/crc316183009/oc.tar.gz \n"

The following is an analysis of why that happens. The parameters of logging.Debugf() don't produce a complete line of output but just the "msg" field of a log entry. The logger takes care of terminating lines by adding a linebreak at the end of a log entry:
https://github.com/sirupsen/logrus/blob/de736cf91b921d56253b4010270681d33fdf7cb5/text_formatter.go#L218
But why do we end up with a literal \n in the output? Look here:
https://github.com/sirupsen/logrus/blob/de736cf91b921d56253b4010270681d33fdf7cb5/text_formatter.go#L318
f.needsQuoting() returns true due to the trailing linebreak in value and our log message runs through fmt.Sprintf("%q", stringVal), which turns the linebreak back into "\n"
Just so it's as clear as possible, this is the msg log field going into the fmt.Sprintf("%q", stringVal):
(dlv) print stringVal
"Download saved to /tmp/crc285030223/oc.tar.gz \n"
(dlv) print []byte(stringVal)
[]uint8 len: 47, cap: 47, [68,111,119,110,108,111,97,100,32,115,97,118,101,100,32,116,111,32,47,116,109,112,47,99,114,99,50,56,53,48,51,48,50,50,51,47,111,99,46,116,97,114,46,103,122,32,10]
(dlv)

Note that dlv prints out ASCII 10 as \n.
And here is what is returned from fmt.Sprintf("%q", stringVal):
(dlv) print s
"\"Download saved to /tmp/crc285030223/oc.tar.gz \\n\""
(dlv) print []byte(s)
[]uint8 len: 50, cap: 50, [34,68,111,119,110,108,111,97,100,32,115,97,118,101,100,32,116,111,32,47,116,109,112,47,99,114,99,50,56,53,48,51,48,50,50,51,47,111,99,46,116,97,114,46,103,122,32,92,110,34]
(dlv)

and we end up with a log entry that looks like this:
time="2019-10-08T20:57:58-04:00" level=debug msg="Download saved to /tmp/crc285030223/oc.tar.gz \n"

Can one of the admins verify this patch?

ok to test

The changes that are unrelated are acceptable


Problem installing mongo extension

Describe the bug
When I want to run composer install using this action, the mongo extension seems missing.
To Reproduce
You can find the execution here:
https://github.com/core23/setup-php-mongo-bug/commit/25a4ba2d3b0f1ad5d027c2ab6700f2590b4fafd4/checks?check_suite_id=380472442
on:
  pull_request:
  push:
    branches:
      - master
    tags:
      - "**"

name: "Continuous Integration"

jobs:
  test-mongo:
    name: "Test Mongo"

    runs-on: ubuntu-latest

    strategy:
      matrix:
        php-version:
          - 7.4

    steps:
      - name: "Checkout"
        uses: actions/checkout@v1

      - name: "Install PHP with extensions"
        uses: shivammathur/setup-php@v1
        with:
          coverage: none
          extensions: "mbstring, json, mongo"
          php-version: ${{ matrix.php-version }}

      - name: "Install locked dependencies with composer"
        run: composer install --no-interaction --no-progress --no-suggest

Expected behavior
When adding the mongo extensions, composer will find it.

@core23 ext-mongo is not available for PHP 7.0 or newer. It only supports PHP 5.6.
To use doctrine/mongodb with PHP 7.0 or newer use ext-mongodb with alcaeus/mongo-php-adapter
See here for more info

https://www.doctrine-project.org/projects/doctrine-mongodb-odm/en/1.2/reference/introduction.html#using-php-7

Try
on:
  pull_request:
  push:
    branches:
      - master
    tags:
      - "**"

name: "Continuous Integration"

jobs:
  test-mongo:
    name: "Test Mongo"

    runs-on: ubuntu-latest

    strategy:
      matrix:
        php-version:
          - 7.4

    steps:
      - name: "Checkout"
        uses: actions/checkout@v1

      - name: "Install PHP with extensions"
        uses: shivammathur/setup-php@v1
        with:
          coverage: none
          extensions: "mbstring, json, mongodb"
          php-version: ${{ matrix.php-version }}

      - name: "Install locked dependencies with composer"
        run: |
          composer config "platform.ext-mongo" "1.6.16" && composer require "alcaeus/mongo-php-adapter"
          composer install --no-interaction --no-progress --no-suggest

Thanks for the fast reply @shivammathur :)


offline/online serving is stuck at fetching files in paraworkers

Hello guys I have some problems with deploying distserve on docker.

However, when I tried to launch distserve online api_server or offline llm inference.
It just stucks in initializing the engine.

Is this problem related to shm size options?
Can anyone share the env or commands which successfully launch the serving.
Thank you in advance.

Hello, I have also encountered this problem. Have you solved it now? Perhaps we can communicate

In my case, just waiting solved the problem.. The main cause was just because of slow model loading. :)


[Feature]: Make Reedline compatible with shrs

What would you like to see added?
reedline is a nice readline implementation in rust so it'll be cool to implement the Line trait for reedline as an adapter layer.

work on shrs_reedline has started


virtualgl3 for vnc alt app

The VNC Alternative app now uses virtualgl/3 . This is required for running the mne python package.

I have modified the virtual version used by the vnc alternative app. This was required to load the "mne" python package from a conda environment.


How to change description text color of callout?

Question

I've made to always show callout with calling showCallout method in the onRegionChangeComplete in the mapView.
And I've set description to show current location and it is working fine but I want to change the color of description to black.
Is this possible?

You can pass your own component in the callout.
https://github.com/react-native-community/react-native-maps/blob/master/example/examples/Callouts.js#L93-L100

closing, no reply


programmingbooksc++

What does this PR do?
Add resource(s) | Remove resource(s) | Add info | Improve repo
For resources
Description
Why is this valuable (or not)?
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

What does this PR do?
Important Data Structures And Algorithms concepts
Add resource(s) | Remove resource(s) | Add info | Improve repo
For resources
yes
Description
Best DSA Algos reference
Why is this valuable (or not)?
Yes it is valuable
How do we know it's really free?
Yes you can directly open
For book lists, is it a book? For course lists, is it a course? etc.
It is a book
Checklist:

[x]  Read our contributing guidelines.
[x]  Search for duplicates.
[x]  Include author(s) and platform where appropriate.
[x]  Put lists in alphabetical order, correct spacing.
[x]  Add needed indications (PDF, access notes, under construction).
[x]  Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

In general, we do not link to file sharing sites, or file hosting sites such as google docs. or dropbox.


3.1.18 introduced error true === false

Upgrading from 3.1.17 to 3.1.18 gives me this error on all of my files:
  0:0  error  true === false

✖ 1 problem (1 error, 0 warnings)

Any ideas? I have no idea what it could be referring to. A typical file of mine looks like this:
export default ngModule => {
  ngModule.directive('someName', someName);

  function someName() {
    // some code
  }
};

It may also have an import statement or two at the top (though that doesn't seem to make a difference with this error appearing...
It could also look like this:
const stateUtils = require('stateUtils');

export default require('registerState')(__filename, require('ngCommon'), {
  // some configuration stuff
});

This error appears in either case. I haven't identified a file in which this error doesn't appear. Any ideas?

The latest is 3.1.19 but not sure that will change anything

Sorry, I should have mentioned. I tried it with 3.1.19 and it didn't work, then I worked backwards to find the version that results in the error, which is 3.1.18.

Ah ok. Will have to test myself - @PiPeep any ideas?

@hzoo 3.1.18 also introduced this commit, which despite the commit name updated babel to 3.6.4, which I think is far more likely to be causing this issue.

@kentcdodds: I've tried to reproduce this in a fresh directory, using your example code, but can't. Can you share your .eslintrc file? It might be a specific rule that's causing the issue.

I just exploded my .eslintrc file with a ton of rules, but I'll paste it in here anyway. Hopefully it's helpful!
{
  "parser": "babel-eslint",
  "rules": {
    "quotes": [2, "single", "avoid-escape"],
    "no-use-before-define": [2, "nofunc"],
    "no-unused-expressions": 0,
    "strict": 0,
    "new-cap": [2, {
      "newIsCap": true,
      "capIsNew": true,
      "capIsNewExceptions": [
        "DSCreate", "DSUpdate", "DSSave", "DSDestroy", "DSRefresh", "DSChanges", "DSCompute"
      ]
    }],
    "comma-dangle": 0,
    "max-statements": [2, 30], // TODO bring this down...
    "max-len": [2, 120, 2],
    "max-depth": [2, 4],
    "max-nested-callbacks": [2, 5],
    "indent": [2, 2],
    "brace-style": [2, "1tbs"],
    "spaced-line-comment": 0,

    // possible errors
    "no-trailing-spaces": 0,
    "no-multi-str": 2,
    "space-infix-ops": 2,
    "no-cond-assign": 2,
    "no-console": 2,
    "no-constant-condition": 2,
    "no-control-regex": 2,
    "no-process-env": 0,
    "no-debugger": 2,
    "no-dupe-args": 2,
    "no-dupe-keys": 2,
    "no-duplicate-case": 2,
    "no-empty-character-class": 2,
    "no-empty": 2,
    "no-ex-assign": 2,
    "no-extra-boolean-cast": 0,
    "no-extra-parens": 0,
    "no-extra-semi": 2,
    "no-func-assign": 2,
    "no-inner-declarations": 2,
    "no-invalid-regexp": 2,
    "no-irregular-whitespace": 2,
    "no-negated-in-lhs": 2,
    "no-obj-calls": 2,
    "no-regex-spaces": 2,
    "no-reserved-keys": 0,
    "no-sparse-arrays": 2,
    "no-unreachable": 2,
    "use-isnan": 2,
    "valid-jsdoc": 2,
    "valid-typeof": 2,

    // best practices
    "accessor-pairs": 2,
    "no-var": 2,
    "prefer-const": 2,
    "complexity": [2, 5],
    "consistent-return": 2,
    "curly": 2,
    "default-case": 2,
    "dot-notation": 2,
    "dot-location": [2, "property"],
    "eqeqeq": 2,
    "guard-for-in": 2,
    "no-alert": 2,
    "no-caller": 2,
    "no-div-regex": 2,
    "no-else-return": 0,
    "no-labels": 2,
    "no-eq-null": 2,
    "no-eval": 2,
    "no-extend-native": 2,
    "no-extra-bind": 2,
    "no-fallthrough": 2,
    "no-floating-decimal": 2,
    "no-implied-eval": 2,
    "no-iterator": 2,
    "no-lone-blocks": 2,
    "no-loop-func": 2,
    "no-multi-spaces": 2,
    "no-multi-str": 2,
    "no-native-reassign": 2,
    "no-new-func": 2,
    "no-new-wrappers": 2,
    "no-new": 2,
    "no-octal-escape": 2,
    "no-octal": 2,
    "no-param-reassign": 0,
    "no-process-env": 0,
    "no-proto": 2,
    "no-redeclare": 2,
    "no-return-assign": 2,
    "no-script-url": 2,
    "no-self-compare": 2,
    "no-sequences": 2,
    "no-throw-literal": 2,
    "no-unused-expressions": 0,
    "no-void": 2,
    "no-warning-comments": 0, // TODO... turn this on :P jkjk
    "no-with": 0,
    "radix": 2,
    "vars-on-top": 2,
    "wrap-iife": [2, "inside"],
    "yoda": 2,

    // variables
    "no-catch-shadow": 2,
    "no-delete-var": 2,
    "no-shadow-restricted-names": 2,
    "no-shadow": 2,
    "no-undef-init": 2,
    "no-undef": 2,
    "no-undefined": 0,
    "no-unused-vars": [2, {"args": "after-used"}],

    // stylistic
    // "array-bracket-spacing": [2, "never"] // TODO.. turn this on when we're at v0.24.0
    "camelcase": [2, {"properties": "always"}],
    "comma-spacing": [2, {"before": false, "after": true}],
    "comma-style": [2, "last"],
    "computed-property-spacing": [2, "never"],
    "consistent-this": 0, // Too many use-cases for reassigning "this"
    "eol-last": 2,
    "func-names": 0, // I wish... but naming every anonymous function right now would be a royal pain.
    "func-style": [2, "declaration"],
    "key-spacing": [2, {"beforeColon": false, "afterColon": true}],
    "lines-around-comment": 0,
    "linebreak-style": [2, "unix"],
    "new-parens": 2,
    "newline-after-var": 0,
    "no-array-constructor": 2,
    "no-continue": 2,
    "no-inline-comments": 0,
    "no-lonely-if": 2,
    "no-multiple-empty-lines": 0,
    "no-nested-ternary": 2,
    "no-new-object": 2,
    "no-space-before-semi": 2,
    "no-spaced-func": 2,
    "no-ternary": 0,
    "no-trailing-spaces": [2, {"skipBlankLines": true}],
    "no-underscore-dangle": 0,
    "no-unneeded-ternary": 2,
    "object-curly-spacing": [2, "never"],
    "one-var": [2, {"uninitialized": "always", "initialized": "never"}],
    "operator-assignment": 0, // readability on a case-by-case basis
    "operator-linebreak": [2, "after"],
    "padded-blocks": 0,
    "quote-props": [2, "as-needed"],
    "semi-spacing": [2, {"before": false, "after": true}],
    "semi": [2, "always"],
    "sort-vars": 0,
    "space-after-function-name": [2, "never"],
    "space-after-keywords": [2, "always"],
    "space-before-blocks": [2, "always"],
    "space-before-function-paren": [2, "never"],
    "space-in-brackets": [2, "never"],
    "space-in-parens": [2, "never"],
    "space-return-throw-case": 2,
    "space-unary-ops": [2, { "words": true, "nonwords": false }],
    "spaced-comment": 0,
    "wrap-regex": 0,
//    "constructor-super": 2, // TODO when we upgrade eslint
//    "generator-star-spacing": [2, {"before": false, "after": true}], // TODO when we upgrade eslint
//    "no-this-before-super": 2, // TODO when we upgrade eslint
    "object-shorthand": [2, "properties"], // methods are optional so you can specify a name if you want
    "max-params": [2, 10], // I'll tell you, angular and those injectable functions man... TODO reduce this to 4 or 5
    "no-bitwise": 2,
    "no-plusplus": 0
  },
  "env": {
    "browser": true,
    "es6": true
  },
  "ecmaFeatures": {
    "modules": true
  },
  "globals": {
    "module": false,
    "require": false,
    "__filename": false,
    "process": false,
    "ATAC_CONFIG": false
  }
}

@PiPeep Ah that's my bad - should be more specific next time.
Also what's your ESLint version actually? Maybe try with all 3 updated? (babel, eslint, babel-eslint)?

Upgrading to eslint 0.24.0 fixed the problem (whatever it was). I was hadn't upgraded yet because eslint-loader hadn't yet updated it's peerDependencies. But now that it has, I have the latest of all babel and eslint related dependencies and everything works. My versions now:
"babel": "5.6.14",
"babel-core": "5.6.15",
"babel-eslint": "3.1.19",
"babel-loader": "5.2.2",
"eslint": "0.24.0",
"eslint-loader": "0.14.1",

Thanks for your help!

Ok cool :smile:


No Content-Type found for MIME entity

Parsing the following email (pasted as is)
From: Mikhail Gusarov<EMAIL_ADDRESS>To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Date: Wed, 18 Nov 2009 01:02:38 +0600
In-Reply-To<EMAIL_ADDRESS>(Lars
	Kellogg-Stedman's message of "Tue, 17 Nov 2009 14:00:54 -0500")
Message-ID<EMAIL_ADDRESS>User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)
MIME-Version: 1.0
Subject: Re: [notmuch] Working with Maildir storage?
X-BeenThere<EMAIL_ADDRESS>X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Use and development of the notmuch mail system."
	<notmuch.notmuchmail.org>
List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,
	<mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>
List-Archive: <http://notmuchmail.org/pipermail/notmuch>
List-Post<EMAIL_ADDRESS>List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>
List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,
	<mailto:notmuch-request@notmuchmail.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1958295626=="
Sender<EMAIL_ADDRESS>Errors-To<EMAIL_ADDRESS>
--===============1958295626==
Content-Type: multipart/signed; boundary="=-=-=";
	micalg=pgp-sha1; protocol="application/pgp-signature"

--=-=-=
Content-Transfer-Encoding: quoted-printable

Twas brillig at 14:00:54 17.11.2009 UTC-05 when<EMAIL_ADDRESS>did g=
yre and gimble:

 LK> Resulted in 4604 lines of errors along the lines of:

 LK>   Error opening
 LK>   /home/lars/Mail/read-messages.2008/cur/1246413773.24928_27334.hostna=
me,U=3D3026:2,S:
 LK>   Too many open files

See the patch just posted here.

=2D-=20
  http://fossarchy.blogspot.com/

--=-=-=
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iQIcBAEBAgAGBQJLAvNOAAoJEJ0g9lA+M4iIjLYQAKp0PXEgl3JMOEBisH52AsIK
CzzfP4Fzd41K9VH/c1EdQWDYR6FCAA4IUSNICnJhITsYUb0eC5AKJiey3JP0+rmd
s4qEFBKH2iuphv8Llltcv2Q8DyPuJBkVa3mO9XCCeABZ6v4UvnTSWRVG12csSEih
ScgienU8sMrM9LwvvVI1ZB2flm2TzsH2hWi30jIgmtBntIKJaTgbFXB50FYFwULa
gGL/oH3u+YpumedWzPZdCJrw2q7nMvYx8aQ29EDCNLZibAZe+6oDTa6Fv6/0ldpQ
U+DptR0nJGbJTWa26OTSvmyeIORjAfM+TEI68n7KO9VHYPmVh6awcf0MNKYh2xWk
eRQNBcKyQNWxeKyCCpT/rrTlpxBWahpvg+V8lkDH2W09wjRp6CUKvifK3Sz3am9m
5ZUMpvXbwkZD6Ci6l/QytbYK50e8UpvFSu5DBaxBz59ykoypuNg2ayO5Kdi6IF5d
T+Sw6wo8UKn9a33+vheIc0fkhZXbeSotEmDm7huazm6CgM3dcWXUpTuJvik1cSWp
4buv98gY6IKWKoUTXODWUr+7VR4gei8du8qOsKem+QDfNX7tmaIRjhrbB24B91Wy
td3MTJD7GjMNid0INqRY1CRMLo8YlPaq6NBZfcYtYgwa6gpJijz1/MAn8+GMrfhF
9LI8b9jopNP+pMYBohLA
=/ksP
-----END PGP SIGNATURE-----
--=-=-=--

--===============1958295626==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
notmuch mailing list
<EMAIL_ADDRESS>http://notmuchmail.org/mailman/listinfo/notmuch

--===============1958295626==--

From gmuch itself:
kalbasit@cratos ~/code/src/github.com/gmuch/gmuch [email_bug] ± % make test
=== RUN   TestQuery
--- PASS: TestQuery (0.01s)
=== RUN   TestThreadIDValidation
method=getMessage<EMAIL_ADDRESS>operation="parse email file" path=/Users/kalbasit/code/src/github.com/gmuch/gmuch/fixtures/database-v1/new/04:2, error="No Content-Type found for MIME entity"
--- FAIL: TestThreadIDValidation (0.00s)
        thread_test.go:25: Thread("0000000000000001"): want error %!q(<nil>) got "No Content-Type found for MIME entity"
=== RUN   TestThread
method=getMessage<EMAIL_ADDRESS>operation="parse email file" path=/Users/kalbasit/code/src/github.com/gmuch/gmuch/fixtures/database-v1/new/04:2, error="No Content-Type found for MIME entity"
--- FAIL: TestThread (0.03s)
        thread_test.go:40: g.Thread("0000000000000001"): got error: No Content-Type found for MIME entity
FAIL
coverage: 87.7% of statements
exit status 1
FAIL    github.com/gmuch/gmuch  0.064s
make: *** [test] Error 1

Interesting. And you're sure to be using the latest version of the library? I'll see if I can track this down later.
Thanks for the report!

You get the most interesting emails :smile:
That's a good thing, because I want this to be a comprehensive library that just works. In this case, the root cause is that the first subpart (Content-Transfer-Encoding: quoted-printable) has not Content-Type specified.
Now, I figured this would be caught by the checks I put in place before, but it doesn't look like that's happening. I'll see if I can get that fixed.
My question to you is - what would you like the email.Email struct to look like with this message? I see two what I would consider "text" parts, and one PGP signature - not sure where to put that. What would be the best way to handle these two text parts? One of them has to go in Email.Text, but I'm not sure which it should be. Any suggestions?

You get the most interesting emails :smile:
lol! Well, at some point I want to port notmuchmail to Go so I am using their test database to drive mine. Gmuch is an HTTP/RPC API on top of Notmuch but at some point I will write my own Notmuch clone. The email database is found here: https://github.com/notmuch/notmuch/blob/master/test/test-databases/Makefile.local#L3 (follow the Makefile).

For quoted printable, perhaps look at https://godoc.org/mime/quotedprintable

My question to you is - what would you like the email.Email struct to look like with this message? I see two what I would consider "text" parts, and one PGP signature - not sure where to put that. What would be the best way to handle these two text parts? One of them has to go in Email.Text, but I'm not sure which it should be. Any suggestions?

I don't feel that this library should handle GPG but should at least provided. So perhaps add two new fields Email.GPGSignature and Email.GPGEncrypted so we can deal with them somewhere else.

The email database is found here: https://github.com/notmuch/notmuch/blob/master/test/test-databases/Makefile.local#L3 (follow the Makefile)

Thanks! I'll see what I can do with this.

For quoted printable, perhaps look at https://godoc.org/mime/quotedprintable

The quoted printable part isn't my worry here. By reading a MIME part using a multipart.NewReader, we get the benefit of the automatic quoted-printable decoding introduced in v1.5. My question was really about which text part out of the two you felt should be the contents of Email.Text. The text are really two separate parts with unique content (even though one looks like a signature), so it'd be hard to determine if one is the primary text content over the other.

I don't feel that this library should handle GPG but should at least provided. So perhaps add two new fields Email.GPGSignature and Email.GPGEncrypted so we can deal with them somewhere else.

That's a good idea. I would likely incorporate in a new version and try to abstract it out a bit. For example, I might just have an Email.Signature and Email.Encrypted, or something similar. Maybe I could add PGP support where the library can handle the generation of the signature for the user (first, I'll admittedly need to learn more about how that works!).

The quoted printable part isn't my worry here. By reading a MIME part using a multipart.NewReader, we get the benefit of the automatic quoted-printable decoding introduced in v1.5.

Oh cool! I missed that.

The text are really two separate parts with unique content (even though one looks like a signature), so it'd be hard to determine if one is the primary text content over the other.

Well the signature is Content-Type: application/pgp-signature and the signed is Content-Type: application/pgp-encrypted and you also have application/pgp-keys. See https://www.ietf.org/rfc/rfc2015.txt for more details.

That's a good idea. I would likely incorporate in a new version and try to abstract it out a bit. For example, I might just have an Email.Signature and Email.Encrypted, or something similar. Maybe I could add PGP support where the library can handle the generation of the signature for the user.

That'd be cool! But again I feel that logic should probably live in a different library (or even in this one but different package) so it can be used independently. It would be nice to have methods on the Email object itself though.

(first, I'll admittedly need to learn more about how that works!).

Maybe this will help https://godoc.org/golang.org/x/crypto/openpgp

once this is fixed, I'll run your library across all of my emails (currently 261380 emails), this would be a nice benchmark and a very good test case!

ok here goes. With this main I managed to generate this log for you. I guess we should probably open an issue per error. Let me know which email you want first.

Wow!
That's fantastic! Not the results... since clearly I have work to do (:smile:)... but the sheer coverage is great! Thanks so much for running this!
I'll need to see if I can download my corpus of email from gmail and do the same thing.
As for the "No Content-Type found", let me knock out the one we have here and we can re-run for corpus. As far as the others, yeah, we can absolutely look to make some issues with some test cases and see if it's my library or the mail client who's in the wrong.
Also, I noticed your main.go was done serially. If you want to parse those even faster, you can use a sync.WaitGroup to run those in goroutines so you have a bunch of emails being parsed in parallel. That'd be way faster.
Thanks again for all your help!

It was intentionally done serially and it I believe the bottleneck is really I/O! Wonderful result...

Ok, I think this one particularly has been fixed as of 669ab2f297e91b64bc7940bc8d997e01b87b03cc.
I was checking for the default content type on the root part, but not on subparts before trying to get the content type from them, which failed.
This should (hopefully!) fix a bunch of the "No Content-Type..." logs from your output.
Let me know if this fixes the issue, and we can move forward with a new log to work on! We'll knock em out one at a time :smile:

Also, due to the way I am setting e.Text, the last text part is what's set (in this case, it's the signature line). I can change this behavior if you think that, in general, the most recent (most relevant) text part will be the first one found. I don't know if the RFC has a spec for it, but I'll check.

Whoops! Had a syntax error in my test (teaches me not to commit without running!)
Here's the commit that should fix it for you: f61123ea07e1921ac4f174e8c42225fd39bd6c6a

Also, due to the way I am setting e.Text, the last text part is what's set

I think this is undesirable behavior, how about setting the application/pgp-signature content-type in the Signature field?

I could add a .Signature field, but I'd consider that another issue since it's another feature. Plus, I think we might be talking about two different things :smile:
The "signature" I'm referring to is:
_______________________________________________
notmuch mailing list
<EMAIL_ADDRESS>http://notmuchmail.org/mailman/listinfo/notmuch

This is what I imagine is the signature in the email (not the PGP signature). This is what's being set in the text field, since I check for things with a Content-Type of "text/plain" to set as Email.Text. This skips over the PGP stuff.
Oh, and good news! I was inspired so I'm downloading my entire Gmail corpus as we speak, so I'll have yet another sample set to work with in tracking down issues. Thanks for the great idea! I'll post the results as soon as I have them.

The "signature" I'm referring to is:

notmuch mailing list
<EMAIL_ADDRESS>http://notmuchmail.org/mailman/listinfo/notmuch

Ah I see. Good question... We could:

Append the text to the current Text field
Make the Text a []string

Also I've updated the main and the log to reflect the latest version.
Closing this as fixed.

Excellent! I'm glad to see that we fixed about 2k issues. I'm definitely ok with that!
So, from what I can tell, there are about 3 unique issues left:

quotedprintable: invalid unescaped byte
unexpected EOF
mime: invalid media parameter
malformed MIME header line:

Would there be any way you could add test cases for these 4 items? I'd be happy to create the issues for it this evening.

Sure, I'll push a commit tonight with test cases.

Good news! I managed to run a test with about 55k emails I had laying around. Your main worked perfectly, I just adjusted paths, etc. Thanks for that!
Here's the log that was generated. I'll see if I can generate some test cases out of this.

Cool! I'm happy that helped. Hopefully we'll get it parsing ALL emails even those not respecting the RFC! I have emails dating back to 2008 from god knows what kind of email client so I feel it's important to parse emails even if they are do not follow the spec verbatim as in reality most people have one or many of those laying around.


C++ callback API: Server OnDone should signal Finish outcome

What version of gRPC and what language are you using?
master, C++
What operating system (Linux, Windows,...) and version?
N/A
What runtime / compiler are you using (e.g. python version or version of gcc)
N/A
What did you do?
Want to determine if a server-side Finish operation actually completed or whether there was a stream break or something
What did you expect to see?
The bool value about the Finish result being exposed through the API, such as in OnDone . This result is available in the sync and async APIs.
What did you see instead?
The bool value about the Finish result is swallowed internally and OnDone has no arguments
Anything else we should know about your project / environment?

@a11r raises a concern about this: namely, if the server finds out that it wasn't able to send status, there's really not much that it can do about it at this point since the server sending status is a signal that the server is done processing the RPC. At most, it could only track a statistic or log in the OnDone call. We can take a look and see if there's any uses of the Finish(bool) result in the existing sync or async APIs or see if there's a practical use case to justify that this an important issue.

Hey @vjpai , @sheenaqotj : please update this issue when you get a chance. Thanks!

Karthik's comment appeared right when I was looking at this page. :) Re-reading this a few times, this is about whether the server wants to know when its Finish() might have failed. Will take a look at the other APIs.

Sync api has no such concept since the Status is reported as the return value from the method handler.
Stubby has no such concept since status is set differently and the "done callback" doesn't give any way of knowing that it's over.
The gRPC async API has this possibility, but it's hard to tell if anyone ever used this feature or what they would have done with it.
So maybe this is worth closing.

Thanks for the discussion. Closing.


chore: release main

:robot: I have created a release beep boop
block-brokers: 2.0.2
2.0.2 (2024-02-28)
Bug Fixes

update project deps and docs (77e34fc)

Dependencies

update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

car: 3.1.0
3.1.0 (2024-02-28)
Features

stream car file bytes from @helia/car (#444) (7c07e11)

Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)
use blockstore interface where possible (#417) (30c8981)

Dependencies

The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

devDependencies

@helia/unixfs bumped from ^3.0.0 to ^3.0.1

dag-cbor: 3.0.1
3.0.1 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)
use blockstore interface where possible (#417) (30c8981)

Dependencies

The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

dag-json: 3.0.1
3.0.1 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)
use blockstore interface where possible (#417) (30c8981)

Dependencies

The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

http: 1.0.2
1.0.2 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)

Dependencies

update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/block-brokers bumped from ^2.0.1 to ^2.0.2
@helia/interface bumped from ^4.0.0 to ^4.0.1
@helia/routers bumped from ^1.0.0 to ^1.0.1
@helia/utils bumped from ^0.0.1 to ^0.0.2

interface: 4.0.1
4.0.1 (2024-02-28)
Bug Fixes

update project deps and docs (77e34fc)

Dependencies

update libp2p patch versions (917a1bc)

interop: 5.1.0
5.1.0 (2024-02-28)
Features

create @helia/verified-fetch (#392) (f243de2)
require content-type parser to set content-type (#423) (f58d467)

Bug Fixes

allow contentTypeParser with Helia instance (#427) (3283a5c)
update project deps and docs (77e34fc)
use unixfs exporter to traverse DAGs (#455) (6f8c15b)

Dependencies

bump @chainsafe/libp2p-gossipsub from 11.2.1 to 12.0.0 (#430) (9b1ddf8)
bump @chainsafe/libp2p-gossipsub from 12.0.0 to 13.0.0 (#457) (cb35a1b)
update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/block-brokers bumped from ^2.0.1 to ^2.0.2
@helia/car bumped from ^3.0.0 to ^3.1.0
@helia/dag-cbor bumped from ^3.0.0 to ^3.0.1
@helia/dag-json bumped from ^3.0.0 to ^3.0.1
@helia/http bumped from ^1.0.1 to ^1.0.2
@helia/interface bumped from ^4.0.0 to ^4.0.1
@helia/ipns bumped from ^6.0.0 to ^6.0.1
@helia/json bumped from ^3.0.0 to ^3.0.1
@helia/mfs bumped from ^3.0.0 to ^3.0.1
@helia/routers bumped from ^1.0.0 to ^1.0.1
@helia/strings bumped from ^3.0.0 to ^3.0.1
@helia/unixfs bumped from ^3.0.0 to ^3.0.1
helia bumped from ^4.0.1 to ^4.0.2

ipns: 6.0.1
6.0.1 (2024-02-28)
Bug Fixes

remove is-ipfs from @helia/ipns dependencies (#421) (3851fe2)
update project deps and docs (77e34fc)

Dependencies

update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

json: 3.0.1
3.0.1 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)
use blockstore interface where possible (#417) (30c8981)

Dependencies

The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

mfs: 3.0.1
3.0.1 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)
use blockstore interface where possible (#417) (30c8981)

Dependencies

update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/unixfs bumped from ^3.0.0 to ^3.0.1

routers: 1.0.1
1.0.1 (2024-02-28)
Bug Fixes

update project deps and docs (77e34fc)

Dependencies

update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

strings: 3.0.1
3.0.1 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)
use blockstore interface where possible (#417) (30c8981)

Dependencies

The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

unixfs: 3.0.1
3.0.1 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)
use blockstore interface where possible (#417) (30c8981)
use unixfs exporter to traverse DAGs (#455) (6f8c15b)

Dependencies

update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

utils: 0.0.2
0.0.2 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)

Dependencies

update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/interface bumped from ^4.0.0 to ^4.0.1

helia: 4.0.2
4.0.2 (2024-02-28)
Bug Fixes

support reading identity cids (#429) (98308f7)
update project deps and docs (77e34fc)

Dependencies

update libp2p patch versions (917a1bc)
The following workspace dependencies were updated

dependencies

@helia/block-brokers bumped from ^2.0.1 to ^2.0.2
@helia/interface bumped from ^4.0.0 to ^4.0.1
@helia/routers bumped from ^1.0.0 to ^1.0.1
@helia/utils bumped from ^0.0.1 to ^0.0.2

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/ipfs/helia/releases/tag/block-brokers-v2.0.2 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/car-v3.1.0 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/dag-cbor-v3.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/dag-json-v3.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/helia-v4.0.2 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/http-v1.0.2 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/interface-v4.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/interop-v5.1.0 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/ipns-v6.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/json-v3.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/mfs-v3.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/routers-v1.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/strings-v3.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/unixfs-v3.0.1 :sunflower:

:robot: Release is at https://github.com/ipfs/helia/releases/tag/utils-v0.0.2 :sunflower:


express-session deprecated undefined resave option; provide resave option

express-session deprecated undefined resave option; provide resave option node_modules\express-socket.io-session\index.js:79:4
express-session deprecated undefined saveUninitialized option; provide saveUninitialized option node_modules\express-socket.io-session\index.js:79:4
express-session deprecated req.secret; provide secret option node_modules\express-socket.io-session\index.js:79:4

Regarding the following code:
io.use(sharedsession(session, {
autoSave: true
}));
Even when I add the options it would still give me the same error.

I'll try to fix this. It might be a simple fix.

hey, any updates on this? I tried to use the resave option also but it didn't work.

Same here, hoping to be able to use this

Same here, will be available any fix? Thanks


Color text bug?

public class  ColorTextTest {
    public static void main(String[] args) {
        Console.printc("yeah &ghaha \\&this \\&ignore\\&\\&\\& &abcdefg &hijklmn");
    }
}

As original intention, &abcdefg and &hik... would be different color.
but it's printed without & and same color

it's intended and because &a and &h doesn't exists.
try below:
public class  ColorTextTest {
    public static void main(String[] args) {
        Console.printc("yeah &ghaha \\&this \\&ignore\\&\\&\\& &r&abcdefg &hijklmn");
    }
}


Replace the deprecated field types in the schema.xml

When we start the solr service, we can see those warnings:
2022-10-05 18:01:26.587 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.TrieIntField Solr loaded a deprecated plugin/analysis class [solr.TrieIntField]. Please consult documentation how to replace it accordingly.
2022-10-05 18:01:26.589 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.TrieFloatField Solr loaded a deprecated plugin/analysis class [solr.TrieFloatField]. Please consult documentation how to replace it accordingly.
2022-10-05 18:01:26.590 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.TrieLongField Solr loaded a deprecated plugin/analysis class [solr.TrieLongField]. Please consult documentation how to replace it accordingly.
2022-10-05 18:01:26.593 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.TrieDoubleField Solr loaded a deprecated plugin/analysis class [solr.TrieDoubleField]. Please consult documentation how to replace it accordingly.
2022-10-05 18:01:26.594 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.TrieDateField Solr loaded a deprecated plugin/analysis class [solr.TrieDateField]. Please consult documentation how to replace it accordingly.
2022-10-05 18:01:26.596 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.ManagedSynonymFilterFactory Solr loaded a deprecated plugin/analysis class [solr.ManagedSynonymFilterFactory]. Please consult documentation how to replace it accordingly.
2022-10-05 18:01:26.597 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.SynonymFilterFactory Solr loaded a deprecated plugin/analysis class [solr.SynonymFilterFactory]. Please consult documentation how to replace it accordingly.
2022-10-05 18:01:26.598 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.WordDelimiterFilterFactory Solr loaded a deprecated plugin/analysis class [solr.WordDelimiterFilterFactory]. Please consult documentation how to replace it accordingly.
2022-10-05 18:01:26.627 WARN  (coreLoadExecutor-10-thread-1) [ x:metacat-index] o.a.s.D.s.CurrencyField Solr loaded a deprecated plugin/analysis class [solr.CurrencyField]. Please consult documentation how to replace it accordingly.

ManagedSynonymFilterFactory is replaced by ManagedSynonymGraphFilterFactory, but be sure to also use FlattenGraphFilterFactoryat index time (not at search time) as well.
SynonymFilterFactory is replaced by SynonymGraphFilterFactory, but be sure to also use FlattenGraphFilterFactory at index time (not at search time) as well.
WordDelimiterFilterFactory is replaced by WordDelimiterGraphFilterFactory
CurrencyField is replaced by CurrencyFieldType

Ess-dive folks use a new field type date_range for field datePublished and pubDate. Do we need to change them?
https://github.com/ess-dive/docker-metacat/blob/main/solr/schema.xml.patch

Fields use DateRangeField:

dateUploaded
dateModified
replicaVerifiedDate
beginDate
endDate
datePublished
pubDate
updateDate

Sounds like a good idea to me as long as the existing clients continue to work after the field type changes.

We get an error on the arcticdata theme:
Error details: Error from server at http://index.test.dataone.org:8983/solr/dataone_index: Sorting not supported on SpatialField: dateUploaded, instead try sorting by query.

It doesn't show up on the KNB theme. I think this is caused by the data type change.

It turns out the fields with the type DateRangeField are not sortable. It is hard to support both the range search and sorting features on those fields. So I come up with the copyField plan. Those fields will use the DatePointField,  which supports sorting, to replace the deprecated TrieDateField type:

dateUploaded
dateModified
replicaVerifiedDate
beginDate
endDate
datePublished
pubDate
updateDate

Note: The field of datePublished and updateDate already are the copy fields.
New copy fields with the type of DateRangeField will be added to the schema as well. If we want to use the range search feature, we need use those new fields:

dateUploadedRange
dateModifiedRange
replicaVerifiedDateRange
beginDateRange
endDateRange
datePublishedRange

I tested and found we may copy a field with the type DatePointField to a field with the type of DateRangeField. @mbjones

Date ranges & sorting in MetacatUI
Date ranges
beginDate and endDate are used in the main search catalog to find datasets from certain years, for example:
This query in the UI...

...translates to this solr query:
beginDate:[1905-01-01T00:00:00Z TO *] AND endDate:[* TO 1981-12-31T00:00:00Z]

A query with Publish Year is also possible in the UI...

...translates to this solr query:
(datePublished:\[1888\-01\-01T00\:00\:00Z TO 1959\-12\-31T00\:00\:00Z\] OR dateUploaded:\[1888\-01\-01T00\:00\:00Z TO 1959\-12\-31T00\:00\:00Z\])

but results in a 500 error: Error from server at http://localhost:8983/solr/metacat-index: Invalid Date in Date Math String:'[1961-01-01T00:00:00Z'
We also allow users to build portal filters that use date ranges for certain fields: dateUploaded, datePublished, dateModified

Sorting by date
We make use of dateUploaded in the main catalog search and portal searches to sort by "Most recent"

I just tested and found the new DatePointField also supports the query like:
beginDate:[1905-01-01T00:00:00Z TO *] AND endDate:[* TO 1981-12-31T00:00:00Z]

However, if we just use the date without the time in the query, neither the DatePointField or TrieDateField types work:
beginDate:[1905-01-01 TO *] AND endDate:[* TO 1981-12-31]

But, the DateRangeField type works on the above query.
This means DateRangeField can support more formats on the query, such as:

YYYY
YYYY-MM
[YYYY-MM-DD TO YYYY-MM-DD]
[YYYY TO YYYY-MM-DD]
[YYYY-MM-DD TO *]

Matt and I discussed the issue today and decided we should replace the old field TrieDateField by the field DatePointField, which will not require the changes of the client queries.

The new question is if we really need the new copyFields, whose type is DateRangeField for those fields:

dateUploadedRange
dateModifiedRange
replicaVerifiedDateRange
beginDateRange
endDateRange
datePublishedRange

DateRangeField can support more formats on the query, such as:

YYYY
YYYY-MM
[YYYY-MM-DD TO YYYY-MM-DD]
[YYYY TO YYYY-MM-DD]
[YYYY-MM-DD TO *]

Create a new ticket to discuss if we need the copy fields with the type of DateRangeField:
https://github.com/DataONEorg/dataone-indexer/issues/44

We found after the change of type for pubDate, the query return is changed as well.
For DateRangeField, it is:
<str name="pubDate">1988-01-01T00:00:00Z</str>

For DatePointField, it is:
<date name="pubDate">2007-11-02T09:33:50Z</date>

But the pubDate search on MetacatUI still seems working.

I tested the query method on R.  It seems it can handle both cases with a slight difference - Z vs UTC.
For DateRangeField, the return is:
[[1]]
[[1]]$pubDate
[1] "2009-01-02T00:00:00Z"

[[2]]
[[2]]$pubDate
[1] "2009-01-02T00:00:00Z"

[[3]]
[[3]]$pubDate
[1] "2009-01-02T00:00:00Z"

For DatePointField, the return is:
[[1]]
[[1]]$pubDate
[1] "2007-11-02 09:33:50 UTC"

[[2]]
[[2]]$pubDate
[1] "2015-01-29 08:00:00 UTC"

[[3]]
[[3]]$pubDate
[1] "2015-01-27 08:00:00 UTC"

Can you look at the class of those return values as well please? class(foo[[1]]$pubDate) where foo is the variable containing the results?

@mbjones
From ess-dive (DateRangeField):
[1] "character"

From adc (DatePointFiled)
[1] "POSIXct" "POSIXt"

@robyngit confirmed that MetacatUI generally uses json and the result should changed at all.
I ran the query d1/mn/v2/query/solr/q=pubDate:*&wt=json&fl=pubDate on both ess-dive and adc. The json return format is identical.
Form ess-dive:
"response":{"numFound":5632,"start":0,"numFoundExact":true,"docs":[
      {
        "pubDate":"1988-01-01T00:00:00Z"},
      {
        "pubDate":"2016-11-11T00:00:00Z"},
      {
        "pubDate":"2017-01-01T00:00:00Z"},
      {
        "pubDate":"2018-12-10T00:00:00Z"},
      {
        "pubDate":"2004-10-01T00:00:00Z"},
      {
        "pubDate":"1996-07-01T00:00:00Z"},
      {
        "pubDate":"1950-01-01T00:00:00Z"},
      {
        "pubDate":"2004-07-14T00:00:00Z"},
      {
        "pubDate":"1984-05-01T00:00:00Z"},
      {
        "pubDate":"1984-05-01T00:00:00Z"}]
  }}

From ADC:
"response":{"numFound":17760,"start":0,"numFoundExact":true,"docs":[
      {
        "pubDate":"2007-11-02T09:33:50Z"},
      {
        "pubDate":"2015-01-29T08:00:00Z"},
      {
        "pubDate":"2015-01-27T08:00:00Z"},
      {
        "pubDate":"2007-11-02T13:32:14Z"},
      {
        "pubDate":"2009-05-13T09:24:32Z"},
      {
        "pubDate":"2019-01-01T08:00:00Z"},
      {
        "pubDate":"2016-07-07T07:00:00Z"},
      {
        "pubDate":"2012-03-20T18:14:44Z"},
      {
        "pubDate":"2007-11-05T13:38:12Z"},
      {
        "pubDate":"2011-09-09T15:03:31Z"}]
  }}

Val from ess-dive said she was pretty sure they didn't do any local changes to accommodate the date field type changes.
[@Jing Tao](https://ess-dive.slack.com/team/U01KC1L1ALT)
 I am pretty sure we didn’t.

@mbjones @robyngit @artntek @doulikecookiedough It seems that the changes of the date type for pubDate and DatePublished wouldn't break MetacatUI.

Thanks, @taojing2002 -- looks like R was typing it as a date, which is a regression but probably not too hard to deal with. Code that expects it as a date will have to run as.Date() on the string returned from solr.

@mbjones Thanks. So it seems we can keep the new field type of DateRangeField for pubDate and datePublished in schema.xml.


[BUG]Gold is not shown，Gold Graph，Champion exceptions are not displayed

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Material

If applicable, add screenshots to help explain your problem.
Include Logs of when the error occured, as well as the crash log if applicable
Please include the .rofl replay file if the issue was present while spectating

Desktop (please complete the following information):

OS: [e.g. Windows 10]
Version [e.g. 20H1 (May 2020 Update) Build 19041]

Additional context
Add any other context about the problem here.

I responded here in issue #12, but it's already closed. I will forward it here. For me all except that two pictures working fine, so you must doing something wrong bro.
https://github.com/floh22/LeagueBroadcastHub/issues/12#issuecomment-850008607
Best Regards

Duplicate of #7
This project will not work fully with the CN client. Memory locations, structure, and security are different on that client.
Any information that is gathered using memory cannot be supported in CN. This includes xp, gold, position.


Make session check remote ip configurable

Under some situation, change checking remote ip to optional may be helpful.
// Check if the IP's are equal. If not, we invalidate the sesson.
Boolean checkIp = getApplication().getServerProps().getBoolean("session.check.remote.ip", true);
if (session == null) {
return null;
}
if (checkIp && !remoteIp.equals(session.getIp())) {
  return null;
}`

Hi @Vimos , I still don't quite understand why we have to make it configurable. Any benefit?

Oh, in my situation, the actual visiting ip is changing due to a intermediate service EFE, so if checking ip, it just clear the session.

Any plan for this? It becomes a bigger issue if there is a balancer in between which has more than 1 IP address :) (in google container engine for example).
I guess this check is supposed to add extra security but I don't think its a common practice. At least, it could check the X-Forwarded-For header instead of the actual remote IP (but this would not solve @Vimos problem).
I would make it configurable as @Vimos suggests.
Thanks!


Java files missing when generating from JSON Schema

Okay, I was able to generate my JSON Schema from genSON, but when I put it through jsonschema2pojo, I get nothing out
Here is the script I am running:
https://github.com/coderextreme/x3djson/blob/master/final.sh
Here are my modifications to jsonschema2pojo.sh
https://github.com/coderextreme/x3djson/blob/master/jsonschema2pojo.sh
And here is the JSON schema I am trying to generate Java from:
https://raw.githubusercontent.com/coderextreme/x3djson/master/x3dmerge.json.zip
Here's  JSON schema generated from jskemator:
https://github.com/coderextreme/x3djson/blob/master/x3d.jskemator.zip

It looks like all your objects here give tuple types for every array (the items property has an array as its value). This isn't supported by this plugin I'm afraid.
If you want to use this schema, you'll have to process it first to remove the [ and ] around the value of items all the way down.
There's a huge volume of text here - it would be useful if you could cut this down. I haven't browsed through the entire schema here so I have no idea if you require these tuple values (more than one value in the tuple, that has a different type) but if you do require it, then I'm afraid jsonschema2pojo is not the right tool for you (Java has a hard time representing tuples of mixed type). You may be interested to simply use Jackson directly or hand craft these tuple classes so that they do not use java.util.List to represent arrays.


Remove obsolete NuGet Packages

I hope we can have a look at all the NuGet packages. Not only are there a few obsolete, but also I wonder which ones are actually needed and remove those we don't need. I feel there are way too many. Possibly because some of them are used for old code (like html or wpf).
I have the opinion we should use as much "standard" or Microsoft techniques as possible. Let's go back to basic. I think it will also decrease the build and installation size.

Hi @Jay-o-Way
I think we have already done a massive clean-up of unused libraries from the .NET framework era and porting of 3rd party projects.
I have done a quick review of the remain packages and they looks fine.

HelixToolkit is used for STL rendering
Markdig is used for markdown rendering
ModernWpfUI, ControlzEx and MS Behaviors (WPF) are needed until the porting to WinUI
Moq is a common used 3rd party libraries for mock objects in tests

We can leave the issue opened if you think it needs further review 😃

Okay I trust your opinion.

The fix for this issue has been released in 0.65. Please update PowerToys to the latest version:
https://github.com/microsoft/PowerToys/releases

ModernWpfUI, ControlzEx and MS Behaviors (WPF) are needed until the porting to WinUI

What's waiting to be ported, again?