Add different arithmetic backends for Fp

Problem
Right now our Fp struct is a wrapper around BigInt<N>, which itself is a wrapper around [u64; N]. This has numerous undesirable effects:

arithmetic on architectures without mul with carry/add with carry is pessimized (e.g. on wasm or riscv)
fields whose bit size is not close to a multiple of 64 are pessimized (e.g. 192 bit fields or 32 bit fields)

Approach 1
An obvious approach to overcome this is to change BigInt<N> as follows:
/// `N` is number of 32-bit limbs.
#[cfg(feature = "u64")]
pub struct BigInt<const N: usize>([u64; N]);

/// `N` is number of 32-bit limbs
#[cfg(feature = "u32")]
pub struct BigInt<const N: usize>([u32; N]);

Unfortunately, this does not work because const generic type parameters are infectious, and must be propagated upwards. This means that we'll end up with Fp that looks like the following:
/// `N` is number of 32-bit limbs when `u32` feature flag is set
/// and is number of 64-bit limbs when `u64` feature flag is set
pub struct Fp<const N: usize>(BigInt<N>);

That is, from a user perspective Fp<N> can suddenly change from representing 64 * N bit fields to 32 * N bit fields. This is an obvious footgun
Approach 2
An alternate approach would be to change Fp as follows:
pub struct Fp<B: BigInteger>(B);

Now we don't expose the number of limbs at the Fp level; it is an implementation detail of B.
This almost works. However, we run into a new issue. The problem is that currently Fp has a number of const fns (e.g. https://github.com/arkworks-rs/algebra/blob/afd6188b2992216b50182459b4647a4d634c5ca1/ff/src/fields/models/fp/montgomery_backend.rs#L730) that rely on performing const operations on the underlying BigInt. However, because const fns in traits are unstable and experimental, we cannot call any const fn on the generic type B.
We also cannot get rid of these const fns because they enable useful functionality like the  MontFp macro.
Proposed solution
We keep the const fns, but only for specific Bs. That is, we have the following impls:

impl<const N: usize> Fp<BigInt64<N>> {
    pub const fn foo(&self) {
        // logic
    }
}

impl<const N: usize> Fp<BigInt32<N>> {
    pub const fn foo(&self) {
        // logic
    }
}

This allows us to mostly have our cake and eat it too. The only downside is that if somebody implemented their own BigIntXYZ, the resulting Fp wouldn't automatically be supported by MontFp. However they can write a similar impl as above for Fp<BigIntXYZ>, and get MontFp support that way.
This approach also requires us to move some functionality into the MontDerive macros, but that's doable, and also something that the PrimeField macro in the ff crate already tackles.
Of course, this would all be obviated by availability of const fns in traits, but I've been waiting for that feature for years now, and no progress seems to be in sight.

cc @mmagician

I like that.
I suggest we tackle it in stages as much as possible and start with the simple stuff. First step could be moving some of the functionality into the MontDerive macros, which is AFAICS both an independent change, and non breaking.


[BUG] - unable to detect RPi camera

Camera:    RPiHQ
OS: Bullseye 64bit
Allsky version: v2023.05.01
Pi model Raspberry Pi 4 with 4 gigs of memory

Bug Description
ERROR: Unable to process settings file '/home/allsky/allsky/config/settings.json'.
File '/home/allsky/allsky/config/settings.json' missing!
New install - Installed per instruction in Documentation section.
https://htmlpreview.github.io/?https://raw.githubusercontent.com/thomasjacquin/allsky/master/html/documentation/installations/Allsky.html

dito, but 32bit works

@paulwwerner would you please attach that file as well?

Even 32 bit didn't work.

Installation Logs.zip

@sonny486    Sonny, the log file says it can't find the RPi camera. Did you have it working prior to installing Allsky?
Please run libcamera-hello and paste the output here.   If the camera is working you should see an image appear for a few seconds, then disappear.

@sonny486    Please also run vcgencmd get_camera.

I have also encountered this issue. Previously, I encountered the issue of not being able to save longitude and latitude. I reformatted the tf card and reinstalled the system, but the result kept prompting for this. Both 32-bit and 64 Bulleye systems have been tried, and the same prompt still shows that settings. json is missing

@wj7106   Please ATTACH ~/allsky/config/installation_logs/install.sh.log, and run
libcamera-hello
vcgencmd get_camera

In Sonny's case, the message about "settings.json not found" should not have appeared - there should have been a message about a missing camera.  I fixed that bug but haven't released it yet.

After the libcamera hello command, the camera is fine. You can connect the RPI camera and the screen can display photos

I have now given up using the latest version of allsky. Once it is fixed, I will reinstall and upgrade again

Yeah looks like lightning took out my camera.  Lol.  I replaced it with another RPiHQ, have a working libcamera-hello (Shows live video on the desktop).
vcgencmd get_camera gives this response: supported=1 detected=0, libcamera interfaces=1
libcamera-hello output:
[0:02:35.558153324] [2615]  INFO Camera camera_manager.cpp:299 libcamera v0.0.4+22-923f5d70
[0:02:35.595009142] [2616]  INFO RPI raspberrypi.cpp:1476 Registered camera /base/soc/i2c0mux/i2c@1/imx477@1a to Unicam device /dev/media4 and ISP device /dev/media0
[0:02:35.595955445] [2615]  INFO Camera camera.cpp:1028 configuring streams: (0) 2028x1520-YUV420
[0:02:35.596291267] [2616]  INFO RPI raspberrypi.cpp:851 Sensor: /base/soc/i2c0mux/i2c@1/imx477@1a - Selected sensor format: 2028x1520-SBGGR12_1X12 - Selected unicam format: 2028x1520-pBCC
On Allsky I get a Allsky starting up, but never get an image.

@sonny486 What a bummer.
Is the output above with the broken camera or the good one?
Look in /var/log/allsky.log - I suspect images are being deleted for being too dark, i.e.  under the 0.1 threshold. If that's the case then adjust the LOW threshold in config.sh.

@wj7106 Please ATTACH ~/allsky/config/installation_logs/install.sh.log.  It will help me debug your problem.

STARTING INSTALLATON AT Sat 13 May 22:53:26 CST 2023.
Using the 'master' branch.
DEBUG: TEMP_LOCALE=LANG=en_GB.UTF-8, CURRENT_LOCALE=en_GB.UTF-8

Using RPi camera.
DEBUG: RAM_SIZE=512, SUGGESTED_SWAP_SIZE=3584.
Size of current swap (3584 MB) is sufficient; no change needed.
/home/pi/allsky/tmp is currently in memory; no change needed.
DEBUG: /home/pi/allsky/tmp already mounted
Installing the web server.
Installing dependencies.
Preparing Allsky commands.
Modifying locations for WebUI.
Setting up WebUI options and default settings for RPi cameras.
Executing makeChanges.sh --force  --cameraTypeOnly   'cameraType' 'Camera Type' '' 'RPi'
WARNING: Sensor 'imx219' connected to Pi but not known by Allsky
ERROR: Could not find information on camera 'imx219'.
ERROR: Unable to create cc file '/home/pi/allsky/config/cc.json'.
*** ERROR:

Unable to save camera capabilities.

ENDING INSTALLATON AT Sat 13 May 22:54:32 CST 2023.

@wj7106. What kind of camera do you have?  Allsky doesn't support the imx219 sensor, at least not yet.

@EricClaeys Yeah, I will take a look.  That is what it looks like, it just continuously says Allsky is starting up.
I did notice however if I look at the images panel that the date for the day was written, however no images in the listbox.

You were right, image is below the threshold.  However when I set the threshold to .1 it still shows removed due to threshold at 1.
May 13 12:02:12 allsky allsky[3711]: STARTING EXPOSURE at: 2023-05-13 12:02:12   @ 1.4 sec
May 13 12:02:16 allsky allsky[3711]: STARTING EXPOSURE at: 2023-05-13 12:02:16   @ 540.03 ms (0.54 sec)
May 13 12:02:19 allsky allsky[3711]: STARTING EXPOSURE at: 2023-05-13 12:02:19   @ 206.22 ms (0.21 sec)
May 13 12:02:21 allsky allsky[3711]: STARTING EXPOSURE at: 2023-05-13 12:02:21   @ 78.75 ms (0.08 sec)
May 13 12:02:24 allsky allsky[3711]:   > Saving DAY image 'image-20230513120221.jpg'
May 13 12:02:26 allsky allsky[3833]: removeBadImages.sh: File is bad: removed 'image-20230513120221.jpg' (below threshold: MEAN=0.993559, threshold = 1)
May 13 12:02:39 allsky allsky[3711]: STARTING EXPOSURE at: 2023-05-13 12:02:39   @ 30.07 ms (0.03 sec)
May 13 12:02:42 allsky allsky[3711]:   > Saving DAY image 'image-20230513120239.jpg'
May 13 12:02:44 allsky allsky[3921]: removeBadImages.sh: File is bad: removed 'image-20230513120239.jpg' (below threshold: MEAN=0.717188, threshold = 1)

Found the setting for threshold in the /EDITOR/ .
All is working as it should now.  Thanks!

@sonny486 do you remember what the LOW and HIGH values were before you changed the, and what they are now?

Low was 1
High was 90
Moved it to .1 and kept 90 on high

@sonny486 Thanks.  I found a bug that we'll fix in a release in a couple weeks.  At that point you can set the low value back to "1".


Revert "Fix CVE-2022-21698"

The go mod lib needs to be update as well.
However, it'd encounter protocol buffer VersionResponse conflict when
bumping the protocol buffer packages which causes CI failure.
Therefore, we decide the revert the commmit a7e9fb2245b81b2166dda9bfec75cc5482dedf36.

cc @c3y1huang


klayout: 0.26.9 -> 0.26.10

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/KLayout/klayout/releases.
meta.description for klayout is: "High performance layout viewer and editor with support for GDS and OASIS"
meta.homepage for klayout is: "https://www.klayout.de/"
meta.changelog for klayout is: ""
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 0.26.10 with grep in /nix/store/prix1l7d9vf176kab8d6xdbjjb3rhzav-klayout-0.26.10

directory tree listing: https://gist.github.com/faaab2ae4af3f0de33de36df43cfd366

du listing: https://gist.github.com/35b248ee13f63e675c2c5125aa975604

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

3 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
klayout

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/prix1l7d9vf176kab8d6xdbjjb3rhzav-klayout-0.26.10 \
  --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 klayout https://github.com/r-ryantm/nixpkgs/archive/e0828f85cbd8dfa6030a5a7901bf71afcf7ce45a.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/prix1l7d9vf176kab8d6xdbjjb3rhzav-klayout-0.26.10
ls -la /nix/store/prix1l7d9vf176kab8d6xdbjjb3rhzav-klayout-0.26.10/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 built:

klayout

Maintainer pings
cc @knedlsepp for testing.

Result of nixpkgs-review pr 114666 run on x86_64-linux 1

1 package built:

klayout


Added fzf, exiftool, unar

Nice, but could make the tests pass? You can install and run pester to run the tests. Also adding autoupdate information for fzf would be nice. https://github.com/lukesampson/scoop/wiki/App-Manifest-Autoupdate

One little thing missing. 😊 checkver needs to br added for getting new versions.

Thanks a lot for your help.

Pester is awesome in the first. But I got two errors that don't show in the Appveyor testing environment.
 [-] file newlines are CRLF 79ms
   ArgumentNullException: Value cannot be null.
   Parameter name: input
   MethodInvocationException: Exception calling "Split" with "2" argument(s): "Value cannot be null.
   Parameter name: input"
   at <ScriptBlock>, C:\Users\Congee\Projects\scoop\test\00-Project.Tests.ps1: line 138

   Context manifest validates against the schema
    [*] .#fzf.json: Error reading JObject from JsonReader. Path '', line 0, position 0.
    [-] .#fzf.json 93ms
      Expected: {0}
      But was:  {1}
      58:                 $validator.Errors.Count | should be 0
      at <ScriptBlock>, C:\Users\Congee\Projects\scoop\test\Scoop-Manifest.Tests.ps1: line 58

This costs me hours :/ . But I'm a unix guy. Really don't know how to debug the powershell test code.

Nice, but there is still one small thing 😉
The github checkver methods checks for the latest stable release. Fzf only buts those releases to the bin repo, so i think it would be better to use this for checkver. This would also mean downgrading to 0.16.5 for the time being.
I currently have no idea what to do with pester errors you. I will check them out later today 😊

Thanks for instructions!

No problem :)
But i still don't have an idea to solve your pester problems. try pulling the new files from git. maybe this fixes it :)

