fix: Update projects in the store as they are pulled from Gitlab

This PR ensures that project updates, specifically Topics, are updated from Gitlab whenever they are pulled from Gitlab REST api.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>5
Details

17 of 25 (68.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.3%) to 65.44%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/controller/projects.go
17
25
68.0%

Totals

Change from base Build<PHONE_NUMBER>3:
0.3%

Covered Lines:
3628

Relevant Lines:
5544

💛  - Coveralls


[Backport 1.21] - prevent snapshot save when snapshots are disabled

Backport for originalRKE2  issue: https://github.com/rancher/rke2/issues/1157

Validated using rc: v1.21.2-rc1+k3s2, When snapshot is disabled appropriate message is recorded in the logs and configmaps are not saved.
Jul 12 23:44:23 ip-172-31-41-246 k3s[78601]: time="2021-07-12T23:44:23.455282855Z" level=info msg="ETCD snapshots are disabled"

$  kubectl get cm -n kube-system k3s-etcd-snapshots -o json
Error from server (NotFound): configmaps "k3s-etcd-snapshots" not found


Added dtype parameter to zeros_like and ones_like

Both TensorFlow and Theano support this parameter so it seems convenient to have it in Keras too.

LGTM


The theme prop of the Button component is not working

Describe the bug
when I prop theme in the Button component. it was not working
To Reproduce
Steps to reproduce the behavior:
<Button size='sm' color='success' theme={{ inner: { base: 'p-0' }}}>
      Test button
</Button>

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

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
System information:

Device:
Resolution:
OS:
Browser:
Version:

Project information:

Tailwind: 3.3.2
Flowbite: 1.6.5
Flowbite React: 0.4.4
Type: nextjs

Additional context
Add any other context about the problem here.

Hi @ductinhkzz , seems that a related issue was already opened: https://github.com/themesberg/flowbite-react/issues/663

Duplicate (https://github.com/themesberg/flowbite-react/issues/663)


ERROR io.dropwizard.cli.ServerCommand - Unable to start server, shutting down

graphhopper_1  | 2022-12-29 18:14:20.276 [main] INFO  c.g.r.s.PrepareRoutingSubnetworks - car4wd - Marked 1122309 subnetworks (biggest: 345 edges) -> 6 components(s) remain (smallest: 458, biggest: 3619716 edges), total marked edges: 22334, took: 0.72206014s
graphhopper_1  | 2022-12-29 18:14:24.235 [main] INFO  c.g.r.s.PrepareRoutingSubnetworks - hike - Found 151280 subnetworks (139562 single edges and 11718 components with more than one edge, total nodes: 4916570), took: 3.9585626s
graphhopper_1  | 2022-12-29 18:14:24.533 [main] INFO  c.g.r.s.PrepareRoutingSubnetworks - hike - Marked 151272 subnetworks (biggest: 370 edges) -> 8 components(s) remain (smallest: 586, biggest: 4499766 edges), total marked edges: 39918, took: 0.29780337s
graphhopper_1  | 2022-12-29 18:14:28.543 [main] INFO  c.g.r.s.PrepareRoutingSubnetworks - mtb - Found 467104 subnetworks (454838 single edges and 12266 components with more than one edge, total nodes: 4916570), took: 4.0100274s
graphhopper_1  | 2022-12-29 18:14:28.618 [main] INFO  c.g.r.s.PrepareRoutingSubnetworks - mtb - Marked 467096 subnetworks (biggest: 370 edges) -> 8 components(s) remain (smallest: 446, biggest: 4199321 edges), total marked edges: 46872, took: 0.07496776s
graphhopper_1  | 2022-12-29 18:14:28.618 [main] INFO  c.g.r.s.PrepareRoutingSubnetworks - Finished finding and marking subnetworks for 3 jobs, took: 14.980878s, totalMB:1024, usedMB:580
graphhopper_1  | 2022-12-29 18:14:28.620 [main] INFO  com.graphhopper.GraphHopper - nodes: 1 878 423, edges: 2 458 285
graphhopper_1  | 2022-12-29 18:14:28.861 [main] ERROR io.dropwizard.cli.ServerCommand - Unable to start server, shutting down
graphhopper_1  | java.lang.IllegalStateException: location index was opened with incorrect graph: 3746312 vs. 3746618
graphhopper_1  |        at com.graphhopper.storage.index.LocationIndexTree.loadExisting(LocationIndexTree.java:136)
graphhopper_1  |        at com.graphhopper.GraphHopper.createLocationIndex(GraphHopper.java:1190)
graphhopper_1  |        at com.graphhopper.GraphHopper.initLocationIndex(GraphHopper.java:1205)
graphhopper_1  |        at com.graphhopper.GraphHopper.postProcessing(GraphHopper.java:1108)
graphhopper_1  |        at com.graphhopper.GraphHopper.process(GraphHopper.java:806)
graphhopper_1  |        at com.graphhopper.GraphHopper.importOrLoad(GraphHopper.java:756)
graphhopper_1  |        at com.graphhopper.http.GraphHopperManaged.start(GraphHopperManaged.java:104)
graphhopper_1  |        at io.dropwizard.lifecycle.JettyManaged.doStart(JettyManaged.java:27)
graphhopper_1  |        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
graphhopper_1  |        at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
graphhopper_1  |        at org.eclipse.jetty.server.Server.start(Server.java:423)
graphhopper_1  |        at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
graphhopper_1  |        at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
graphhopper_1  |        at org.eclipse.jetty.server.Server.doStart(Server.java:387)
graphhopper_1  |        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
graphhopper_1  |        at io.dropwizard.cli.ServerCommand.run(ServerCommand.java:53)
graphhopper_1  |        at io.dropwizard.cli.EnvironmentCommand.run(EnvironmentCommand.java:60)
graphhopper_1  |        at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:98)
graphhopper_1  |        at io.dropwizard.cli.Cli.run(Cli.java:78)
graphhopper_1  |        at io.dropwizard.Application.run(Application.java:94)
graphhopper_1  |        at com.graphhopper.application.GraphHopperApplication.main(GraphHopperApplication.java:38)
graphhopper_1  | java.lang.IllegalStateException: location index was opened with incorrect graph: 3746312 vs. 3746618
graphhopper_1  |        at com.graphhopper.storage.index.LocationIndexTree.loadExisting(LocationIndexTree.java:136)
graphhopper_1  |        at com.graphhopper.GraphHopper.createLocationIndex(GraphHopper.java:1190)
graphhopper_1  |        at com.graphhopper.GraphHopper.initLocationIndex(GraphHopper.java:1205)
graphhopper_1  |        at com.graphhopper.GraphHopper.postProcessing(GraphHopper.java:1108)
graphhopper_1  |        at com.graphhopper.GraphHopper.process(GraphHopper.java:806)
graphhopper_1  |        at com.graphhopper.GraphHopper.importOrLoad(GraphHopper.java:756)
graphhopper_1  |        at com.graphhopper.http.GraphHopperManaged.start(GraphHopperManaged.java:104)
graphhopper_1  |        at io.dropwizard.lifecycle.JettyManaged.doStart(JettyManaged.java:27)
graphhopper_1  |        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
graphhopper_1  |        at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
graphhopper_1  |        at org.eclipse.jetty.server.Server.start(Server.java:423)
graphhopper_1  |        at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
graphhopper_1  |        at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
graphhopper_1  |        at org.eclipse.jetty.server.Server.doStart(Server.java:387)
graphhopper_1  |        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
graphhopper_1  |        at io.dropwizard.cli.ServerCommand.run(ServerCommand.java:53)
graphhopper_1  |        at io.dropwizard.cli.EnvironmentCommand.run(EnvironmentCommand.java:60)
graphhopper_1  |        at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:98)
graphhopper_1  |        at io.dropwizard.cli.Cli.run(Cli.java:78)
graphhopper_1  |        at io.dropwizard.Application.run(Application.java:94)
graphhopper_1  |        at com.graphhopper.application.GraphHopperApplication.main(GraphHopperApplication.java:38)
helpbuttonsorg_graphhopper_1 exited with code 1
` ``

docker-compose.yml
```
  graphhopper:
    image: israelhikingmap/graphhopper:6.2
    ports:
      - "8989:8989"
    volumes:
      - "./graphhopper:/gh-data:ro"
      - "./graphhopper-data:/data:rw"
    entrypoint: bash -c "chmod +x ./graphhopper.sh && ls /gh-data/ && ./graphhopper.sh --host <IP_ADDRESS> -i /gh-data/portugal-latest.osm.pbf -o /data/default-gh/ -c /gh-data/gh-config.yml"
    environment:
      - JVM_OPTS=-Xmx12g -Xms12g -XX:MaxPermSize=1024m

I expect the server to run, when i do
 curl http://localhost:8989
but it crashes, memory issues maybe? I already put to 1024m im using the pbf of portugal got from:
https://download.geofabrik.de/europe/portugal-latest.osm.pbf

The volumes definitions are weird.
6.2 doesn't need chmod.
Use the following script to create a graph:
https://github.com/IsraelHikingMap/Site/blob/main/gh-update.ps1
And the following docker-compose for configuration.
https://github.com/IsraelHikingMap/Site/blob/d267210bb73f2c3af90523684e606ee57e583b7a/docker-compose.yml#L26
Only after running the gh-update.ps1 run docker-copmose up graphhopper

I'm sorry still trying to understand the ecosystem, ill try to write an article about all my steps :)
https://github.com/graphhopper/graphhopper/issues/1921

added debugging logfiles.. could not put it up and running yet.! its a problem of memory. do u have any tweak on docker to use more memory?

Looks like your env variable name is wrong - the container is using 1 Gb while you wanted it to use 12 Gb.
See here:
https://github.com/IsraelHikingMap/Site/blob/d267210bb73f2c3af90523684e606ee57e583b7a/gh-update.ps1#L4
It should be JAVA_OPTS and not JVM_OPTS.

yay, made it work... tweaked a bit the config file.. until it worked..
here my gh-config.yml
graphhopper:
  datareader.file: ""  graph.location: graph-cache
      vehicle: hike
      weighting: short_fastest
  profiles_ch:    - profile: hike
  graph.encoded_values: road_class,road_class_link,road_environment,max_speed,road_access,track_type,surface
  graph.elevation.provider: srtm
  graph.elevation.cache_dir: /usr/src/app/elevation/
  graph.elevation.dataaccess: RAM_STORE
  prepare.min_network_size: 200
  graph.dataaccess.default_type: RAM_STORE

