Fix the benchmark README,  add batch to the golang benchmark, and add wrk luas

I cleaned up the readme in examples/login, updated the golang benchmark to add support for html and batching json requests, and added some .luas to be used with wrk for better benchmarking.
uring crashes constantly for me with kernel 6.0 so I've only run the posix engine which does not support pipelining.
@ashvardanian I also updated picohttpparser to use avx2 which is 2x faster for ucall, but that is not in this pull request.  Feel free to point to it - it only requires that the buffer sizes be 64 byte multiples which should just work here.
https://github.com/MarkReedZ/picohttpparser

If you accept this PR let me know if you want me to look at the uring code.  I'm currently adding an io_uring event loop to python asyncio so it'd be fun to look at this as well.

This is extremely valuable, thank you for contributing! Merging this 🤗
I am now going through a major effort of refactoring the repository, to add some new functionality for more efficient handling of batch requests. I think it may help if you can spot the issue in the io_uring implementation, but it would be easier to merge if not too many files are changed 😉

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


feat(asset-cli): asset snapshot subcommand to capture manifests

What was the problem/requirement? (What/Why)
Allow users to call CLI command to capture directories of assets into manifests.
What was the solution? (How)
Added deadline asset snapshot subcommand to allow capture of manifests. Includes:

capturing manifest file into specified directory of assets
recursive capture of directories
can specify destination of where manifest can be created

What is the impact of this change?
Exposes functionality of creating manifests
How was this change tested?
Added unit tests in test_cli_asset.py
Was this change documented?
N/A
Is this a breaking change?
N/A

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

This CLI implementation seems to capture the basic functionality.  If so, could you add to testing evidence?


More informative error message

More informative error message on config validation.

@zmanian can you share some examples of messages where the error should be improved? The errors currently come directly from the ics24 validation messages/

This validation message depends on global config being initialized first. If you don't have a global state initialized, the error messages are confusing.


training error with gpu

INFO:tensorflow:using moving average in training,         with decay = 0.999900
2019-03-16 09:41:40.360501: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-16 09:41:40.360536: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-16 09:41:40.360544: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
2019-03-16 09:41:40.360552: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-16 09:41:40.360560: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.
2019-03-16 09:41:40.475868: I tensorflow/core/common_runtime/gpu/gpu_device.cc:887] Found device 0 with properties:
name: Quadro M2000
major: 5 minor: 2 memoryClockRate (GHz) 1.1625
pciBusID 0000:04:00.0
Total memory: 3.95GiB
Free memory: 2.79GiB
2019-03-16 09:41:40.475916: I tensorflow/core/common_runtime/gpu/gpu_device.cc:908] DMA: 0
2019-03-16 09:41:40.475930: I tensorflow/core/common_runtime/gpu/gpu_device.cc:918] 0:   Y
2019-03-16 09:41:40.475946: I tensorflow/core/common_runtime/gpu/gpu_device.cc:977] Creating TensorFlow device (/gpu:0) -> (device: 0, name: Quadro M2000, pci bus id: 0000:04:00.0)
INFO:tensorflow:Restoring parameters from ./models/icdar2015/model.ckpt-0
2019-03-16 09:41:43.114186: I tensorflow/core/common_runtime/simple_placer.cc:669] Ignoring device specification /device:GPU:0 for node 'clone_0/fifo_queue_Dequeue' because the input edge from 'icdar2015_prefetch_queue/prefetch_queue/fifo_queue' is a reference connection and already has a device field set to /device:CPU:0
INFO:tensorflow:Starting Session.
INFO:tensorflow:Starting Queues.
INFO:tensorflow:global_step/sec: 0
2019-03-16 09:42:05.462899: W tensorflow/core/kernels/draw_bounding_box_op.cc:122] Bounding box (92,-87,128,-77) is completely outside the image and will not be drawn.
2019-03-16 09:42:05.462944: W tensorflow/core/kernels/draw_bounding_box_op.cc:122] Bounding box (-16,75,-4,90) is completely outside the image and will not be drawn.
2019-03-16 09:42:05.462956: W tensorflow/core/kernels/draw_bounding_box_op.cc:122] Bounding box (-27,-48,-15,-37) is completely outside the image and will not be drawn.
2019-03-16 09:42:05.474938: W tensorflow/core/kernels/draw_bounding_box_op.cc:122] Bounding box (92,-87,128,-77) is completely outside the image and will not be drawn.
2019-03-16 09:42:05.475122: W tensorflow/core/kernels/draw_bounding_box_op.cc:122] Bounding box (-16,75,-4,90) is completely outside the image and will not be drawn.
2019-03-16 09:42:05.475224: W tensorflow/core/kernels/draw_bounding_box_op.cc:122] Bounding box (-27,-48,-15,-37) is completely outside the image and will not be drawn.
2019-03-16 09:42:06.839645: E tensorflow/stream_executor/cuda/cuda_dnn.cc:359] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
2019-03-16 09:42:06.839699: E tensorflow/stream_executor/cuda/cuda_dnn.cc:326] could not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM
2019-03-16 09:42:06.839718: F tensorflow/core/kernels/conv_ops.cc:659] Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)
./scripts/train.sh: 行 37: 136261 已放弃               (核心已转储)

I tensorflow/core/common_runtime/simple_placer.cc:669] Ignoring device specification /device:GPU:0 for node 'clone_0/fifo_queue_Dequeue' because the input edge from 'icdar2015_prefetch_queue/prefetch_queue/fifo_queue' is a reference connection and already has a device field set to /device:CPU:0
Does anybody have this problem?


Ionic-serve: withCredentials error

I call the login api . the response header return the set-cookie. when i use ionic serve run the app. the set-cookie will not add to the http headers even if i set withCredentials:true.  but when i build the project to  android app run it in my mobile  the cookie will add to the http head.

This issue was moved to driftyco/ionic-cli#1711


macro method is only callable on an instance

Hey,
if i want to create a macro for global use, like in laravel. I would do something like this:
collect.marco('hello', function(fn) {
  console.log('hello');
});

and then use it were ever i need it.
but with the current implementation i get the error:
collect.macro is not a function

nvm should had read the docs :P


Bluesky: GIF support?

In this reply to a Bluesky user, the GIF wasn't available on Bluesky. Only the user handle was visible.
Sending a normal picture in a reply works though.