Pulled from upstream, still got these errors. It seems strange that first several pester checks didn't complain with these errors. Also, I tried removing the newsly added manifests files, pester still complains. So, this failure seems has nothing to do with this pull request. Better open a new ticket.


[PCM-732] Add fetching/refreshing of TURN servers

Needs updated as we're going to send the iq directly, since getServices doesn't include the from attribute


Drop down menu doesn’t pick up .json file when using Mac or Linux

Rewrite json file loading so that it works across all platforms.

Added a load model button as a work around for the time being. It seems at least for Ubuntu Linux, if you put the models in the same directory as a DAW shortcut (like a desktop shortcut) it will pick up the models in the drop down.

Do you think using e.g. File::getSpecialLocation(File::userApplicationDataDirectory) would help sidestep any permissions issues with the directory containing the executable?
Based on the JUCE source code, that corresponds to:
Mac: ~/Library/
Linux: ~/.config
Windows: C:\Users\[username]\AppData\Roaming
And then you could append e.g. GuitarML/SmartGuitarPedal or something to the path name, and use that as the currentDirectory (or even call SmartPedalAudioProcessor::addDirectory() on both File::userApplicationDataDirectory and File::getCurrentWorkingDirectory())
I think File::commonDocumentsDirectory could work too, as it should also have read/write permissions by default.
Using File::userApplicationDataDirectory seems to work well on with initial tests on my Mac -- would be happy to whip something up so folks can try it on Windows and Linux as well!

@usdivad that sounds great, I wasn't aware of those JUCE functions, but yes using the standard locations for read/write is a good idea.

@usdivad that sounds great, I wasn't aware of those JUCE functions, but yes using the standard locations for read/write is a good idea.


Get result sql string

Hello,
is it possible to get the result sql string?

Never mind!
LoadResult has the data property where I can access the query data after the filter is applied!


Change where this tool outputs build results (i.e. resulting files) to [Feature Request]

While using this tool, I have noticed that when building the files, the result (i.e. resulting files) of the build are outputted into a folder called "build" which is then stored in the output folder located at the path specified by the output argument.
As a result, I was wondering if the behavior of this tool could be updated such that the result (i.e. resulting files) of the build would be directly outputted into the output folder located at the path specified by the output argument?
If necessary, I can provide further elaborations and details regarding this feature request.

Hey, thanks for the feature request. Yes I can indeed add this option shouldn't be a problem.
Just wondering is this a duplicate of https://github.com/ayecue/greybel-js/issues/177 since the description sounds pretty similar or is there any difference?

Hey, thanks for the feature request. Yes I can indeed add this option shouldn't be a problem.
Just wondering is this a duplicate of #177 since the description sounds pretty similar or is there any difference?

Hi there, thank you.
This issue is not a duplicate of #177, in face, #177 is a separate issue which is why I had created a separate issue for it.
#177 is concerned with the fact that the tool currently outputs a folder called "build" in the specified output folder, instead of just placing the built files (i.e. the files resulting from the build such as the installer file and the minified source code file) directly into the specified output folder. Hence, this issue is not a duplicate of #177 and is instead a separate issue from #177.

Hey, thanks for the feature request. Yes I can indeed add this option shouldn't be a problem.
Just wondering is this a duplicate of #177 since the description sounds pretty similar or is there any difference?

Hi there, thank you and thanks for the response.
With regards to your question, in theory, this issue and #177 are not duplicates of one another. However, if this issue is resolved, then #177 would pretty much no longer be an issue.

In order to keep backwards compatibility I've decided instead to introduce a option called --no-build-folder instead. By using that option it will put the output directly into the destination folder without wrapping it into a build folder. It will be part of 3.2.16.

In order to keep backwards compatibility I've decided instead to introduce a option called --disable-build-folder. By using that option it will put the output directly into the destination folder without wrapping it into a build folder. It will be part of 3.2.16.

I see, thanks.

Should be available now with 3.2.16 released.

I see, thank you.

Since this issue has been resolved in 3.2.16, I will close it.
Thanks again for helping to resolve the issue.


Demuxer 'audio': stream disabled due to missing decoder

[x] I have read the FAQ.
[x] I have searched in existing issues.

Environment

OS: windows
scrcpy version: latest (2.1.1)
installation method: windows release
device model: xiaomi 11 lite 5g ne (2109119DG)
Android version: 13

Describe the bug
it says Demuxer 'audio': stream disabled due to missing decoder
On errors, please provide the output of the console (and adb logcat if relevant).
scrcpy 2.1.1 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     -->   (usb)              d0dcfa95            device  2109119DG
C:\path\scrcpy-server: 1 file pushed, 0 skipped. 150.5 MB/s (56995 bytes in 0.000s)
[server] INFO: Device: [Xiaomi] Xiaomi 2109119DG (Android 13)
INFO: Renderer: direct3d
WARN: [FFmpeg] Could not find codec parameters for stream 0 (Video: png, none): unspecified size
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
ERROR: Could not find image decoder
WARN: Could not load icon
INFO: Texture: 464x1024
ERROR: Demuxer 'audio': stream disabled due to missing decoder
ERROR: Demuxer error
WARN: Killing the server...

Please do not post screenshots of your terminal, just post the content as text instead.

nvm it was because of some av*.dll files that were probably old so yea

解决问题用的ffmpeg哪个版本呢？

@linkedbyte english please i dont understand


Name of project/tool

[x] 1. Name the service as SyBValS (Systems Biology Validation Service) everywhere in the sample application, including the About dialog
[x] 2. Name this repository as "sybvals"
[x] 3. Write a README introducing the service (use a format similar to this)

@hasanbalci Please check the Usage (I reviewed the rest).

I went over the README, revised the options and examples in the Usage section. I also added small explanations to the first part that the sbgn file with corrected errors is produced. The only issue is that the small test file that I used in README works for validation query, but gives error we try to resolve errors. I added this to issue #8.

It would be good if we change the screenshots since now we are applying incremental layout between validation and error fix.

Update ss's please check

Looks good, thanks!


Allow variables in REPEAT times?

No, will cause confusion due to it's run at least once semantic.


Support adding servers when users already have the app

** Discussed with Ben, Vinicius and Cassidy **
If the user DOES NOT have the uProxy app installed (the majority of cases), the link that we will ask them to click through will take them to the Play Store, and the server will be automagically added to the app by virtue of the referrer data passed along to the Play Store.
If the user DOES have the app installed, we need a way for the user to add the server to it. The link mentioned above will not work because they already have the app. Right now the app doesn't have a way to add servers to itself. It's on those instances that we would like to have a link that actually does the magic of adding the server to the app.
Phase 1: Support users who are on mobile devices
We want the access code to be coded on a "uproxy://" prefix, so that hopefully it will not be opened by the browser and will instead be managed by the uProxy app. This covers users receiving the invite code through instant messaging applications, SMS or email (provided they open the email on their mobile device). We will message users that they can only open this link when on their mobile devices.
Phase 2: Support users who are on desktop
For them, the uproxy:// link will clearly not work. Instead, for those users, we we want to display a QR code. QR codes will entice the user to grab the phone and point it towards the computer. The QR code will translate into the uproxy:// url mentioned above -- but since at that point it will be opened on the mobile device with the app, that will work.
Sidenote on Phase 2: Right now, given the length of the invite link, generating a QR code for it means having a rather large and detailed image. Prior to launching a QR code approach, we will probably want to have worked on shortening the invite links.