server:
  application_connectors:
  - type: http
    port: 8989    bind_host: localhost
  request_log:
      appenders: []
  admin_connectors:
  - type: http
    port: 8990
    bind_host: localhostlogging:
  appenders:
  - type: file
    time_zone: UTC
    current_log_filename: logs/graphhopper.log
    log_format: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"
    archive: true
    archived_log_filename_pattern: ./logs/graphhopper-%d.log.gz
    archived_file_count: 30
    never_block: true
  - type: console
    time_zone: UTC
    log_format: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"
    ```

https://github.com/helpbuttons/helpbuttons/tree/graphhopper

Closing then... Good luck!


Remove dakoner from kubeflow github org.

This change is

@googlebot I signed it!

@dakoner please sign the. CLA to help merge this PR.
/ok-to-test
/lgtm
/approve

please ignore my comment about CLA, looks like you did it while i was commenting :)


GraphQL error: Invalid Version: 1.17

Describe the bug
Prisma cloud should create a new Server
To Reproduce
Steps to reproduce the behavior:

Create a new Server using Heruko(I am doing it this way)

Expected behavior
Should make a new Server
Screenshots

Versions (please complete the following information):

OS: [e.g. Windows 10, OS X High Sierra, Ubuntu 16.04]
prisma CLI: [e.g. prisma/1.9.0 (darwin-x64) node-v10.4.0]
Prisma Server: [e.g. 1.9.0]
graphql-cli, prisma-binding, graphql-yoga, etc. if applicable

@siddhant1 I got the same error. Looking for help.

This issue is resolved. Thanks for the detailed report.


[Event Request] Table 38 - Purchase Header - OnBeforeGetUserSetupPurchaserCode

Dear ALAppExtensions team,
through this issue we would like to request adding event publisher OnBeforeGetUserSetupPurchaserCode in Table 38 Purchase Header with the following signature:
[IntegrationEvent(false, false)]
local procedure OnBeforeGetUserSetupPurchaserCode(var IsHandled: Boolean)
begin
end;

which would be called as follows in GetUserSetupPurchaserCode:
local procedure GetUserSetupPurchaserCode(): Code[20]
var
    UserSetup: Record "User Setup";
    // >>>> New >>>>>>>>>>>>>>>>
    IsHandled: Boolean;
    // <<<< New <<<<<<<<<<<<<<<<
begin
    // >>>> New >>>>>>>>>>>>>>>>
    IsHandled := false;
    OnBeforeGetUserSetupPurchaserCode(IsHandled);
    if IsHandled then
        exit;
    // <<<< New <<<<<<<<<<<<<<<<
    if not UserSetup.Get(UserId) then
        exit;

    exit(UserSetup."Salespers./Purch. Code");
end;

Thanks in advance!

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 47054.

Hello,
we just checked and noticed that the requested parameter IsHandled is not a var parameter. Can you fix this please?

That I can. Sorry about that!


Bip32 Hierarchial Deterministic Keys

This pull request implements BIP32 Hierarchial Deterministic Keys.

Coverage decreased (-0.07%) to 90.061% when pulling f8a6f8a22f73cce748c5ac5639e751014ea862f8 on Christewart:bip32 into a5df35325e97be402a708e5dcf2c60d6f0883f53 on bitcoin-s:master.

Coverage decreased (-0.04%) to 89.987% when pulling a702c781e089cb4fbb385491efac31cc14211cd5 on Christewart:bip32 into cf89853a597ae7cbbed8c4994628526ffba70d6f on bitcoin-s:master.

Coverage decreased (-0.1%) to 90.611% when pulling 0887cdd33268042e28dab02fb28f47351cffcb1c on Christewart:bip32 into 36f42a47db060e2f5596abd7ff474e49bc872cd2 on bitcoin-s:master.

Coverage decreased (-0.1%) to 90.611% when pulling 6358eb83067909771f989d615b422759222d060a on Christewart:bip32 into 36f42a47db060e2f5596abd7ff474e49bc872cd2 on bitcoin-s:master.


Let RELEASE.md link out to practices on using github-activity

I want us to link to a central source of truth with regards to advice on how to make the changelog, as compared to inlining them in the individual project's RELEASE.md files. Like that, we can reduce the toil for updating things as details change.
As an example of change we can do in a single place instead of in each RELEASE.md going onwards, github-activity >0.3.0 will filter out a few bots we use in the contributor lists so we don't need to mention needing to do that.

I hear that you want a source of truth and considers where that source of truth is located @GeorgianaElena. To me location we put the source of truth isn't important in itself, but think its really important that the source of truth is version controlled in one place at most so that we don't end up needing to update it across multiple github repositories if it change. Since this repository's files are copied, I'd very much like to avoid having it as part of the files in this repo.

@consideRatio, I've opened https://github.com/jupyterhub/outreachy/issues/197 because I believe this would make a good Outreachy project.
Maybe that will give more insight about what I had in mind for this repo.

controlled in one place at most so that we don't end up needing to update it across multiple github repositories if it change.

For me, this is the point of this repo, to be the most up to date version of the practices we are following, so that any new project will be following the latest version. But also, this will be the place to go to when updating an existing project that was not actively maintained for some time, for example.
What do you think about this? Do you think such idea makes sense?

But also, this will be the place to go to when updating an existing project that was not actively maintained for some time, for example.

I agree and see this project as the reference to initialize and update projects against, but I want to minimize things we need to update. If something already is or could be made project unspecific, then I think we should avoid duplicating it across projects.
I see the github-activity usage advice as similar to a code of conduct text for example, it doesn't have to be project specific and should therefore not be duplicated across projects.

Since release practices and changelog things change over time, minimizing the churn in template files which need updating in every repo makes sense. Linking to a central source reduces that churn. Perhaps moving it from a GitHub issue to something in the team-compass documentation will make it a more official source of information.

Thanks @GeorgianaElena and @minrk for thinking about this!
I'm aiming for making a team-compass docs PR about generating changelogs, and then linking to that team-compas docs destination.

@GeorgianaElena @minrk I've opened https://github.com/jupyterhub/team-compass/pull/679 to update the team-compass docs to house info, allowing the changelog creation part be documented there instead of either in individual RELEASE.md files or a github issue in team-compass.
If you have time, please review that PR, then I'll update this!

Wiee this PR is now updated to link to the team-compass docs!


Feature: Button hints on HUD

What does this pull request add?
This pull request adds a button hint feature to the HUD during gameplay to help players learn controls.
Preview

(Action is climbing a ladder.)
Known problems: Nothing aside from missing localization for languages beside English.

Added Russian translation for button hints, I'll check it later today (so words don't go past their designated places)

(so words don't go past their designated places)
What do you mean by this? The text is already drawn with draw.DrawText with the option to right-align.

What do you mean by this? The text is already drawn with draw.DrawText with the option to right-align.

ah, just to be sure

Fair enough, GLua sometimes glitches out and just makes things much harder than it needs to be.

So, are we merging this?


HAYSTAC not working on UBUNTU 16.04.7 LTS

Hello,
I have worked with HAYSTAC previously on another OS (Red Hat) and had no big problems. However, now I am trying to use it on another OS, Ubuntu 16.04.7, and it seems to not be working. First, I tried to install it via mamba. I was able to do so. However, when I tried to create a database, the program failed to do so, as it got an error. I am attaching the log file.
I got the impression I got an error because of some dependencies. So I tried to install the dependencies you asked for in a separate environment. I failed to do so, conda claimed there were incompatibilities. So I tried to see which was causing conflicts by installing one dependency at the time. I discovered I am able to install all dependencies, unless this one:
snakemake==6.3.0
Any idea what problem I am facing? And how should I proceed? I know I am working with an outdated Ubuntu version, however I am working on a cluster, thus I cannot update it.
Best,
Eugénio
2023-02-15T162611.158424.snakemake.log

Hello Eugenio,
I hope you are doing great and thank you for posting this !
I will have a look at it this week and get back to you ASAP.
Thank you for your patience !
Best,
Antony

Hello Eugenio,
I hope you are well !
Unfortunately I am not able tor reproduce this error. Have you tried installing the newest version of haystac and see if the problem persists ?
If the problem is still persisting, would it be easy for you to run the newest version of haystac with the --debug flag activated and let know what the output is ?
Thank you for your help !
Best,
Antony

Hello Antony,
Thank you very much for your time and help!
With this new version of haystac I was already able to install and run haystac on this machine!
Best,
Eugénio


Plotting with umap.plot

I finally got umap.plot working here. This should be better because it can efficiently plot millions of data points, so we do not need to downsample the cells. Let me know if you have any questions/comments about this. I also didn't really clean up the plotting here, so feel free to make changes on this branch, or I can merge and then we can fix it up later.

Looks great! We can merge this and I can work on making it cleaner later, unless Andrew would prefer to make changes here!

Yeah we can merge and make it pretty in another PR!


core: some state reset oprimizations

This PR is aimed to make the state reset process faster and thriftier.
Firstly, we need to try to make a separate persisting routine (this optimisation is moved from #2813). After that we need to reduce amount of time spent on storage items removal/addition as described in https://github.com/nspcc-dev/neo-go/pull/2813#issuecomment-1324131712. The results of optimisations will be attached in the comment.

Here the results of persisting routine separation with LevelDB are attached.

@roman-khimov, and here are the results for BoltDB, mainnet reset from 2512046. As expected, it takes longer time with both configurations than LevelDB, and multi-threaded version performs significantly better due to heavy persists.
Patch with separate persisting thread:
Reset from 2512046 to 1:
anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ ./bin/neo-go db reset -m --debug --height 1
2022-11-24T16:52:22.778+0300	INFO	MaxBlockSize is not set or wrong, setting default value	{"MaxBlockSize": 262144}
2022-11-24T16:52:22.778+0300	INFO	MaxBlockSystemFee is not set or wrong, setting default value	{"MaxBlockSystemFee":<PHONE_NUMBER>00}
2022-11-24T16:52:22.778+0300	INFO	MaxTransactionsPerBlock is not set or wrong, using default value	{"MaxTransactionsPerBlock": 512}
2022-11-24T16:52:22.778+0300	INFO	MaxValidUntilBlockIncrement is not set or wrong, using default value	{"MaxValidUntilBlockIncrement": 5760}
2022-11-24T16:52:22.781+0300	INFO	restoring blockchain	{"version": "0.2.6"}
2022-11-24T16:52:26.179+0300	INFO	initializing state reset	{"target height": 1}
2022-11-24T16:52:26.179+0300	DEBUG	trying to reset blocks, transactions and AERs
2022-11-24T16:52:59.229+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 1, "took": "33.049965798s"}
2022-11-24T16:53:05.145+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 1, "took": "5.916330934s", "keys": 210973}
2022-11-24T16:53:25.759+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 2, "took": "26.530193242s"}
2022-11-24T16:53:35.298+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 2, "took": "9.53869754s", "keys": 241203}
2022-11-24T16:53:48.422+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 3, "took": "22.662799132s"}
2022-11-24T16:53:57.823+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 3, "took": "9.400580514s", "keys": 250595}
2022-11-24T16:54:08.815+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 4, "took": "20.392973741s"}
2022-11-24T16:54:24.033+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 4, "took": "15.217421872s", "keys": 321896}
2022-11-24T16:54:24.586+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 5, "took": "15.770194369s"}
2022-11-24T16:54:37.065+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 6, "took": "12.479227513s"}
2022-11-24T16:54:38.090+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 5, "took": "13.504841453s", "keys": 334821}
2022-11-24T16:54:50.048+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 6, "took": "12.983095965s", "keys": 317130}
2022-11-24T16:54:50.273+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 7, "took": "12.182506701s"}
2022-11-24T16:55:01.272+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 8, "took": "10.998665163s"}
2022-11-24T16:55:05.424+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 7, "took": "15.150524218s", "keys": 355835}
2022-11-24T16:55:16.021+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 9, "took": "10.597194864s"}
2022-11-24T16:55:20.970+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 8, "took": "19.698337771s", "keys": 357687}
2022-11-24T16:55:30.331+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 10, "took": "9.360520021s"}
2022-11-24T16:55:36.800+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 9, "took": "20.778546156s", "keys": 393356}
2022-11-24T16:55:44.639+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 11, "took": "7.839711329s"}
2022-11-24T16:55:48.585+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 10, "took": "18.254275762s", "keys": 366492}
2022-11-24T16:55:55.752+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 12, "took": "7.166634776s"}
2022-11-24T16:55:58.412+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 11, "took": "13.772830087s", "keys": 326030}
2022-11-24T16:56:02.276+0300	INFO	last batch of removed blocks, transactions and AERs is collected	{"batch": 13, "took": "3.863734981s"}
2022-11-24T16:56:02.277+0300	INFO	blocks, transactions ans AERs are reset	{"took": "3m36.097399573s"}
2022-11-24T16:56:06.644+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 12, "took": "10.892496402s", "keys": 299884}
2022-11-24T16:56:06.645+0300	DEBUG	trying to reset contract storage items and IDs
2022-11-24T16:56:06.697+0300	INFO	removed contract IDs are collected	{"took": "52.772626ms"}
2022-11-24T16:56:12.727+0300	DEBUG	last batch of removed blocks, transactions and AERs is persisted	{"batch": 13, "took": "10.449593745s", "keys": 190399}
2022-11-24T16:56:12.786+0300	DEBUG	removed contract IDs are persisted	{"took": "6.088783506s", "keys": 280}
2022-11-24T16:56:12.822+0300	INFO	last batch of contract storage items and IDs is collected	{"batch": 1, "took": "94.891024ms"}
2022-11-24T16:56:12.822+0300	INFO	contract storage items and IDs are reset	{"took": "6.177095704s", "keys": 26, "ids": 9}
2022-11-24T16:56:12.822+0300	DEBUG	trying to reset headers information
2022-11-24T16:56:12.904+0300	DEBUG	last batch of contract storage items and IDs is persisted	{"batch": 1, "took": "82.251972ms", "keys": 439}
2022-11-24T16:56:17.386+0300	INFO	headers information is reset	{"took": "4.564193072s"}
2022-11-24T16:56:17.386+0300	DEBUG	trying to reset state root information and NEP transfers
2022-11-24T16:57:05.843+0300	INFO	state root information and NEP transfers are reset	{"took": "48.457218144s"}
2022-11-24T16:57:36.824+0300	DEBUG	headers information is persisted	{"took": "1m19.437838571s", "keys": 2512902}
2022-11-24T16:57:36.824+0300	DEBUG	trying to remove stale storage items
2022-11-24T16:57:57.561+0300	INFO	stale storage items are reset	{"took": "20.736565259s", "keys": 3287907}
2022-11-24T16:57:57.561+0300	DEBUG	trying to remove state reset point
2022-11-24T16:57:57.561+0300	INFO	state reset point is removed	{"took": "10.788µs"}
2022-11-24T16:58:17.096+0300	DEBUG	state root information and NEP transfers are persisted	{"took": "1m11.25267213s", "keys": 2725424}
2022-11-24T16:58:17.189+0300	INFO	state reset point information is persisted	{"took": "19.627576705s", "keys": 2}
2022-11-24T16:58:17.189+0300	INFO	reset finished successfully	{"took": "5m51.009793984s"}

Reset from 2512046 to 1M:
anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ ./bin/neo-go db reset -m --debug --height 1000000
2022-11-24T16:33:22.797+0300	INFO	MaxBlockSize is not set or wrong, setting default value	{"MaxBlockSize": 262144}
2022-11-24T16:33:22.797+0300	INFO	MaxBlockSystemFee is not set or wrong, setting default value	{"MaxBlockSystemFee":<PHONE_NUMBER>00}
2022-11-24T16:33:22.797+0300	INFO	MaxTransactionsPerBlock is not set or wrong, using default value	{"MaxTransactionsPerBlock": 512}
2022-11-24T16:33:22.797+0300	INFO	MaxValidUntilBlockIncrement is not set or wrong, using default value	{"MaxValidUntilBlockIncrement": 5760}
2022-11-24T16:33:22.799+0300	INFO	restoring blockchain	{"version": "0.2.6"}
2022-11-24T16:33:26.102+0300	INFO	initializing state reset	{"target height": 1000000}
2022-11-24T16:33:26.102+0300	DEBUG	trying to reset blocks, transactions and AERs
2022-11-24T16:33:59.515+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 1, "took": "33.412921156s"}
2022-11-24T16:34:21.696+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 1, "took": "22.180669258s", "keys": 317131}
2022-11-24T16:34:24.613+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 2, "took": "25.097670643s"}
2022-11-24T16:34:45.138+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 3, "took": "20.525415342s"}
2022-11-24T16:34:47.657+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 2, "took": "23.044200149s", "keys": 355831}
2022-11-24T16:35:03.665+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 4, "took": "16.007512833s"}
2022-11-24T16:35:06.237+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 3, "took": "21.099250927s", "keys": 357691}
2022-11-24T16:35:19.314+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 5, "took": "13.076327832s"}
2022-11-24T16:35:24.649+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 4, "took": "20.984677399s", "keys": 393356}
2022-11-24T16:35:37.158+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 6, "took": "12.508055446s"}
2022-11-24T16:35:41.626+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 5, "took": "22.312366779s", "keys": 366492}
2022-11-24T16:35:54.667+0300	INFO	intermediate batch of removed blocks, transactions and AERs is collected	{"batch": 7, "took": "13.040585571s"}
2022-11-24T16:35:54.743+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 6, "took": "17.585620872s", "keys": 326030}
2022-11-24T16:36:01.056+0300	INFO	last batch of removed blocks, transactions and AERs is collected	{"batch": 8, "took": "6.312495214s"}
2022-11-24T16:36:01.057+0300	INFO	blocks, transactions ans AERs are reset	{"took": "2m34.954426784s"}
2022-11-24T16:36:05.187+0300	DEBUG	intermediate batch of removed blocks, transactions and AERs is persisted	{"batch": 7, "took": "10.519951628s", "keys": 299884}
2022-11-24T16:36:05.187+0300	DEBUG	trying to reset contract storage items and IDs
2022-11-24T16:36:05.242+0300	INFO	removed contract IDs are collected	{"took": "54.906263ms"}
2022-11-24T16:36:13.604+0300	DEBUG	last batch of removed blocks, transactions and AERs is persisted	{"batch": 8, "took": "12.546730562s", "keys": 190400}
2022-11-24T16:36:13.646+0300	DEBUG	removed contract IDs are persisted	{"took": "8.403919275s", "keys": 280}
2022-11-24T16:37:15.586+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 1, "took": "1m1.982517398s"}
2022-11-24T16:38:03.077+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 2, "took": "47.490665548s"}
2022-11-24T16:38:12.662+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 1, "took": "57.076111s", "keys": 200001}
2022-11-24T16:39:00.215+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 3, "took": "47.552607663s"}
2022-11-24T16:39:19.935+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 2, "took": "1m16.858181693s", "keys": 199999}
2022-11-24T16:40:16.469+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 4, "took": "56.534243551s"}
2022-11-24T16:40:28.922+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 3, "took": "1m28.706695092s", "keys": 200000}
2022-11-24T16:41:10.205+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 5, "took": "41.28253555s"}
2022-11-24T16:41:25.698+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 4, "took": "1m9.228347934s", "keys": 200000}
2022-11-24T16:42:01.358+0300	INFO	last batch of contract storage items and IDs is collected	{"batch": 6, "took": "35.660037246s"}
2022-11-24T16:42:01.358+0300	INFO	contract storage items and IDs are reset	{"took": "5m56.171050707s", "keys": 1180605, "ids": 100}
2022-11-24T16:42:21.997+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 5, "took": "1m11.792847936s", "keys": 200000}
2022-11-24T16:42:21.998+0300	DEBUG	trying to reset headers information
2022-11-24T16:42:24.271+0300	INFO	headers information is reset	{"took": "2.273409002s"}
2022-11-24T16:43:10.856+0300	DEBUG	last batch of contract storage items and IDs is persisted	{"batch": 6, "took": "1m9.49755649s", "keys": 180706}
2022-11-24T16:43:10.856+0300	DEBUG	trying to reset state root information and NEP transfers
2022-11-24T16:44:00.700+0300	INFO	state root information and NEP transfers are reset	{"took": "49.844160051s"}
2022-11-24T16:45:43.622+0300	DEBUG	headers information is persisted	{"took": "3m19.350298215s", "keys": 1512806}
2022-11-24T16:45:43.622+0300	DEBUG	trying to remove stale storage items
2022-11-24T16:46:00.895+0300	INFO	stale storage items are reset	{"took": "17.272808227s", "keys": 3287907}
2022-11-24T16:46:00.895+0300	DEBUG	trying to remove state reset point
2022-11-24T16:46:00.895+0300	INFO	state reset point is removed	{"took": "5.237µs"}
2022-11-24T16:46:28.317+0300	DEBUG	state root information and NEP transfers are persisted	{"took": "2m27.616187968s", "keys": 1685694}
2022-11-24T16:46:28.390+0300	INFO	state reset point information is persisted	{"took": "27.494414738s", "keys": 2}
2022-11-24T16:46:28.390+0300	INFO	reset finished successfully	{"took": "13m2.287841809s"}

Reset from 2512046 to 2.5M:
anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ ./bin/neo-go db reset -m --debug --height 2500000
2022-11-24T11:53:18.278+0300	INFO	MaxBlockSize is not set or wrong, setting default value	{"MaxBlockSize": 262144}
2022-11-24T11:53:18.278+0300	INFO	MaxBlockSystemFee is not set or wrong, setting default value	{"MaxBlockSystemFee":<PHONE_NUMBER>00}
2022-11-24T11:53:18.278+0300	INFO	MaxTransactionsPerBlock is not set or wrong, using default value	{"MaxTransactionsPerBlock": 512}
2022-11-24T11:53:18.278+0300	INFO	MaxValidUntilBlockIncrement is not set or wrong, using default value	{"MaxValidUntilBlockIncrement": 5760}
2022-11-24T11:53:18.281+0300	INFO	restoring blockchain	{"version": "0.2.6"}
2022-11-24T11:53:21.871+0300	INFO	initializing state reset	{"target height": 2500000}
2022-11-24T11:53:21.871+0300	DEBUG	trying to reset blocks, transactions and AERs
2022-11-24T11:53:25.464+0300	INFO	last batch of removed blocks, transactions and AERs is collected	{"batch": 1, "took": "3.59267287s"}
2022-11-24T11:53:25.464+0300	INFO	blocks, transactions ans AERs are reset	{"took": "3.592757769s"}
2022-11-24T11:53:25.464+0300	DEBUG	trying to reset contract storage items and IDs
2022-11-24T11:53:25.470+0300	INFO	removed contract IDs are collected	{"took": "6.843256ms"}
2022-11-24T11:53:28.482+0300	DEBUG	last batch of removed blocks, transactions and AERs is persisted	{"batch": 1, "took": "3.018035266s", "keys": 21447}
2022-11-24T11:53:28.492+0300	DEBUG	removed contract IDs are persisted	{"took": "3.021954587s", "keys": 280}
2022-11-24T11:54:40.674+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 1, "took": "1m12.191769168s"}
2022-11-24T11:55:10.791+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 2, "took": "30.116937813s"}
2022-11-24T11:55:34.545+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 1, "took": "53.871773745s", "keys": 200001}
2022-11-24T11:55:50.172+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 3, "took": "15.626058975s"}
2022-11-24T11:56:27.750+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 2, "took": "1m16.959231617s", "keys": 199999}
2022-11-24T11:57:01.655+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 4, "took": "33.905148902s"}
2022-11-24T11:57:21.236+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 3, "took": "1m31.064487985s", "keys": 200000}
2022-11-24T11:58:04.059+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 5, "took": "42.821928455s"}
2022-11-24T11:58:15.393+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 4, "took": "1m13.737365576s", "keys": 200000}
2022-11-24T11:58:57.547+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 6, "took": "42.154303369s"}
2022-11-24T11:59:10.082+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 5, "took": "1m6.02000518s", "keys": 200000}
2022-11-24T11:59:51.497+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 7, "took": "41.415448277s"}
2022-11-24T12:00:07.827+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 6, "took": "1m10.279829866s", "keys": 200000}
2022-11-24T12:00:51.128+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 8, "took": "43.300516195s"}
2022-11-24T12:01:08.395+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 7, "took": "1m16.897836141s", "keys": 200000}
2022-11-24T12:01:50.732+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 9, "took": "42.336451295s"}
2022-11-24T12:02:07.082+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 8, "took": "1m15.954107158s", "keys": 200000}
2022-11-24T12:02:48.751+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 10, "took": "41.669142845s"}
2022-11-24T12:03:08.789+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 9, "took": "1m18.057104286s", "keys": 200000}
2022-11-24T12:03:58.624+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 11, "took": "49.83503168s"}
2022-11-24T12:04:15.148+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 10, "took": "1m26.397054062s", "keys": 200000}
2022-11-24T12:05:02.595+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 12, "took": "47.446508362s"}
2022-11-24T12:05:20.400+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 11, "took": "1m21.775294428s", "keys": 200000}
2022-11-24T12:06:07.210+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 13, "took": "46.810614735s"}
2022-11-24T12:06:26.587+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 12, "took": "1m23.992530798s", "keys": 200000}
2022-11-24T12:07:13.983+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 14, "took": "47.395931193s"}
2022-11-24T12:07:34.133+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 13, "took": "1m26.92213553s", "keys": 200000}
2022-11-24T12:08:22.022+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 15, "took": "47.889317428s"}
2022-11-24T12:08:41.412+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 14, "took": "1m27.428120014s", "keys": 200000}
2022-11-24T12:09:29.908+0300	INFO	intermediate batch of contract storage items and IDs is collected	{"batch": 16, "took": "48.496156506s"}
2022-11-24T12:09:51.303+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 15, "took": "1m29.281350492s", "keys": 200000}
2022-11-24T12:10:06.951+0300	INFO	last batch of contract storage items and IDs is collected	{"batch": 17, "took": "15.647282937s"}
2022-11-24T12:10:06.951+0300	INFO	contract storage items and IDs are reset	{"took": "16m41.487560766s", "keys": 3269297, "ids": 262}
2022-11-24T12:11:01.125+0300	DEBUG	intermediate batch of contract storage items and IDs is persisted	{"batch": 16, "took": "1m31.216852593s", "keys": 200000}
2022-11-24T12:11:01.125+0300	DEBUG	trying to reset headers information
2022-11-24T12:11:01.142+0300	INFO	headers information is reset	{"took": "17.134939ms"}
2022-11-24T12:11:08.352+0300	DEBUG	last batch of contract storage items and IDs is persisted	{"batch": 17, "took": "1m1.400578159s", "keys": 69560}
2022-11-24T12:11:08.352+0300	DEBUG	trying to reset state root information and NEP transfers
2022-11-24T12:11:10.778+0300	DEBUG	headers information is persisted	{"took": "9.636332413s", "keys": 12056}
2022-11-24T12:11:52.850+0300	INFO	state root information and NEP transfers are reset	{"took": "44.498264367s"}
2022-11-24T12:11:52.850+0300	DEBUG	trying to remove stale storage items
2022-11-24T12:12:08.236+0300	INFO	stale storage items are reset	{"took": "15.385798411s", "keys": 3287907}
2022-11-24T12:12:08.236+0300	DEBUG	trying to remove state reset point
2022-11-24T12:12:08.236+0300	INFO	state reset point is removed	{"took": "7.984µs"}
2022-11-24T12:12:08.647+0300	DEBUG	state root information and NEP transfers are persisted	{"took": "15.796836802s", "keys": 78276}
2022-11-24T12:12:08.659+0300	INFO	state reset point information is persisted	{"took": "423.046893ms", "keys": 2}
2022-11-24T12:12:08.673+0300	INFO	reset finished successfully	{"took": "18m46.802252738s"}

Single-threaded version:
Reset from 2512046 to 1:
anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ ./bin/neo-go db reset -m --debug --height 1
2022-11-24T16:19:19.071+0300	INFO	MaxBlockSize is not set or wrong, setting default value	{"MaxBlockSize": 262144}
2022-11-24T16:19:19.071+0300	INFO	MaxBlockSystemFee is not set or wrong, setting default value	{"MaxBlockSystemFee":<PHONE_NUMBER>00}
2022-11-24T16:19:19.071+0300	INFO	MaxTransactionsPerBlock is not set or wrong, using default value	{"MaxTransactionsPerBlock": 512}
2022-11-24T16:19:19.071+0300	INFO	MaxValidUntilBlockIncrement is not set or wrong, using default value	{"MaxValidUntilBlockIncrement": 5760}
2022-11-24T16:19:19.073+0300	INFO	restoring blockchain	{"version": "0.2.6"}
2022-11-24T16:19:22.276+0300	INFO	initialize state reset	{"target height": 1}
2022-11-24T16:19:22.283+0300	INFO	trying to reset blocks, transactions and AERs
2022-11-24T16:20:04.336+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 1, "took": "42.060255575s", "keys": 210973}
2022-11-24T16:20:44.510+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 2, "took": "40.173485454s", "keys": 241203}
2022-11-24T16:21:21.413+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 3, "took": "36.902853699s", "keys": 250593}
2022-11-24T16:22:02.270+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 4, "took": "40.857392163s", "keys": 321896}
2022-11-24T16:22:37.271+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 5, "took": "35.000824397s", "keys": 334822}
2022-11-24T16:23:06.101+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 6, "took": "28.829735344s", "keys": 317131}
2022-11-24T16:23:34.467+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 7, "took": "28.366178642s", "keys": 355832}
2022-11-24T16:24:00.218+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 8, "took": "25.751013566s", "keys": 357690}
2022-11-24T16:24:28.370+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 9, "took": "28.151671813s", "keys": 393356}
2022-11-24T16:24:51.107+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 10, "took": "22.736926516s", "keys": 366492}
2022-11-24T16:25:11.570+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 11, "took": "20.463546668s", "keys": 326030}
2022-11-24T16:25:27.494+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 12, "took": "15.923596166s", "keys": 299884}
2022-11-24T16:25:36.240+0300	INFO	last batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 13, "took": "8.745884333s", "keys": 190399}
2022-11-24T16:25:36.241+0300	INFO	blocks, transactions ans AERs are reset	{"took": "6m13.964136532s", "overall persisted keys": 3966301}
2022-11-24T16:25:36.241+0300	INFO	trying to reset contract storage items and IDs
2022-11-24T16:25:36.298+0300	INFO	removed contract IDs are persisted	{"took": "56.968712ms", "keys": 280}
2022-11-24T16:25:36.349+0300	INFO	last batch of contract storage items and IDs is persisted	{"batch": 1, "took": "50.705013ms", "keys": 36}
2022-11-24T16:25:36.349+0300	INFO	contract storage items and IDs are reset	{"took": "108.08012ms", "keys": 26, "ids": 9}
2022-11-24T16:25:36.349+0300	INFO	trying to reset headers information
2022-11-24T16:26:09.124+0300	INFO	headers information is reset	{"took": "32.774835646s", "keys": 2513305}
2022-11-24T16:26:09.124+0300	INFO	trying to reset state root information and NEP transfers
2022-11-24T16:27:04.515+0300	INFO	state root information and NEP transfers are reset	{"took": "55.390389352s", "keys": 2725424}
2022-11-24T16:27:04.515+0300	INFO	trying to remove stale storage items
2022-11-24T16:27:25.618+0300	INFO	stale storage items are reset	{"took": "21.10288712s", "keys": 3287907}
2022-11-24T16:27:25.618+0300	INFO	trying to remove state reset point
2022-11-24T16:27:25.696+0300	INFO	stale reset point is removed	{"took": "78.463724ms", "keys": 2}
2022-11-24T16:27:25.702+0300	INFO	reset finished successfully	{"took": "8m3.425489509s"}

Reset from 2512046 to 1M:
anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ ./bin/neo-go db reset -m --debug --height 1000000
2022-11-24T15:29:53.853+0300	INFO	MaxBlockSize is not set or wrong, setting default value	{"MaxBlockSize": 262144}
2022-11-24T15:29:53.854+0300	INFO	MaxBlockSystemFee is not set or wrong, setting default value	{"MaxBlockSystemFee":<PHONE_NUMBER>00}
2022-11-24T15:29:53.854+0300	INFO	MaxTransactionsPerBlock is not set or wrong, using default value	{"MaxTransactionsPerBlock": 512}
2022-11-24T15:29:53.854+0300	INFO	MaxValidUntilBlockIncrement is not set or wrong, using default value	{"MaxValidUntilBlockIncrement": 5760}
2022-11-24T15:29:53.856+0300	INFO	restoring blockchain	{"version": "0.2.6"}
2022-11-24T15:29:57.205+0300	INFO	initialize state reset	{"target height": 1000000}
2022-11-24T15:29:57.211+0300	INFO	trying to reset blocks, transactions and AERs
2022-11-24T15:30:56.940+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 1, "took": "59.735470774s", "keys": 317131}
2022-11-24T15:31:50.327+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 2, "took": "53.386231991s", "keys": 355831}
2022-11-24T15:32:35.818+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 3, "took": "45.490977377s", "keys": 357691}
2022-11-24T15:33:17.460+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 4, "took": "41.642517977s", "keys": 393356}
2022-11-24T15:33:57.322+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 5, "took": "39.861671739s", "keys": 366492}
2022-11-24T15:34:30.513+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 6, "took": "33.191284447s", "keys": 326030}
2022-11-24T15:35:02.254+0300	INFO	intermediate batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 7, "took": "31.740385708s", "keys": 299884}
2022-11-24T15:35:19.847+0300	INFO	last batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 8, "took": "17.592738689s", "keys": 190400}
2022-11-24T15:35:19.848+0300	INFO	blocks, transactions ans AERs are reset	{"took": "5m22.642034554s", "overall persisted keys": 2606815}
2022-11-24T15:35:19.848+0300	INFO	trying to reset contract storage items and IDs
2022-11-24T15:35:19.898+0300	INFO	removed contract IDs are persisted	{"took": "50.048885ms", "keys": 280}
2022-11-24T15:37:23.748+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 1, "took": "2m3.849415952s", "keys": 200000}
2022-11-24T15:39:24.963+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 2, "took": "2m1.214658572s", "keys": 200000}
2022-11-24T15:41:19.846+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 3, "took": "1m54.883504422s", "keys": 200000}
2022-11-24T15:43:08.916+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 4, "took": "1m49.06923763s", "keys": 200000}
2022-11-24T15:45:01.586+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 5, "took": "1m52.670453127s", "keys": 200000}
2022-11-24T15:46:39.147+0300	INFO	last batch of contract storage items and IDs is persisted	{"batch": 6, "took": "1m37.561188618s", "keys": 180706}
2022-11-24T15:46:39.148+0300	INFO	contract storage items and IDs are reset	{"took": "11m19.29968608s", "keys": 1180605, "ids": 100}
2022-11-24T15:46:39.148+0300	INFO	trying to reset headers information
2022-11-24T15:49:13.399+0300	INFO	headers information is reset	{"took": "2m34.251062857s", "keys": 1512806}
2022-11-24T15:49:13.400+0300	INFO	trying to reset state root information and NEP transfers
2022-11-24T15:50:09.242+0300	INFO	state root information and NEP transfers are reset	{"took": "55.842251131s", "keys": 1685694}
2022-11-24T15:50:09.242+0300	INFO	trying to remove stale storage items
2022-11-24T15:50:27.977+0300	INFO	stale storage items are reset	{"took": "18.734745606s", "keys": 3287907}
2022-11-24T15:50:27.977+0300	INFO	trying to remove state reset point
2022-11-24T15:50:28.033+0300	INFO	stale reset point is removed	{"took": "56.244685ms", "keys": 2}
2022-11-24T15:50:28.054+0300	INFO	reset finished successfully	{"took": "20m30.849396012s"}

Reset from 2512046 to 2.5M:
anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ ./bin/neo-go db reset -m --debug --height 2500000
2022-11-24T14:37:09.380+0300	INFO	MaxBlockSize is not set or wrong, setting default value	{"MaxBlockSize": 262144}
2022-11-24T14:37:09.380+0300	INFO	MaxBlockSystemFee is not set or wrong, setting default value	{"MaxBlockSystemFee":<PHONE_NUMBER>00}
2022-11-24T14:37:09.380+0300	INFO	MaxTransactionsPerBlock is not set or wrong, using default value	{"MaxTransactionsPerBlock": 512}
2022-11-24T14:37:09.380+0300	INFO	MaxValidUntilBlockIncrement is not set or wrong, using default value	{"MaxValidUntilBlockIncrement": 5760}
2022-11-24T14:37:09.382+0300	INFO	restoring blockchain	{"version": "0.2.6"}
2022-11-24T14:37:12.983+0300	INFO	initialize state reset	{"target height": 2500000}
2022-11-24T14:37:12.989+0300	INFO	trying to reset blocks, transactions and AERs
2022-11-24T14:37:19.513+0300	INFO	last batch of removed blocks, transactions and AERs is persisted	{"batches persisted": 1, "took": "6.530530718s", "keys": 21447}
2022-11-24T14:37:19.513+0300	INFO	blocks, transactions ans AERs are reset	{"took": "6.530573658s", "overall persisted keys": 21447}
2022-11-24T14:37:19.513+0300	INFO	trying to reset contract storage items and IDs
2022-11-24T14:37:19.527+0300	INFO	removed contract IDs are persisted	{"took": "13.31949ms", "keys": 280}
2022-11-24T14:39:27.540+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 1, "took": "2m8.013407287s", "keys": 200000}
2022-11-24T14:41:02.696+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 2, "took": "1m35.156039208s", "keys": 200000}
2022-11-24T14:42:21.015+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 3, "took": "1m18.318475429s", "keys": 200000}
2022-11-24T14:44:05.061+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 4, "took": "1m44.04606553s", "keys": 200000}
2022-11-24T14:45:57.889+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 5, "took": "1m52.828283756s", "keys": 200000}
2022-11-24T14:47:52.007+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 6, "took": "1m54.117686865s", "keys": 200000}
2022-11-24T14:49:42.644+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 7, "took": "1m50.636497116s", "keys": 200000}
2022-11-24T14:51:30.789+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 8, "took": "1m48.144931711s", "keys": 200000}
2022-11-24T14:53:19.499+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 9, "took": "1m48.710204379s", "keys": 200000}
2022-11-24T14:55:10.348+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 10, "took": "1m50.848666861s", "keys": 200000}
2022-11-24T14:56:57.281+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 11, "took": "1m46.933373308s", "keys": 200000}
2022-11-24T14:58:45.650+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 12, "took": "1m48.36867161s", "keys": 200000}
2022-11-24T15:00:33.309+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 13, "took": "1m47.658664388s", "keys": 200000}
2022-11-24T15:02:32.477+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 14, "took": "1m59.16815459s", "keys": 200000}
2022-11-24T15:04:37.954+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 15, "took": "2m5.477270842s", "keys": 200000}
2022-11-24T15:06:47.038+0300	INFO	intermediate batch of contract storage items and IDs is persisted	{"batch": 16, "took": "2m9.084044078s", "keys": 200000}
2022-11-24T15:07:12.912+0300	INFO	last batch of contract storage items and IDs is persisted	{"batch": 17, "took": "25.873610406s", "keys": 69560}
2022-11-24T15:07:12.912+0300	INFO	contract storage items and IDs are reset	{"took": "29m53.399084462s", "keys": 3269297, "ids": 262}
2022-11-24T15:07:12.912+0300	INFO	trying to reset headers information
2022-11-24T15:07:17.569+0300	INFO	headers information is reset	{"took": "4.656912612s", "keys": 12056}
2022-11-24T15:07:17.569+0300	INFO	trying to reset state root information and NEP transfers
2022-11-24T15:08:18.381+0300	INFO	state root information and NEP transfers are reset	{"took": "1m0.811545869s", "keys": 78276}
2022-11-24T15:08:18.381+0300	INFO	trying to remove stale storage items
2022-11-24T15:08:39.563+0300	INFO	stale storage items are reset	{"took": "21.182150065s", "keys": 3287907}
2022-11-24T15:08:39.563+0300	INFO	trying to remove state reset point
2022-11-24T15:08:39.598+0300	INFO	stale reset point is removed	{"took": "34.196837ms", "keys": 2}
2022-11-24T15:08:39.621+0300	INFO	reset finished successfully	{"took": "31m26.638486254s"}

I've also found and fixed one more bug in the concurrent version.

Now I really start to like this patch.


affected/package: syscall on darwin amd64 — macOS 13.0 darwin xnu

What version of Go are you using (go version)?

$ go version
go version go1.19.3 darwin/arm64
# cross-compiling to GOOS=darwin GOARCH=amd64

Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
 No go installed
What did you do?
I wrote 3,000 lines of closed-source code wrapping the iffy golang.org/x/net/route.ParseRIB function to consume the mostly undocumented netlink socket output on macOS 13.0+ darwin xnu.
when cross-compiling GOOS=darwin GOARCH=amd64, the following syscall symbols are not defined:

AF_UTUN
RTF_PROXY
RTF_ROUTER

I came up with some silly constructs for this to work transparently
However, when the Wi-Fi interface is turned off on amd64, macOS emits data including RTF_ROUTER
What did you expect to see?
My code to work like on macOS arm64, ie. amd64 to have the symbols present
What did you see instead?
My checkit and checkit again code found undefined bits in rtm_flags: RTF_ROUTER
I think darwin amd64 should include the 3 symbols
RTF_UP: https://github.com/apple/darwin-xnu/blob/main/bsd/net/route.h#L284
rt_msghdr: https://github.com/apple/darwin-xnu/blob/main/bsd/net/route.h#L345

Can you include a minimal reproducer?
And/or point out which places are missing the definitions?

Note the symbols are available in golang.org/x/sys/unix (not syscall, which is deprecated for this purpose.

Closing as not a bug.


Lifecycle Policy and Versioning optional

Hello,
right now the module forces you to use lifecycle policies and versioning.
Can you do it, so you can opt-out - or optional.
Thanks.

Hello @35blaze ,
can you describe a littlebit more what you mean?
Malte

Hey Malte,
sry I put it in the wrong Repo
I already spoke to Geartrixy


Only require apollo_fpga if platform is not set by environment

Looks very reasonable -- merged. Thanks a ton. :)


Feature Request: Add field for Docker cli commands

It would be great to be able to launch docker cli commands via portainer.
On dockerhub for many containers there is a cli command already provided in the documentaiton. For example "docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag". I just want to copy the string, paste it into a portainer field and launch the command. This becomes especially usefull when there are many environment variables and options to set.
Previously I did a workaround. Since I don't have access to the command line on my device, I just created a docker in docker container and bind the container socket to the host socket. This way I was able to use the full functionality of docker via the container console. But now on my host the bind option is blocked and I can't bind my socket anymore.
Now I can't use commands like "docker load", "docker update" etc. anymore.
Is it possible to add such a field that just runs a docker cli command?

Duplicate of https://github.com/portainer/portainer/issues/597
Please follow the discussion in the associated issue. Note that there is no decision on this feature yet.

This is not exactly a duplicate of #597. I was talking about a field to launch a full command. Not only options for the container creation. #597 is just about optional flags.

Sorry, thought it was only related to container creation. Indeed, I'm going to re-open this but as discussed in #597 we're using the Docker API to execute Docker requests and implementing this only for container options is a bit challenging already. Will consider this issue for now and see if we want to integrate this feature.


No way to query max_shots from a Backend V2

Environment

Qiskit Terra version: latest
Python version:
Operating system:

What is happening?
There is no way to programmatically find the max_shots allowed by a V2 fake backend, even if this value is None.  This, along with missing the configuration file as a whole, makes it hard to treat the V2 fake backends as drop in replacements for their actual counterparts.
How can we reproduce the issue?
Try to query the max number of shots from a V2 fake backend
What should happen?
There should be a way to do it, even if the return value is something like None because there is no actual bounds for a simulator, save for allowed time.
Any suggestions?
No response

It's something like: backend.options.validator.get("shots", (None, None))[1]
shots are defined as options on a backend because it's a user configurable run time option. A maximum value for shots is defined as a validator {so it errors automatically on value update) for the field, so you can query it from the validator.

Interesting, did not know this.  It also does not seem to work as intended.  Namely, the above suggestion does work on real v2 backend, and gives None on fake v1 and v2 backends:
backend = FakeKolkata()
real_backend = ibmq_provider.get_backend('ibmq_kolkata')
backend2 = FakeKolkataV2()
real_backend2 = provider.get_backend('ibmq_kolkata')

backend2.options.validator.get("shots", (None, None))[1]

returns None while
real_backend2.options.validator.get("shots", (None, None))[1]

returns 100000
backend.options.validator.get("shots", (None, None))[1]

gives None.
But on V1 real backends it still returns None:
real_backend.options.validator.get("shots", (None, None))[1]

For the real and fake v1 backends, the configuration file also returns different, non None, values, here both equal to 100k shots:
real_backend.configuration().max_shots

and
backend.configuration().max_shots

So, unless I am missing something, it is either a bug for V1, or one still has do an instance check and code differently for each backend version.

But this does address the issue for V2, since the above mentioned solution does work in those cases, so closing as solved for original issue.


OIDC authentication and JWT authorization is unstable

Description:
When attempting to use OIDC authentication and pass that down to the new JWT authorization feature in v1.2.0, Envoy Gateway seems to fail to program the Envoy Proxy in a stable way.  If I apply my Security Policy for an HTTP Route as a whole unit, most of the time I see errors around fetching the JWT public key with the message OAuth flow failed in the browser.  Another time I only saw the OAuth flow failed without a corresponding reason in the Envoy Proxy log.  If I apply the Security Policy with the oidc section and then add the jwt section and finally add the authorization section, I am able to create a working configuration that appropriately authenticates and authorizes the returned JWT token.
If more logs are required, I can attempt to deploy a minikube and grab logs there.
Repro steps:
Sample resources:
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: prometheus
  namespace: monitoring
spec:
  hostnames:
  - prometheus.example.com
  parentRefs:
  - group: gateway.networking.k8s.io
    kind: Gateway
    name: example
  rules:
  - backendRefs:
    - group: ""
      kind: Service
      name: prometheus
      port: 9090
      weight: 1
    matches:
    - path:
        type: PathPrefix
        value: /
---
apiVersion: gateway.envoyproxy.io/v1alpha1
kind: SecurityPolicy
metadata:
  name: prometheus
  namespace: monitoring
spec:
  authorization:
    rules:
    - action: Allow
      name: allow
      principal:
        jwt:
          claims:
          - name: groups
            valueType: StringArray
            values:
            - foobar
          provider: exjwt
  jwt:
    providers:
    - claimToHeaders:
      - claim: email
        header: x-user-email
      extractFrom:
        cookies:
        - IdToken
      issuer: https://oidc.example.com/auth/realms/example
      name: exjwt
      remoteJWKS:
        uri: https://oidc.example.com/auth/realms/example/protocol/openid-connect/certs
  oidc:
    clientID: prometheus
    clientSecret:
      group: ""
      kind: Secret
      name: prometheus-oidc
    cookieNames:
      idToken: IdToken
    provider:
      issuer: https://oidc.example.com/auth/realms/example
    scopes:
    - openid
    - email
    - profile
  targetRefs:
  - group: gateway.networking.k8s.io
    kind: HTTPRoute
    name: prometheus

Environment:
Envoy Gateway v1.2.1
Envoy Proxy v1.32.1
Relevant Logs:
In Envoy Proxy when deploying as a whole unit:
[2024-11-11 21:42:19.638][1][error][filter] [source/extensions/filters/http/common/jwks_fetcher.cc:51] fetch: fetch pubkey [uri = https://oidc.example.com/auth/realms/example/protocol/openid-connect/certs] failed: [cluster = oidc_example_com_443] is not configured
[2024-11-11 21:42:19.638][1][warning][jwt] [source/extensions/filters/http/jwt_authn/jwks_async_fetcher.cc:115] Jwks async fetching url=https://oidc.example.com/auth/realms/example/protocol/openid-connect/certs: failed

In Envoy Gateway when deploying as a whole unit:
2024-11-11T21:42:19.625Z	ERROR	xds-translator	runner/runner.go:85	failed to translate xds ir	{"runner": "xds-translator", "error": "xds cluster exists\nxds cluster exists"}
2024-11-11T21:42:19.625Z	ERROR	watchable	message/watchutil.go:56	observed an error	{"runner": "xds-translator", "error": "xds cluster exists\nxds cluster exists"}

cc @zhaohuabing

Seems caused by the same reason of #3898


Remove unused vendored packages

@jstarks,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

Interesting!
How did we bring those unused ones in? Were they brought in via tools?

I'm not sure. Maybe these used to be important but they aren't anymore.
You can see which ones are unused by running govendor list +unused.


home-page functionality

WHEN I visit the site for the first time
THEN I am presented with the homepage, which includes existing blog posts if any have been posted; navigation links for the homepage and the dashboard; and the option to log in

done


Drop Zone reordering items when drop + clone

Bug type
Component
Component name
MudDropContainer
What happened?
In earlier versions of MudBlazor (version 6.1.9), I was able to keep the order when cloning an Item in the ItemUpdated  method when calling  _container.Refresh(); (ref issue https://github.com/MudBlazor/MudBlazor/issues/5000).
In version 6.9.0, this no longer works - the order of the initial dropzone changes when cloning the first item.
Expected behavior
Calling _container.Refresh() keeps the order of the initial dropzone
Reproduction link
https://try.mudblazor.com/snippet/wYGHYZlddMmkPMdP
Reproduction steps
In https://try.mudblazor.com/snippet/wYGHYZlddMmkPMdP

Grab the first item in Drop Zone 1
2.Drag it to Drop Zone 2
See that order is changed in Drop Zone 1
...

Relevant log output
No response
Version (bug)
6.9.0
Version (working)
6.1.9
What browsers are you seeing the problem on?
Chrome
On what operating system are you experiencing the issue?
Windows
Pull Request

[x] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Seems like same problem as https://github.com/MudBlazor/MudBlazor/issues/7312


Expected usage of the bus GND pins?

The middle pins of the CAN and RS485 bus connectors are labelled AGND and DGND respectively on the schematic and are not connected directly to GND. It appears they connect to GND through a RC filter of some sort and are also connected to the transient voltage suppression components respectively for each bus.
What is the expected use of this pin. I cant work out if:

Is this pin REQUIRED to be connected to external ground for the voltage protection components to work properly or could it be left unconnected?
Is this is a suitable GND point to connect the shield of the bus cables to. I understand the shield should be connected directly to ground and only at one end of the bus. This would be a very convenient location but given that its not directly connected to GND and I cant find any documentation on this pin, I'm unsure if this is a correct use.

https://github.com/Xinyuan-LilyGO/T-CAN485/blob/main/doc/schematic.pdf

Another possibility here would be, when connecting to an OBD port which has 2 ground pins, signal and chassis:
The signal ground would connect to the middle GND pin along with the CAN hi/low lines, and the chassis ground would connect to the power GND along with the supply voltage line?
I guess then the shield would connect to chassis ground.
Really if one of the designers of this board, or someone experienced in this, could shed some light on the intention of these middle GND pins that would be really helpful. Thanks.

Another possibility here would be, when connecting to an OBD port which has 2 ground pins, signal and chassis: The signal ground would connect to the middle GND pin along with the CAN hi/low lines, and the chassis ground would connect to the power GND along with the supply voltage line? I guess then the shield would connect to chassis ground.
Really if one of the designers of this board, or someone experienced in this, could shed some light on the intention of these middle GND pins that would be really helpful. Thanks.

AGND is used for the anti-static shielded ground interface of the CAN bus. DGND is used for the anti-static shielded ground interface of the RS485. The function of the two GNDs is to prevent static electricity and protect the circuit board.
@bobemoe


⚠ Bofrost.be has degraded performance

In 8e18e8b, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 936 ms

Resolved: Bofrost.be performance has improved in 301e690 after 9 minutes.


Simplify API for opening non-headless browsers

What versions are you running?

github.com/chromedp/chromedp v0.3.0
Google Chrome 75.0.3770.90
go version go1.12.6 darwin/amd64

What did you do? Include clear steps.
Previous to the refactor in v0.2.0, one could interact with chromedp.CDP directly and pass around the pointer to it. As a result, I was able to use this library to mix automation and manual interactions. As such, the chrome launched by chromedp would stay open and then I could press buttons, change pages, etc and this would all be tracked by the *chromedp.CDP and passed along via events in the log.
I was then listening to the logs to see when pages loaded or events fired and performing actions. This allowed for a mixed-automation use case where an employee could perform actions within a SaaS app and then based on those actions, we could trigger other events.
What did you expect to see?
After the refactor, I was expecting to be able to do the same however the new API doesn't hook up to browser events in general, it only listens to browser events triggered by the chromedp library.
Previously, the following code (modified for new API) would have allowed me to navigate to pages manually and have the events listed. Now, only the chromedp.Run() action triggers events to be listened for.
Is there some event listener for all events in the chrome instance (regardless of whether or not they are fired by chromedp) that I'm not aware of?
Have you considered the mixed-automation use-case for this library? (I'm totally fine with this being out of scope and I'll fork and maintain my own version)
package main

import (
	"context"
	"errors"
	"fmt"
	"github.com/chromedp/cdproto/page"
	"github.com/chromedp/chromedp"
	"github.com/davecgh/go-spew/spew"
	"log"
	"os"
	"os/signal"
)

type NavigationState struct {
	currentPage string
	currentFrameID string
	pageLoaded bool
}

func (n *NavigationState) SetPageNavigated(page string, frameId string) {
	n.currentPage = page
	n.currentFrameID = frameId
	n.pageLoaded = false
}

func (n *NavigationState) SetPageLoaded(frameId string) error {
	if n.currentFrameID != frameId {
		return errors.New(fmt.Sprintf("invalid frame Id. Current: %s", n.currentFrameID))
	}
	n.pageLoaded = true
	return nil
}

func (n *NavigationState) CurrentPage() string {
	return n.currentPage
}

var pageState NavigationState
var pageChan = make(chan string)

func main() {
	opts := append(
		chromedp.DefaultExecAllocatorOptions[:],
		chromedp.Flag("headless", false),
	)
	allocCtx, cancel := chromedp.NewExecAllocator(context.Background(), opts...)
	defer cancel()

	ctx, cancel := chromedp.NewContext(allocCtx)
	chromedp.ListenTarget(ctx, interceptEvents)

	host := "https://www.google.com"

	err := chromedp.Run(ctx, chromedp.Navigate(host))
	if err != nil {
		log.Fatalf("[ERROR] could not navigate to URL: %v", err)
	}

	log.Printf("[STATUS] navigated to URL: %s", host)

	// Exit when the user hits ctrl+c
	c := make(chan os.Signal, 1)
	signal.Notify(c, os.Interrupt)
	go func() {
		for sig := range c {
			log.Printf("Got signal: %v", sig)
			cancel()
                        os.Exit(0)
		}
	}()

	// Wait until pages load and perform actions based on those pages
	select {
	case pageName := <-pageChan:
		log.Printf("[HANDLING PAGE]: %s", pageName)
	}
}

func interceptEvents(ev interface{}) {

	if e, ok := ev.(*page.EventFrameNavigated); ok {
		url := e.Frame.URL
		frameId := e.Frame.ID.String()

		log.Printf("[URL] %s. frame id: %s", url, frameId)
		pageState.SetPageNavigated(url, frameId)
		return
	}

	spew.Dump(ev)

	if e, ok := ev.(*page.EventFrameStoppedLoading); ok {

		log.Printf("[EVENT LOAD] Current page state: %v", pageState)
		frameId := e.FrameID.String()

		err := pageState.SetPageLoaded(frameId)
		if err != nil {
			log.Fatal(err)
		}

		currentPage := pageState.CurrentPage()
		log.Printf("[PAGE LOADED] %s", currentPage)

		pageChan <-currentPage
		return
	}
	return
}

I've also tried using chromedp.ListenBrowser() which does provide events on page visits not related to chromedp.Run() however it just provides {} on each event:
(*cdproto.Message)(0xc0003d8280)({
 ID: (int64) 32,
 Method: (cdproto.MethodType) ,
 Params: (easyjson.RawMessage) <nil>,
 Result: (easyjson.RawMessage) (len=2 cap=8) {
  00000000  7b 7d                                             |{}|
 },
 Error: (*cdproto.Error)(<nil>)
})
(*cdproto.Message)(0xc0003d8320)({
 ID: (int64) 34,
 Method: (cdproto.MethodType) ,
 Params: (easyjson.RawMessage) <nil>,
 Result: (easyjson.RawMessage) (len=2 cap=8) {
  00000000  7b 7d                                             |{}|
 },
 Error: (*cdproto.Error)(<nil>)
})

Maybe there's some interface that I'm not aware of which would give me access to browser events not triggered inside the chromedp context?

Apologies, this seems to be an error in my code related to using channels with the new API. If I remove the channels from the above code it works to look at (*page.EventFrameNavigated)

I'm hijacking this issue, to make a point of simplifying the new API to specify non-headless, and remote options.


Bump marathon on master to 1.6.535

High-level description
What features does this change enable? What bugs does this change fix?
Corresponding DC/OS tickets (obligatory)
These DC/OS JIRA ticket(s) must be updated (ideally closed) in the moment this PR lands:
The same list as here https://github.com/dcos/dcos/pull/3091
Related tickets (optional)
The same list as here https://github.com/dcos/dcos/pull/3091
Checklist for all PRs

[x] Added a comprehensible changelog entry to CHANGES.md or explain why this is not a user-facing change:
[x] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Change log from the last version integrated (this should be a link to commits for easy verification and review): example
[x] Test Results: [link to CI job test results for component]
[x] Code Coverage (if available): [link to code coverage report]

PLEASE FILL IN THE TEMPLATE ABOVE / DO NOT REMOVE ANY SECTIONS ABOVE THIS LINE

@mesosphere-mergebot bump-ee

@mesosphere-mergebot label Ready For Review


(constantly) write import status to file (json?)

json output format should be used
can we use the middleware scheduler for this?

replaced by alert.log


How could I get middle layers output of TFLite

Please make sure that this is a feature request. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:feature_template
System information

TensorFlow version (you are using): 2.4.1

Describe the feature and the current behavior/state.
I would like to know how to get the middle layers output of TFLite models.
For now, the method I used is:
interpreter.allocate_tensors()
interpreter.set_tensor(input_details["index"], test_image)
interpreter.invoke()
layer_output = interpreter.get_tensor(index), where index is the the index of the tensor
Is that correct?
Who will benefit with this feature?
Anyone who would like to access the middle layer outputs

If you want to get the intermediate tensors, you can use the experimental flag like the below one.
interpreter = tf.lite.Interpreter(
    model_path="test.tflite",
    experimental_preserve_all_tensors=True)
# Run evaluation
interpreter.invoke()
# Look at all tensors including intermediates.
print({
    t['name']: interpreter.get_tensor(t['index'])
    for t in interpreter.get_tensor_details()
})

If you want to get the intermediate tensors, you can use the experimental flag like the below one.
interpreter = tf.lite.Interpreter(
    model_path="test.tflite",
    experimental_preserve_all_tensors=True)
# Run evaluation
interpreter.invoke()
# Look at all tensors including intermediates.
print({
    t['name']: interpreter.get_tensor(t['index'])
    for t in interpreter.get_tensor_details()
})

I tried the "experimental_preserve_all_tensors=True" but got "init() got an unexpected keyword argument 'experimental_preserve_all_tensors'"
It seems that tf.lite.Interpreter() does not accept argument experimental_preserve_all_tensors.
This argument also does not appear in formal reference https://www.tensorflow.org/api_docs/python/tf/lite/Interpreter

This feature is newly enabled. Please try out with the tf-nightly version.

FYI, https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/python/interpreter.py#L312

Thanks, may I know if I do not use "experimental_preserve_all_tensors=True", I can still get information of all tensors by calling "interpreter.get_tensor(index)". Where does those values comes from?


Multiple RNN Cells and Layers

Created a wrapper AnalogRNN class that accepts different cells (LSTM, GRU, VanillaRNN). Also has the option of creating a bidirectional layer.
3 files were created: cells.py, layers.py, and rnn.py. All of these are in a rnn folder in nn/modules.

This looks great, thanks for the addition!

@Jo7701 many thanks for the contribution! If you could add the tests, then we would be able to merge it soon.

@Jo7701 Many thanks again for this great contribution. I took the liberty to polish your code somewhat.   It now works fine for CUDA as well. Thanks again, I will merge it very soon.

Thank you @Jo7701 for these great additions! Thank you @maljoras for the detailed review and the enhancements.


Warns admins disable

SpamWarnAdmins set false in config and notifies to admins 	equally
Config: http://pastebin.com/ik5Tyy4S
Image: http://i.imgur.com/0ZRV2LM.png

Can you try the 2.3.1-dev build :)?
https://github.com/antiAD/AntiAd/releases/tag/2.3.1-dev

This is fixed in the latest build


[7] Create API endpoint for GET Surveys

https://github.com/nimblehq/liveman/projects/1#card-63294161
What happened
Implemented GET Survey list API(/v1/surveys)
Insight

Implemented the response structure same as our survey list API
Backend implementation also exactly the same as our survey list API(Parsed surveys.json) data, assigning them to embedded schema models(no saving in the database), the expose them
Used scrivener_list for pagination
I am ignoring a warning as it is known issue in Elixir 1.12.x/OTP 24

Proof Of Work

Full response https://gist.github.com/junan/faa1e3e62464098f38b14232dc46e256

Closing it now will create a new one. This is due to cache issue in Github action https://nimble-co.slack.com/archives/C024JFBF7B7/p1626078644002100?thread_ts=1625466524.000900&cid=C024JFBF7B7


Support for API CI/CD

Description:
Allow users to support creating CI/CD workflows with API Manager.
For this followings are suggested

[x] Update APIs through CLI tool
[x] Allow using configuration injection into endpoints using CLI tool
[x] Allow using directories as projects
[x] Allow environment variable injection to APIs
[x] Allow preserving status of APIs across CI/CD process
[x] Certificate migration for environments
[ ] YAML based config

Workflow:
Note: Jenkins is here for a reference, this approach supports any other CI/CD tool too.

Steps in brief:

Create a central repository(which act as Single Source of Truth)
API Developers creates a fork from this repository
API Developers develops APIs on locally or on cloud
API Developers uses import/export APIs to download API as an archive
API Developers commits to their fork and do a Pull Request to the central repository(upstream)
API Publishers/DevOps or any authoritative person can merge the PR.
API Publishers/DevOps or any authoritative person can merge the PR.
CI/CD is configured to deploy automatically or manually.
Once triggered CI/CD server will deploy the API to the correct environment

Notes:

Deployment trigger can be a git tagged commit/email etc. It is up to user decide how it needs to happen
Automated tests can be run with the setup. It's up to customer decide when should it run
The process is independent of the CI/CD environment. Jenkins is shown here for the reference
APIM currently does not have "Download API as archive" feature, hence apimcli is used in the diagram
APIM currently does not support updating an existing environment
The process can migrate meta information of APIs
Some steps are cyclic

Update on work:

Update Support for CLI tool done wso2/product-apim-tooling#60
Zipping support for project directories done in wso2/product-apim-tooling#57
Dynamically injecting endpoints for API done in wso2/product-apim-tooling#63

Update :

API Update support for backend done in #4539

Update : #5092 #4918

Update:

wso2/product-apim-tooling#74
wso2/product-apim-tooling#75
wso2/product-apim-tooling#76

Application Keys: wso2/carbon-apimgt#6635 wso2/product-apim-tooling#78


Blocks added after 1.9.3 not affected by certain spells

I can't remember exactly which spells this happened with, but I think one of them was worm death?

Can now elaborate. Wave spell does not work on granite, diorite, or andesite, for example. Instead gets stuck and does not move forwards.

I'll add those 3 to the default destructible list. Feel free to change your own in spells.yml,
wave:
  parameters:
     destructible: whatever,blocks,you,want


🐛 [Bug] TRT Error when compiling ViT with Dynamic Shape

Bug Description
See #2074 for code + model description
ERROR: [Torch-TensorRT - Debug Build] - 3: [executionContext.cpp::setInputShape::2264] Error Code 3: API Usage Error (Parameter check failed at: runtime/api/executionContext.cpp::setInputShape::2264, condition: engineDims.d[i] == dims.d[i]. Static dimension mismatch while setting input shape.

To Reproduce
See #2074
Expected behavior
Model should compile with Dynamic shapes.
Environment

Build information about Torch-TensorRT can be found by turning on debug messages

Torch-TensorRT Version (e.g. 1.0.0): 8b09e718a3694c28ba02dd8fdf30a26df0076bb3
PyTorch Version (e.g. 1.0): 2.1.0.dev20230620+cu118
TensorRT Version: 8.6.1

same problem

still have


Generator 'Update Available!' message doesn't shown

Yesterday I recognised that my installed angular generator version is outdated. My versions are generator-angluar v0.9.8 (latest is 0.10.0) and yo v1.4.2. So normally it should display a nice "♥ Update Available!" message, but It doesn't shown up. Have anybody else problems?

@sindresorhus @SBoudrias can you confirm that?

Might be broken, but the code is still there: https://github.com/yeoman/yo/blob/master/lib/router.js#L79

I will take a look on it.

@SBoudrias should the update message appears only once per day?

If I set lastUpdateCheck in update-notifier-generator-angular.yml to 1 to force an update and run yo the content of the file changed to:

optOut: false
lastUpdateCheck:<PHONE_NUMBER>632
update:
  latest: 0.10.0
  current: 0.9.8
  type: minor
  name: generator-angular

But no update message comes up.

Then I run yo again and the update message comes up and the files changed to

  optOut: false
  lastUpdateCheck:<PHONE_NUMBER>632

Kill yo without updating the generator

Now on the next run the message is gone for one day because of this updateCheckInterval https://github.com/yeoman/update-notifier/blob/7dbf2725f096198765fba7f89bdf1d43f1fba4b2/index.js#L28

In my opinion, the message should be visible all the time until the generator was updated.

should the update message appears only once per day?

Yes.

In my opinion, the message should be visible all the time until the generator was updated.

Sounds like you would enjoy Windows XP.

We're not going to annoy users with update notifications all the time. Generators update often and that would mean the update notifications would pretty much be there all the time.

Hehe, it's just a string, not a disturbing pop up. But I agree with your last statement.

@stefanbuck so... To make it very clear; it is not broken? It's only showing once a day?

@SBoudrias Yes, it is NOT broken. Just the behavior was not clear, now it is :wink:


Deal with missing resources gracefully

When reading a resource and its missing them remove from current state (this will then allow the desired state to recreate any of the missing resources)
When deleting a resource and its already deleted then ignore it
Update all resources to use their CRUD context equivalents (stop using deprecated methods)
Forward context onto http client

This should fix #237 and #235

@wrighbr @brondum @Gaardsholt do you guys know who we need to ask to get the workflows approved. It seems like there are a number of PRs waiting on a manual step to approve the workflow.

@wrighbr @brondum @Gaardsholt do you guys know who we need to ask to get the workflows approved. It seems like there are a number of PRs waiting on a manual step to approve the workflow.

@taliesins  We are no longer maintainer of this project, maybe @OrlinVasilev can help?

my goal is set up the pipeline and the workflow so we can publish to https://registry.terraform.io/, I think we still don't have the ownership of https://registry.terraform.io/providers/BESTSELLER/harbor/3.7.1. It is ongoing @OrlinVasilev?

@Vad1mo I think we should probably swap over to publishing to https://registry.terraform.io/providers/goharbor/harbor/3.7.1

@Vad1mo or @Gaardsholt add me as a mainter on this project and I can help you guys get this up and running again. I have a bit of experience doing this: https://github.com/taliesins/terraform-provider-hyperv and I am motivated for work reasons to get this up and running.

@Vad1mo or @Gaardsholt any more updates on this, I am will to help.

@taliesins if you can help with that and maintainer-ship in general will be great :)

@OrlinVasilev add me and I will help

@flbla this seems to be a major improvement. Can we somehow verify that?
@taliesins would you be able to help us create a before and after test cases?
I would like to merge this with confidence and backward compatibility.

@Vad1mo I'll try to get a look at it in the next weeks


Able to enable/disable tabs in form

This is  a feature request.

Prerequisites

[ v] Are you running the latest version?
[ v] Are you reporting to the correct repository?
[ v] Did you check the documentation?
[v ] Did you perform a cursory search?

Description
It would be nice if we could enable/disable tabs dynamically and/or by permission. Some times we maybe need to disable a tab to some users that not have permission to see or edit some information.
Expected behavior
enable/disable tabs dynamically and/or by permission
Actual behavior
we could not enable/disable tabs dynamically and/or by permission

Is possible to use scope to enable/disable tabs by custom script?
the documentation of the Tabs have a method to disable, but the documentation of the forms don't mention it. I have a case that a role user will not be able to see a tab that has information about bank accounts, just the admins and the role named "Financier"

You can now use $form->hideSection($fields) on the BE where $fields can be a field name or an array of fields names. The helper will hide all the fields in the section(s) that have the provided field(s).
The FE was updated and now hides tabs with empty sections.
You can add your restricting logic in the BE's form object:
if ($user->cannot('access-route', $routeName) {
    $form->hideSection('privateSection');
}

or use the FE to hide individual fields $refs.form.field('field').meta.hidden = true.

Ah @boing6000, I would really appreciate a PR to the docs from you with the above ;)

Hi, thanks,
I have added to EnsoForm.vue this 2 methods:
       hideTab(tab){
            return this.ready
                ? this.sections(tab).forEach(section => section.fields.forEach(field => field.meta.hidden = true))
                : null;
        },
        showTab(tab){
            return this.ready
                ? this.sections(tab).forEach(section => section.fields.forEach(field => field.meta.hidden = false))
                : null;
        }

and in the CoreForm.vue before the render function:
watch:{
'state.data.sections': {
handler: function(val){
this.$forceUpdate();
},
deep: true
}
},
With this i could show/hide tabs dynamically in a switch like below:
showTab1() {
           return event
                      ? this.$refs.form.showTab('tab1')
                      :  this.$refs.form.hideTab('tab2');
}

i have to do the trick to this.$forceUpdate() because the keep-alive of the tab not update the hidden or disabled meta change in the field using what you suggested "$refs.form.field('field').meta.hidden = true"

i can do a PR in @enso-ui/forms with this change if you want.

Sure.
You should place the methods in CoreForm and cascade them in VueForm and then EnsoForm (just like the other methods that are cascaded).

ok, i did cascade in VueForm and EnsoForm from CoreForm and made a PR in enso-ui/forms


Would like to see the synapse serverless pool

Type: Feature Request
Hi Erin!
Currently Data Studio only shows the dedicated pool in the Azure browser, it would be nice to also see the -ondemand.sql.azuresynapse.net
Azure Data Studio version: azuredatastudio 1.45.1 (88c21b1725a3e79440027bdb7b5a55fb036be0e2, 2023-08-03T00:42:37.945Z)
OS version: Windows_NT x64 10.0.22621
Restricted Mode: No
Preview Features: Enabled
Modes:

I believe we currently only fetch the Dedicated SQL Pool endpoint when establishing connection.
We will investigate into options to support Synapse SQL Pool endpoint available for same resource.

I've added my support via a thumbs up. This would be useful as I'm beginning to use ADS more due to support in database projects for Serverless Pools.

One strange thing I noticed here is that Dedicated Pools are listed twice. Once under "Dedicated SQL Pools" and again under the "Synapse Workspace".
Also the icon for the Dedicated Pool database is a generic grey cylinder instead of the actual dedicated pool icon.


Dataset format

Hi!
Could you, please, provide dataset format for targets?
Thank's

Hey @EugenKarasev, thanks for your interest.
Can you elaborate on what's the "target" you are referring to here?
Cones' labels in each picture is formatted as (X,Y,H,W)

Hey @EugenKarasev, thanks for your interest.
Can you elaborate on what's the "target" you are referring to here?
Cone's label in each picture is formatted as (X,Y,H,W)

Hello
Sorry for the inaccurate question.
I meant where are Yellow and where are Blue cones in this table.

Sorry @EugenKarasev we don't have a reasonable amount of good quality YOLO label for blue and yellow cones at this moment. We might release them in the future.


Compilable Msg placeholder in HTML.program snippet

The snippet originally contains this code:
type Msg
    = msg1
    | msg2

Which generates the following error:
I ran into something unexpected when parsing your code!

22|     = msg1
          ^

I am looking for one of the following things:

     a constructor for a union type
     whitespace

This compiler error is not obvious to beginners. More discussion on error message improvements here: https://github.com/elm/error-message-catalog/issues/204

Thanks.


Opening the page in different monitors gives different results

Steps to reproduce:

Open https://www.thumbmarkjs.com/ in a browser window.
Open https://www.thumbmarkjs.com/ in a browser window that is in a different screen from the previous one (e.g. laptop built-in screen and external screen). The fingerprint is different than in the previous step.

And you were using the latest v0.11.0?
I can't reproduce right away. Which browser are you @noe using?

I was using your demo page. I'm on Chrome under MacOS, both windows on normal (non-incognito) mode, user agent "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36".
The differences in the JSONs are:

"elapsed" property inside "audio", "canvas", "fonts", ... On the laptop built-in screen it's generally half the value on the external screen.
The lists inside "screen.value.mediaMatches" are quite different.

Thanks for the patience @noe :)
The elapsed values are not considered in the fingerprint anyway. They're just milliseconds it took to calculate that particular component.
But mediaMatches are different... that's interesting. And the audio, canvas and fonts take significantly longer on the external screen to calculate. That feels odd. Surely they would be running on the same chip, similar performance.
Sadly, I found your user agent from the logs only once. Not sure why the other fingerprint didn't get logged.
If you can indulge me again at some point, what I could find useful to debug is the following:

The external screen: it's just a regular screen? Takes an HDMI signal or something? Or is it a wireless smart screen? Because of the delay differences, I'm wondering if it can be running some processing on it, but a regular screen shouldn't. It would need to be some fancy thing 😄
If you can check the two fingerprints (it should be just 6 characters now). I'll see if I can find them both and see what's happening.
If you can copy-paste the mediaMatches results. I should have them logged if I get the two fingerprints though. Unless your browser is blocking my logging for some reason on either screen. Not sure why this would happen.

The external screen: it's just a regular screen? Takes an HDMI signal or something? Or is it a wireless smart screen? Because of the delay differences, I'm wondering if it can be running some processing on it, but a regular screen shouldn't. It would need to be some fancy thing 😄

Yes, normal external HP screen, with a usb-C to HDMI adapter.

If you can check the two fingerprints (it should be just 6 characters now). I'll see if I can find them both and see what's happening.

Fingerprints: itxh0y in the built-in screen, l4p9z2 in the external monitor.

If you can copy-paste the mediaMatches results. I should have them logged if I get the two fingerprints though. Unless your browser is blocking my logging for some reason on either screen. Not sure why this would happen.

mediaMatches of the built-in screen:
"mediaMatches": [
        "prefers-contrast: no-preference",
        "color-gamut: p3",
        "color-gamut: srgb",
        "dynamic-range: standard",
        "any-hover: hover",
        "any-pointer: fine",
        "pointer: fine",
        "hover: hover",
        "update: fast",
        "overflow-block: scroll",
        "overflow-inline: scroll",
        "color: 8",
        "prefers-reduced-motion: no-preference",
        "prefers-reduced-transparency: no-preference",
        "grid: 0",
        "scripting: enabled",
        "forced-colors: none",
        "display-mode: browser",
        "prefers-color-scheme: light"
      ]

mediaMatches of the external screen:
"mediaMatches": [
        "prefers-contrast: no-preference",
        "color-gamut: srgb",
        "dynamic-range: standard",
        "any-hover: hover",
        "any-pointer: fine",
        "pointer: fine",
        "hover: hover",
        "update: fast",
        "overflow-block: scroll",
        "overflow-inline: scroll",
        "color: 8",
        "prefers-reduced-motion: no-preference",
        "prefers-reduced-transparency: no-preference",
        "grid: 0",
        "scripting: enabled",
        "forced-colors: none",
        "display-mode: browser",
        "prefers-color-scheme: light"
      ]

I confirm that it works, for Chrome and for Safari. Also the same fingerprint in incognito mode.
By the way, I would like to suggest a more permissible license that allows thumbmarkjs to be used in contexts where the GPL is not an option. This is the reason I am not using this library.

@noe I didn't think too much about licenses. Changed this to MIT now. Hope that works for your use case?

Thanks! I installed it successfully in my Next.js project with npm with npm i git+https://github.com/ilkkapeltola/thumbmarkjs but it seems I cannot import it from typescript. Is thumbmarkjs not meant to be used like that?

I'll open a new feature request.