Yes! Bluesky doesn't support GIFs as normal images, it has some kind of custom thing. Maybe Tenor specific? I haven't dug into it yet. First step here would be to find docs and understand what that custom GIF support is and how to integrate with it.
(BTW @dploeger this is the repo for Bridgy Fed bugs, not https://github.com/snarfed/bridgy . That repo is for Bridgy classic, https://brid.gy/ , a separate service. https://brid.gy/about#bridgy-fed )

Oh sorry. I was confused with the two. Thanks for investigating!

The gist is that Bluesky currently doesn't support custom gifs. (Tenor is essentially a searchable meme-library that users can pick existing stuff from.)
It's possible to submit gifs to Tenor off-site, but I'm pretty sure that doesn't mesh well with retaining control or even attribution over content.

I actually thought the GIF would just be an attachment. Apparently it's way more complex than that.

I assume it will be an attachment, eventually, whenever Bluesky adds actual video support. For now it only has meme-support though.
(I checked the Tenor ToS and I don't think this is compatible with Bridgy in terms of requirements and what it does with the uploads.)

Ohhh okay.

I'm also thinking "no" since that'd enable IP grabbers.
(The frontend loads these embeds directly from the target server.)
Maybe you could get them to allow-list Bridgy Fed for embeds though?
The main downside is you'd potentially get hit with a lot of traffic due to the lack of cache there.

Heard from the Bluesky team on Discord, sounds like the answer is no.

basically our GIFs have to use a very specific tenor media URL, and also include the height and width of gif in the url search params

As for allowlisting, BF doesn't currently host media, so they couldn't easily whitelist it. I could serve redirects, but that's only minimally useful, if at all.

Right. I wouldn't plan to proxy the connections for those media files anyway, I'd just redirect. Regardless, all purely hypothetical right now.

Related: #1317


added code for lower triangular in python

issue: #34

@abirbhattacharya82 please add hacktoberfest-accepted logo to this PR .


Don't start ScheduledsCommadSaga on each domainEvent

ScheduledsCommadSaga is subsribing to all events to track command processing.
It is far from optimal behaviour. Change it to subscription only for specified messages, but not all

Done in 1.8.1


python310Packages.qiskit-ibmq-provider: 0.19.0 -> 0.19.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.qiskit-ibmq-provider is: "Qiskit provider for accessing the quantum devices and simulators at IBMQ"
meta.homepage for python310Packages.qiskit-ibmq-provider is: "https://github.com/Qiskit/qiskit-ibmq-provider"
meta.changelog for python310Packages.qiskit-ibmq-provider is: "https://qiskit.org/documentation/release_notes.html"
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
Warning: a test defined in passthru.tests did not pass
found 0.19.1 with grep in /nix/store/cgshk39am7gjqqzhk7xll2x9cjwbnnf5-python3.10-qiskit-ibmq-provider-0.19.1
found 0.19.1 in filename of file in /nix/store/cgshk39am7gjqqzhk7xll2x9cjwbnnf5-python3.10-qiskit-ibmq-provider-0.19.1

Rebuild report (if merged into master) (click to expand)

6 total rebuild path(s)

3 package rebuild(s)

3 x86_64-linux rebuild(s)
3 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
python310Packages.qiskit-ibmq-provider
python39Packages.qiskit
python39Packages.qiskit-ibmq-provider

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/cgshk39am7gjqqzhk7xll2x9cjwbnnf5-python3.10-qiskit-ibmq-provider-0.19.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.qiskit-ibmq-provider https://github.com/r-ryantm/nixpkgs/archive/7bf36636af052e6d621024ab1e1e528906f49946.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/cgshk39am7gjqqzhk7xll2x9cjwbnnf5-python3.10-qiskit-ibmq-provider-0.19.1
ls -la /nix/store/cgshk39am7gjqqzhk7xll2x9cjwbnnf5-python3.10-qiskit-ibmq-provider-0.19.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package failed to build:

python39Packages.qiskit

2 packages built:

python310Packages.qiskit-ibmq-provider
python39Packages.qiskit-ibmq-provider

Maintainer pings
cc @drewrisinger for testing.

https://github.com/NixOS/nixpkgs/pull/169773

16 packages built:
python310Packages.qiskit-aer python310Packages.qiskit-finance python310Packages.qiskit-ibmq-provider python310Packages.qiskit-ignis python310Packages.qiskit-nature python310Packages.qiskit-optimization python310Packages.qiskit-terra python39Packages.qiskit python39Packages.qiskit-aer python39Packages.qiskit-finance python39Packages.qiskit-ibmq-provider python39Packages.qiskit-ignis python39Packages.qiskit-machine-learning python39Packages.qiskit-nature python39Packages.qiskit-optimization python39Packages.qiskit-terra


Having more then 1 "Feature" in test file will break tests without error msg. Browser will not shutdown.

What are you trying to achieve?
I'm migrating from codecept.js 2.6 to 3.0.1 with a project that has 150 test cases(from Webdriver to Playwright). While trying to run tests in the updated project I have discovered a bug. If there is more than one > Feature("Some name") < in the test file than browser will hang out open after executing the test. No matter if the test is pass or fail. It used to work ok in old project but it fails in new one. It was really hard to find the cause.
What do you get instead?
Browser hands open, need to perform Ctrl + C in terminal to finish testing.

Provide console output if related. Use --verbose mode for more details.

# paste output here

Provide test source code if related

// paste test

Details

CodeceptJS version:3.0.1
NodeJS Version:12.19.0
Operating System:Windows
puppeteer || webdriverio || protractor || testcafe version (if related) Playwright
Configuration file:

# paste config here

I have the same problem when scenario methods are exporting from pages file

I have this issue only when restart is set to true.


Ubuntu 1804 - Default 'locale' setting results in portability issues because response to prompts are required to be UPPER case only!

Windows build number:  Microsoft Windows [Version 10.0.17134.228]
with Ubuntu 1804 distribution and Windows host set to 'culture' German (Germany) but Windows UI language = English(US)
Get-Culture

LCID             Name             DisplayName
----             ----             -----------
1031             de-DE            German (Germany)

What you're doing and what's happening:
PowerShell commands requiring a confirmation only accept UPPER case response

What's wrong / what should be happening instead:
confirmations are case insensitive

Steps required to reproduce

install Ubuntu 1804
=>results in a strange locale 'en-US-POSIX', having the impact of:
install powershell-preview RC1 according to:
https://docs.microsoft.com/en-us/powershell/scripting/setup/installing-powershell-core-on-linux?view=powershell-6#ubuntu-1804

# Import the public repository GPG keys
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

# Register the Microsoft Ubuntu repository
sudo curl -o /etc/apt/sources.list.d/microsoft.list https://packages.microsoft.com/config/ubuntu/18.04/prod.list

# Update the list of products
sudo apt-get update

# Install PowerShell
sudo apt-get install -y powershell-preview

# Start PowerShell
pwsh-preview
Get-Culture
Set-Content foo.txt -Value "hi" ; $ConfirmPreference="low"; Remove-Item foo.txt

Confirmation that standard Ubuntu 18.04 in a VM doesn't show this issue
https://github.com/PowerShell/PowerShell/issues/7639
due to a different LCID.
Also issue does NOT appear in Ubuntu 1704!
I failed to set a different locale due to error
sudo localectl
Failed to create bus connection: No such file or directory

could be related to https://github.com/Microsoft/WSL/issues/3018

could be related to #3018

Probably not directly unless WSLENV is in play somehow here, which I don't think it is. The problem over there is a pretty specific bad interaction.

sudo localectl

That isn't going to work because no systemd

install Ubuntu 1804
=>results in a strange locale 'en-US-POSIX' that I was unable to change!

No need to yell.
$ sudo locale-gen de_DE.UTF-8
$ sudo update-locale LANG=de_DE.UTF-8

Notably enough, whatever behavior PowerShell exhibiting with en-US-POSIX (assuming it is even incorrect behavior) is going to be the same on Real Linux

Thanks @therealkenc
Good to have a workaround but what really concerns me is the different behavior of WSL Ubuntu1704 and WSL Ubuntu1804 in this matter.
PS: not sure to understand your comment 'No need to yell.'

but what really concerns me is the different behavior of WSL Ubuntu1704 and WSL Ubuntu1804 in this matter.

The launcher changed between 17.04 and 18.04 may be the cause of this (analogous to but different than #3273). There is no difference in WSL behavior, and WSL does not control Ubuntu behavior.

PS: not sure to understand your comment 'No need to yell.'

Ausrufezeichen übersetzt schlecht

Symbolische Bedeutungen
Das Ausrufezeichen steht allgemein für ‚wichtig‘, insbesondere für eine Warnung (‚Achtung‘), oder für ‚Gefahr‘ und ‚Gefährdung‘.
Achtung vor Gefahr! (Straßenverkehr, international üblich)


VM crashes registering an action evaluation

See attached log
cosmos-2019-08-20T001804.978228Z.log

Fixed by #214


[style] Fix ripple strange behaviour

fix #6067

IE and Edge still not so pretty as Chrome, Firefox and Opera....

@kybarg Thanks for the original PR!


Adding APDS9960 Low Level Gesture Sensor Driver

Added interface for initializing the gesture sensor and
default values to be used for initialization. Comments are added
to the class methods, but class methods need to be edited
for I2C transactions and logic for setting/clearing bits.

Codecov Report

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

@@          Coverage Diff           @@
##           master    #108   +/-   ##
======================================
  Coverage    88.8%   88.8%
======================================
  Files           6       6
  Lines         268     268
======================================
  Hits          238     238
  Misses         30      30

Continue to review full report at Codecov.

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


Extract participant checklist data

Problem
We need a collection of data extracted from CSN checklists.
Solution
The following items are requested from the checklists, entered into a CSV with the following requirements:

The first column has rows for the participant's unique string id (i.e., CSN001).
Other columns should values of the set of items in the to-do list:

[ ] Session complete (no: 0, yes: 1)
[ ] Experimenter initials (PSH, LJA/LA, PTS, KAS, EA)
[ ] Check distance (mm)
[ ] Wears glasses or contacts? (no: 0, yes: 1)
[ ] Validation quality (Good, Fair, Poor)
[ ] Validation error avg
[ ] Validation error max
[ ] Revalidation quality (Good, Fair, Poor)
[ ] Revalidation error avg
[ ] Revalidation error max
[ ] Hits
[ ] False Alarms
[ ] Bonus ($)
[ ] Notes, if substantial

@psokolhessner let me know if you have any feedback on this extraction list.

Would it make sense @aridyckovsky to include the recorded validation quality & errors, and revalidation quality & errors? I haven't spot-checked these manually-entered values against the extracted ones - if they're literally the same, then of course we don't need them.
Could also record experimenter initials?

@aridyckovsky age & gender were extracted from recruitment information and put in CSVs. The ones on the S drive have age & gender for most participants up through CSN050. I can help finish this if you'd like. Let me know.

@psokolhessner whoops totally missed that CSV. It's not a major priority at the moment to finish that up. I'll add a new issue for this to keep it tracked.

Agreed that it's not a major priority (for our purposes, the individual differences in attraction ratings are likely to be more important than reported gender). Thanks @aridyckovsky

Hi @annarini, adding a response here to your questions from the #studies_csn channel on Slack.
For reference:

Hi, when entering the rest of the CSN data, I had a few specific questions on little things, I just didn't want to assume, but are the initials LA and LJA the same? (I added them in the document as they appeared on the scan so LA). There were also some initials that weren't on the github page like AW and EA, but wrote them down as they appeared specifically for CSN 025,028,036. Lastly, for CSN 041 the completion line wasn't filled out the but rest of the data was, so I can assume it was completed but wanted to make sure. Thanks!

Answers:

The initials for LA and LJA are the same, thanks for catching that! You can also see the original issue checklist, where I've updated the "Experimenter initials" checkbox to reflect the AW initials that were missing before.
CSN041 is a completed participant, so that's the right call!


move config to package.json

I'm on atom version 1.13 and the settings did not appear without this change

Thanks, this change should be in 0.9.2


Revisit FoV calibration

Provide a way to custom specify the ROI of the camera sensor. X1 has some weird hard coded values that might be very system specific
This might be a good time to see if we can do something more generic, have a few ideas there

Looks like X1 has a "centered" value and no longer the special offset value. So leave for now, but it would be good to be able to expand the FoV, especially if the user is willing to do FF correction


Objc throws an error after load / exit

If you load an array from file and exit objc throws a warning about invalid release of memory
Example:
>>> import mlx.core as mx
>>> mx.load("./temp.npz")
{'x': array([[0, 0],
       [0, 0]], dtype=float32)}
>>> exit()
objc[31211]: Invalid or prematurely-freed autorelease pool 0x134895040. Set a breakpoint on objc_autoreleasePoolInvalid to debug.
objc[31211]: Invalid autorelease pools are a fatal error
[1]    31211 abort      python

Sorry about that #226 fixes it.


Cannot run main methods from IDEA 2019.2.x with Gradle 6.0

Expected Behavior

run success
Current Behavior

run error

19:17:57: Executing task 'T.main()'...

Starting Gradle Daemon...Connected to the target VM, address: '<IP_ADDRESS>:51443', transport: 'socket'
Gradle Daemon started in 2 s 993 ms

FAILURE: Build failed with an exception.

* Where:
Initialization script '/private/var/folders/y5/40rk614j5ssg014gkmj2p7sw0000gn/T/T_main__.gradle' line: 18

* What went wrong:
A problem occurred configuring project ':manager'.
> Could not create task ':manager:T.main()'.
   > Unnecessarily replacing a task that does not exist is not supported.  Use create() or register() directly instead.  You attempted to replace a task named 'T.main()', but there is no existing task with that name.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 13s
Disconnected from the target VM, address: '<IP_ADDRESS>:51443', transport: 'socket'
19:18:11: Task execution finished 'T.main()'.

Unnecessarily replacing a task that does not exist is not supported.  Use create() or register() directly instead.  You attempted to replace a task named 'T.main()', but there is no existing task with that name.

Context

fun error
Steps to Reproduce

gradle 6.0.0 Sub module
java 13
idea 2019.2.4
Your Environment

Build scan URL:

This is coming from a long deprecated behavior that was finally made an error in Gradle 6.0. Unfortunately, we're not going to restore the old behavior, but we'll work with JetBrains to make this sort of thing work without requiring special handling on IDEA's side.
This is already fixed in IntelliJ IDEA 2019.3 (in beta now).  If you can upgrade to the 2019.3 EAP or beta, this should work there.

@big-guy All right, Roger

@big-guy Do you have this question IntelliJ idea URL? This affects the use of my project

Bug still present in latest stable Android Studio 3.6.3 as downloaded today.

Bug still present in latest stable Android Studio 3.6.3 as downloaded today.

me too.so what you doing?

upgrade idea

As of June 2020, I had this issue in version of IntelliJ Idea 2019.2.4, but after updating to the latest version (2020.1.2) the issue got resolved

i'm on 2020.1.2 on mac and still having this issue:
A problem occurred evaluating root project 'XXX'.
> Failed to apply plugin [id 'javafx-gradle-plugin']
   > Could not create task ':jfxJar'.
      > Unnecessarily replacing a task that does not exist is not supported.  Use create() or register() directly instead.  You attempted to replace a task named 'jfxJar', but there is no existing task with that name.

I am using 2020.* And still have the same error while building my gluon project

upgrade gradle

I did, but the error still there

For me the solution was to downgrade gradle to <6.0

I have this problem with the latest Android Studio and the latest gradle version

I have the same problem. I have also downgraded gradle to workaround the issue. I'm now using Gradle 5.6.4 and Gradle Plugin 3.6.4

I have the same issue.
My gradle-wrapper.properties is:
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

I am using Intellij Idea is IntelliJ IDEA 2021.3.1 (Community Edition).
While I tested my application with Spring boot 2.6.3 and ch.vorburger.mariaDB4j:mariaDB4j-springboot:2.4.0,  I couldn't terminate my application and get this error message finally:

Execution failed for task ':biz-service-impl:DomainDrivenTransactionSysApplication.main()'.
Build cancelled while executing task ':biz-service-impl:DomainDrivenTransactionSysApplication.main()'

Try:
Run with --stacktrace option to get the stack trace.
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.

I wonder should I downgrade my gradle to some version under 6.0

actually the answer is:
preferences -> build/execution/deployment -> build tool -> Gradle -> build and run with gradle or IntelliJ IDEA
the default config is build and run with gradle, that's the root cause.
I wonder why Idea is designed like this.

I'm having this same issue. I can't get it right


Explore removing src and just having menelaus

It would be nice to mimic most libraries that just have a library_name source folder, and would also help embrace the pattern of test directory structure mimicking code structure.

I also think it makes sense to just call it detector.py

@Anmol-Srivastava  Yeah, agree it looks weird. Should fix it at some point.


Add opensource project config file

@SUPERCILEX I think you'll like this sneak peek.  For our Firebase hack week I worked on (with some teammates) generating beautiful home pages for our open source repos.   By adding this config file, we get:
https://firebaseopensource.com/projects/firebase/firebaseui-android
Very much WIP.

@samtstern Google javadoc themed READMEs? Love it! 😄 Does it work for any repo with a project.json?

@SUPERCILEX there's also a backend service that turns the READMEs into HTML like this, so it has to be configured.

Awwww... still, super cool!


Fixed the screen size setting issue for the auto LODs in editor

Fixed the screen size setting issue for the auto LODs in editor

@gadamyan Thanks!


Vcheck : python version

I would like to create a branch for the python version of vcheck using the pyvmomi official library and Django framework.

@saratlingamarla Sweet! Take a look here. Feel free to fork/PR into this new repo; I also created a develop branch.

thank you!


Add knob to manually adjust vmm overhead

Summary
We have experienced rare corner cases, when QEMU consumes significantly more than we estimated. This PR allows to manually adjust the limits for these corner cases.
Testing done
Apply patch to trace in the logs how much overhead has been allocated, and build Eve
git fetch https://github.com/yvolchkov/eve.git overrideVmmOverhead-debug
git cherry-pick aa49beaeed01f2700f9bb0da494be26806fe5cd2
make pkg/pillar eve

Prepare a script to spin up eden and onboard newly build eve
cd ~/src/eden
tee restart.sh << `EOF`
#!/bin/bash

set -e

function main() {
    local eve_src_path="$(readlink -f ~/src/eve)"
    local eve_version="$(make DEV=n --no-print-directory --directory "${eve_src_path}" version)"

    echo "using eve version ${eve_version}"

    make clean
    make eden
    ./eden config add
    ./eden setup --eve-tag "${eve_version}"
    ./eden start
    ./eden eve onboard
}

main "${@}"
EOF

Create an ssh alias for the node managed by eden. Add the following to ~/.ssh/config
host eden-eve
     hostname localhost
     StrictHostKeyChecking no
     IdentityFile ~/src/eden/dist/default-certs/id_rsa
     ConnectTimeout 1
     port 2222
     user root

Onboard, deploy instance without overrides, check how much memory has been allocated
./restart.sh
./eden pod deploy file://"${PWD}"/alpine.qcow2  --name=overhead-test
# Allow some time for the app to start
ssh eden-eve "logread " | tee  logs_local.json |  cut -d ';' -f 2-  | jq -R '. as $line | (fromjson? | .time + ": " + .msg + " " + .diff) // $line' | grep "Qemu overhead for domain"

"2022-10-05T11:33:47.797785213Z: Qemu overhead for domain c3554dbe-a547-4d7b-ba2d-894885684c37.1.1 is 629145600 bytes "

Override overhead and redeploy the app
./eden controller edge-node update --config memory.vmm.limit.MiB="778"
./eden pod delete overhead-test
./eden pod deploy file://"${PWD}"/alpine.qcow2  --name=overhead-test
ssh eden-eve "logread " | tee  logs_local.json |  cut -d ';' -f 2-  | jq -R '. as $line | (fromjson? | .time + ": " + .msg + " " + .diff) // $line' | grep "Qemu overhead for domain"

"2022-10-05T11:33:47.797785213Z: Qemu overhead for domain c3554dbe-a547-4d7b-ba2d-894885684c37.1.1 is 629145600 bytes "
"2022-10-05T11:37:59.585219193Z: Qemu overhead for domain e861192a-cf27-421f-926e-de0d3859b02e.1.1 is 815792128 bytes

Convert bytes to MiB and verify
echo "815792128 / 1024 / 1024" | bc
778

Repeat the experiment but instead of redeploying, simply reboot the app
./restart.sh
./eden pod deploy file://"${PWD}"/alpine.qcow2  --name=overhead-test
# Allow some time for the app to start
ssh eden-eve "logread " | tee  logs_local.json |  cut -d ';' -f 2-  | jq -R '. as $line | (fromjson? | .time + ": " + .msg + " " + .diff) // $line' | grep "Qemu overhead for domain"

"2022-10-05T11:45:17.826541082Z: Qemu overhead for domain d9039e2a-1f7a-407d-b4d0-486490289c4f.1.1 is 629145600 bytes "

./eden pod restart overhead-test
ssh eden-eve "logread " | tee  logs_local.json |  cut -d ';' -f 2-  | jq -R '. as $line | (fromjson? | .time + ": " + .msg + " " + .diff) // $line' | grep "Qemu overhead for domain"

"2022-10-05T11:45:17.826541082Z: Qemu overhead for domain d9039e2a-1f7a-407d-b4d0-486490289c4f.1.1 is 629145600 bytes "
"2022-10-05T11:47:36.408674527Z: Qemu overhead for domain d9039e2a-1f7a-407d-b4d0-486490289c4f.1.1 is 815792128 byte

I think you need to tweak globalconfig_test.go

@eriknordmark , if you mean pkg/pillar/types/global_test.go then it has the new variable already


Project ideas

[ ] lofi music gen : web / ml / sound / useful
[ ] compile fft project to webassembly : web / sound / signal processing
[ ] twitch chat excitement sentiment based auto clip suggestions: web / ml / integrations / useful
[ ] speaker detection + subtitle positioning (avoid covering stuff): ml / video
[ ] in depth exploration comparing numerical eigenvalue algorithms for PCA: ml / math
[ ] collaborative filtering: ml / math / data science
[ ] video game: graphics / nim or golang / networks
[ ] guide map: web / gis / business / useful
[ ] wifi sensing automated roomba or lawn mower: signal processing / wifi / useful
[ ] security camera no cloud anomaly alerting: video / ml / clientside / useful
[ ] home network dashboard: networks / useful
[ ] live stream p2p caching: web / video / distributed / p2p / networks
[ ] contribute to ipfs kademlia: web / distributed / p2p / networks
[ ] code scanning + fix suggestions ML trained on issues + fixes scraped from public github
[ ] uiua math stuff
[ ] variable zoom by fold level vscode extension: https://youtu.be/rC4FCS-oMpg?t=867
[ ] software defined radio: overhead weather imagery
[ ] core rope memory
[ ] rust api to microservice macro, define each api in a monorepo and it automatically makes a microservice
[ ] dog collar & leash
[ ] keyboard
[ ] twitch bot, video description, chat reactions
[ ] fuzz js frameworks by types of api, iterate docs and match input output

Game
https://github.com/rewin123/space_editor

https://youtube.com/shorts/tlv4jayQchc?si=Vgp7Zm13W3YAL4Zu


Update location with "[resourceGroup().location]"

Update location with "[resourceGroup().location]" because region is not validated, created confusion to readers in terms of utilisation

@cloudmelon : Thanks for your contribution! The author, @KumudD, has been notified to review your proposed change.

#sign-off


Unsoundness in safe 'copy' function may cause UB due to lack of bounds checks

Description:
The copy function uses unsafe operations to copy memory from a source address to a destination address. However, the implementation does not perform any bounds checking to ensure the safety of the operation. This can lead to Undefined Behavior (UB) under various scenarios, such as invalid pointers, overlapping memory regions, or out-of-bounds access.
https://github.com/evmar/retrowin32/blob/e6c045f28bd956745ae4ee12dba616b0cc68a248/memory/src/mem.rs#L155
pub fn copy(&self, src: u32, dst: u32, len: u32) {
    unsafe {
        let src = self.get_ptr::<u8>(src);
        let dst = self.get_ptr_mut::<u8>(dst);
        std::ptr::copy(src, dst, len as usize);
    }
}

Problem Description:

Unchecked pointers:
The function relies on self.get_ptr and self.get_ptr_mut to provide raw pointers for the source and destination.
If these pointers are invalid or out of bounds, dereferencing them in std::ptr::copy will lead to UB.
No overlap check:
The std::ptr::copy function requires that the source and destination memory regions do not overlap. If they overlap, the behavior is undefined.
Unsafe cast of len:
The len parameter is cast from u32 to usize without validation. On 64-bit systems, this could lead to truncation or incorrect behavior if len exceeds the maximum value of usize.
General safety concerns:
There is no guarantee that the provided source or destination addresses are valid for reading or writing for the specified len bytes.
The function assumes that all memory is properly aligned and accessible, which may not be true.

Expected Behavior:

The function should ensure that the pointers provided by self.get_ptr and self.get_ptr_mut are valid and within the allowed memory bounds.
The function should validate that the source and destination memory regions do not overlap.
Proper checks should be implemented to ensure that the len parameter does not exceed memory limits or lead to truncation on 64-bit systems.

Additional Notes:
Unsafe memory operations require rigorous validation to ensure correctness and avoid UB.
If performance is critical, consider providing a safe wrapper around this function to enforce the necessary checks while keeping the unsafe implementation for advanced use cases.

ping?


Partial html support.

If I understand correctly, currently secure-handlebars can only render a full HTML page. What should I do if I need to render a part of page (a control, for instance) from my template?

we do support partial but with the following limitation
https://github.com/yahoo/secure-handlebars#known-limitations--issues


Fails to update program, error 0x801901a0

Brief description of your issue

Just got winget installed after joining the package manager beta, tried upgrade --all and it keeps dying trying to upgrade QuickPar with a Requested range not satisfiable (416) error
Steps to reproduce

Attempt to upgrade QuickPar, would assume the same issue occurs if you try to install it from scratch but I haven't tried it
Expected behavior

For it to download the setup and the upgrade to complete
Actual behavior

Error on setup download
Environment
[winget --info]
Windows Package Manager version v1.0.11451
Windows: Windows.Desktop version v10.0.19043.985
Package: Microsoft.DesktopAppInstaller version v1.11.11451.0

Any other software?

Was running it in a PowerShell instance inside of the new Terminal, don't know if that would change anything or not

@Masamune3210 I'm not sure, but this might have something to do with Delivery Optimization attempting to download the file with "range" requests. You might try to change your settings to "network: "wininet" and see if that helps.

Im sorry, I am unfamiliar with how to do that, I'm probably just misunderstanding how to use the config file

winget settings will launch the settings file with your default editor. If you have something like Visual Studio Code configured to handle JSON files, it also supports JSON schemas. That means you would get intellisense and tooltips.
From there, you would add the line above (probably ending in a comma if you have other settings).

tried but not sure if I added the config right, result was the same
`{
"$schema": "https://aka.ms/winget-settings.schema.json",
// For documentation on these settings, see: https://aka.ms/winget-settings
// "source": {
//    "autoUpdateIntervalInMinutes": 5
// },

}	"Network": "wininet"`

You put it past the end. Here is an example:
{
    "$schema": "https://aka.ms/winget-settings.schema.json",

    // For documentation on these settings, see: https://aka.ms/winget-settings
    // "source": {
    //    "autoUpdateIntervalInMinutes": 5
    // },

    "network": {"downloader": "wininet"}
}

Ok, yeah now that the config file is fixed the file is correctly downloaded and the upgrade works correctly


[swig] switch to SWIG_ADD_LIBRARY() in CMakeLists.txt (fixes #5586)

Signed-off-by: Shogo Hida<EMAIL_ADDRESS>Fixes #5586

@jameslamb
I fixed the points you mentioned so please review again!

Thanks for reviewing my PR! Hope to contribute more in the future!


Adding more activation functions (specially functions with a parameter)

We would love to add LeakyReLU, ELU and SELU. I guess this might be possible if we can mimic some kind of closures. Low priority for now.

Closing this now. It is so low on the priority list that I won't fix this now. I will reopen when/if I think such features will gain anything in one of my machine learning projects. Labeling "wontfix" for now.


Fixed issue #16.

Correctly set the user locale after an oauth authentication.

Thank you. Merging.


If passed a directory, open its README.md file

This makes it easier to run, for example:
vmd node_modules/electron

I would request documentation.

Good point, @mightyiam! I just added https://github.com/yoshuawuyts/vmd/pull/94/commits/1f97fb44ce4f7874dd5164e2edee7760d58e43f3

Nah, I'll pass on that :P There's currently no functionality tests in the repo anyway

Nice work! Thank you very much! I've published a new release with this feature.

Cheers for the quick merge/release, @maxkueng!


Seven Theme - Widgets

Airspace map:

Latest awards:
I've changed that but it isn't used at all
Latest news:

Latest pilots:

Latest pireps:

Live map:
Already migrated to bs5 in #10
Weather:


Migrate settings & logging framework from WeVoteBase

Done, first version of the Python API framework checked in.


Enhance, document and expose more String functions to GDScript

The String class currently holds multiple useful functions that are not exposed to GDScript.
The goal of this PR is to enhance, document and expose these as well as merge documentation updates from 3.x where applicable, and include some minor formatting changes to the class as well.
Here is the GDScript used to test both the master branch and the 3.x equivalent of this PR:
#!/usr/bin/env -S godot -s --no-window
extends SceneTree

func _init():

        print()
        print("is_quoted:")
        print('" returns true "'.is_quoted())
        print('returns false'.is_quoted())
        print("'   returns true   '".is_quoted())
        print("P   returns false   P".is_quoted())
        print("P   returns true   P".is_quoted("P"))
        print("p   returns false   P".is_quoted("P"))

        print()
        print("replace_first:")
        var replace_first_string : String = '1 1 1 1 1'
        print("%s => %s" % [ replace_first_string, replace_first_string.replace_first("1", "first") ])

        print()
        print("camelcase_to_underscore:")
        var camelcase_string : String = 'ThisIsCamelCase'
        print("%s => %s" % [ camelcase_string, camelcase_string.camelcase_to_underscore(false) ])

        print()
        print("get_slice:")
        var get_slice_string : String = ' 0 ; 1 ; 2 ; 3'
        print("%s => %s" % [ get_slice_string, get_slice_string.get_slice(";", 2) ])

        print()
        print("split_spaces:")
        print("0\t1 2".split_spaces())

        print()
        print("split_ints:")
        var split_ints_string : String = 'string 01234 another_string 4325 0.234 0x1234 0b1010'
        print("%s => %s" % [ split_ints_string, split_ints_string.split_ints(" ")])
        print("%s => %s" % [ split_ints_string, split_ints_string.split_ints(" ", false)])

        print()
        print("join:")
        print("||".join(["1", "2", "3"]))

        print()
        var target_path : String = "res://addons"
        print("path_to:")
        var test_paths_aray = [
                        "res://",
                        ]
        for test_string in test_paths_aray:
                print("Starting from directory \"%s\" the relative non-canonical path to directory \"%s\" is \"%s\"" % [ test_string, target_path, test_string.path_to(target_path) ])
                print("Starting from directory \"%s\" the relative non-canonical path to directory \"%s\" is \"%s\"" % [ target_path, test_string, target_path.path_to(test_string) ])

        print()
        print("path_to_file:")
        for test_string in test_paths_aray:
                print("Starting from directory \"%s\" the relative non-canonical path to file \"%s\" is \"%s\"" % [ test_string, target_path, test_string.path_to_file(target_path) ])
                print("Starting from directory \"%s\" the relative non-canonical path to file \"%s\" is \"%s\"" % [ target_path, test_string, target_path.path_to_file(test_string) ])

        target_path = "res://addons/"
        print()
        print("path_to:")
        for test_string in test_paths_aray:
                print("Starting from directory \"%s\" the relative non-canonical path to directory \"%s\" is \"%s\"" % [ test_string, target_path, test_string.path_to(target_path) ])
                print("Starting from directory \"%s\" the relative non-canonical path to directory \"%s\" is \"%s\"" % [ target_path, test_string, target_path.path_to(test_string) ])

        print()
        print("path_to_file:")
        for test_string in test_paths_aray:
                print("Starting from directory \"%s\" the relative non-canonical path to file \"%s\" is \"%s\"" % [ test_string, target_path, test_string.path_to_file(target_path) ])
                print("Starting from directory \"%s\" the relative non-canonical path to file \"%s\" is \"%s\"" % [ target_path, test_string, target_path.path_to_file(test_string) ])

        print()
        print("is_resource_file:")
        test_paths_aray = [
                        "res://",
                        "C:/",
                        "/",
                        "res://::",
                        "res:/",
                        ]
        for test_string in test_paths_aray:
                print("\"%s\" => %s" % [ test_string, str(test_string.is_resource_file()) ])

        print("c_escape_multiline:")
        var c_escape_string : String = "\\"
        print("\"%s\" ==> \"%s\"" % [ c_escape_string, c_escape_string.c_escape_multiline() ])
        c_escape_string = "\""
        print("\"%s\" ==> \"%s\"" % [ c_escape_string, c_escape_string.c_escape_multiline() ])
        c_escape_string = "\\\""
        print("\"%s\" ==> \"%s\"" % [ c_escape_string, c_escape_string.c_escape_multiline() ])
        c_escape_string = "\"\\"
        print("\"%s\" ==> \"%s\"" % [ c_escape_string, c_escape_string.c_escape_multiline() ])

        print()
        print("hex_to_int:")
        var bit32_hex_string : String = "0xff"
        print("%s = %d" % [bit32_hex_string, bit32_hex_string.hex_to_int()])
        # Testing Errors
        #bit32_hex_string = "0x80000000"
        #print("%s = %d" % [bit32_hex_string, bit32_hex_string.hex_to_int()])
        #bit32_hex_string = "C0FFEE"
        #print("%s = %d" % [bit32_hex_string, bit32_hex_string.hex_to_int()])
        #bit32_hex_string = "0xCOFFEE"
        #print("%s = %d" % [bit32_hex_string, bit32_hex_string.hex_to_int()])

        # Only on 3.x
        #var bit64_hex_string : String = "0x80000000"
        #print("%s = %d" % [bit64_hex_string, bit64_hex_string.hex_to_int64()])
        #print("%s = %d" % [bit64_hex_string, bit64_hex_string.hex_to_int64(false)])
        #print("0x80000000".hex_to_int64())
        #print("abababab".hex_to_int64(false))

        print()
        print("rpad:")
        var rpad_string : String = "original"
        print("\"%s\" ==> \"%s\"" % [ rpad_string, rpad_string.rpad(20, "G") ])

        print()
        print("lpad:")
        var lpad_string : String = "original"
        print("\"%s\" ==> \"%s\"" % [ lpad_string, lpad_string.lpad(20, "E") ])

        print()
        print("quote:")
        var quote_string : String = "original"
        var affix : String = "GO_QUOTE"
        var quoted_string = quote_string.quote(affix)
        print("\"%s\" ==> \"%s\"" % [ quote_string, quoted_string ])

        print()
        print("unquote:")
        print("\"%s\" ==> \"%s\"" % [ quoted_string, quoted_string.unquote(affix) ])

        var some_string = "One,Two,Three,Four"
        var some_array = some_string.split(",", true, 1)
        print(some_array.size()) # Prints 2
        print(some_array[0]) # Prints "One"
        print(some_array[1]) # Prints "Two,Three,Four"

        quit()

Since you've written a script to test, would you consider adding unit tests to https://github.com/godotengine/godot/blob/master/tests/test_string.h?

@raulsntos Will do.

Thanks for working on this, having a richer "standard library", especially for very core things like Strings would be cool (to me).

replace_first()

This should IMO be a count parameter to replace() of "how many occurences to replace", with the default (0 or -1) meaning "all occurences".
The equivalent of replace_first("hay", "a") would then be replace("hay", "a", 1). Likewise for the case-insensitive (and somewhat horribly named) replacen(). Maybe we should then also add a "reverse" parameter, which reverses the search order, of a second rreplace() function to be more in line with others (like find()/rfind()).

I agree -- the rreplace() function sounds better IMO. That then implies the implementation of a String.reverse() function that can be used to reverse the string. This way rreplace() is the equivalent of a replace() call where all three strings (the caller string, the pattern, and the replacement) have been reversed beforehand and a replace() call is issued with them. The return value of this last function is then then reversed again and returned in the rreplace() call.
It seems that the third parameter of replace() should be an array of natural numbers instead of a single number. An empty array would mean to replace all the occurrences, and entries from0 until n would mean to replace the nth occurrence, 0 being the first occurrence to be consistent with other functions such as get_slice(). That way replacing multiple occurrences is more performant.
I'll start working on it during the week and add it to this PR.
For 3.x I'll obviously keep replace_first around, just like we are keeping find_last around, for compatibility, andreplace() will be enhanced.

The replace() function has been enhanced and rreplace() implemented.
I noticed the C++ function parameter names for some functions differ from the ones found in the documentation.
For example, in the engine code the terms key and with are used in replace(), whereas in the documentation the terms what and forwhat are used respectively instead.
IMO it's better to have a single set of terms and I'm bound to use the ones found in the engine code.
Is there a reason for using what and forwhat in the documentation?

Thoughts regarding the replacement functions:

I'd consider making case-insensitivity a boolean parameter option, these are starting to become a lot of methods due to the n-suffixed case-insensitive ones.
I agree we should use the same parameter names everywhere. Python uses oldvalue and newvalue, which is pretty clear I think. (E.g. in str.replace(oldvalue, newvalue) you immediately know which is which)
I'm not really following this:

It seems that the third parameter of replace() should be an array of natural numbers instead of a single number. An empty array would mean to replace all the occurrences, and entries from0 until n would mean to replace the nth occurrence, 0 being the first occurrence to be consistent with other functions such as get_slice(). That way replacing multiple occurrences is more performant.

Not sure about that, this seems needlessly complicated? str.replace(old, new, 3) should replace up to, including 3 occurences of old with new. This is how this works in all languages I'm familiar with. Passing a slice seems cumbersome, and that usage seems also somewhat rare?

Not sure about that, this seems needlessly complicated? str.replace(old, new, 3) should replace up to, including 3 occurences of old with new. This is how this works in all languages I'm familiar with. Passing a slice seems cumbersome, and that usage seems also somewhat rare?

I don't see how that's needlessly complicated since str.replace(old, new, range(0,3)) would do the same, but I agree -- I'd rather stick to functionality that is common between languages. I wouldn't say tjhe usage I proposed is not rare in my experience, although is hard to tell, but a RegEx substitution can provide the same functionality I cared about regardless.
I agree on adding a case-insensitive parameter -- I'll make the changes accordingly soon.

Thanks! And thanks again for working on this :)

This should PR be ready for another review.

Looks like a very nice clean up. My only criticism is usage const in immutable types (such as const int), we don't really use this in the Godot codebase. Other that it looks fine.

Alright, I'll drop the const modifier against primitive types.

Dropped const modifier in function parameters for primitive types.
Also dropped const references for primitive types.

Added overloaded functions for _wildcard_match, ends_with, match and matchn  with C strings, const char *, parameters where possible which is the last change I forgot I wanted to add to the scope of this PR.

Rebased and fixed conflicts.

None of the changes in this PR break compatibility as that was not the goal here, but I don't intend to discuss this here as it should be made clear after I break down this PR and submit the relevant changes.
I agree that certain changes perhaps are better suited to be made in a proposal now that also some other changes in this PR call for a reevaluation of whether or not we'd like to keep some functions like replace_first around.
I agree that breaking this PR down into several will make it easier to discuss.
At this point, I'll consider this specific PR to be of personal use as I'm currently using this in my projects.
Closing in favor of breaking this PR down into several PRs which I'll submit in the near future.


sdl2 crash in macos arm64

Summary
sdl2 crash in macos arm64
var sdl = Sdl.GetApi();

Steps to reproduce

Platform: Desktop
Framework Version: .NET8
API: SDL2
API Version: SDL2

Comments
https://github.com/user-attachments/assets/bbf60937-e644-4ffe-8b4f-5bbe6438d02e

Hi. We don’t support MAUI at this time, only .NET Android without MAUI. In addition, there’s not enough information on this issue to suggest anything other than following the Android example we have in the repo if you do want to pursue this.

this is avalonia not maui. and this desktop application

Ah ok. We don’t support Avalonia at all at this time, at least for SDL.

So it never work in macos arm64?

By all means give it a go but Avalonia is not a scenario we support for SDL. I also have no idea what your error was, given that you did not include any details such as an exception or stack trace, so I did my best to identify the issue with the information provided.

Just crash went
var sdl = Sdl.GetApi();

not log, not any info, with arm64 build, but use x64 build it's work.

Yes this library can be used on macOS arm64, that’s my daily driver. I advise making a brand new project and copying the code from an example in the repo to see whether known-good code works. If it does, then it’s likely a problem with your specific scenario.

Ok, I will try it out on the weekend

Nope it just crash on consoleapp

yes, it's SDL arch issues, I replaced the sdl library built with arm64 and it will work properly now.


UIData refresh

@vania-pooh I did tried 1.2.0 as you said but the data is not turning up in UI during the execution.

Execution was in progress but i dont see any data getting reflected in UI.
docker ps -a
CONTAINER ID        IMAGE                        COMMAND                  CREATED              STATUS              PORTS                    NAMES
f27d0a7a8da8        selenoid/chrome:58.0         "/bin/sh -c /entry..."   About a minute ago   Up 57 seconds       4444/tcp                 musing_feynman
5bc35661447a        selenoid/chrome:58.0         "/bin/sh -c /entry..."   About a minute ago   Up 57 seconds       4444/tcp                 quirky_hawking
81ebb48414c2        selenoid/chrome:58.0         "/bin/sh -c /entry..."   About a minute ago   Up 58 seconds       4444/tcp                 elegant_dubinsky
416fa082c2b9        selenoid/chrome:58.0         "/bin/sh -c /entry..."   About a minute ago   Up 58 seconds       4444/tcp                 tender_knuth
0b8089b54c3b        aerokube/selenoid-ui:1.2.0   "/selenoid-ui --se..."   5 minutes ago        Up 5 minutes        <IP_ADDRESS>:8080->8080/tcp   selenoid-ui
c6310479466a        aerokube/selenoid            "/usr/bin/selenoid..."   19 minutes ago       Up 19 minutes       <IP_ADDRESS>:4444->4444/tcp   selenoid

@SrinivasanTarget both SSE and Selenoid indicators should be green. In your case Selenoid is red. I think this should mean that there is no access to Selenoid API.
@lanwen is my statement correct?

@SrinivasanTarget btw, take a look at UI container logs. There should be error messages about access to Selenoid.

Yep, if you see red - go to the logs.

@vania-pooh What's the solution?

@SrinivasanTarget any error messages could help. But basically you need to correctly point UI to Selenoid as described here: http://aerokube.com/selenoid-ui/latest/#_you_have_docker

@vania-pooh I could not bash inside containers to retrieve logs. I see it is pointed to correct url that's why UI is rendered. Help me in fetching logs.

Please use this command to inspect logs of selenoid-ui container:
$ docker logs
I think in your case the correct selenoid-uri option should be:
http://10.2341.207:4444

Feel free to reopen if it still actual

Hi guys
I can reproduce this issue
https://content.screencast.com/users/dmitrykonovalov/folders/Jing/media/b14e8e38-41ad-40f6-9a93-965d4b48830a/00000173.png
suppose I did something wrong

@d-konovalov You should link your selenoid to selenoid-ui and use linked selenoid name as host.
Now in your selenoid-ui container nothing listens on :4444

so I should use docker-compose for it, right?

It's on your own, but it also possible with only docker run -d --name selenoid-ui --link selenoid -p 8080:8080 aerokube/selenoid-ui --selenoid-uri=http://selenoid:4444

ah, now I see
sorry
and thank you, it works

meh, found a bug with link - it uses same url for selenoid in browser to connect directly


fix: correctly invoke compiler in misra rule

Fix a Makefile rule error in generating the .cppcheck-types.cfg file, by correctly invoking the c compiler.
Before this fix, make would not correctly generate .cppcheck-types.cfg file, preventing it from running the misra-check rule successfully.
This error affects the misra makefile rules, misra-check in particular.

It seems legit. But I know this has worked in the past :thinking: Any idea how?

It seems legit. But I know this has worked in the past thinking Any idea how?
My guess is that since the file is only generated when missing, you have generated it using the toll directly and when running it with the makefile the rule has not actually been invoked.
Have you tried to remove the file .cppcheck-types.cfg and run the misra-check rule?


Introduce Integration Tests in ledger-live-common

📝 Description
Introduces the concept of integration tests in live-common that do not run through the regular library "unit tests" but instead would be run manually / every day (on github actions).
The CI that run live-common tests is now split into 3 parts:

ci-test-unit: the "Tests Libraries" that run on each commit
ci-test-bot: the "Bot" that do real transaction on our different testing seeds. It runs on demand and also with a cron.
ci-test-integration: runs only on demand AND every day at 9:30. For manual trigger, it's highly recommended to use an input filter to only test one family.

ℹ  This PR also update Jest of live-common from 27 to 28 thanks to @elbywan work in #364
ℹ  This PR also enable the Jest github-actions integration which adds annotations in the runs
Integration test?
Any test that requires HTTP to work should be moved to an "integration test" to prevent flawky tests to happen in live-common.
Such tests is named *.integration.test.ts.
It is important to understand that this PR didn't fix any flawkyness when running these integration tests, actually it re-enabled literally all the coins tests and many of them are failing. The goal is for blockchain team to fix them in the future, but for now to ship a way to run this tests on CI. You can use the "filter" input to select the family to run.
However, the flawkyness of ci-test-unit is improved by this PR as some tests moved into an integration test.
What changed
The previous "test-dataset" concept has been continued and here is what happened:

generated/test-dataset.ts is gone. In the idea of coin modularisation.
in the test-utils: libcore-setup.ts is gone. instead, everything can import setup.ts

For each coin family:

all test that would have been disabled in the past is enabled again.
bridge.test.ts is renamed bridge.integration.test.ts
any file previously named test-dataset.ts is merged into bridge.integration.test.ts. Dataset can be put in place within that test files. If a coin have a lot of dataset, we continue the convention to use a datasets/ folder.
testBridge("ethereum", dataset) can be replaced to testBridge(dataset)

How to run an integration test locally
all the integration tests (not recommended)
pnpm common ci-test-integration

all the integration tests of family tezos
pnpm common ci-test-integration tezos

❓ Context

Impacted projects: nothing user facing. impacts tests of live-common
Linked resource(s): https://ledgerhq.atlassian.net/browse/LIVE-2673

✅ Checklist

[x] Test coverage
[x] Atomic delivery
[x] No breaking changes

📸 Demo
(demo to be added if we can test on github actions using the added actions)
🚀 Expectations to reach
Please make sure you follow these Important Steps.
Pull Requests must pass the CI and be internally validated in order to be merged.

@valpinkman @jelbaz-ledger  all the ✅  of the CI are good, we have some :x: specifically for the "Integration Tests" and this is expected as documented in this PR (as we will need to fix it in the next weeks) – these integration tests only run on git push when being on branch support/integration-tests in order to be able to easily trigger it & test it, and here everything appear to work on Windows,Linux,Mac :)


feat(Condensed): characterisation of discrete (light) condensed sets and modules

This PR provides a characterization of discrete condensed sets and modules, both in the light setting and the classical one.

Six equivalent conditions on a condensed set X to be discrete

The counit of the discrete-underlying adjunction applied to X is an isomorphism
X is in the essential image of the constant sheaf functor Type (u+1) ⥤ CondensedSet.{u}
X is in the essential image of the functor Type (u+1) ⥤ CondensedSet.{u} which takes a set to the sheaf of locally             constant maps into it.
The counit of the locally-constant-underlying adjunction applied to X is an isomorphism.
X restricted to the coherent site of profinite sets is discrete as a sheaf
For every profinite set S written as a limit of finite sets, X maps S to the corresponding colimit.

A condensed module over a ring is discrete if and only if its underlying condensed set is, and therefore the analogues of the equivalent conditions above also characterize condensed modules as discrete
The analogues for the above for light condensed sets and modules

[x] depends on: #12930
[x] depends on: #13333
[x] depends on: #13486
[x] depends on: #13947
[x] depends on: #14017
[x] depends on: #14382
[x] depends on: #14406
[x] depends on: #15321
[x] depends on: #15566
[x] depends on: #15569
[x] depends on: #17537

PR summary 92528ad914
Import changes exceeding 2%
%	File
+4.37%	Mathlib.Algebra.Category.ModuleCat.FilteredColimits
Import changes for modified files
Declarations diff

I think it's completely reasonable that the file ModuleCat.FilteredColimits knows that ModuleCat has limits

Thanks for all the reviews 🎉
bors merge


Get-CsExternalAccessPolicy -include all

[Enter feedback here]
The section:
See New-CsBatchPolicyAssignmentOperation for additional examples of how to compile a user list.
You can see the new policy by running Get-CsExternalAccessPolicy -Include All.
See also New-CsExternalAccessPolicy and Set-CsExternalAccessPolicy.
The include option with -All does not work; error below
Get-CsExternalAccessPolicy -Include All
A parameter cannot be found that matches parameter name 'Include'.
+ CategoryInfo          : InvalidArgument: (:) [Get-CsExternalAccessPolicy], ParameterBindingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.Rtc.Management.Internal.GetExternalAccessPolicyCmdlet
+ PSComputerName        : api.interfaces.records.teams.microsoft.com

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

ID: 59900927-5e5f-77a4-04be-e05a91330fca
Version Independent ID: 1e4d6b87-f57c-fa45-1630-3c32b821d93c
Content: Manage external access (federation) - Microsoft Teams
Content Source: Teams/manage-external-access.md
Service: msteams
GitHub Login: @MikePlumleyMSFT
Microsoft Alias: mikeplum

Thanks for reporting @JatinKPatel


Bump identity.inbound.auth.oauth2 version

Purpose

$subject

Related PR(s)

https://github.com/wso2-extensions/identity-inbound-auth-oauth/pull/1870
https://github.com/wso2/product-is/pull/14162

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/2651153132


Add belongs_to as DSL warning wrapper to has_one to help beginners

In order to reduce cognitive threshold for new users of JSONAPI::Resource, this PR introduces a method which does the same thing as has_one.
The user can write belongs_to :thing as well as has_one :thing and it means the same thing.
These are equivalent:
class MemberResource < JSONAPI::Resource
  has_one :club
end

class MemberResource < JSONAPI::Resource
  belongs_to :club
end

The user is also warned with a deprecation warning that tries to teach them about why belongs_to is the wrong name.

FWIW, I lost 4+ hours trying to figure out how to wire up an ActiveRecord model that only had belongs_to associations as a JR resource. This would have solved my problem within 10 minutes.

@olleolleolle @dgeb and I have been discussing this PR. On one hand we see the value of the alias, especially as evidenced by @smargh's report of wasted time. On the other hand JSON API only supports "has one" relationships with no distinction between has_one and belongs_to. We are trying to keep the Resources class in line with the spec. Exposing the belongs_to relationship at the resource level is exposing the underlying technology a bit in a way we are slightly uncomfortable with.
As a compromise we'd like to see this implemented as a method, instead of an alias, and a deprecation type warning emitted informing the user that a simple has_one is more appropriate. If someone still wants to use belongs_to and doesn't want the message they can override the method on their own base resource class.
What do you say?

I like that plan! Let's write that message! Here's a first iteration

"DEPRECATION: You exposed a Resource's has_one relationship using the belongs_to class method. We think has_one is more appropriate. If you know what you're doing, and don't want to see this warning again, override the belongs_to class method on your resource."

@olleolleolle The message seems good to me. It's long, but that's probably a plus. Maybe we should output the particular resource class the message is coming for so the user can easily find the source.

@lgebhardt There, edited using the GitHub pen.

@olleolleolle Thanks! This should help cut down on confusion.

I think the deprecation warning is the perfect solution. Once I figured out the conceptual gap between AR models and JR resources (JR doesn't care about which table the field lives in, only that it can call the association method on the model), I saw how and why has_one and has_many worked. There is no real need for belongs_to except as a conceptual bridge from AR to JR.

IF we want to reinforce this concept more in the deprecation message, a wiki link, or a README link, could help the user get to that epiphany quicker.


Some questions

Describe the your request
Is it possible to specify the amount of experience for copying an enchanted book or an enchanted tome? I would like to copy the volume required level 30, and for 1 enchanted book about 5 levels.
Is it possible to somehow specify the blacklist of a specific enchantment?
If it doesn't exist, please implement it :)

Although I think it takes about 30 levels to make an enchanted book copy, and about 50 levels to make a tome, since players build farms of monsters and endermen and experience is easily obtained.

Can I specify the desired setting in the configurations?


[BUG] An Exception  occurred  while running Bloxstrap

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.

What problem did you encounter?
I tryed to download Bloxstrap and somehow this error showed

It appears to not have permission to access the file, pizzaboxer will probably assist you further

ok

Read the preliminary instructions next time.
https://github.com/pizzaboxer/bloxstrap/wiki/"Access-to-the-path-is-denied"-error-when-trying-to-reinstall-Bloxstrap


pkg/transformer: transformer from dockerfile

Following the request from @philips this is a proposal to merge the main features from https://github.com/mcuadros/rocketizer intro spec
Currently this not is working at the current version of appc/spec, works with the original ACI format. Another problem could be that the test are based on gocheck.
The main purpose of this PR is obtain the basic guides to merge it into master, the main goals, etc.
/cc @jonboulle
https://github.com/appc/spec/issues/15

@mcuadros sorry for the epic delay, this fell off the radar a bit. I would still like to see something like this land, but I think the most appropriate place for it is in the new docker2aci project that is emerging. I am going to file an issue there.

I am going to close this out since we created the docker2aci for this sort of stuff.


Update Jenkins Test Harness to the recent version with Patches and Java 11 support.

Work on my machine (c).

@ndeloof @schnatterer Any concerns if I just start merging such stuff without review as long as local tests pass?

Works for me

TBH I never had too much insight into the Java code, so can't judge if the test coverage is sufficient. Unfortunately, still no free time to work on that insight.
So, no objections from my side 😉


Source Mapping Issue

Installed ng-table through bower and used the minified version on production. Getting this error though:
GET http://domain.com/lib/ng-table/dist/dist/ng-table.min.js.map 404 (Not Found)
See the "/dist/dist"
Might be caused by: //# sourceMappingURL=./dist/ng-table.min.js.map
Might need to be: //# sourceMappingURL=./ng-table.min.js.map

A workaround was to overwrite main block in my projects bower.json with use of grunt-wiredep node plugin, but it should be fixed IMO.

+1


process.env in browser tests is empty

In order to fix the issue that travis does not support ipv6 properly I disabled some ipv6 tests https://github.com/libp2p/js-libp2p-websocket-star/commit/2402df2e41d904f72850d5d5406edcff37edf96a#diff-8993f71390b6e4632c582478918cc529
The tests however get run in browser on travis as the env is not accessible from the browser. Would there be any way to get access to it or at least make the ci environment detectable in the browser tests?

I think process.env.AEGIR_* should be available from tests.

The line console.log(Object.keys(process.env).join(" ")) shows all env vars in node tests but doesn't show any in the browser tests. Even env vars like AEGIR_SOMEVAR don't work.

I'm running into this problem also, which makes js-libp2p-websocket-star not skip a IPv6 test on the browser on Travis, causing the tests to fail:
https://travis-ci.org/libp2p/js-libp2p-websocket-star/builds/309411484?utm_source=github_status&utm_medium=notification
Any hint on how / where to solve this? Will gladly do a PR..

@pgte Turns out it can be solved by a preprocessor
PR #179

Fixed in #179


Bug: Max Hp not set on character creation

Since 3.0.0 change the way system.attributes.hp.max is calculated, it is only set on the sheet when edited. Therefor, this value must be set at character creation time.

@PrototypeESBU  You can just leave this one with me, I've already started work on it.


Hello, could you please clarify whether the grid information stored in the geo file contains grid points for the entire globe or only the information for the selected 200-plus points?

Thanks for your question. Only the locations of the selected points are needed for calculation and should be stored in the .geo file.

The first image shows the information of your dataset, and the second image shows the information of my dataset. Could you please clarify what additional features are included in the last item of your three feature dimensions? After debugging, I still encounter errors when running the code with your dataset.

If you still have the config file and the other two files, could you please upload them? Because your dataset has 3 feature dimensions, while my processed dataset has only 1 dimension. I need to check these files to replicate your dataset. Additionally, after debugging, I also encounter issues when running with your dataset.

Hello, could I kindly ask you to take another look at the data processing code? The data I processed is causing issues when input into the model, particularly with the way the dataset is divided. Could you please help me find the relevant code? Alternatively, details on the specific format of the processed files and what content they should include would also be very helpful.

I have double-checked the laptop, but unfortunately, it was lost. Apologize for the inconvenience. If you encounter some other problem, I am willing to help.

Hello, I have carefully reviewed the contents of your dataset and found several issues. I will list a few points:
The dataset covers five years, which should amount to 1,826 days, but there are only 1,802 days in the data, missing 24 days. See Figure 1.
The data is supposed to be in the form of a sliding window with a window size of 12, moving one day forward each time. See Figure 2. I have split your dataset into x_train, y_train, x_val, y_val, x_test, and y_test, and saved them as text files. In your training set x_train, the first year’s data follows the correct sliding window of 12, moving one day forward each time. However, when sliding to the last day of the 15th year, the subsequent data does not start with the first day of the 16th year, and the data following this point is not continuous in terms of time. See Figures 3 and 4.
In your test set x_test, there is data that also appears in the training set x_train. I have checked, and this data appears only once in the five years. See Figure 5.
Additionally, in your test set x_test, there are values that do not appear in the five years of data. See Figure 6.
Could you please clarify these issues, or is it possible that the dataset was uploaded incorrectly? Thank you.

Hello, I have carefully reviewed the contents of your dataset and found several issues. I will list a few points:
The dataset covers five years, which should amount to 1,826 days, but there are only 1,802 days in the data, missing 24 days. See Figure 1.
The data is supposed to be in the form of a sliding window with a window size of 12, moving one day forward each time. See Figure 2. I have split your dataset into x_train, y_train, x_val, y_val, x_test, and y_test, and saved them as text files. In your training set x_train, the first year’s data follows the correct sliding window of 12, moving one day forward each time. However, when sliding to the last day of the 15th year, the subsequent data does not start with the first day of the 16th year, and the data following this point is not continuous in terms of time. See Figures 3 and 4.
In your test set x_test, there is data that also appears in the training set x_train. I have checked, and this data appears only once in the five years. See Figure 5.
Additionally, in your test set x_test, there are values that do not appear in the five years of data. See Figure 6.
Could you please clarify these issues, or is it possible that the dataset was uploaded incorrectly? Thank you.

Hi. There's another issue, which is the adjacency matrix. Since the adjacency matrix initialized in the code is all zeros, and remains all zeros after processing, it doesn't serve any purpose. So, do we need to input the adjacency matrix separately?

There's another issue, which is the adjacency matrix. Since the adjacency matrix initialized in the code is all zeros, and remains all zeros after processing, it doesn't serve any purpose. So, do we need to input the adjacency matrix separately?

It is initialized randomly by the “def calculate_scaled_laplacian(adj)” and updated the parameters by the loss. Our method does not need the input matrix but lets it be self-learnable to capture the dynamic correlations to solve the problem.

Hello, sorry to bother you so late. I have two questions.
1、During my parameter tuning process, everything works fine when the graph_layer is set to 1. However, when I increase the graph_layer to 2, the number of layers (num_layers) can only be set to a very small value, like 2 or 3. If I increase it further, I get an out-of-memory error on the GPU. The error message is as follows. I'm using a 4090 GPU. Did you encounter this issue when you used this set of parameters before?
File "/data/run01/scw6d2w/HiGRN-main/lib/model/HiGRU/HiGRU.py", line 258, in forward
x_gconv = torch.einsum('bnki,nkioc->bnoc', x_g, self.cluster_weights_pool)  + self.bias_pool    # b, N, dim_out, cluster_dim

torch.OutOfMemoryError: CUDA out of memory. Tried to allocate 22.00 MiB. GPU 0 has a total capacity of 23.65 GiB of which 19.25 MiB is free. Including non-PyTorch memory, this process has 23.62 GiB memory in use. Of the allocated memory 23.13 GiB is allocated by PyTorch, and 44.14 MiB is reserved by PyTorch but unallocated. If reserved but unallocated memory is large try setting PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True to avoid fragmentation.  See documentation for Memory Management  (https://pytorch.org/docs/stable/notes/cuda.html#environment-variables)

2、How did you create the image in your paper? I'd like to differentiate the nodes in two regions in a similar way in my image.

Out-of-memory problems are really common. When you have more data to train, you can try to use multiple GPUs. For the Figure, I utilized T-she to draw.


Better tutorials.. how to draw tiles and sprites?

Im trying to understand how to draw tiles and sprites properly but the tutorials are outdated, and some methods used there are deprecated, can you help me telling how to achieve this..

The best tutorial are the included samples in SGDK, the 'sprite' sample is a good example about how doing basic operations :)

Duplicate of #5

Still outdated, some methods there have wrong arguments and other does not work, you need to update those also..

Can you tell me why using spr engine does not work properly, when using SPR_update() this give weird colors to image and do not draw sprite.

There is something probably wrong somewhere in the code.
Did you have uploaded the palette manually before ? Did you correctly initialized the Sprite engine ?
Use http://gendev.spritesmind.net/forum/ forum to have support, you will find tons of help / answer about SGDK use :)

You mean vdp_setpallete and spr_init(), yes i have used those, the bitmaps draw properly, but when using spr_update the thing got broken.

I've not been able to adapt my old files based on the outdated tutorial to the new changes to SGDK. I'd be interested in a redone tutorial too. Thanks.

I will try to definitely update them on next big SGDK update !
Unfortunately i'm really busy both with my professional and private life now, as soon i've a bit of spare time i will get back working on SGDK :)


fix: teach ScrollPager how to call onIndexChange

cc @osdnk @satya164
Motivation
I opened #993 after observing that onIndexChange does not appear to work when passing renderPager={props => ScrollPager {...props } />. This component only calls onIndexChange when it's jumpTo API method is called, but not simply as a result of scrolling within the inner ScrollView.
Test plan
I have no idea but it doesn't look like there are any existing tests so I imagine this isn't a blocker. I would love to know how to test ScrollView interactions though so if anyone has insight please share.

This seems like it solves a bug in the current iteration of the library where following the directions in the README in order to use the ScrollPager renders the TabView non-functional since its navigationState index is never updated.
Wanted to bump this real quick and see whether anyone has time for a quick review.
Thanks for the time!

I'm gonna merge this. Lemme know @osdnk if you have thoughts.

The ScrollPager still does not scroll properly at the moment when a tab is pressed. I've tested it with the current package and with @react-navigation/material-top-tabs.

Current relevant dependencies:
    "react": "^16.13.1",
    "react-native": "^0.63.0-rc.1",
    "react-native-tab-view": "^2.14.0",
    "@react-navigation/material-top-tabs": "^5.2.2",

@Evan-Younan can you open an issue about it?

Sure. #1011

It's def broken after these changes


Create Jekyll theme website

Jekyll theme website should read .md files which has list of PRs, issues, releases etc information captured there.
Use https://github.com/arsulegai/start-here-hyperledger for website/.md files.

How would the markdown files look like? Any suggestions on the table structure for issues?
Also, once the md files are generated, do we overwrite the old md or keep the old files?

To start with - we could keep the old .md files as well or update the same with new list of issues.
I do not have suggestion on the jekyll theme or the structure of .md file. We can search for free templates and then model our output to meet the template requirement. Feel free to suggest a template.

Few suggestions for a Jekyll theme:

Simple and minimalistic
Minimal with some colors
Modern blog with nice placeholders
Another minimalistic

I like https://www.amitmerchant.com/reverie/introducing-reverie-jekyll-theme/ that looks elegant and has an example where pagination can be seen. Let's say we add a page for each project or per language. This should be good for us to use.

I like https://www.amitmerchant.com/reverie/introducing-reverie-jekyll-theme/ that looks elegant and has an example where pagination can be seen. Let's say we add a page for each project or per language. This should be good for us to use.

But how would the pages for each project from labs or hyperledger look like? Wouldn't it get a bit cluttered if we put all projects as the top nav panel?

The repository https://github.com/arsulegai/start-here-hyperledger is setup


Can't edit data in result set for Sybase connections

Description
I cannot edit the data in the result set when executing multiple queries in separate tabs, always appears the message "Column 'x' is read only: No corresponding table column". Example:
declare @sku char(8)
set @sku= 'abcd1234'

select * from Stock where sku = @sku
select * from Sale where sku= @sku

I can neither do it from context menu

DBeaver Version
Community Edition 23.3.5
Operating System
Windows 11 Pro
Database and driver
Database name and version: Sybase ASE 15.0.1
Driver name and version: jConnect (TM) for JDBC(TM)/16.0 SP03 PL02 (Build 27403)/P/EBF27518/JDK 1.6.0/jdbcmain/OPT/Mon Aug 28 18:41:14 PDT 2017
Steps to reproduce

Create a Sybase connection.
Execute multiple queries and try to edit any value in the result set of any tab
The message "Column 'x' is read only: No corresponding table column" appears.

Additional context
Proxy: SSH

Hello @mel-galvan
Thanks for the report.
I can reproduce it.
It works ok without variables for the script mode but not for separate tabs with or without variables.


Look for common denominator in page section variants (displays)

Styling has been removed from page section variants. This leaves the bare HTML nodes. Many displays possibly have a common structure.

Find the common structure
Create a universal one

This makes creating custom displays easier and allows for better code re-use.

It's been named: unicorn


[CUDA] Reduction extremely slow

What happened?
The reduction below takes ~120ms on my A100 to reduce a tensor of size 833x833xf32 which seems off by over 1000x (an 800x800x800 matmul is measured in microseconds on this chip) . I tried making the size 832 to see if alignment was the problem but that did not significantly change the runtime, so I think something more fundamental is going on.
Repro with:
iree-compile --iree-hal-target-backends=cuda --iree-input-type=mhlo --iree-hal-cuda-llvm-target-arch=sm_80 trace_inner.mlir -o trace_inner.vmfb
iree-benchmark-module --function=main --module=trace_inner.vmfb --device=cuda --input=833xi32=0 --input=833x833xf32=0 --input=f32=0

#map = affine_map<(d0, d1) -> (d0)>
#map1 = affine_map<(d0, d1) -> (d1)>
#map2 = affine_map<(d0, d1) -> (d0, d1)>
#map3 = affine_map<(d0, d1) -> ()>
module {
  func.func @main(%arg0: tensor<833xi32>, %arg1: tensor<833x833xf32>, %arg2: tensor<f32>) -> tensor<f32> {
    %cst = arith.constant 5.66893432E-4 : f32
    %0 = tensor.empty() : tensor<f32>
    %1 = linalg.fill ins(%cst : f32) outs(%0 : tensor<f32>) -> tensor<f32>
    %2 = linalg.generic {indexing_maps = [#map, #map1, #map2, #map3, #map3], iterator_types = ["reduction", "reduction"]} ins(%arg0, %arg0, %arg1, %arg2 : tensor<833xi32>, tensor<833xi32>, tensor<833x833xf32>, tensor<f32>) outs(%1 : tensor<f32>) {
    ^bb0(%in: i32, %in_0: i32, %in_1: f32, %in_2: f32, %out: f32):
      %3 = arith.divf %in_1, %in_2 : f32
      %4 = arith.cmpi eq, %in, %in_0 : i32
      %5 = arith.select %4, %3, %cst : f32
      %6 = arith.addf %out, %5 : f32
      linalg.yield %6 : f32
    } -> tensor<f32>
    return %2 : tensor<f32>
  }
}

Steps to reproduce your issue
See above
What component(s) does this issue relate to?
Compiler
Version information
iree @ ab37989652aed11f7f46498c09b9ac515c83eaa3
Additional context
No response

@mattwalsh @julianwa to help traige.

@okkwon can you root cause and fix if straightforward and send back to triage otherwise?

@okkwon Let us know when you have had a chance to review this.

@julianwa @allieculp can one of you set the priority? I thought it was P2 and that's why I put it in my "look-at-later" queue.

The pattern looks similar to the other case, where EW + reduction prevented the codegen from choosing the tensorcore. https://github.com/openxla/iree/pull/13308 may fix the issue too.

@silvasean can you provide the input mlir before FusionOfTensor pass? #13308 may have fixed the issue. You can attach the original model too.

The reduction is slow because it is fully serialized without any tiling.
https://gist.github.com/okkwon/acd553970efcc4e94101a716aa87ffe4

More analysis:

Making the tensor aligned (832x832) does not help generate parallel code.
Removing EW ops and putting a single reduction (833x833) does not help generate parallel code.
Single op with aligned reduction does generate parallel code.

So, we have a mixed situation. I would approach this way.

support unaligned reduction case.
change the fusion to not fuse EW operation producer with reduction consumer. #13308 may help. Or, make the reduction codegen path more robust to support this case.

@julianwa please prioritize the issue and assign it to someone. An unaligned reduction support may need a substantial code change.

@julianwa @mattwalsh Marking as P1, needs scheduling. We will need a resource here.

I heard that unaligned reductions are supposed to be supported by transform-dialect. Is it true @nicolasvasilache?

@julianwa @mattwalsh Marking as P1, needs scheduling. We will need a resource here.

Priority sounds right. We can expect 30-50% slow down on real world models that hit this case. This should be considered for next sprint.

The reduction strategies would kick in for unaligned cases if the linalg op had 1, 2 or 3 parallel iterators + 1 reduction iterator.
Here the linalg op only has 2 reduction iterators and 0 parallel iterators.
Performing a split-K of size 1 on the first iterator will turn this into parallel, reduction followed by reduction, on which the strategies could then apply.
Note that this would be a pre-processing transformation and I am not aware of a good place to add such pre-processings in IREE atm.

I'm hitting a similar issue in another model with size 2048x2048: https://gist.github.com/silvasean/cf1061249f8cb008e91b511da76e7bf5

Here is another one: 1d->0d reduction
https://gist.github.com/silvasean/6ea40a150c8c87c490e2b7a9429d89e3

FYI, a slight variation of the solution proposed here should help: https://github.com/openxla/iree/issues/13115#issuecomment-1543844223
I can take a stab at a first cut tomorrow.

@nicolasvasilache Any update on this one?

I investigated this deeper and what I proposed in #13115 does not help for the motivating example that Sean posted in this bug report.
The reason is that the existing split-K transformations supports a single reduction iterator.
It is unclear how to extend the existing implementation to allow multiple reductions.
Additionally, we cannot just reshape this fused mixed broadcast / reduction example into a 1-D -> 0-D reduction AFAICS.
A potential path forward could be to implement a staged reduction rewrite that would rewrite e.g. a 3-D -> 0-D reduction (strawman):
[red, red, red] -> [par, par, red] + [par, red] + [red]

by introducing a 2-D and a 1-D intermediate tensor.
This is however something to investigate separately from #13115.
Lastly, I see this comment from @okkwon:
3. Single op with aligned reduction does generate parallel code.

Could you elaborate what "single op" means here ?
Does it mean that ```
%2 = linalg.generic {indexing_maps = [#map, #map1, #map2, #map3, #map3], iterator_types = ["reduction", "reduction"]} ins(%arg0, %arg0, %arg1, %arg2 : tensor<832xi32>, tensor<832xi32>, tensor<832x832xf32>, tensor) outs(%1 : tensor) {
^bb0(%in: i32, %in_0: i32, %in_1: f32, %in_2: f32, %out: f32):
%3 = arith.divf %in_1, %in_2 : f32
%4 = arith.cmpi eq, %in, %in_0 : i32
%5 = arith.select %4, %3, %cst : f32
%6 = arith.addf %out, %5 : f32
linalg.yield %6 : f32
} -> tensor
in isolation without the fill generates parallel code?
If so, does it generate both block and thread parallelism?
A pointer to where that happens in IREE would be useful.

Separately, looking deeper into the computation, I see this computes:
o += sum_i_j (%arg0[i] == %arg0[j]) ? (%arg1[i][j] / %arg2) : %cst

This could also be achieved by precomputing:
tmp[i, j] =  (%arg0[i] == %arg0[j]) ? (%arg1[i][j] / %arg2) : %cst
o = sum_i_j tmp[i, j]

The first operation is a 2-D elementwise and the second can be reshaped to a 1-D reduction on which flavors of split-K apply.
So this makes me wonder how we obtained this op in the first place @silvasean and whether it is possible we hit a case where linalg.generic can represent such a computation with aggressive fusion but this may not be desired?

@MaheshRavishankar for vis

@nicolasvasilache looking at the original comment, this op seems to be how it is lowered into Linalg from frontend dialects. @silvasean do you have something from stablehlo?

Here is something similar to the example from the OP in StableHLO: gist.github.com/silvasean/12afdda5dfd8809a99600a1a25350687
It comes from this JAX program:
import jax.numpy as jnp
import jax

@jax.jit
def trace(a):
    return jnp.trace(a)

trace(jnp.ones([2048, 2048]))

It comes from JAX lowering matrix trace as masking off the non-diagonal of the matrix (comparing iota(dim=0) == iota(dim=1)) and then reducing the whole matrix. I know we can represent this better in linalg with linalg.index, but it happens to hit this reduction issue, which is present in other workloads, so it seems worth addressing independently of the better representation. For example in LLM (or really any ML model) training, frequently one saves off summaries of tensors (like the mean of the whole tensor or other statistics) which is important for modelers to track the training progress.

(not saying we should address the issue described here, but more for my understanding). Wont these reductions have a batch dimension?

No, they don't have a batch dimension in all cases. Both of the examples I gave in this thread are from real workloads.

In the example tensor summary example it is easy to see that there is no batch dimension, since the point is to reduce the whole tensor to a single value for statistics reporting. I don't know for sure why the FermiNet one does not have a batch dimension, but I suspect it is due to being a global value computed somewhere in the KFAC optimizer.

@nicolasvasilache Can you provide an update here on Monday?

We either need a new transform as I described, alternatively, we could make the lowering from xxHLO more friendly by lowering to the form I laid out.
This will need a new owner, as this is not covered by the same transform that I was thinking about originally.

@mattwalsh See above notes, we will need a new owner for this.

Ok, had a conversation with @silvasean about this. So the initial bug report is a bit confusing cause it seems like this is not the "input" from stablehlo lowering, but instead is actually the dispatch that is slow and was extracted out.... In that case, I can see how this linalg.generic was a result of aggressive fusion.  Ill take this one over.

With #13730 this addresses the comment https://github.com/openxla/iree/issues/13285#issuecomment-1549166170 . Now the issues comes down to single large reduction dimension that makes it same as #13115
I am moving this back to Nicolas since the blocker to make this addressable through #13115 is now removed.

@silvasean Downgrading this from P0 to P1 as well - please let us know if that changes.

Sure, we can close it. If we do that then I would prefer if we incorporated this use case (or some unfused modification of it, which I think Mahesh has locally) as an acceptance criterion for #13115 being closed though.


Updated to Swift 4

Here's a quick pass of the Swift 4 conversion we're using in a project. Unfortunately some 'vertical' tests fail. firstAttribute and secondAttribute are traling instead of leading.

Merge!!!!


Cannot verify merkle proof for Polygon Edge transaction trie

Hey,
I'm trying to verify a merkle proof for Polygon Edge transaction trie, which should be equivalent to Ethereum's.
The trie root and the proof seem correct as VerifyEthereumProof throws an Incomplete proof! error for any changes in their value. But whatever the keys I pass, the VerifyEthereumProof function returns [0x0].
I get the proof from @ethereumjs/monorepo trie lib.
Do you see what's going wrong here? I've verified the proof with @ethereumjs/monorepo in js.
Here are test values:
Trie root: 0x8c623b58ccc51ef01a65f35f74c2e44cec7b6a4d65398f6372415aebaec2199b
Proof: ["0xf90130822080b9012af901270f80833d09009476394959e430e539b9c30d526c3b70518ca4a3c880b8c4b32c81057d897233f25bf35582fd8ec453a023f2e3e11a9b5a97196ccf06f90e9992c30c0000000000000000000000004aab25b4fad0beaac466050f3a7142a502f4cf0a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000035453540000000000000000000000000000000000000000000000000000000000821292a0e034de7191ff7b6ba9c09f119dcd16be545c58f5ec267a56ea102a0e7769e912a015e84b72ecaab2e13590c56d9e37915c9d910a29434c07ed8337de55d57c719c"]
Keys: ["0x80"]

Ethereum proofs aren't yet supported
https://github.com/polytope-labs/solidity-merkle-trees/issues/10

Ok, thanks for the update.

@seunlanlege #10 refers to EIP-1186 which is tailored for account and storage proofs, will this impact transaction proofs? (merkle proofs of transaction tries)

@seunlanlege #10 refers to EIP-1186 which is tailored for account and storage proofs, will this impact transaction proofs? (merkle proofs of transaction tries)

@seunlanlege https://github.com/polytope-labs/solidity-merkle-trees/issues/10 refers to EIP-1186 which is tailored for account and storage proofs, will this impact transaction proofs? (merkle proofs of transaction tries)

Yeah it should work for both


change of opens1.threadDisplayStyle doesn't take effect until you refresh the tree view

Step to reproduce:

open a thread. (by default it's markdown)
open settings, change value of opens1.threadDisplayStyle, e.g. to "typescript"
open another thread from the tree view.
it's still open as markdown, and the filename is xxx.md
click the refresh button on the tree view, then the settings take effect.

Suggest to add a listener to refresh the tree view via API vscode.workspace.onDidChangeConfiguration.
This can also apply to other settings like hiddenBoards.
BTW this feature is super interesting! 👍

Great advice.

a753cc2
Done

https://github.com/NessajCN/opens1/commit/a753cc22ea97064efae26e4fc44f360f73208e61#diff-fa99aa5026842217d1270c4ccdf4b15d2e81015551e2d3836c528ac0145021a1R87-R89
It's suggested to only refresh when what you defined has changed... e.g.
vscode.workspace.onDidChangeConfiguration(e => {
        if (e.affectsConfiguration("opens1")) {
              // do the refresh
        }
}


Fixed double-build of TR RPMs in CiaB makefile

What does this PR (Pull Request) do?

[x] This PR is not related to any Issue

When building packages for CDN-in-a-Box using make with multiple "jobs" (i.e. with -j), there is a race condition building the Traffic Router and Tomcat RPMs, since one build process creates both and they both depend on changes to the TR source. In cases where this manifested - which is often - the build will either fail or simply do double the work it needs to do when building those RPMs. This PR eliminates that by changing the rule to a pattern-based one, which make will now properly recognize as a single output (consisting of multiple files) of a single build process.
Which Traffic Control components are affected by this PR?

CDN in a Box

No docs because it's a bugfix
What is the best way to verify this PR?
Build the RPMs for CDN-in-a-Box using make with the -j flag, observe that it consistently has no issue creating RPMs for both Tomcat and Traffic Router exactly once (note that in order to do that, the build_default Docker network must already exist - which is accomplished by just having built an RPM on the same machine before - as otherwise duplicate networks will be created).
No tests because this is just the build system for a toy environment.
If this is a bug fix, what versions of Traffic Control are affected?
N/A - CDN-in-a-Box is not a supported component of Traffic Control, and no such support is purported to exist in any existing releases.
The following criteria are ALL met by this PR

[x] I have explained why tests are unnecessary
[x] I have explained why documentation is unnecessary
[x] An update to CHANGELOG.md is not necessary
[x] This PR includes any and all required license headers
[x] This PR does not include a database migration
[x] This PR DOES NOT FIX A SERIOUS SECURITY VULNERABILITY

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/4175/
Test PASSed.

maybe @mhoppa can review this?

It looks great - let me pull down and test thought just to make sure it doesn't do anything funky it shouldnt