BTW, Ben found some tentative evidence that there is some CSS wizardry that can be done to get emails to 'dynamically' show different content (a uproxy:// link vs a QR code) based on their device on which they are being opened.

FYI, this is also needed for users that install from the APK or other stores.

One other issue I found: if the user clicks on the link, and does not pick the uProxy app, then it will open the browser.


Patroni Does Not Failover on Data Disk Full Shutdown

What happened?
Preamble:
cluster name: vcfs-dev4
bar-psqldb01 <IP_ADDRESS>
bar-psqldb02 <IP_ADDRESS>
bar-psqldb03 <IP_ADDRESS>
bar-psqldb04 <IP_ADDRESS>
A couple of things happened.
Data partition ran out of disk space on host bar-psqldb03 and shut down the Postgresql server.   Patroni did not failover to another node.
My response was: shut down patroni on host bar-psqldb03 so another node would become primary.
After systctl stop patroni on host bar-psqldb03, bar-psqldb02 becomes primary, but the replicas are all still pointed at bar-psqldb03 ( <IP_ADDRESS> in the logging)
I attempt to patronictl -c /etc/patroni/postgresql.yml reinit  vcfs-dev4 bar-psqldb01 .  Patroni is attempting to take a snapshot from bar-psqldb03, not the leader.
Logging from bar-psqldb01
 psycopg2.OperationalError: connection to server at "<IP_ADDRESS>", port 5432 failed: session is read-only
2024-07-12 10:41:22,506 INFO: no action. I am (vm1), a secondary, and following a leader (vm2)

So, patroni seems aware that bar-psqldb02 is the leader, but, reaching out to bar-psqldb03 for a database snapshot.
Now I have a node accepting reads/writes, but no replicas connected to it.  And no obvious method to get the replicas pointed at the new leader bar-psqldb02.   Also, no method to fail back to the old leader, bar-psqldb03.
Manual pg_basebackup on bar-psqldb01 using the new leader, bar-psqldb02 gets the current database.  Patroni starts, but, still insists on trying to connect to bar-psqldb03.
How can we reproduce it (as minimally and precisely as possible)?
Let the leader node run out of disk space.
What did you expect to happen?

I expected patroni to perform a failover event when PostgreSQL stopped running because it ran out of disk space.
I expected all nodes to be replicating from the new leader.

Patroni/PostgreSQL/DCS version

Patroni version: percona-patroni-3.3.0-1.el8.x86_64 patroni 3.3.0
PostgreSQL version: 15 percona-postgresql15-server-15.7-1.el8.x86_64
DCS (and its version): etcd etcd-3.5.13-1.el8.x86_64

Patroni configuration file
scope: vcfs-dev4
namespace: /foo-dba-dev/
name: bar-psqldb04

restapi:
  listen: <IP_ADDRESS>:8008
  #full domain required for tls!
  connect_address: bar-psqldb04.ssl.compatible.com:8008
  cafile: /etc/pki/tls/certs/ca.crt
  certfile: /etc/pki/tls/certs/host.crt
  keyfile: /etc/pki/tls/private/host.key
  authentication:
    username: my_patroni_user
    password: superseeecret_ssshhhh
# If you want to force the list of allowed IPs, use allowlist
#  allowlist:

ctl:
  insecure: true
  cafile: /etc/ssl/certs/ca-bundle.crt
  certfile: /etc/ssl/certs/host.crt
  keyfile: /etc/pki/tls/private/host.key

etcd3:
  protocol: https
  cacert: /etc/pki/tls/certs/ca.crt
  cert:  /etc/pki/tls/certs/host.crt
  key: /etc/pki/tls/private/host.key
  hosts:
   - bar-psqldb01.ssl.compatible.com:2379
   - bar-psqldb02.ssl.compatible.com:2379
   - bar-psqldb03.ssl.compatible.com:2379
   - bar-psqldb04.ssl.compatible.com:2379
   - bar-psqldb05.ssl.compatible.com:2379
bootstrap:
  dcs:
   ttl: 30
   loop_wait: 10
   retry_timeout: 10
   maximum_lag_on_failover: 1048576
   master_start_timeout: 300  #default
   postgresql:
    use_pg_rewind: false
    use_slots: true
    use_unix_socket_repl: false
    use_unix_socket: true
    #putting parameters here means every node in the cluster gets it
    parameters:
      wal_keep_segments: 30
      max_wal_senders: 10
      max_replication_slots: 10
      checkpoint_timeout: 30
      wal_level: logical
      hotstandby: on
      tcp_keepalives_interval: 10
      tcp_keepalives_count: 3
      tcp_keepalives_idle: 60

  initdb:  # Note: It needs to be a list (some options need values, others are switches)
  - encoding: UTF8
  - locale: en_US.utf8
  - data-checksums
  users:
   repl_role:
    password: staqreas
    options:
    - replication
   rewind_role_dev:
    password: fringlistis
    options:
    - replication
   super_dooper:
    password: another_secret
    options:
    - superuser
    - createdb
    - createrole
postgresql:
  listen: "<IP_ADDRESS>,::1:5432"
  listen_addresses: "<IP_ADDRESS>,<IP_ADDRESS>,::1"
  connect_address: <IP_ADDRESS>:5432
  bin_dir: "/usr/pgsql-15/bin"
  data_dir: '/var/lib/pgsql/15/mount/data'
  pgpass: /var/lib/pgsql/.pgpass
  use_pg_rewind: false
  use_unix_socket: true
  remove_data_directory_on_diverged_timelines: true
  pg_hba:
   - local replication repl_role,rewind_role_dev scram-sha-256
   - local postgres postgres peer
   - local postgres super_dooper scram-sha-256
   - hostnossl replication repl_role,rewind_role_dev <IP_ADDRESS>/32 scram-sha-256
   - hostnossl replication repl_role,rewind_role_dev ::1/128 scram-sha-256
   - hostssl replication repl_role,rewind_role_dev <IP_ADDRESS>/24 scram-sha-256
   - hostnossl  all  all  <IP_ADDRESS>/0 reject
authentication:
    replication:
      username: repl_role
      password: 8th_mystery
      sslmode: "require"
      sslkey: "/etc/pki/tls/private/postgresql.key"
      sslcert: "/etc/pki/tls/certs/postgresql.crt"
      sslrootcert: "/etc/pki/tls/certs/ca.crt"
      gssencmode: "disable"
      channel_binding: "disable"
      rewind:  # Has no effect on postgres 10 and lower
      username: rewind_user
      password: strongly_typed_password
      sslmode: "require"
      sslkey: "/etc/pki/tls/private/postgresql.key"
      sslcert: "/etc/pki/tls/certs/postgresqo.crt"
      sslrootcert: "/etc/pki/tls/certs/ca.crt"
      gssencmode: "disable"
      channel_binding: "disable"
    superuser:
      username: super_dooper
      password: another_mystery
      sslmode: "require"
      sslkey: "/etc/pki/tls/private/postgresql.key"
      sslcert: "/etc/pki/tls/certs/postgresql.crt"
      sslrootcert: "/etc/pki/tls/certs/ca.crt"
      gssencmode: "disable"
      channel_binding: "disable"
 create_replica_methods:
    - basebackup
  basebackup:
    max-rate: "100M"
  parameters:
    archive_mode: 'on'
    archive_command: /bin/pgbackrest --stanza=pg-dev archive-push %p
    log_destination: jsonlog
    log_directory: /var/log/postgresql/15
    log_filename: postgresql-%a.log
    log_min_duration_statement: '250ms'
    log_rotation_age: 1d
    log_timezone: America/Chicago
    log_truncate_on_rotation: 'on'
    logging_collector: 'on'
    log_connections: on
    log_line_prefix: '< %m %u %c: >'
    ssl: 'on'
    ssl_ca_file: /etc/ssl/certs/ca-bundle.crt
    ssl_cert_file: /etc/ssl/certs/fancy-ssl.crt
    ssl_key_file: /etc/pki/tls/private/fancy-key.key
ssl_min_protocol_version: 'TLSv1.2'
    unix_socket_directories: /run/postgresql
    unix_socket_group: postgres
    unix_socket_permissions: '0777'
    compute_query_id: 'on'
    wal_recycle: 'off'
    checkpoint_warning: '30'
    fsync: 'on'
    huge_page_size: 0
    huge_pages: try
    idle_in_transaction_session_timeout: "5min"
    maintenance_work_mem: "64MB"
    max_connections: 1024
    max_prepared_transactions: 1024
    pgaudit.log: 'ddl,write'
    pg_stat_statements.max: 10000
    pg_stat_statements.track: all
    shared_buffers: 128MB
    shared_preload_libraries: 'pgaudit,pg_stat_statements,pg_repack,ltree,pgcrypto,pg_trgm,tablefunc'

patronictl show-config
loop_wait: 10
master_start_timeout: 300
maximum_lag_on_failover: 1048576
postgresql:
  parameters:
    checkpoint_timeout: 30
    max_connections: 1024
    max_prepared_transactions: 1024
    max_replication_slots: 10
    max_wal_senders: 10
    tcp_keepalives_count: 3
    tcp_keepalives_idle: 60
    tcp_keepalives_interval: 10
    wal_keep_segments: 30
    wal_level: logical
  use_pg_rewind: false
  use_slots: true
  use_unix_socket: true
retry_timeout: 10
ttl: 30

Patroni log files
psycopg2.OperationalError: connection to server at "<IP_ADDRESS>", port 5432 failed: session is read-only
2024-07-12 10:41:22,506 INFO: no action. I am (bar-psqldb01), a secondary, and following a leader (bar-psqldb02)

PostgreSQL log files
Nothing relevant in the PostgreSQL log files.

Have you tried to use GitHub issue search?

[X] Yes

Anything else we need to know?
No response

It has been discussed many times, please use issue search.
Further questions please post on slack.

Searching for "disk full" leads to bug reports where the response is "Don't run out of disk space."
Can you maybe point me to a ticket with the fix?

Good that you found the issue. I don't have to add anything to what is already said: monitor disks pace and react proactively. Period.
Slack is available in a browser.  I don't believe that browsers are forbidden.


[ModelBuilder] Add MemRefUtil helpers for padding.

This revision adds MemRef building functions that allow passing
an extra shapeAlloc argument to control allocation and padding.
When the function makeInitializedStridedMemRefDescriptor is called
with shape = [128, 127] and shapeAlloc = [128, 128], it allocates
a memref with 128*128*sizeof(T) bytes, sizes = [128, 127] and
strides = [128, 1].

You mean requesting for reviews right? It should go into the "reviewers" section. :)

Can we go ahead and merge this? I'm waiting for some old PRs to get merged before I do more fiddling with the CI directory structure

sorry I realized I need to make an update, will do it shortly and merge
On Tue, Jul 28, 2020 at 12:11 PM Geoffrey Martin-Noble <
<EMAIL_ADDRESS>wrote:

Can we go ahead and merge this? I'm waiting for some old PRs to get merged
before I do more fiddling with the CI directory structure
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/google/iree/pull/2577#issuecomment-665132263, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ACNNU5ARNXLGN2KUSLHTNGDR532BVANCNFSM4PCRNSDA
.

--
N


Update quickstart-onboard-aws.md

Learn Build status updates of commit fb98159:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

articles/defender-for-cloud/quickstart-onboard-aws.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@elazark
Can you review the proposed changes? IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off

Due to the upcoming Ignite conference, all merging and publishing is on hold until the morning of October 12.
This PR is ready for merge on 10/12.
This repo is in lockdown for content freeze. If you need to make additional changes to these files, please submit your changes a new PR.
#label:"event-triaged-to-10AM"

@meckhardt - This PR has developed a merge conflict that we can't resolve. Can you resolve it on your end?

Learn Build status updates of commit 8a7da48:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

articles/defender-for-cloud/quickstart-onboard-aws.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


[FEA] Prepare for Decimal 128 type checks

CUDF is working on 128-bit decimal support. With this we should be able to support Decimal with a precision up to 38, in most cases.  We want to add that support into the plugin ASAP after it drops in cudf. To do this we are going to need to make some changes with how we do type checking for the various operators.  Right now we have a TypeSig.DECIMAL and a TypeEnum.DECIMAL. It is a bit confusing because if it is used for a Spark CPU signature it means full 128-bit decimal support (possibly more because of hacks with how it does overflow checking). For the plugin it means 64 bit and blow decimal support. We need to make this more explicit and I would propose that we split up DECIMAL and make it DECIMAL64 for existing plugin type signatures and DECIMAL128 for existing Spark CPU signatures.  For a few operations that can overflow we might need some extra checks to outside of the type signature system to verify that it will not overflow. This is because Spark cannot support a DecimalType with precision about 38, but can return values that have a precision above 128, which is how it does overflow checking.

One thing to add to this issue, at least for clean up, might be to handle the support string in the explain command in a better way.
When decimals are disabled by default (that's true now) using spark.rapids.sql.decimalType.enabled, the explain output says the type is not supported, rather than "not enabled", or something that makes it more obvious that there is a setting. So just something to keep in mind while working on this issue to make it clear to the user.

but can return values that have a precision above 128,
I would like to understand this better. Could you point me where that is evident? Or any recommendations on tests I can do? Code pointers would be nice.

Would this be the right example ?
CheckOverflow(Add(promotePrecision(e1, resultType), promotePrecision(e2, resultType)),
        resultType, nullOnOverflow)

https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/DecimalPrecision.scala
Shows where this can happen.
Specifically look for allowPrecisionLoss which is where the code is checking in the configs to see if when the output precision is too high if it should favor scale over the non-scale portion of the number.

The overflow checks are yet to be covered IMO and a part of this was done by Bobby when it comes to breaking up the types into 2.

The overflow checks are yet to be covered IMO and a part of this was done by Bobby when it comes to breaking up the types into 2.

I left the overflow code checks out because they have to be operator specific, and because in the review there were questions about me including a TypeSig for decimal that was not used in the code.  So I was not really 100% sure how to make that happen.
For example Add essentially needs to say that it can work on all types up to a precision of 37.  The reason for this is because once you hit a precision of 38 we cannot tell if Spark truncated it or not because of potential overflow.
For multiply it is similar. We already have code that checks what the actual output of Multiply needs to be able to work.  If that output is 38 then we need to fall back to the CPU.  In theory we could do a little better than that. We are capping the precision at 38 because we are returning a DecimalType that throws an exception if it sees a precision over 38. In theory we could just return the actual precision that would be needed and check if it is over 38 instead of 38 or above.
For most of the aggregations it should be similar. Check to see if the result is 38, and if so then we have to fall back to the CPU.  For some aggregations (like average) we might need to play some games with it because it is doing a sum internally.


Update free-programming-books-subjects.md

What does this PR do?
It's changing the URL of Kubernetes for Full-Stack Developers to the new URL.
Before

Current change

As you can see, right at the bottom it shows this cute box

For resources
Description
Why is this valuable (or not)?
N/A
How do we know it's really free?
N/A
For book lists, is it a book? For course lists, is it a course? etc.
N/A
Checklist:

[X] Read our contributing guidelines
[X] Search for duplicates.
[X] Include author(s) and platform where appropriate.
[X] Put lists in alphabetical order, correct spacing.
[X] Add needed indications (PDF, access notes, under construction)

Follow-up

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

Thanks, and welcome to free-programming-books!


Masonry doesn't work?

I use masonry in a view controller. But it doesn't work. So I try frame. Frame works well. So I wonder whether not support auto layout in view controller

problem solved


fix(kube/nodes): show node events

fix EE-583

Closes https://github.com/portainer/portainer/issues/5474


Add birthdate field

Instead of using an age field you need to update every year (I guess?) maybe you should instead use a birthdate field?
At first I wanted to add a format for let the system later being able to convert it back to a more human readable format but I'm not sure anymore since for any reason your fursona could use a different date system...
I let this open for discussion then, just in case...

Hey, very sorry about not getting to this sooner. Looks good to me!


Can't undelegate locked MOBILE

Describe the bug
I try to undelegate my 100k locked MOBILE tokens, they are locked as "constant 1d". When I press the undelegate button I get the error:
Account does not exist or has no data, and the tokens are not unlocked.
To Reproduce
Steps to reproduce the behavior:

Go to Coins Tab
Tap "MOBILE (Locked)"
Tap "Lock Tokens" and lock some amount for "Constant, 1 day".
Wait a day or two
Go back to Coins > MOBILE (Locked)
Tap on the locked tokens. Button for "Undelegate" should show up.
Tap "Undelegate"
See error

Expected behavior
Locked MOBILE tokens should unlock and be returned to the unlocked MOBILE balance.
Screenshots

Smartphone (please complete the following information):

Device: iPhone14Pro
OS: iOS 17.4 (21E5209b)
App Version v2.6.5

Additional context
My account definitely exists. Not sure what it means to "not have any data", but regardless this is a bad bug and I hope my tokens aren't permanently locked from this! (Don't lock a lot of tokens to reproduce this unless you know what you're doing)

Can you update to version 2.7.0 and try again? Feel free to reopen this issue if it is still broken.

I was already on version 2.7.0

I'm not a collaborator, so I don't think I am able to re-open the issue, only create a duplicate. Please reopen it.

@ChewingGlass

Trying it now, hopefully will be able to repro but it'll take a day.

Wait... wtf, how do you have MOBILE delegated to MOBILE? You can only delegated HNT?

If you don't mind, can you also provide your wallet address? May help to debug.

@ChewingGlass Wallet Address:
2JFvsPDoWKDYmw2aWf5rnrxpjwt6utpvmdEb4gHY8457

Thanks, that wallet helped me fix it. Will be fixed in version 2.7.1, which will be submitted for release today or tomorrow. Likely rolled out to app stores late this week/early next week.
https://github.com/helium/wallet-app/pull/690
https://github.com/helium/helium-program-library/pull/609
Related PRs

Great!


A problem about the dataset in Tutorials.

Considering that the preprocessing method might lead to inconsistent results, could the author upload the h5ad file to the cloud storage?

We had uploaded the processed .h5ad files of our tutorial to cloud drive. Please check https://slat.readthedocs.io/en/latest/tutorials/basic_usage.html.

We had uploaded the processed .h5ad files of our tutorial to cloud drive. Please check https://slat.readthedocs.io/en/latest/tutorials/basic_usage.html.

Thank you!  Is it possible for authors to upload all datasets in https://slat.readthedocs.io/en/latest/data.html to cloud?
Alternatively, could authors upload dataset in each typical application? For instance, consider the cross-technology cloud uploads described in this tutorial (https://slat.readthedocs.io/en/latest/tutorials/cross_technology.html).

Ye. it is totally possible ! I plan to achieve this goal in the coming month.

Hi, these processed .h5ad files are available now?

@CocoGzh @XiHuYan
Sorry for delay.
The processed h5ad files for

xenium (link) and visium (link) in https://slat.readthedocs.io/en/latest/tutorials/cross_technology.html
E11.5 mouse embryo stereo-seq dataset (link) and E11.5 mouse embryo stereo-seq dataset (link)

were uploaded.


Samsung Browser is not loading correct styles

Steps to Reproduce

Build any flutter application without specifying a web renderer. The application will show incorrect styles (some of the colors seem to be random).
The issue is not happening if --web-renderer canvaskit is specified along with the build command.

Samsung Browser
https://user-images.githubusercontent.com/72696535/229365834-d66547bb-cad3-4603-9c44-648c2f77882b.mp4

Mozilla
https://user-images.githubusercontent.com/72696535/229365872-aaf5eac7-8409-4939-b063-f16153deaf7e.mp4

Expected results:
The actual styles of the application to be loaded.
Actual results:
The loaded styles do not reflect the application's configured themes. Please refer to the videos attached in the end.

Code sample
This can be recreated every time in the [black out](https://github.com/gbrandtio/black-out) repository.

Logs
```
PS C:\Projects\black-out-x\black-out\client> flutter analyze
Analyzing client...
No issues found! (ran in 3.3s)
```
```
[√] Flutter (Channel stable, 3.7.8, on Microsoft Windows [Version 10.0.22621.1413], locale en-US)
    • Flutter version 3.7.8 on channel stable at C:\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 90c64ed42b (12 days ago), 2023-03-21 11:27:08 -0500
    • Engine revision 9aa7816315
    • Dart version 2.19.5
    • DevTools version 2.20.1
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
• Android SDK at C:\Users\User\AppData\Local\Android\sdk
• Platform android-33, build-tools 33.0.1
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
• All Android licenses accepted.
[√] Chrome - develop for the web
• Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe
[√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.4.3)
• Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
• Visual Studio Community 2022 version 17.4.33205.214
• Windows 10 SDK version 10.0.22000.0
[√] Android Studio (version 2021.3)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
[√] VS Code (version 1.77.0)
• VS Code at C:\Users\User\AppData\Local\Programs\Microsoft VS Code
• Flutter extension can be installed from:
https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[√] Connected device (4 available)
• Redmi Note 9 Pro (mobile) • b2725edb • android-arm64  • Android 10 (API 29)
• Windows (desktop)         • windows  • windows-x64    • Microsoft Windows [Version 10.0.22621.1413]
• Chrome (web)              • chrome   • web-javascript • Google Chrome 111.0.5563.147
• Edge (web)                • edge     • web-javascript • Microsoft Edge 111.0.1661.54
[√] HTTP Host Availability
• All required HTTP hosts are available
• No issues found!
</details>

Hi @gbrandtio
Thanks for the report! This is a known issue being tracked at #76930. You can also take a look at https://github.com/flutter/flutter/issues/76930#issuecomment-1429291793 which describes the exact case as yours.
Closing this issue as a duplicate, so please follow up on it for further updates. You can leave there your comment and react an upvote to the original comment will help to raise the issue. Thank you!


.bat launchers for Win32 environment

They should probably be auto-generated somehow

This issue still persists. I am on it :+1:

Any update on this one?

Thanks :+1:


benchmark: maintain no. of parallel requests in throughput benchmark

Spawn a new request when any request is returned within stipulated time duration in case of throughput benchmark to maintain the number of parallel requests performed.
Closes #16

Check the changes. Especially the onError one, if it's the correct way to deal with it. (Request timeouts or page not found or any other problem will be caught by this  onError. So, we're assuming they never returned (i.e. returned outside out time limit).)

results here: DartIO has higher throughput. It would be interesting to figure out why. (CPU overhead of Cronet vs DartIO?)
https://gist.github.com/dcharkes/2194c401945a60930f07225c792369a6
Yes, we have to update the measurements.
No, we don't have to bump the version. We don't actually change the package itself, just the benchmarks and markdown files which is not something that is subject to versioning in a Dart package. It is not the Dart API or the semantics of the API.

I can't conduct the throughput test on local server. Maxing out my resources and then crashing.
terminate called after throwing an instance of 'std::system_error'
  what():  Resource temporarily unavailable
Aborted (core dumped)

Against https://example.com though, my result seems weird -
CronetThroughputBenchmark: Parallel Requests: 256, Returned in time: 98.
[0722/183631.048860:ERROR:cert_verify_proc_builtin.cc(559)] No net_fetcher for performing AIA chasing.
CronetThroughputBenchmark: Parallel Requests: 512, Returned in time: 148.
[0722/183634.464644:ERROR:cert_verify_proc_builtin.cc(559)] No net_fetcher for performing AIA chasing.
CronetThroughputBenchmark: Parallel Requests: 1024, Returned in time: 136.

DartIOThroughputBenchmark: Parallel Requests: 32, Returned in time: 5.
DartIOThroughputBenchmark: Parallel Requests: 64, Returned in time: 3.
DartIOThroughputBenchmark: Parallel Requests: 128, Returned in time: 1.
DartIOThroughputBenchmark: Parallel Requests: 256, Returned in time: 0.
DartIOThroughputBenchmark: Parallel Requests: 512, Returned in time: 0.

Should I put these in markdown file? And, can you conduct the local server test? System is crashing every time. Though we can avoid this test if it's causing unrelated issues like this.

Hm, you could try to figure out what is going on with example.com. Maybe you're over-saturating network bandwidth or CPU? Understanding it will teach us more about the two different systems.
If I find some time I can run the local tests. (But they might be less representative for real-world performance, so I would not prioritize these.)

A closer inspection of dart:io revealed this when doing throughput test against example.com -

CPU spikes all over the place. But, in case of package:cronet, the graph was more or less consistent.
Maybe, https://github.com/google/cronet.dart/issues/3#issuecomment-876579128 this was the indication. In our previous throughput testing script, we've noticed -

dart:io: Total Spawned: 512, In Time Returns: 512. This is the best result. After that, numbers dipped to 1 successful request. So, 512 concurrent requests are the limit for dart:io in this case.

:confused:

Tested on another local server (HTTP/1.1 Python Simple Server) and got this -
dart run benchmark/throughput.dart -u http://<IP_ADDRESS>:60000/
CronetThroughputBenchmark: Parallel Requests: 1, Returned in time: 509.
CronetThroughputBenchmark: Parallel Requests: 2, Returned in time: 760.
CronetThroughputBenchmark: Parallel Requests: 4, Returned in time: 1062.
CronetThroughputBenchmark: Parallel Requests: 8, Returned in time: 1066.
CronetThroughputBenchmark: Parallel Requests: 16, Returned in time: 1057.
CronetThroughputBenchmark: Parallel Requests: 32, Returned in time: 1061.
CronetThroughputBenchmark: Parallel Requests: 64, Returned in time: 1069.
CronetThroughputBenchmark: Parallel Requests: 128, Returned in time: 1064.
CronetThroughputBenchmark: Parallel Requests: 256, Returned in time: 1053.
CronetThroughputBenchmark: Parallel Requests: 512, Returned in time: 981.
CronetThroughputBenchmark: Parallel Requests: 1024, Returned in time: 996.
*****
DartIOThroughputBenchmark: Parallel Requests: 1, Returned in time: 538.
DartIOThroughputBenchmark: Parallel Requests: 2, Returned in time: 815.
DartIOThroughputBenchmark: Parallel Requests: 4, Returned in time: 983.
DartIOThroughputBenchmark: Parallel Requests: 8, Returned in time: 1124.
DartIOThroughputBenchmark: Parallel Requests: 16, Returned in time: 1111.
DartIOThroughputBenchmark: Parallel Requests: 32, Returned in time: 1099.
DartIOThroughputBenchmark: Parallel Requests: 64, Returned in time: 1114.
DartIOThroughputBenchmark: Parallel Requests: 128, Returned in time: 1106.

Got no response from dart:io after 128 mark. But, it performs faster than cronet.

@dcharkes Updated the files with the results from your machine as results seems kinda weird on mine. I ran it multiple times and got same response every time. I think we should investigate why this is happening while we continue working on other features/issues as my machine is more representative of a general person's machine (config. wise). I need help regarding that. I've put some of the details in the above comments :)


unitaryHACK #2: Optimization of MPO construction

Goal: Optimize MPO construction in Symmer.
Reward: $200
A subroutine of qubit subspace techniques is the identification of the correct symmetry sector - an assignment of $\pm1$ eigenvalues to the chosen stabilizers over which we project to yield a reduced subspace. Naively this problem scales exponentially in the number of stabilizers one wishes to enforce; however, if you have access to a reference state with non-zero overlap with the ground state, the eigenvalue-assignment problem becomes trivial - 'measure' each symmetry generator in the reference state and we get the assignment for free. This poses a problem - how do we identify such a reference state? For quantum chemistry application we may choose the Hartree-Fock state, but in general it is not straightforward.
One approach is to use the Density Matrix Renormalization Group (DMRG), that allows you to construct approximate ground states, whose overlap is dependent on the bond dimension of an associated Matrix Product Operator (MPO).
This is implemented in symmer.approximate, however there are optimizations that can be made to speed-up the construction of MPOs, for example it could be parallelised.
That is the goal of this bounty.

Hi! could you assign this issue to me ?

Hi, I am interested in this issue, can you please assign it to me? @TimWeaving

Hi @s-aldaihan - thanks for your interest! The way this hackathon works is that you have to open a PR that will be approved and merged, then the issue/task will be assigned to you and closed. If more than one coders submit PRs for the same issue, the maintainers will chose the solution they consider the best, or even decide to split the bounty.
We welcome any pull request you make on this issue. Good luck and feel free to post any questions here.

I've run MPO construction part through profiler and generated heat graph.
I am not very experienced with profiler, but it seems like numpy.core._multiarray_umath.implement_array_function might be causing some overhead in execution (~30 % in self time) and data transfer 2 * ~80 calls to tensordot with 20-30% in transfer.
Note: I've run it with handwritten example and it executes for 0.5 seconds in total.
['ZXZYXYYZIZZ', 'XZIIYZIIYZX', 'XYZXYZXIXYZ', 'ZIXXXYXIXYZ', 'ZXZYYIZIZIZ', 'ZXZZYYYZIZZ', 'XZIIYZIYZIX', 'XYZXYZXXYZI']
This was also discussed here
Apart from that, my current intuition so far would be to achive parallelism by re-writing loop/iterative parts of p_strings_to_mpo and and sum_mpo and truncate_MPO with corresponding equivalent yet more efficient matrix operations.
Another way might be just to pool with multi-worker threads (?).

@AlexisRalli how important is to Truncate MPO after each consequtive sum operation? What difference would it make if we just truncate it once after we build it - would it be numerically inconsistent? Running trough allclose tests with WordOp = PauliwordOp.from_list(pauli_list_3, coeff_vec_1) confirms the latter, but I wanted to check what it tests exactly. I think I am onto some potential speedup without truncation due to fact that all the middle term summations become diagonal appends; while all the other construction and summation are list operations. Which give an opportunity to run them in parallel with simple decorators (while I can't use similar decorators/solutions for numpy as they don't want to work with complex numbers).

@TimWeaving @AlexisRalli   should I delete this PR as unitary hack has come to an end and I haven't received any communication?

@AlexisRalli looks like this needs to be reassigned to the hacker who completed the bounty so they can get proper credit. Would you mind switching it?

@natestemen - My mistake. Should be updated now


React Without JSX

Hi @brilyandk, please address the review items above before I can merge this.


Search window not turned off after selecting a search result

The search window does not turn off after selecting an item from the search results. You have to hit the search tool again to remove it. This is difficult on a mobile device since the search window takes up most of the map and appears on top of the pop-up of the search result. Once an item is selected from the search list, the search results window should be turned off.

@karmstro77 : For the next AGOL release (Q1 '16) we are replacing the current search widget with the same one used in many of the other templates. This update will resolve this issue.

reverted change. re-opening issue


Function killed. Error: memory limit exceeded

Using the Thumbnail quickstart, followed all directions, deployed, enabled billing, etc.
I get this error in the log:
Function killed. Error: memory limit exceeded

I'm assuming this happened after the image was uploaded.  Could you provide the image that you uploaded that resulted in the error?

Sure, thanks @CodingDoug
https://drive.google.com/file/d/0B5_bzZljtNgnc3MzeFFkNUVxV1E/view

That's a pretty big image!  It's 5472 × 3648, which means 20M pixels.  If that decodes fully to a color depth of 24bits per pixel, that's 60MB in memory.  I believe a function has a default budget of 256MB to work with, including temp disk space that you write to.  All that, plug ImageMagick probably bumps you over that limit.
https://cloud.google.com/functions/pricing
You could:

Try a smaller image just to see it work
Allocate more memory to your function via gcloud (https://cloud.google.com/sdk/gcloud/reference/beta/functions/deploy)
Add some logic to ballpark the memory usage for an image so it won't go over

Used a smaller image - worked perfectly! Thanks!

Hey @CodingDoug just out of curiosity, why do we need to enable billing to run this one? Is ImageMagick considered an external API?

No. The limitation on "external APIs" is purely about networking. This is a
defense against Cloud Functions being used for malicious/abusive purposes.
On Mon, Mar 13, 2017 at 8:27 PM, Mark Goho<EMAIL_ADDRESS>wrote:

Hey @CodingDoug https://github.com/CodingDoug just out of curiosity,
why do we need to enable billing to run this one? Is ImageMagick considered
an external API?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/firebase/functions-samples/issues/37#issuecomment-286311527,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABe1j76x7QKuoDkF1wnFKTE42sCSYoceks5rlgkLgaJpZM4Mb-B9
.

Actually that particular sample doesn't require billing I believe (it's not doing external request nor using billing-only APIs like the Cloud Vision API). We just forgot to remove that line in the instructions from some time during the private alpha where billing was still mandatory.

Fixed instructions in 85da5df


Support windows platform

Hi this package is super useful but there is no support for windows platform yet, port this package for windows platform will be super useful thanks.

Hi @yazdanMhmmdi , now the package is maintained by me and @diegotori. If you can add the Windows support, just create a PR to review it otherwise we will add the Windows support ASAP.

Windows support would take this to the next level

Is anyone working on this @diegotori ?

Any update don this?


Appveyor Backports v0.18

This is a very small pr because it pulls all of the code that is not related to MSVC and Appveyor in v0.18

14151: missing changes in src/test/script_tests.cpp

I think these changes are segwit specific no? Hence why it's not in our codebase

14151: missing changes in src/test/script_tests.cpp

I think these changes are segwit specific no? Hence why it's not in our codebase

    if (libconsensus_flags == flags) {
        BOOST_CHECK_MESSAGE(dashconsensus_verify_script(scriptPubKey.data(), scriptPubKey.size(), (const unsigned char*)&stream[0], stream.size(), 0, libconsensus_flags, nullptr) == expect,message);
    }

->
    if (libconsensus_flags == flags) {
        int expectedSuccessCode = expect ? 1 : 0;
        BOOST_CHECK_MESSAGE(dashconsensus_verify_script(scriptPubKey.data(), scriptPubKey.size(), (const unsigned char*)&stream[0], stream.size(), 0, libconsensus_flags, nullptr) == expectedSuccessCode, message);
    }

https://github.com/dashpay/dash/blob/develop/src/test/script_tests.cpp#L179-L181


Add VR support please

You could idk rip the vr module or something out of the standard roblox then stuff it in bloxstrap.

Last time i tryed to use bloxstrap it didnt work v2.30

did you try playing with the latest version?

Last time i tryed to use bloxstrap it didnt work v2.30

That was at least over a month ago. Have you ever tried since?

i think he wants you to make it so nexusvr or som stuff like that is built in
but hell no thats just exploiting

Issue has been awaiting clarification for over a month, closing as stale. If you have anything further to add, just respond and I'll reopen.


undefineds not stated

Hi,
undefineds types seem to be missing in this lib.
For example, the getSelectedDocument function docs reads as:

The selected Document or undefined if no document is open.

But the undefined is still missing in the ty:
getSelectedDocument(): Document;

There is no need to write Document | undefined, you can try to find out what is the type of d:
let d = getSelectedDocument()
function getSelectedDocument(): Document | undefined {
    return
}

your code example seems to be broken. Why is there no need to define an undefined return type if it's part of the return type?

@chpio  I mean, what does it help if no lint issue raised below?
let d = getSelectedDocument()
// no lint issues
console.log(d.pages)
function getSelectedDocument(): Document | undefined {
    return undefined
}

you have to enable strictNullChecks in compilerOptions in your tsconfig. They should have enabled it by default, but  i guess they refused to do so for compatibility/portability reasons with js (ts being js with optional types). Anyway... NULL being the Worst Mistake in Computer Science should encourage you to enable strictNullChecks and opt-out of implicit null & undefined.

That makes sense, you are a TS expert. I'll add | undefined everywhere if possible, and welcome PR if you found more issues.
PS: strictNullChecks is not specified, and the default is false here (TS 4.1.2). I never noticed it.

That makes sense, you are a TS expert.

Nah, im somewhat of an expert in rust. Rust doesn't have nulls for exactly that reason.


Create a new Debug Log for each day.

Currently, we have a new Debug log after a restart of ErpNet.FP.  But restarts may happen quite rare so the Debug log files become very big and they become difficult for reading and investigation.

The idea is to have smaller and readable Debug logs

The request is to create a new Debug log file every day.

fixed with v1.0.3000.0000


The performance differences are casuesd by memory allocator

I can reproduce your result on my 5950x desktop, but I doubt that different allocators cause the performance differences.
The first round benchmark on my PC is like this:
❯ ./bench python-fs-read rust-std-fs-read
1+0 records in
1+0 records out
67108864 bytes (67 MB, 64 MiB) copied, 0.249241 s, 269 MB/s
   Compiling test v0.1.0 (/home/lyn/workspace/test/when-i-find-rust-is-slow/rust-std-fs-read)
    Finished release [optimized] target(s) in 0.51s
['hyperfine', 'python-fs-read/test.py', 'rust-std-fs-read/target/release/test']
Benchmark 1: python-fs-read/test.py
  Time (mean ± σ):      22.8 ms ±   4.6 ms    [User: 8.0 ms, System: 10.2 ms]
  Range (min … max):    18.9 ms …  46.4 ms    146 runs

Benchmark 2: rust-std-fs-read/target/release/test
  Time (mean ± σ):      40.3 ms ±   1.2 ms    [User: 0.7 ms, System: 35.1 ms]
  Range (min … max):    39.5 ms …  47.0 ms    74 runs

Then, I found that Python uses mimalloc as the default memory allocator. From my experience of digging into performance issues in https://swc.rs/ before, I found that the mimalloc can bring better performance in most scenarios, even on Linux.  I also found that on the bigger L3 cache CPU, like 5950x, the mimalloc is even more powerful.
After I added mimalloc into the Rust code, the benchmark result was totally different:
❯ ./bench python-fs-read rust-std-fs-read-with-jemalloc
    Finished release [optimized] target(s) in 0.00s
['hyperfine', 'python-fs-read/test.py', 'rust-std-fs-read-with-jemalloc/target/release/test']
Benchmark 1: python-fs-read/test.py
  Time (mean ± σ):      19.3 ms ±   0.9 ms    [User: 6.3 ms, System: 9.2 ms]
  Range (min … max):    18.1 ms …  26.0 ms    126 runs

  Warning: Statistical outliers were detected. Consider re-running this benchmark on a quiet PC without any interferences from other programs. It might help to use the '--warmup' or '--prepare' options.

Benchmark 2: rust-std-fs-read-with-jemalloc/target/release/test
  Time (mean ± σ):       9.9 ms ±   0.6 ms    [User: 0.8 ms, System: 6.1 ms]
  Range (min … max):     9.2 ms …  17.8 ms    270 runs

  Warning: Statistical outliers were detected. Consider re-running this benchmark on a quiet PC without any interferences from other programs. It might help to use the '--warmup' or '--prepare' options.

Summary
  'rust-std-fs-read-with-jemalloc/target/release/test' ran
    1.95 ± 0.15 times faster than 'python-fs-read/test.py'

You can try to reproduce my result at https://github.com/Brooooooklyn/when-i-find-rust-is-slow

Then, I found that Python uses mimalloc as the default memory allocator.

I'm not sure about that. Python's doc said the default allocator is pymalloc

pymalloc is a high-level abstraction, it still calls the low-level memory allocator API under the hood.

I'm not sure about that. Python's doc said the default allocator is pymalloc

see here https://docs.python.org/dev/c-api/memory.html#the-mimalloc-allocator
I don't think you guys are doing an apple-to-apple benchmark, you are more likely comparing behavior differences between system allocator with mimalloc.

see here https://docs.python.org/dev/c-api/memory.html#the-mimalloc-allocator

Thanks for sharing. All my benchmark is running under python 3.11. Maybe worth to mention in the README.md.

just to note this somewhere, I can reproduce on a 7735HS which is a Zen 3+, with jemalloc making rust faster:
rseymour@bandit:~/src/when-i-find-rust-is-slow$ cat /proc/cpuinfo |grep AMD |tail -1
model name      : AMD Ryzen 7 7735HS with Radeon Graphics
rseymour@bandit:~/src/when-i-find-rust-is-slow$ ./bench python-fs-read rust-std-fs-read
    Finished release [optimized] target(s) in 0.00s
['hyperfine', 'python-fs-read/test.py', 'rust-std-fs-read/target/release/test']
Benchmark 1: python-fs-read/test.py
  Time (mean ± σ):      18.9 ms ±   0.6 ms    [User: 6.4 ms, System: 12.4 ms]
  Range (min … max):    17.8 ms …  21.9 ms    146 runs

Benchmark 2: rust-std-fs-read/target/release/test
  Time (mean ± σ):      25.4 ms ±   0.8 ms    [User: 0.4 ms, System: 25.1 ms]
  Range (min … max):    24.3 ms …  28.0 ms    114 runs

Summary
  'python-fs-read/test.py' ran
    1.34 ± 0.06 times faster than 'rust-std-fs-read/target/release/test'

rseymour@bandit:~/src/when-i-find-rust-is-slow$ ./bench python-fs-read rust-std-fs-read-with-jemalloc
    Finished release [optimized] target(s) in 0.00s
['hyperfine', 'python-fs-read/test.py', 'rust-std-fs-read-with-jemalloc/target/release/test']
Benchmark 1: python-fs-read/test.py
  Time (mean ± σ):      18.8 ms ±   0.5 ms    [User: 6.4 ms, System: 12.3 ms]
  Range (min … max):    18.0 ms …  20.6 ms    156 runs

Benchmark 2: rust-std-fs-read-with-jemalloc/target/release/test
  Time (mean ± σ):      12.2 ms ±   0.3 ms    [User: 0.5 ms, System: 11.7 ms]
  Range (min … max):    11.5 ms …  13.9 ms    200 runs

Summary
  'rust-std-fs-read-with-jemalloc/target/release/test' ran
    1.54 ± 0.05 times faster than 'python-fs-read/test.py'

It's also reproduced on Ryzen 5800h
> ./bench python-fs-read rust-std-fs-read
    Finished release [optimized] target(s) in 0.00s
['hyperfine', 'python-fs-read/test.py', 'rust-std-fs-read/target/release/test']
Benchmark 1: python-fs-read/test.py
  Time (mean ± σ):      25.9 ms ±   0.9 ms    [User: 9.2 ms, System: 16.7 ms]
  Range (min … max):    24.2 ms …  28.8 ms    102 runs

Benchmark 2: rust-std-fs-read/target/release/test
  Time (mean ± σ):      27.7 ms ±   1.9 ms    [User: 0.5 ms, System: 28.0 ms]
  Range (min … max):    26.2 ms …  34.4 ms    100 runs

  Warning: Statistical outliers were detected. Consider re-running this benchmark on a quiet system without any interferences from other programs. It might help to use the '--warmup' or '--prepare' options.

Summary
  python-fs-read/test.py ran
    1.07 ± 0.08 times faster than rust-std-fs-read/target/release/test

> ./bench python-fs-read rust-std-fs-read-with-jemalloc/
    Finished release [optimized] target(s) in 0.00s
['hyperfine', 'python-fs-read/test.py', 'rust-std-fs-read-with-jemalloc//target/release/test']
Benchmark 1: python-fs-read/test.py
  Time (mean ± σ):      25.9 ms ±   0.9 ms    [User: 9.5 ms, System: 16.3 ms]
  Range (min … max):    24.3 ms …  29.3 ms    106 runs

Benchmark 2: rust-std-fs-read-with-jemalloc//target/release/test
  Time (mean ± σ):      14.3 ms ±   0.6 ms    [User: 0.8 ms, System: 14.2 ms]
  Range (min … max):    13.0 ms …  16.3 ms    180 runs

Summary
  rust-std-fs-read-with-jemalloc//target/release/test ran
    1.81 ± 0.10 times faster than python-fs-read/test.py

Thank you for all the reproductions. However, I want to clarify that it's not related to the allocator. The differing performance between the two allocators is coincidental; they simply have different offsets in memory regions.
Welcome to go deep by use strace -e raw=read,mmap ./program to findout.


added update functionality

@steffansluis  @WouterKvG please review

[Current coverage][cc-pull] is 25.58%

Merging [#26][cc-pull] into [master][cc-base-branch] will not change coverage

@@             master        #26   diff @@
==========================================
  Files             2          2
  Lines            43         43
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits             11         11
  Misses           32         32
  Partials          0          0

Powered by Codecov. Last updated by [b35b58a...8c5767a][cc-compare]
[cc-base-branch]: https://codecov.io/gh/feedbackfruits/bepstore-ui-goals/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/feedbackfruits/bepstore-ui-goals/compare/b35b58af7f372a66f920bf5385fb6ca41d364c81...8c5767a9ad1e8482d5c5e3125850014ee81f4cf2
[cc-pull]: https://codecov.io/gh/feedbackfruits/bepstore-ui-goals/pull/26?src=pr


[EDQ-452] Investigate the Heights/Weights Provided by EHR

Creates a notebook for each of the following:

each measurement_concept_id / site combination: min, max, mean, stdev, and number of unit_concept_ids used

each unit_concept_id - the min, max, mean, stdev, and number of sites using.

also provides some additional organization to the CDR Ops folder (divides into two categories)

@nishanthpp93 this was a quick analysis requested by Caroline. Figured it could be useful in the CDR Ops folder going forward.


⚠ Processors has degraded performance

In df73841, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 85 ms

Resolved: Processors performance has improved in ec0592f.


Directory permission error

Hi I don't know if this project is still being maintained but I am having some problems.
Firstly the example you give in the readme does not seem to be correct I have had to add the word download as a command.
I then get a permission error:
openhabian@openhabian:/ $ python -m podcastdownloader download / -l 1 -v -f 'https://anchor.fm/s/3cbbb3b8/podcast/rss'
[2022-10-06 18:06:06,180 - root - INFO] - 1 feeds found
[2022-10-06 18:06:06,184 - root - DEBUG] - Beginning retrieval for https://anchor.fm/s/3cbbb3b8/podcast/rss
[2022-10-06 18:06:14,293 - root - INFO] - Retrieved RSS for The WAN Show
[2022-10-06 18:06:14,294 - root - INFO] - All feeds filled
[2022-10-06 18:06:14,295 - root - INFO] - Limiting episodes per podcast to 1 entries
[2022-10-06 18:06:14,296 - root - INFO] - 1 episodes to download
[2022-10-06 18:06:14,297 - root - DEBUG] - Attempting download of episode USB Branding Changed Again... - WAN Show September 30, 2022 in The WAN Show
Traceback (most recent call last):
  File "/usr/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/openhabian/.local/lib/python3.9/site-packages/podcastdownloader/__main__.py", line 173, in <module>
    cli()
  File "/home/openhabian/.local/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/openhabian/.local/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/openhabian/.local/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/openhabian/.local/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/openhabian/.local/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/openhabian/.local/lib/python3.9/site-packages/podcastdownloader/__main__.py", line 118, in cli_download
    asyncio.run(download_episodes(all_feeds, destination, threads, write_playlist, limit))
  File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/home/openhabian/.local/lib/python3.9/site-packages/podcastdownloader/__main__.py", line 168, in download_episodes
    await asyncio.gather(*episode_downloaders)
  File "/home/openhabian/.local/lib/python3.9/site-packages/podcastdownloader/__main__.py", line 77, in download_individual_episode
    await episode.download(session)
  File "/home/openhabian/.local/lib/python3.9/site-packages/podcastdownloader/episode.py", line 89, in download
    self.file_path.parent.mkdir(exist_ok=True, parents=True)
  File "/usr/lib/python3.9/pathlib.py", line 1312, in mkdir
    self._accessor.mkdir(self, mode)
PermissionError: [Errno 13] Permission denied: '/The WAN Show'

Hi, sorry for the late response. I stopped working on this project in the middle of a rewrite but I'm coming back to it as I use it.
The issue here seems to be that you're attempting to write to a path that comes from the root /. You need to be root to do that. You either need to run this as root, use sudo, or (the best option) choose another directory to write to.


Do not override GitHub labels but rather add and remove

Describe the Bug
The board forcefully overrides column labels when issues are being moved via automatic dev flow. This can lead to the situation that labels added by external parties are being overridden.
Steps to Reproduce

External party opens PR
Board moves PR to needs review
External party adds foo label
Board resets labels, dropping foo, adding needs review

Expected Behavior

Board only adds and removes labels it controls itself. No additional labels are being touched.

Environment

Browser: Any
OS: Any
Board Version: v0.29.0

@piyushk I've seen you fixed this via https://github.com/SonyAI/wuffle_contrib/commit/1f2dac09742fcb2988efdbd82bec74508f7f0a67.
Did it work without unintended side-effects? Do you mind if I adopt your solution?

I'm afraid there are side-effects, which is why I never PRed the solution. Since there is a short delay between add/remove, the card tends to jump around on the board. For instance, If I move the card from In Review to In Progress (i.e left) manually, I add the In Progress label and then remove the In Review label. The card jumps to In Progress, back to In Review, and then to In Progress. As long as you're moving cards right (typical flow), I think the behavior works fine.
Please feel free to adopt the solution however you'd like if you can resolve the side-effect above. I had to implement it because wuffle was removing a label added by a different bot.

Thanks for the heads up. Will need to wrap my head around that issue then, some day :wink:

Closed via https://github.com/nikku/wuffle/commit/2ab671c0fd06fd6ef323b527d0e94627ce38351d.

I believe I've come up with something stable enough via https://github.com/nikku/wuffle/commit/7f9e59fc8b14a8d4de34e226ea67c1322f7b603a and https://github.com/nikku/wuffle/commit/2ab671c0fd06fd6ef323b527d0e94627ce38351d.
The board should really not interfere with anything outside of it, forcefully override labels and so forth.


[RayCluster] Adds aliyun.com/gpu-mem to known custom accelerators

Why are these changes needed?
if use aliyun k8s gpu share, gpu key is aliyun.com/gpu-mem
    workerGroupSpecs:
            resources:
              limits:
                aliyun.com/gpu-mem: "1"
                cpu: "1"
                memory: 2Gi
              requests:
                aliyun.com/gpu-mem: "1"
                cpu: "1"
                memory: 2Gi

autoscaler will not work when request gpu resource
(autoscaler +3m13s) Error: No available node types can fulfill resource request {'GPU': 1.0, 'CPU': 1.0}. Add suitable node types to this cluster to resolve this issue.

Adds aliyun's gpu share to the list of known custom accelerators in pod.go

Related issue number
Closes #2484

Checks

[x] I've made sure the tests are passing.
Testing Strategy

[x] Unit tests
[ ] Manual tests
[ ] This PR is not tested :(

I'm curious why the testing for HeadNode with multiple custom accelerators lack "google.com/tpu" values?
https://github.com/ray-project/kuberay/blob/073de1f62bb9e912e4f0a5ab318ab8bdcce298a4/ray-operator/controllers/ray/common/pod_test.go#L1270-L1282

cc @zjj2wry

I mapped aliyun.com/gpu-mem to num-gpus. Because gpu share also belongs to the GPU.

Can you first update a PR to update the officially supported accelerators in https://docs.ray.io/en/latest/ray-core/scheduling/accelerators.html to include alyun.com/gpu?

Hi @andrewsykim, I checked Aliyun's documentation, and I think they also use Nvidia GPUs. Do we need to add a custom accelerator for this?
Ref: https://www.alibabacloud.com/help/en/eci/user-guide/create-a-pod-by-specifying-the-gpu-specification-1

I checked Aliyun's documentation, and I think they also use Nvidia GPU with field called nvidia.com/gpu, while Aliyun GPU Share has another field called aliyun.com/gpu-mem.
Ref: https://www.alibabacloud.com/help/en/eci/user-guide/create-a-pod-by-specifying-the-gpu-specification-1

Can you first open a PR to update the officially supported accelerators in https://docs.ray.io/en/latest/ray-core/scheduling/accelerators.html to include alyun.com/gpu?

So I think we should just focus on the label?


Feature/refactor nitrite

Support verification of attestations created with a self-signed certificate, as opposed to the AWS Nitro certificate

Good first pass!  I am going to hold off on approving though as I have a concern about the code allowing self signed certs when not in dev (or at least how we are going to handle that)

discussed over video, solution is to add an "AllowSelfSigned" option


Online docs browser

Use Jekyll (GitHub Pages, Docsify [1], Sphinx [2] or similar to generate a documentation site covering dribdat's installation, usage, architecture, APIs.
[1] https://docsify.js.org/#/
[2] https://www.sphinx-doc.org/en/master/usage/markdown.html

:heavy_check_mark:  https://docs.dribdat.cc based on https://github.com/dribdat/docs/


Added initial files to validate commit process

Test dummy should validate initial files commit properly before merge into main branch.

Test dummy provided a comment to PR.

Test dummy close PR.


TestCafe fails to start a browser if another TestCafe process cleans temp directories

What is your Test Scenario?
testcafe tests against chrome and firefox in parallel
What is the Current behavior?
This is not always reproduceable(:sweat:). Happens on travis, but also on local workstation.
Observed at https://travis-ci.org/joma74/angular-ultimate-pro/builds/489304617. Also https://travis-ci.org/joma74/angular-ultimate-pro/builds/488394555. May name a few others.
[ci-prod] [test-servencafe-prod-once] ERROR Was unable to open the browser "firefox:headless" due to error.
[ci-prod] [test-servencafe-prod-once]
[ci-prod] [test-servencafe-prod-once] Error: ENOENT: no such file or directory, open '/tmp/testcafe/firefox-profile-5186V7WEUkBnT9PM/user.js'

Happend not at e.g. https://travis-ci.org/joma74/angular-ultimate-pro/jobs/489319319.
What is the Expected behavior?
no error
What is your web application and your TestCafe test code?
master at https://github.com/joma74/angular-ultimate-pro
Your website URL (or attach your complete example):

Your complete test code (or attach your test files):

const ENVAPPSRVPORT = require("../../config/env/ENVAPPSRVPORT")

import { Selector } from "testcafe"
var Mustache = require("mustache")

fixture("Index_Page_Test").page(
  `http://localhost:${ENVAPPSRVPORT.get()}/index.html`,
)

test("dom_has_critical_elements", async (t) => {
  await t.takeScreenshot()
  await checkHeading(t)

  /**
   * @type { SelectorAPI & HTMLImageElement }
   */
  const imageAngularFirst = await /** @type { ? } */ (Selector(
    "img[data-desc='angular-first']",
  ).addCustomDOMProperties({
    complete: (/** @type {HTMLImageElement} */ el) => {
      return el.complete
    },
    naturalHeight: (/** @type {HTMLImageElement} */ el) => el.naturalHeight,
  }))
  await t.expect(imageAngularFirst.visible).ok()
  await t.expect(imageAngularFirst.complete).eql(true)
  await t.expect(imageAngularFirst.naturalHeight).gt(0)

  /**
   * @type { SelectorAPI & HTMLImageElement }
   */
  const imageAngularSecond = await /** @type { ? } */ (Selector(
    "img[data-desc='angular-second']",
  ).addCustomDOMProperties({
    complete: (/** @type {HTMLImageElement} */ el) => el.complete,
    naturalHeight: (/** @type {HTMLImageElement} */ el) => el.naturalHeight,
  }))
  await t.expect(imageAngularSecond.visible).ok()
  await t.expect(imageAngularSecond.complete).eql(true)
  await t.expect(imageAngularSecond.naturalHeight).gt(0)

  const { error, warn } = await t.getBrowserConsoleMessages()
  await t.expect(error.length).eql(0)
  await t.expect(warn.length).eql(0)
})

/**
 *
 * @param {TestController} t
 */
async function checkHeading(t) {
  const heading = Selector("h1[data-desc='heading']")
  const headingText = await heading.innerText
  const expected = Mustache.render(
    "{{ title }} from Angular 4 App with Webpack {{ major }}.{{ minor }}.{{ patch }}",
    {
      major: "3",
      minor: "12",
      patch: "0",
      title: "Hello",
    },
  )
  await t.expect(headingText).eql(expected)
}

Your complete test report:
Sorry, but copying all from https://travis-ci.org/joma74/angular-ultimate-pro/builds/489304617 gives this issue output a tilt.

[ci-prod] [test-servencafe-prod-once] $ cross-var start-server-and-test serve-prod http-get://localhost:$npm_package_config_app_svrprod_port/index.html test-prod-cafe-once
[ci-prod] [test-servencafe-prod-once] starting server using command "npm run serve-prod"
[ci-prod] [test-servencafe-prod-once] and when url "http-get://localhost:4003/index.html" is responding
[ci-prod] [test-servencafe-prod-once] running tests using command "test-prod-cafe-once"
[ci-prod] [test-servencafe-prod-once]
[ci-prod] [test-servencafe-prod-once] ><EMAIL_ADDRESS>serve-prod /home/travis/build/joma74/angular-ultimate-pro
[ci-prod] [test-servencafe-prod-once] > cross-var json-server --quiet --watch db.json --port $npm_package_config_app_svrprod_port --static dist
[ci-prod] [test-servencafe-prod-once]
[ci-dev ] [test-servencafe-dev-once]  Running tests in:
[ci-dev ] [test-servencafe-dev-once]  - Firefox 65.0.0 / Linux 0.0.0
[ci-dev ] [test-servencafe-dev-once]  - HeadlessChrome 72.0.3626 / Linux 0.0.0
[ci-dev ] [test-servencafe-dev-once]
[ci-dev ] [test-servencafe-dev-once]  Index_Page_Test
[ci-prod] [test-servencafe-prod-once]
[ci-prod] [test-servencafe-prod-once] ><EMAIL_ADDRESS>test-prod-cafe-once /home/travis/build/joma74/angular-ultimate-pro
[ci-prod] [test-servencafe-prod-once] > cross-env NODE_ENV=production yarn test-cafe-once
[ci-prod] [test-servencafe-prod-once]
[ci-prod] [test-servencafe-prod-once] $ cross-var testcafe 'firefox:headless,chrome:headless --no-sandbox --disable-gpu' -S -s $npm_package_config_screenshots -p $npm_package_config_screenshot_path_pattern -r spec,xunit:$npm_package_config_reports/report.xml --page-load-timeout 5000 src/tests/
[ci-dev ] [test-servencafe-dev-once]  ✓ dom_has_critical_elements (screenshots:
[ci-dev ] [test-servencafe-dev-once]  /home/travis/build/joma74/angular-ultimate-pro/target/reports/screenshots/actual/Index_Page_Test/dom_has_critical_elements)
[ci-dev ] [test-servencafe-dev-once]
[ci-dev ] [test-servencafe-dev-once]
[ci-dev ] [test-servencafe-dev-once]  1 passed (9s)
[ci-prod] [test-servencafe-prod-once] ERROR Was unable to open the browser "firefox:headless" due to error.
[ci-prod] [test-servencafe-prod-once]
[ci-prod] [test-servencafe-prod-once] Error: ENOENT: no such file or directory, open '/tmp/testcafe/firefox-profile-8225Hx1vOveakWd1/user.js'
[ci-prod] [test-servencafe-prod-once]
[ci-prod] [test-servencafe-prod-once] Type "testcafe -h" for help.
[ci-prod] [test-servencafe-prod-once] error Command failed with exit code 1.
[ci-prod] [test-servencafe-prod-once] info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
[ci-prod] [test-servencafe-prod-once] npm ERR! code ELIFECYCLE

Screenshots:
n.a. console log only

Steps to Reproduce:

Linux only

git clone https://github.com/joma74/angular-ultimate-pro
yarn
yarn ci
Eventually observe

Your Environment details:

testcafe version:                   1.0.0-alpha.5
node.js version:                    v10.13.0
command-line arguments:  cross-var testcafe 'firefox:headless,chrome:headless --no-sandbox --disable-gpu' -S -s $npm_package_config_screenshots -p $npm_package_config_screenshot_path_pattern -r spec,xunit:$npm_package_config_reports/report.xml --page-load-timeout 5000 src/tests/
browser name and version: Mozilla Firefox 65.0, Chrome 72.0.3626.81
platform and version:          Ubuntu 16.04.5 LTS
other:                                   Tested in that setup for a few months now. In the last few days i observed more and more of the above erroring results, which IMO boiled down to be caused by/related to firefox latest. But at the same time kept up to date with testcafe alpha releases.

Your example contains two TestCafe launches. Sometimes the second launch starts before the first one completely ends. This causes the temporary folder to be cleaned in the wrong way.
As a workaround, you can add a small timeout between runs.

We have just started experiencing kind of the opposite. All of our testcafe runs started failing in jenkins due to a testcafe error where it seemed to fail to start a browser: ERROR Unable to establish one or more of the specified browser connections. This can be caused by network issues or remote device failure. However, adding a command to delete the /tmp/testcafe folder before running the test has seemed to fix it.

The problem is not reproduced with the<EMAIL_ADDRESS>

The problem is not reproduced with the<EMAIL_ADDRESS>

I still face this issue, in testcafe @latest - how can I work around this issue?

The initial issue is marked as closed, as we were unable to reproduce the issue in the 1.10.1 version.
Please try using the example from the comment above: https://github.com/DevExpress/testcafe/issues/3399#issuecomment-461058340
If this does not help, could you share a sample project to demonstrate the issue?


Last active tab is broken

App doesn't open the last active server properly.

Looks like it broke down after https://github.com/zulip/zulip-electron/commit/bcb8ffb55f7ef28c2b56bfee07322d1357f76458.


[prim_assert,dv] Use if condition in assert_init

In this context, an if condition and assert statement exhibit the same
behavior. For some strange reason, the fix made in #9017 for Xcelium
(addition of #0 delay) worked for IP level testbenches but not the chip
level. The chip level tests returned the same error (race condition
causing the signal value to reflect an X, failing the assertion). This
may very well be a tool bug, where Xcelium is sampling the preponed
value of the signal when it shouldn't, but this seems to not be
reproducible in a standalone testcase (given that IP level testbenches
work fine). So in the interest of time, we just switch this out to a if
condition, which has an added advantage of begin immune to assert
control system tasks.
Signed-off-by: Srikrishna Iyer<EMAIL_ADDRESS>

Just making sure I understand this right: is the intention is that this behaves exactly the same as the code that was there before? (because the scheduling for an if(...) statement is the same as that for an immediate assertion)

Just making sure I understand this right: is the intention that this behaves exactly the same as the code that was there before? (because the scheduling for an if(...) statement is the same as that for an immediate assertion)

Yes, that's right.


Update google-analytics.html

Added tracking ID
I think by this point it's already added but I'm doing this for the hacktober fest lol have a great day :)

Trying my hang at pull requests.


Deduplicate json deserialization

With  #2201 in place we know have two sets of deserialization code for JSON -> TLA.
Creating this issue as a way to track the tech debt here.
FYI @Kukovec

I will be closing this issue, and the associated PR, but I wanted to leave a record explaining why we won't be pursuing builder-based deserialization in the general case. Think of this as a mini ADR.
#2201 and #2207 kicked of a refactoring effort, meant to leverage the ScopedBuilder's type guarantees when reading input from JSON files. This would have allowed us to skip the type-checking pass after reading in JSON input, as the IR would be type-correct-by-construction.
This all hinged on the idea that invoking the builder on JSON inputs with proper type annotations (see #2223) would require a manageable amount of work and future maintenance. It turned out this assumption was incorrect.
I have spent several days working on this adaptation, and in my perspective the crux of the issue can be summarized as follows: input specifications may contain every conceivable syntactic structure, whereas the builder was designed to produce normal-form TLA+ (that is, the sort of TLA+ syntax one would find after our preprocessing of arbitrary inputs).
Here are some concrete examples of syntax , which cannot be constructed with the builder on the current main branch:

x / y: TLA+ permits real division, Apalache and the builder don't support it
\E <x,y> \in ..., \A <x,y> \in ...: TLA+ allows for a sort of pattern matching of tuples. The builder requires that the quantified value be a single variable name
{<x,y> \in S: P}, {e: <x,y> \in S}: Same as above.
[f EXCEPT ![a] = x]: This gets parsed by SANY (and exported to/imported from JSON) as [f EXCEPT ![<<a>>] = x] even for single arguments, but gets type-annotated by the checker as A -> B (not (A) -> B!). This is a problem, because our type system treats A -> B and (A) -> B as different types (of functions), and the builder (correctly) constructs an expression with the type (A) -> B, which fails type validation against the present type-tag of A -> B.
[f EXCEPT ![a] = x, ![b] = y]: TLA+ has very permissive EXCEPT syntax, while the builder's exceptMany automatically constructs the nested form [[f EXCEPT ![a] = x] EXCEPT ![b] = y].
Gen(N): The builder expects a Scala BigInt argument, not a generic Int-typed expression (which may not inline to a literal)
MkSeq(N, F(_)): Same argument for N as above. Additionally, the builder expects all operators passed to methods which accept operators to be in call-by-name form, i.e. LET A(...) == ... IN A, not just correctly typed with an operator type (this is also true of e.g. folds).
most ApalacheOper expressions: The builder statically checks that the arguments to these operators have the correct shapes (e.g. \E x \in S: P for skolem), not just the correct types.

I've implemented ~13 new builder methods to support the generic input syntax, before determining that the implementation and maintenance burden just isn't worth it.
This is mainly because we can just use the same type-checker that we already use for .tla input, even though I'm reasonably confident that implementing a sufficiently extended builder is technically possible.
We will figure out what to do with JsonToTlaViaBuilder in the future, as it likely still has uses (as long as the provided json was produced after preprocessing by Apalache, the builder import should require no, or aminimal number of, additional methods).


Currently 'az network bastion ssh' does not work on linux

If the issue is to do with Azure CLI 2.0 in-particular, create an issue here at Azure/azure-cli

Related command

SSh extention for az bastian currently does not work on linux
$ az network bastion ssh
Command group 'network bastion' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus
Platform is not supported for this command. Supported platforms: Windows
Extension name (the extension in question)
Description of issue (in as much detail as possible)
Azure bastian ssh command does not work on Linux
$ az --version
azure-cli                         2.30.0 *
core                              2.30.0 *
telemetry                          1.0.6
Extensions:
storage-preview                    0.8.3
ssh                                1.1.2
Python location '/home/aadhikary/lib/azure-cli/bin/python'
Extensions directory '/home/aadhikary/.azure/cliextensions'
Python (Linux) 3.6.8 (default, Nov 16 2020, 16:55:22)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]
Legal docs and information: aka.ms/AzureCliLegal
You have 2 updates available. Consider updating your CLI installation with 'az upgrade'
Please let us know how we are doing: https://aka.ms/azureclihats
and let us know if you're interested in trying out our newest features: https://aka.ms/CLIUXstudy

route to CXP team

@aadhikary Thanks for reaching out to us and reporting this issue. We are looking into this issue and we will provide an update.

@aadhikary I hope you have gone through the below articles which explains about ssh to Linux VM using Azure Bastion.
Feature	Basic SKU	Standard SKU
Connect to Linux VM using SSH	Refer this Refer This
I am using Az CLI 2.38.0 and ssh 1.1.2 in my machine. Could you please test using the same and run the below command ?

az network bastion ssh --name MyBastionHost --resource-group MyResourceGroup --target-resource-id vmResourceId --auth-type password --username xyz

Hope this helps.

Hi @navba-MSFT, thanks for the update.
The problem is bot regarding connecting to Linux VM. The issue is that my local machine is linux not windows and ssh extension does not support linux as on the description. Hope this helps

@aadhikary Thanks for clarifying your ask. The “Connect – other native clients” section of Connect to a VM using a native client and Azure Bastion - Azure Bastion | Microsoft Docs might be useful. It suggests using az network bastion tunnel and then running a regular ssh command.

Connect to a VM using the az network bastion tunnel command. This lets you do the following:

Use native clients on non-Windows local computers (example: a Linux PC).
Use the native client of your choice. (This includes the Windows native client.)
Connect using SSH or RDP.
Set up concurrent VM sessions with Bastion.
Upload files to your target VM from your local computer. File download from the target VM to the local client is currently not supported for this command.

Currently, this feature has the following limitation:

Signing in using an SSH private key stored in Azure Key Vault isn’t supported with this feature. Before signing in to your Linux VM using an SSH key pair, download your private key to a file on your local machine.

@aadhikary I wanted to do quick follow-up to check if you had a chance to look at my above comment. Please let us know if you  had a chance to follow the above suggestion. Awaiting your reply.

@aadhikary I wanted to do quick follow-up to check if you had a chance to look at my above comment. Please let us know if you had a chance to follow the above suggestion. Awaiting your reply.

@navba-MSFT we can use the tunneling which works fine but we had to write our own scripts to use ssh via bastian for running Ansible playbooks. Considering that there is already a CLI command that is suppose to do this could we get a timeline on when can we get this bastion ssh feature working on Linux. I am sure this will be useful for the whole Azure community.

@aadhikary Thanks for the feedback. Expanding the native client support is on our radar, but lower on the priority list compared to other features since the tunnel command is an effective solution.
If you would like to provide more details about the your scenario and your use case, I can share this with the product owners. They can add it to our backlog and review the ask during future planning cycles.

@aadhikary Hope you had a chance to look at my above comment. With that we will now proceed with closure of this GitHub issue. If you need any further assistance on this issue in future, please feel free to reopen this thread. We would be happy to help.


InjectedConnector() is not found on nuxt 3

<script setup>
// import { InjectedConnector } from 'use-wagmi/connectors/injected'

const { address, isConnected } = useAccount()
const { connect } = useConnect({
  connector: new InjectedConnector(),
})
const { disconnect } = useDisconnect()
</script>
<template>
  <div v-if="isConnected">
    Connected to {{ address }}
    <button @click="disconnect">Disconnect</button>
  </div>
  <button v-else @click="connect">
    Connect Wallet
  </button>
</template>

the import is not working , the auto import also not working on nuxt 3

The list of automatic imports is here functions

my question is how to import InjectedConnector. when i do it manually it shows modules not found error

check this code: https://stackblitz.com/edit/github-brdlor?file=app.vue
also '@vueuse/nuxt' and '@use-wagmi/nuxt' have some conflicts

@denniarems need install use-wagmi, see example https://github.com/unicape/use-wagmi/tree/main/examples/nuxt

@denniarems Yes there are some functions with the same name and you can cancel some of the automatic imports
modules: [
    '@vueuse/nuxt',
    ['@use-wagmi/nuxt', {
      excludeImports: [
        'useQuery',
        'useQueryClient',
        'useQueryClient',
        'useInfiniteQuery',
        'useContractRead',
        'useContractReads',
        'useContractWrite',
      ],
    }],
  ],