opendmarc: 1.3.3 -> 1.4.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/opendmarc/versions.
meta.description for opendmarc is: "A free open source software implementation of the DMARC specification"
meta.homepage for opendmarc is: "http://www.trusteddomain.org/opendmarc/"
meta.changelog for opendmarc 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
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/opendmarc-importstats passed the binary check.
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/opendmarc passed the binary check.
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/.opendmarc-params-wrapped passed the binary check.
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/.opendmarc-expire-wrapped passed the binary check.
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/opendmarc-expire passed the binary check.
Warning: no invocation of /nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/opendmarc-check had a zero exit code or showed the expected version
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/opendmarc-params passed the binary check.
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/.opendmarc-import-wrapped passed the binary check.
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/opendmarc-reports passed the binary check.
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/.opendmarc-reports-wrapped passed the binary check.
/nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin/opendmarc-import passed the binary check.
5 of 11 passed binary check by having a zero exit code.
6 of 11 passed binary check by having the new version present in output.
found <IP_ADDRESS> with grep in /nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin
found <IP_ADDRESS> in filename of file in /nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin

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

4 total rebuild path(s)

3 package rebuild(s)

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

First fifty rebuilds by attrpath
docbookrx
exim
opendmarc

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin \
  --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 opendmarc https://github.com/r-ryantm/nixpkgs/archive/d97a5d8b57b7ad026b32fb752490a294ea429e82.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/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin
ls -la /nix/store/cdrcp3pbln09dydc9k448bz52gsz4fkl-opendmarc-<IP_ADDRESS>-bin/bin

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

1 package failed to build:

exim

1 package built:

opendmarc

Maintainer pings
cc @ajs124 @dasJ for testing.

This version is incompatible with the only downstream dependency that uses it in nixpkgs: exim.

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/opendmarc/versions.
meta.description for opendmarc is: "A free open source software implementation of the DMARC specification"
meta.homepage for opendmarc is: "http://www.trusteddomain.org/opendmarc/"
meta.changelog for opendmarc 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
found 1.4.2 with grep in /nix/store/bqhvalr3rpslh9pibdcmzd7703d1pqdg-opendmarc-1.4.2-bin
found 1.4.2 in filename of file in /nix/store/bqhvalr3rpslh9pibdcmzd7703d1pqdg-opendmarc-1.4.2-bin

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

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath
exim
opendmarc

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/bqhvalr3rpslh9pibdcmzd7703d1pqdg-opendmarc-1.4.2-bin \
  --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 opendmarc https://github.com/r-ryantm/nixpkgs/archive/33af82638d90dc31b8072a809406fb540f255222.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/bqhvalr3rpslh9pibdcmzd7703d1pqdg-opendmarc-1.4.2-bin
ls -la /nix/store/bqhvalr3rpslh9pibdcmzd7703d1pqdg-opendmarc-1.4.2-bin/bin

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

1 package failed to build:

exim

1 package built:

opendmarc

Maintainer pings
cc @ajs124 @dasJ for testing.

Already on master.


gcloud.py

There appears to be a small error in the gcloud.py file in the luminoth/tools/cloud folder.When we do not give a bucket argument for storing logs, this error is triggered. Line 226 contains
bucket_name = 'luminoth-{}'.formata(account.client_id)
I adjusted that to
bucket_name = 'luminoth-{}'.format(account.client_id)
and it seems to work fine now.

When I run lumi cloud gc jobs, I get
Id: train_20181101_174123 Created: 2018-11-01T21:41:30Z State: FAILED sys:1: ResourceWarning: unclosed <ssl.SSLSocket fd=6, family=AddressFamily.AF_INET, type=2049, proto=6, laddr=('<IP_ADDRESS>', 55354), raddr=('<IP_ADDRESS>', 443)> sys:1: ResourceWarning: unclosed <ssl.SSLSocket fd=5, family=AddressFamily.AF_INET, type=2049, proto=6, laddr=('<IP_ADDRESS>', 59232), raddr=('<IP_ADDRESS>', 443)>``
I am unsure if this happened because of the previous change. However, running the original code resulted in
File "/home/ace/luminoth/luminoth/tools/cloud/gcloud.py", line 226, in train     bucket_name = 'luminoth-{}'.formata(account.client_id)
AttributeError: 'str' object has no attribute 'formata'
Also Luminoth ran on my computer without any problems, so I am unsure why there is failure here. The bucker where my dataset tf records were uploaded to is us-east1 while the bucket where it the logs would have been stored is in US.

Hi @AshwinAce!
Thanks for your report. This is a legit typo, and I have fixed it here https://github.com/tryolabs/luminoth/commit/4b81238ece406f4692707f616db6a3594e0078ec.
As for the warning, is it only a warning? Does the job not get submitted to ML Engine?
What version of Python are you using?

The job gets submitted, it runs for a while and then it fails. I tried executing it another time with the same results. I am using Python 3.6.5.
One possible thing I did which might be a problem was that I tried changing num_epochs inside the config.yml file. I'm not sure whether that change worked, however it still runs in my laptop while failing in the cloud.

If the job gets submitted successfully and does start, it means it's not failing because of this warning, so lumi cloud gc worked :D
Now, you must investigate why the job itself fails. This is a different issue, so I'm closing this. It will be helpful to look at the logs of the job in ML Engine; you can use lumi cloud gc logs for that.

Thanks for that! The error logs say
SystemError: Sonnet requires tensorflow_probability (minimum version 0.4.0) to be installed. If using pip, run pip install tensorflow-probability or pip install tensorflow-probability-gpu
I had the same problems on my laptop, until I installed this.


[BUG] Proxyman sometimes can't detect the IPv4 from PC. It shows a default value <IP_ADDRESS>

Description
There are at least 2 users, who reported this bug.
It shows <IP_ADDRESS> (default value) in the Android Setup, and the status bar.

Steps to Reproduce

Not sure hot to reproduce it, but it's failed to get the current IPv4

Current Behavior

Can't get the current IPv4

Expected Behavior

[ ] Double check the func, to see why Proxyman can't fetch any IPv4
[ ] Find a better npm package (high download, reliable, ... ) (maybe we can fall back to current library if the new one doesn't work) -> Find in this docs: https://www.electronjs.org/docs/latest/api/session to see if we have any native API to get the IPv4

Maybe we can leverage the os from NodeJS.
const os = require('os');

function getIPv4Address() {
    const networkInterfaces = os.networkInterfaces();
    for (const interfaceDetail of Object.values(networkInterfaces)) {
        // `interfaceDetail` might be undefined if no network is attached to the interface
        if (!interfaceDetail) {
            continue;
        }

        for (const detail of interfaceDetail) {
            // Look for an IPv4 address that is not an internal (localhost) address
            if (detail.family === 'IPv4' && !detail.internal) {
                return detail.address;
            }
        }
    }

    // Return undefined or a fallback address if no external IPv4 address was found
    return '<IP_ADDRESS>';
}

console.log(getIPv4Address());


Random test failure: TestCookieStorage.test_reset_cookie

Originally reported in #23792. Should we use the freeze_time() contextmanager proposed there? If so, it seems we'll have to drop compatibility with Django 1.7.

@timgraham @jezdez Is this still an issue? I don't see anywhere in the formtools tests that could use the freeze_time context manager. I also don't see any failing tests and the link inside the trac issue is broken so I can't see what test was failing originally.

I don't think anything has been done to fix it, but I don't mind if you close this until the next time the failure happens.

Cheers @timgraham. I'll close for now, and re-open should it crop up again.


Unable to detect target after qat

I trained my model on my own dataset following the guidance from qat_ptq_yolo_nas.md. The model works fine in non-QA situations, but after applying QAT, it fails to detect any objects.

Hi @yyj-1029 .
When you say it fails to detect any objects, do you refer to the ONNX file, the TRT engine or the original torch model?
Can you share some code?
Please note that when performing QAT/PTQ the model goes through some changes that prepare it for 8bit TRT.  at that stage, it is saved to an ONNX file.


bugfix -- not showing any counts

I think this one is still open....

Well, actually...
Take a look at #14 .
I think the current scope should be to make Glider only the representation layer of what's there in the SpaceAPI. SpaceAPI should in turn be fed by MQTT sensor readings (work in progress).
I made pialert2mqtt and thecount2mqtt projects, but ideally, The Count shuold talk to MQTT by itself.

OK. Should probably still have this bugfix though :)

Don't know how many dependencies are necessary to do MQTT, but shouldn't be too hard to add

This bugfix is useful for the current code, but #14 removes its use, so these two are mutually exclusive (unless I'm mistaken).
And we don't need MQTT in the Glider itself. Again, Glider only asks the JSON endpoint, parses its content, and shows it to the Metaverse.
MQTT is served by the SpaceAPI server, like https://github.com/b4ckspace/spacestatus

For now, we're relying on this: https://github.com/hs3city/pialert2spaceapi/blob/main/src/main.rs#L27

Superseded by #14


Remove JavaToolChain and JavaPlatform

Fixes #15467
Context

Contributor Checklist

[ ] Review Contribution Guidelines
[ ] Make sure that all commits are signed off to indicate that you agree to the terms of Developer Certificate of Origin.
[ ] Make sure all contributed code can be distributed under the terms of the Apache License 2.0, e.g. the code was written by yourself or the original code is licensed under a license compatible to Apache License 2.0.
[ ] Check "Allow edit from maintainers" option in pull request so that additional changes can be pushed by Gradle team
[ ] Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective
[ ] Provide unit tests (under <subproject>/src/test) to verify logic
[ ] Update User Guide, DSL Reference, and Javadoc for public-facing changes
[ ] Ensure that tests pass sanity check: ./gradlew sanityCheck
[ ] Ensure that tests pass locally: ./gradlew <changed-subproject>:quickTest

Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation
[ ] Recognize contributor in release notes

@bot-gradle QF

@bot-gradle QF

Sorry I don't understand what you said, please type @bot-gradle help to get help.

Sorry I don't understand what you said, please type @bot-gradle help to get help.

@bot-gradle help

@bot-gradle help

Currently I support the following commands:

@bot-gradle test {BuildStage} to trigger a build

e.g. @bot-gradle test SanityCheck plz
SanityCheck/CompileAll/QuickFeedbackLinux/QuickFeedback/ReadyForMerge/ReadyForNightly/ReadyForRelease are supported
test this means test ReadyForMerge
SanityCheck can be abbreviated as SC, ReadyForMerge as RFM, etc.

@bot-gradle help to display this message
@bot-gradle clean to clear the conversation history

Currently I support the following commands:

@bot-gradle test {BuildStage} to trigger a build

e.g. @bot-gradle test SanityCheck plz
SanityCheck/CompileAll/QuickFeedbackLinux/QuickFeedback/ReadyForMerge/ReadyForNightly/ReadyForRelease are supported
test this means test ReadyForMerge
SanityCheck can be abbreviated as SC, ReadyForMerge as RFM, etc.

@bot-gradle help to display this message
@bot-gradle clean to clear the conversation history

@bot-gradle test QF

@bot-gradle test QF

OK, I've already triggered QuickFeedback build for you.

OK, I've already triggered QuickFeedback build for you.


Support PushBear

http://pushbear.ftqq.com/admin/#/

This project is only under maintenance, no further features will be added.


iOS | create test app for gameloop

Author the user story for this feature
As a Flank developer, I want to have iOS test app for gameloop so I can test gameloop functionality.
Describe the solution
Please provide app for testing gameloop.
Some hints are available in tutorial

@axelzuziak-gogo are you able to pick this up?


Change additional as to try_from and try_to

This change is

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (a743d49) 70.87% compared to head (a47796b) 70.88%.

Additional details and impacted files
@@              Coverage Diff              @@
##           main-v0.13.1    #1372   +/-   ##
=============================================
  Coverage         70.87%   70.88%
=============================================
  Files                59       59
  Lines              7606     7608    +2
  Branches           7606     7608    +2
=============================================
+ Hits               5391     5393    +2
  Misses             1790     1790
  Partials            425      425

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Fix the SELinux labels after copying ssh keys

We were seeing an issue where SSH connections were rejected even when the public and private keys were matching. After fixing the SELinux labels, the SSH connections were allowed.
https://stackoverflow.com/a/20818775

/lgtm


FollowUp

File-name : N-topic.md ( n being topic number on main readme.md and  topic being topic name )
branch-name : contrib-name
Note : Use syntax highlighting wherever necessary .
Comment below the topic on which you're working .

variables

conditionals and loops

I/O and Arrays/Lists

User defined functions

is In build functions , Modules & Lambda assigned to anyone ? if anyone is  willing to please comment .

anything missing ? @brindashar4  @shivam1708  read the docs  and proof read as well as run


[CLI]: media/ folder does not sync when there are special characters in the file path

Describe the bug

Images in /media folder are not synchronised if the folder run name includes the characters "[" or "]".
Images are saved locally in the media/ folder. Using wandb sync with various flags has no effect, the client is convinced there are no media files to sync up. However, artifacts with files in the /media folder get synchronised properly (for example a table with images stored in the columns).
I also noticed that in the run summary page, the categories below the Hostname are missing (except the Wandb CLI version category).
Happy to share runs demonstrating this privately if needed.

No exceptions thrown. Sync message looks like this
wandb: Synced 6 W&B file(s), 0 media file(s), 514 artifact file(s) and 0 other file(s)

Additional Files
No response
Environment
WandB version: 0.13.1
OS: Ubuntu 18.04
Python version: 3.10
Versions of relevant libraries:
Additional Context
No response

Another possibility is that this occurs when the run folder name is very long. I didn't check this.

Hi @francelico,
I wasn't able to reproduce this. Could you clarify where the "[" or "]" characters are that will cause this issue? I attempted this by naming the run "test[_run]" and then trying to sync the run folder but this actually caused the entire sync to fail, not just the media.
Thank you,
Nate

@francelico I wanted to follow up and see if you were able to give me a little more information on how to replicate this issue?
Thank you,
Nate

Sure, sorry about the delay. They were in one of the parent directories. I am using hydra and some options automatically append overridden parameters to the folder name. An example of a path that was causing the issue:
~/dev/PhD/maze_representations/outputs/gridworlds/graph_minimal/GraphVAE/big_decoder/epochs=10,models. configuration.decoder.layer_dim=[256,1024,1024,1024],models.configuration.shared_parameters.latent_dim=64,models.hyperparameters.loss.elbo_coeffs.Fx=[.2,.2]/2022-08-13_03-04-36

Hi @francelico, sorry for the delay getting back. I think I was able to recreate this. Do you get a media panel showing up in the UI but then it never loads?

Thank you,
Nate

Yes I was getting the exact same behaviour.

tried to reproduce it with the provided directory name and it seems to work with the client version 0.19.1 and backed of todays date, feel free to re-open if the issue is not fixed on your end.


Cant use credential provider with .NET 6 SDK installed on Mac

When I have .NET 6 SDK installed on my Mac machine, and I try to run a dotnet restore with a nuget.config pointing to an ADO artifacts repo, it will fail to initialize the CoreCLR runtime:
dotnet restore --interactive
  Determining projects to restore...
Failed to initialize CoreCLR, HRESULT: 0x80004005
/usr/local/share/dotnet/sdk/6.0.100-rc.2.21505.57/NuGet.targets(130,5): error : Problem starting the plugin '/Users/odhanson/.nuget/plugins/netcore/CredentialProvider.Microsoft/CredentialProvider.Microsoft.dll'. The operation was canceled. [/Users/odhanson/Projects/WebViewDemo/demo2/demo2.csproj]
/usr/local/share/dotnet/sdk/6.0.100-rc.2.21505.57/NuGet.targets(130,5): error : Unable to load the service index for source https://powerbi.pkgs.visualstudio.com/94925a51-4c33-497e-b831-bb3bc133e7e8/_packaging/PowerQueryExcel/nuget/v3/index.json. [/Users/odhanson/Projects/WebViewDemo/demo2/demo2.csproj]
/usr/local/share/dotnet/sdk/6.0.100-rc.2.21505.57/NuGet.targets(130,5): error :   Response status code does not indicate success: 401 (Unauthorized). [/Users/odhanson/Projects/WebViewDemo/demo2/demo2.csproj]

I also got this exact error and it appeared after installing .Net 6 and  went away after deleting .Net 2 folders. So thank you for sharing first of all and maybe this is worth investigating after all

same here, went away after deleting /usr/local/share/dotnet/shared/Microsoft.NETCore.App/2.*

Same here, deleting net core 2.* did the trick

Reopening the issue, since it seems to be happening to others too.


start_virt has issues with recognizing socket on tdx 1.5, no issues on tdx 1.0

start_virt uses virtqemud, which seems like  is not included in the tdx 1.5 stack
root@n73-164-13:/opt/tdx-2023ww41/mvp-tdx-stack-host-ubuntu-22.04/jammy/amd64# sudo systemctl restart virtqemud
Failed to restart virtqemud.service: Unit virtqemud.service not found.

close the issue due to the tdx 1.5 has an updated version with the above issue patched


Why don't you update Kiwi anymore?

Why don't you update Kiwi anymore? It's really a pity that a browser this good is not developed anymore

As It seems, this project is officially dead.
Consider using another browsers with extensions support (I will not recommend one, they can be easily found via Google).

Consider using another browsers with extensions support (I will not recommend one, they can be easily found via Google)

That list is quite short:

Edge Canary
Firefox and its forks Fennec and Mull

Consider using another browsers with extensions support (I will not recommend one, they can be easily found via Google)

That list is quite short:
* Edge Canary

* Firefox and its forks Fennec and Mull

I tried Edge (Canary and stable), but I wasn't be able to install extensions from chrome web store.
There's only Firefox and its forks which are have a complete extensions support.
The another chromium-based one is Yandex browser (built with lots of internal advertisements)
So sad about it.

I tried Edge (Canary and stable), but I wasn't be able to install extensions from chrome web store.

You cannot (yet) install extensions directly from the store, it has to be done manually in the developer options (which need to be activated first by hitting the build number 5 times)

I tried Edge (Canary and stable), but I wasn't be able to install extensions from chrome web store.

You cannot (yet) install extensions directly from the store, it has to be done manually in the developer options (which need to be activated first by hitting the build number 5 times)

Yep, I tried this approach. No such option listed. Maybe disabled for some regions, I guess.

Yep, I tried this approach. No such option listed. Maybe disabled for some regions, I guess.

I agree regarding "not a good choice", but unfortunately right now, it is the only Chromium based browser with full extension support, that is still being updated. Other browsers like Yandex only support a small fixed set of extensions.

I agree regarding "not a good choice", but unfortunately right now, it is the only Chromium based browser with full extension support, that is still being updated. Other browsers like Yandex only support a small fixed set of extensions.

I was using Yandex for a couple of months and was able to install almost any Manifest3 extension directly from Chrome web store.
The only thing I needed to do is to switch to desktop version.
Disclaimer: I am not giving advices to use Yandex, Edge or Firefox. Just personal experience.

Is it possible to build kiwi/src.next without build.find.kiwi server?

Lemur had ported both devtools and extension from kiwi
extension sometime might be glithy laggy
But lemur had worst of all ui no tab grouping making browsing miserable

No tab groups
Mobile version of sites not optimized site contents are clipped had to repeatedly switch to desktop mode
Extensions open as panel not seperate tab just like lemur and thus the popup pages of extension not fully visible cannot make them fullscreen
when you cant see the html completely because clipped from viewport its useless as a browser

its for sure their can never be one perfect browser with all features alteast basic features that makes a browser 'The Browser'

its for sure their can never be one perfect browser with all features alteast basic features that makes a browser 'The Browser'
Those new devs keep wasting time reimplementing UI, chromium has it covered you just need to do modification to make it more user friendly
Those brave browser devs keeps wasting their time in adding AI and crypto currency features they lack  simple  bookmark exporting feature

Thanks, as I dont need tab groups, I checked Lemur and Quetta. Quetta seems pretty basic with almost no customization (it seems impossible to move search bar to top etc.).
Lemur looks good so far, I just can't find a way to disable live web search while typing something into the task bar. Lemur seems to have some kind of fixed "type ahead fing" which can't be disable.
Bookmark import from Kiwi works fine in both browsers.

Thanks, as I dont need tab groups, I checked Lemur and Quetta. Quetta seems pretty basic with almost no customization (it seems impossible to move search bar to top etc.).
Lemur looks good so far, I just can't find a way to disable live web search while typing something into the task bar. Lemur seems to have some kind of fixed "type ahead fing" which can't be disable.
Bookmark import from Kiwi works fine in both browsers.

Lemur had been crashing after latest update so be careful when swithig

Consider using another browsers with extensions support (I will not recommend one, they can be easily found via Google)

That list is quite short:

Edge Canary
Firefox and its forks Fennec and Mull

Came across "Quetta Private Adblock Browser", supports addons from chrome extension store and MS edge addon store.
https://www.quetta.net/
But is only for mobile (android and ios and ipad). They say windows and mac OS is upcoming.

Not open source, unfortunately. Quetta is pretty new browser, so I am not sure It's trustworthy.
I'd rather trust a big tech company browser than a new one with closed sources. That's why I trusted Kiwi one day.

google chrome / chromium for android good and fast i had 1400 tabs open in both and yet no glitch or lag when switching tabs, yes to make switching fast they dont show preview if each tabs content thys it becones difficult to navigate
But But chromium for android latesr have addes search feature you can ditectky search open tabs using url or keywords and its amazing at first glance when i tried
As for ads in chromium or googlr chrome use adguard dns wide on your router or just adgurad app through vpn progile

What happened to the update that was supposed to be dropping? That was weeks, maybe months ago now.
It's a shame nobody with the skills can or will save Kiwi as it's by far the best browser for Android.

I wish someone would update Kiwi, Firefox for Android still has a lot of shortcomings.

What a pity that Kiwi is the only browser offering support for add-ons, developer tools, and open-source features all in one. I hope it will continue to be developed.

To answer the OP and others in thread, it is likely that Kiwi doesn't make enough money to afford to update it. People need to eat, and people with technical skills have many demands on their time and attention.
While the developer or team might be facing a crisis unrelated to cashflow, the simple fact is, had they more money they could have more developers who could then pick up the slack when dealing with a crisis.
Please, do not be demanding, or sarcastic, or bitter, of whining about something you have gotten for free. Instead be grateful it has existed at all. If it's so valuable that you want to see it continue to exist, ask yourself how you can help. Negative, critical, and rude feedback is a sure way to sap energy from developers - and without it, they are better served working for Microsoft, Google, or Amazon, etc.
Whining is not a way to help - it only drives away those who could.

Instead be grateful it has existed at all.

I agree - as with every free software, the developer does not owe continued support or development to the users.
There is still one thing I'd like: a clear statement that Kiwi development has ended and removal of the APKs from Github and Google Play. Providing a software with known security vulnerabilities that are actively being exploitet, puts unaware users at risk. Kiwi, in its current state, should not be available for download any more.

To answer the OP and others in thread, it is likely that Kiwi doesn't make enough money to afford to update it. People need to eat, and people with technical skills have many demands on their time and attention.
While the developer or team might be facing a crisis unrelated to cashflow, the simple fact is, had they more money they could have more developers who could then pick up the slack when dealing with a crisis.
Please, do not be demanding, or sarcastic, or bitter, or whining about something you have gotten for free. Instead be grateful it has existed at all. If it's so valuable that you want to see it continue to exist, ask yourself how you can help. Negative, critical, and rude feedback is a sure way to sap energy from developers - and without it, they are better served working for Microsoft, Google, or Amazon, etc.
Whining is not a way to help - it only drives away those who could.

Developers could help with implementing features and fixing bugs, but the browser is not open source at the moment. AFAIK, there is no donation button either. Therefore, the company that created the software has lost interest in supporting it.
My previous posts are just a warning about issues with outdated (and probably vulnerable) software.

According to what I saw in Telegram groups, it seems that Kiwi is still under development but hasn't been released for performance or other reasons. Perhaps we could stay patient and eager for updates.

Perhaps we could stay patient and eager for updates.

Personal opinion: No, look for a new browser. Even if Kiwi gets an update today, it has been w/o security updates for too long. Leaving users at risk for such a long time is irresponsible. The currently available Kiwi version should have been removed months ago.

we are ready to pay few dollars,

we are ready to pay few dollars, we alreasy purchase sone good apps on play store why not this as donation
Problem is kiwi developer himself not responding he isnt replying to any of this threads or issues likely he already abondoned it he might not be login to his git account

Maybe he is dead and he is no longer in this world. I hope I am wrong

+1 for requesting updates. kiwi is my favorite on Android. On tablet, in laptop mode, it's the closest to desktop usage with addons. No Firefox variants allow selecting text to do a websearch (long click).
Here are the browsers I'm using. Almost all support addons. chromite is my default for apps opening sign in pages (too many tweaks and blockers in my everyday kiwi browser so I use "Better Open With" app to choose a browser depending on my needs.)

Xbrowser is my second favorite chrome variant with extensions on Android.

Xbrowser is my second favorite chrome variant with extensions on Android.

I installed cromite and XBrowser on Android but they don't support Chrome extensions

cromite doesn't support extensions (yet).

I don't want to sound like a shill, but it seems that currently the fastest chromium based android browser with tab grid support is Lemur (chromium 127), it's 40% faster than latest kiwi in speedometer. All the other ones are either slower than kiwi (quetta, mises) or gecko based (rainsee=kito browser) or don't have tab grid support (edge canary, yandex)

XBrowser
It has a script manager preinstalled, a decent one, unlike what Via has, so you can use usercripts instead of extensions, for many people this is enough.

how?

It has a script manager preinstalled, a decent one, unlike what Via has, so you can use usercripts instead of extensions, for many people this is enough.

lemur browser forked kiwi devtools and extension, they should have forked the whole kiwi and continued development

lemur browser forked kiwi devtools and extension, they should have forked the whole kiwi and continued development

It was however not open-sourced.

X Browser, Lemur are Chinese browsers. Therefore, there may be privacy issues. Quetta is also a company established through a Chinese virtual office rental company located in the UK, so there may be the same issues.

"Well-control what data each layer may attain is the essence to the problem."
    On the East / West affairs.
Though the privacy concerns of Chinese apps are serious:
    Prominently that from certain Shēn-Zhèn company.

FFupdater tagged Kiwi now as "no longer maintained" and "should no longer be used "

Will keep using till death do us apart (either one ,,!!)
Cant live without DEVTools thats a essential requirement in current world where sites are bloated and broken, we need to test them and modify based on preferences

Extensions don't work on Lemur. Especially, bypasspaywall one.  Switch to Firefox instead. Edge has bloated Microsoft mess packed in

Extensions don't work on Lemur

Nah, there's no way they work worse on lemur, proxy extensions work better for example, on kiwi they were barely useable.

bypasspaywall

This is probably the issue, this extension is probably broken and outdated by now as it was dmca'ed

Kiwi is itself limited in extension support
Extension apis like
Omnibox, search api, tab groups, offline dom api etc etc are not implemented and some are there but disabled and not full fledged have many functions missing,
Even tabs api in kiwi is useless, most or tabs properties are immutable so tab api functions like grouping, moving, replace etc etc are not available only create update duplicate like primitive features only

Only good thing about kiwi chromium not being updates is you can keep using ublock like extensions,
If kiwi will update to latest chromium MV2 support will break and with MV3 only the adblocking extensions will be limited to 10% of their capabilities

Only good thing about kiwi chromium not being updates is you can keep using ublock like extensions,
If kiwi will update to latest chromium MV2 support will break and with MV3 only the adblocking extensions will be limited to 10% of their capabilities
Also extension that redirect resources and urls will break without webRequest API as its not in MV3

Yes, but I think in any case, an updated browser without an adblocker is much safer than an outdated browser with an adblocker.

I used to use Kiwi an year ago. Then I switched to Cromite. Then I decided to stop using all dedicated chromium forks on Android. Then I started using Privacy Browser which pulled me into Privacy rabbithole. And I started using NextDNS as a form of domain level adblocking, which works fine on all of my platform browsers. I don't think I need Extensions anymore. My screen on time reduced drastically too.

its not open source, it uses webview, so for normal browsing reading may be good
but cant trust

Thats a dillema, no existing browsers on android or pc provides "Basic features that makes a browser 'A BROWSER' that being streamlined surfing experience
They have all sort of complex features like ai crypto etc but they lack good bookmarkling, backup sync fast tab opening and switching

Kiwi is a good browser. But like other ones, it's the same as any other chromium fork, but with extensions. That's it. Moreover, with the advent of MV3, content blocking via extensions is going to get restricted from March 2025 anyways. That makes ublock, adguard and other extensions almost obsolete.

No, that makes Chromium based browsers obsolete. What will remain are Brave with its "hardcoded" support for UBlock and Firefox based browsers like Fennec or Mull.


Find the Error

Hi,
how can i find the error in the code? how to understand what "Value" is wrong?
Thanks

Date: 2022-08-24 16:18:04
Level: Error
ThreadId: 1
Server:
Category: InvalidData: (:) [Invoke-PodeScriptBlock], ParameterBindingValidationException
Message: Das Argument kann nicht an den Parameter "Value" gebunden werden, da es NULL ist.
StackTrace: bei , : Zeile 83
bei Invoke-PodeScriptBlock, C:\Program Files\WindowsPowerShell\Modules\Pode\2.7.1\Public\Utilities.ps1: Zeile 642
bei , : Zeile 7
bei Invoke-PodeScriptBlock, C:\Program Files\WindowsPowerShell\Modules\Pode\2.7.1\Public\Utilities.ps1: Zeile 634
bei , : Zeile 106

Date: 2022-08-24 16:18:04
Level: Error
ThreadId: 1
Server:
Category: System.Management.Automation
Message: Das Argument kann nicht an den Parameter "Value" gebunden werden, da es NULL ist.
StackTrace:    bei System.Management.Automation.ExceptionHandlingOps.CheckActionPreference(FunctionContext funcContext, Exception exception)
bei Invoke-PodeScriptBlock(Closure , FunctionContext )
bei System.Management.Automation.PSScriptCmdlet.RunClause(Action`1 clause, Object dollarUnderbar, Object inputToProcess)
bei System.Management.Automation.PSScriptCmdlet.DoEndProcessing()
bei System.Management.Automation.CommandProcessorBase.Complete()

Yeeeah, when the error shown is at Invoke-PodeScriptBlock, it's actually a function within the scriptblock it's invoking. When this happens, it's a pain unless you know roughly which area of the code might be causing the error.
Usually it should show the actual function, so this is a bit weird 🤔
Have you got any ideas as to where in your server this error might be coming from? What you're doing at the time the error is written, such as loading a page, submitting a form, etc., those will help.
Or if it's possible, maybe give an example of your server here?

Hi @Badgerati,
i found an error. It is certainly difficult to search if it is not explicitly shown. But the mistake was that I changed the ID of the element in only one place and then forgot. Everything is fine. I myself am to blame. Thank you.

this also happens if New-PodeWebBadge -Value ''  is empty. The error is also unknown and you need to look for it yourself.


Refactor/revspec pattern

Work in progress refactoring.
Needed for #359

** ⚠ This is not stabilized and a bunch of testing should be done before pushing that to main. ⚠**
This PR simplify the revspec and tag lookup implementation. Unfortunately I caught few cases were some exception were applied  to the revwalk depending on the context. For instance, the very first commit was never included in changelogs.
Annotated tag were not correctly resolved etc.
This may or may not result in a breaking change.
Previously revspec that looks related produced different commit range depending on the context.
This implementation should be easier to maintain and there are still some cleanups that can be done.
Performance wise, this is not an improvement and I used some greedy techniques to build a global cache containing all the repository tags, with their respective commit oids and target oids for annotated tags.
Todos:

[ ] [feature] Handle case where multiple lightweight tags point to the same commit ?
[ ] [perf/feature] Access the cache using commit shorthand of arbitrary length (an intermediary structure to resolve oids before querying the cache is needed here).
[ ] [perf] On each repository mutation (tag creation, commits) the cache should be updated instead of fully rebuilt.
[ ] Simplify as much as possible repository access using the cache.
[ ] Test & Refactorings

[ ] run_cmd! could be factorized for readability/writability
[ ]  better module organization (often different use-cases are mixed in test, making them hard to navigate)
[ ] Method visibility (many method are exposed publicly while they should just be relocated to be made private. this would also ease documenting the public API.


Check and update log libraries

Check if the libraries employed are affected by the log4j vulnerability

Regarding the Log4Shell exploit for Log4j, we are not affected by it. Our logging stack is:

Frontend: SLF4J via a wrapper (scala-logging)
Backend: Logback

SLF4J is a simple facade for logs with no vulnerabilities associated to Log4Shell, further information is provided here:

The SLF4J API is just an API which lets message data go through.

Logback does NOT offer a lookup mechanism at the message level. Thus, it is deemed safe with respect to CVE-2021-44228.

On a further note, the Logback team have recently discovered vulnerabilities that can grant RCE but require previous write access to the server and have been patched in the latest version.
Summing up: we are safe from Log4Shell and I'll update the Logback version in future commits for further security.


Use GenerateName instead of Name for WorkLoad

Description
Respective ticket: https://dt-rnd.atlassian.net/browse/K8S-9998
Because we normally assign the podName to the workload info in a certain corner case (when we have a ownerreference which is no controller) it can occur that the DT_WORKLOAD_KIND env var is set to empty.
This is fixed by simply using GenerateName instead of Name.

How can this be tested?

unit tests
I am not really sure how to properly test it otherwise at it seems to be a corner case which needs special set up

Codecov Report
Attention: Patch coverage is 33.33333% with 2 lines in your changes are missing coverage. Please review.

Project coverage is 59.25%. Comparing base (54c82ac) to head (6a5a315).

Files
Patch %
Lines

pkg/webhook/mutation/pod/metadata/workload.go
33.33%
2 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3170      +/-   ##
==========================================
- Coverage   59.25%   59.25%   -0.01%
==========================================
  Files         319      319
  Lines       17446    17448       +2
==========================================
  Hits        10338    10338
- Misses       5941     5943       +2
  Partials     1167     1167

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Please add option to change download location

Please add option to choose a different drive as a target for downloaded files.
As you know lots of people use small SSD drives as primary drives for OS, so it would be better if we could choose to download files to a different location.

Just tried a symlink for /tmp/mnt to an hdd-folder with moderate success on Linux.
It still tries to copy the obb-files to /tmp before pushing them to the device and I can't really symlink the entire mountpoint.
Maybe a path in the settings.json that replaces all calls to /tmp would be ideal.


About center crop

Dear iashin
thank you for the nice feature
I3D in this video_features seems to extract features from the center of the frame image using center cropping.
https://github.com/GowthamGottimukkala/I3D_Feature_Extraction_resnet
Are there any plans to add 10 crop augmentation functionality like this person?
thank you!

no, not at the moment, i'm afraid.
however, i'd love to consider a pull request implementing this (fixing or redoing the earlier attempt: #110).
I'm going to close this because it is a duplicate of #72 and #92 issue.


Fix random "JsonReaderException" on OpenShift

I am facing a problem where the pipeline randomly fails due to a "parse" error.
##[error]Newtonsoft.Json.JsonReaderException: After parsing a value an unexpected character was encountered: m. Path 'mask[2].value', line 1, position 671.
   at Newtonsoft.Json.JsonTextReader.ParsePostValue(Boolean ignoreComments)
   at Newtonsoft.Json.JsonTextReader.Read()
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
   at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
   at Newtonsoft.Json.JsonSerializer.Deserialize[T](JsonReader reader)
   at Microsoft.VisualStudio.Services.WebApi.JsonUtility.FromString[T](String toDeserialize, JsonSerializerSettings settings)
   at Microsoft.VisualStudio.Services.Agent.Worker.Worker.RunAsync(String pipeIn, String pipeOut)
   at Microsoft.VisualStudio.Services.Agent.Worker.Program.MainAsync(IHostContext context, String[] args)
Error reported in diagnostic logs. Please examine the log for more details.
    - /azp/agent/_diag/Worker_20200206-183547-utc.log
,##[error]We stopped hearing from agent vsts-agent-master-0. Verify the agent machine is running and has a healthy network connection. Anything that terminates an agent process, starves it for CPU, or blocks its network access can cause this error. For more information, see: https://go.microsoft.com/fwlink/?linkid=846610

The agents are running within OpenShift and the error usually occurs during the day, that is, at the peak time.
After debugging I found that the communication message between the "agent" and the "worker" was being corrupted. I don't understand how internally the "AnonymousPipe" protocol works, so I changed it to use TCP socket due to packet delivery reliability.
We are using the agent with these changes and we have not had the described problem.
OpenShift Master:
v3.11.117
Kubernetes Master:
v1.11.0+d4cacc0

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: francisco-anderson sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@francisco-anderson - Thanks for the PR! We are about to merge in a PR that moves us to .NET Core 3.1 so I would prefer that we let this PR hang out for a bit and flush out any issues that the .NET Core migration may bring before adding this to the mix.
One question, I know it's highly unlikely, but is there anyway to not hard code ports in the unit tests? We run a lot of tests and we already have a problem with spurious failures and would really not like to have a port collision during the unit test delay us. The unit tests methods can all run in parallel so it is likely to bite us.

@francisco-anderson I think this PR will need to be updated due to recent changes creating conflicts.
I'm a little skeptical about the change more generally. I think I'd like to have a better idea of what exactly is causing the current failures before switching over to a different protocol (and introducing risk as we do so).

Looks like we're seeing this same issue in certain circumstances, @damccorm  or @francisco-anderson  were there ever any theories on what may cause this?

In case anyone else hits this, seems related to installing a product called Dynatrace we installed recently.


Hello, How can I do it?

Hello everyone, please tell me. How can I make a graph like this? That is, a certain data graphic should be highlighted.
For example, I have data like this:
[
  {
    value: 1,
    isSelected: false
  },
{
    value: 5,
    isSelected: false
  },
{
    value: 6,
    isSelected: true
  }
]

That is, in an object where the isSelected flag is true. I need to add a border as in the chart, only for data where the isSelected flag is true. I know that such a border can be created on the "hover" event. For example hoverBorderWidth and others. But how to make the chart's border increase only for specific data?
Hopefully clear, thanks.

You can write a custom plugin for this using the afterDraw hook. Or you can choose to use extra datasets which make all backgorundColors transparent except for the one you need.
https://jsfiddle.net/Leelenaleee/2rjntw9L/9/


Adapt generate success output

Every time I post the successful output of a generate call this happens:
C:\Users\Jan\Downloads\prismachinookmastercli-demo>npx prisma2 generate
✔ Generated Prisma Client to .\node_modules\@prisma\client in 248ms

You can now start using Prisma Client in your code:

import { PrismaClient } from '@prisma/client'
// or const { PrismaClient } = require('@prisma/client')
const prisma = new PrismaClient()

Explore the full API: http://pris.ly/d/client

=> GitHub code formatting breaks because the output itself contains 3 backticks - that do not even do anything. We could replace it with single backticks, 3 normal ticks, or highlight the code some other way to avoid that.

Just a thought - when using cutom output path - those instructions aren't exactly accurate, are they? :man_shrugging:
Maybe hide them?

That is a good point and should be taken into account! Can you please create a new issue though @vadistic - as this is one is about something quite different it will not be taken into account here (as we can not schedule it). Thanks!

Using ```` is the solution.


Add testing

Instead of npm install should call npm install-test.
Is a breaking change, so should bump major.

Fixed by 75692a4edd751dfccf77e6416363a02776a51b60


Low-light Image Enhancement using MIRNet

With the goal of recovering high-quality image content from its degraded version, image restoration enjoys numerous applications, such as in surveillance, computational photography, medical imaging, and remote sensing. In this example, we implement the MIRNet model for low-light image enhancement, a fully convolutional architecture that learns an enriched set of features that combines contextual information from multiple scales, while simultaneously preserving the high-resolution spatial details.
Please find the corresponding notebook here.

Hi @fchollet , can you please review this example?

Hi @fchollet , thanks for the suggestions, I have updated the example accordingly. Can you please review?

Updates:

Added enhanced versions of the 15 test images from LOLDataset using an online tool called pinetools.
Using 300 images for training, 185 for validation, and 15 as test images.
Removed line breaks in between list items.
Added activation="relu" in the Conv2D layers.
Added activation="softmax" in the Conv2D layers.
Added activation="sigmoid" in the Conv2D layers.
Removed unnecessary functions in the inference.

Hi @fchollet , thanks for the suggestions. I have updated the example accordingly. Also updated the corresponding Colab Notebook. Can you please review it?

Added comparison of the test images enhanced by MIRNet against the corresponding images enhanced using PIL.ImageOps.autocontrast.
Removed inference on train images.
Removed inference on validation images.

Hi @fchollet , added the generated files.

Thanks for the great contribution! 👍


Move validate_*_index from generated code to Math

Summary
Adds validate_positive_index and validate_unit_vector_index that are now generated with each stanc3 code gen unnecessarily.
Also adds tests for validate_non_negative_index.
Tests
New tests for all. Added missing for the validate_non_negative_index
Side Effects
/
Release notes
Added validate_positive_index and validate_unit_vector_index to clean up generated Stanc3 code.
Checklist

[x] Copyright holder: Rok Češnovar
The copyright holder is typically you or your assignee, such as a university or company. By submitting this pull request, the copyright holder is agreeing to the license the submitted work under the following licenses:
- Code: BSD 3-clause (https://opensource.org/licenses/BSD-3-Clause)
- Documentation: CC-BY 4.0 (https://creativecommons.org/licenses/by/4.0/)

Looks good but the tests have the same name apparently.

Ah yes, too much copying and pasting. Fixed.

@rok-cesnovar added doc

Thank you!


Wraith Prism support

Please add support for the following device:
Device Name: Wraith Prism
Device Website: https://landing.coolermaster.com/pages/amd-ryzen-wraith-prism-rgb-software/
The device can connect Razer chroma. From there I can set it up. It is changing colors with the Razer Chroma.
I tried to add a Razer Chrom Layer in the application, and map keys to it. But it was not working. I did not know where to map them. As I saw in chroma 4 values can be set.
It would be nice to add some new part where I can create a new color map for them, not only mapping to colors of the keys.

I found this: #1548 so the mapping issue is solved, but still don't know how to connect the device with a layer.

The Wraith has a nice ARGB ring around and it connects through Chroma. Some decent support for it would be nice, apart from the single color that you can achieve through Mouse area in Aurora.

Going by the photo from Razer (https://press.razer.com/product-news/light-up-your-amd-wraith-prism-cooler-with-razer-chroma/) looks like it actually has 3 zones. Ring, Fan, and Logo LED. Right now we can only control the fan LEDs.
Happy to test out using my Wraith Prism if there's anyone able to poke around the dll files to add support.


Handle secondary port for health checks

Hi,
trying to port one of our backend services to Amazon EKS, and hence ALB. The pods expose several ports - one for main traffic, which I'd like to expose via the ALB, and another for internal use (including health checks). How do I make the ingress controller set up health checking on this second port?
Is just choosing a specific port and hardcoding it the only way currently? alb.ingress.kubernetes.io/healthcheck-port only takes integers or "traffic-port" it seems. Ideally the annotation (ideally on the service) could take the port name too.

+1 this would be useful.
I was trying to do exactly what @Tinche is doing..moving to Amazon EKS.
to use a different port for the health check what I had to do was map two ports in my svc file, one for the app and one for the health check
then in the ingress file I specified
alb.ingress.kubernetes.io/healthcheck-path
alb.ingress.kubernetes.io/healthcheck-port


ref #348: move shop relevant sidebar menu items and categories to sho…

…p bundle

Q
A

Branch
master

Bug fix?
yes

New feature?
no

BC breaks?
no

Deprecations?
no

Tests pass?
yes

Fixed issues
chameleon-system/chameleon-system#348

License
MIT

Needs to be merged with the same branch in chameleon-shop

After a lot of testing in a non shop setup i found some problems with the main menu migration updates and fixed them. Now it is ready for merge.


Speech too fast and out of sync

Hello and congratulations for this work! I just tested a lot of other projects and yours is clearly the most efficient :)
Unfortunately and I do not understand why: the speech of the translation has a speed like x10 and we do not understand anything of course ^^ and then 15 seconds later, the speech speed returns to a correct speed.
Here is a short extract to illustrate the problem: FinalTest
Could you give me a clue so that I can find a solution?
(for the same project, I've done a transcription + translate with wisper without any problems, but I'm missing the voice translation and video sync).
Many thanks in advance for your reply!

Hello,
The TTS generates segments individually and then combines them into a single audio file. Sometimes, the duration of these segments exceeds the expected timeframe, causing overlap. To compensate, the program accelerates some segments based on their timestamps. Whisper may not always detect precise start and end timestamps, leading to accelerated segments when it shouldn't.
To address this issue, you can adjust the maximum speech acceleration for all segments in:
Advanced Settings
Max Audio Acceleration
The default value is 1.9. You can try other values like 1.5 or 1.0 to disable the acceleration. However, be cautious as this may cause some segments of speech to overlap.

Thanks for the great work! Is it possible to slow down the video itself so that the audio segment comes in at normal speed?
Thank you!

Thanks for the great work! Is it possible to slow down the video itself so that the audio segment comes in at normal speed? Thank you!

At the moment, that feature isn't available, but I'll keep it in mind for future updates. In the meantime, you can slow down the entire video before processing it to achieve the desired effect.

Your answer is as precise as your work! Thanks man :)
Question in passing: are you thinking of porting your script to Pinokio?

I haven't heard of it before, but I'll definitely look into it, thanks!


Enrich by Data Observatory should be smart about how it enriches

Currently if you try to Enrich by Data Observatory using a large polygon, like a county, the DO will try to sum together all the values from the block groups within that polygon which is slow.
We should be smarter about how we do that. One way would be to find the boundary level which has the smallest number of boundaries that fit within the target polygon and use that to do the aggregation. That would mean that we don't get as accurate results from the edge contributions (as we are using area weighted binning for the fractional areas) so perhaps a hybrid  approach is needed where take most of the value from the largest intact polygon then use smaller areas to calculate the parts that overlap.
@talos Lets talk about this when you get back!
cc @saleiva

should it be at DO level?
From my point of view a quick bbox comparison is enough, if the area of the polygon trying to augment is X times the avg of the level we are going to use it should use a level with less granularity.
my 2 cents

Yeah that would work and I think we should implement that, my only concern is that some of the larger geometries vary in size quite a bit. Might want to use the median instead of the average.
It might also be worth doing some research here and testing a few different approaches to see how inaccurate they are. We can calculate the interpolated population using a few of the DO geometry levels and compare how the result changes, that should give us an idea of how to do this optimally. I know that John has been playing with using rasters to quickly estimate the best geometry to use at a given zoom level. I think we can adapt that for this  as well.

Yep, I see rasters as the way forward on this.  Let's talk about it in person tomorrow.

any other info on this?

Yes!  I made some great progress last week:
https://github.com/CartoDB/bigmetadata/blob/master/tasks/util.py#L233
This means we now have raster summaries for all our Observatory geometries.  These raster summaries can very quickly (~1 sec for the whole world, about a twentieth of a second for a country-sized portion) tell us for any shape approximating to 50sq km rectangles:

Approximately how many of each boundary type are within it
On average how big each boundary type within it is, and thus extrapolate how many there would be if that shape was entirely filled with them
Approximately what percentage of that shape is filled with each sort of boundary

Respectively on bands 1, 2 and 3 of the raster.  The 50 sq km grid is a bit loose, but I think good enough as it still provides enough information to make sub-50 sq km decisions.
What remains is to write Observatory functions that actually use this data.  The plan for the first iteration is to be transparent with them, in other words to replace the existing use-the-smallest functionality with a use-the-most-appropriate functionality.  This will involve writing a ranking function of some kind, which will also need to be exposed for the next-gen Observatory interface, which will have a slider built off of it.
The first iteration Observatory function is scheduled on this sprint, so should be completed by Thursday after next -- and hopefully sooner.

We for some time have been generating raster summaries of all geometries, and using them to select the best boundary when the user does not choose one.


Request: Add toggle for "Template origins on grid intersections only"

I'd like to request/suggest a new dnd5e system option to force template origins to grid intersections.
Reasoning/background:
When a rectangle or line template is placed with the target/originating point on a square (not on an intersection), the colored area (color-shaded squares) will show an "oversized" area.
Example picture to show what I mean:

Image shows a 20x20 square template, with the "target point"/originating point placed on a square.
The colored squares, showing the "affected area" of the template, shows a 25x25 area.
I'd just like to clear up that I understand why this happens. The general rule for AOE coverage must assume that any square exactly 50% or more covered is in fact affected by the effect. When placing a rectangle template as shown above, all "edge" squares are 50% covered, and are thus marked as affected.
My issue with this function is basically threefold:

It arises by violating a rule outlined in the 2014 DMG p. 251: that template origins MUST be placed on intersections. XGE p. 81 references this rule and seems to indicate it's intended as a "rule of thumb" for miniature play, but I do believe a large percentage of D&D 5e groups do enforce it.

The "error" is too great - aka "It just feels and looks plain wrong". While, I think, most users can accept a circle template affecting a varying number of squares to a minor degree (e.g. a 5' radius sphere affecting 4 or 5 squares depending on placement on or off intersection; a 10' radius sphere affecting 12 or 13 squares); a 10' cube will affect 4 or 9 squares depending on placement, a 20' cube will affect 16 or 25 squares. This kind of variance should at least be optional. The system is already partially enforcing this kind of stuff with the "Grid-Aligned Square Templates" option.

When having no shown grid (e.g. setting grid opacity to 0% but keeping a grid system), it's somewhat cumbersome to place a square template "correctly". The color-marked/affected area will appear to shift and change as you drag the template around. It leaves it to the users to make sure the area is correctly placed.

Conclusion/suggestion:
I think a toggle to enforce the rule outlined in the 2014 DMG p. 251: that template origins must be placed on intersections would be a valuable addition to the dnd5e system. This toggle/checkbox option would group up nicely with the existing "Grid-Aligned Square Templates" option.

I hope that templates for emanations can still be positioned on the center of a square to reflect the center being the token.

I hope that templates for emanations can still be positioned on the center of a square to reflect the center being the token.

Great point. As I mention, I think the it's mostly needed for rectangular and line templates.


chore: release 0.31

Upgrades Go since we've been doing it for other projects.
Makes @achoimet's contribution from #192 available in a tag.

Codecov Report

Merging #197 (ae4d38f) into main (6393f07) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #197   +/-   ##
=======================================
  Coverage   53.36%   53.36%
=======================================
  Files          44       44
  Lines        3924     3924
=======================================
  Hits         2094     2094
  Misses       1367     1367
  Partials      463      463

Flag
Coverage Δ

2.0.5
39.78% <ø> (ø)

2.1.4
39.62% <ø> (ø)

2.2.2
?

2.3.3
?

2.4.0
39.62% <ø> (ø)

2.5.1
?

2.6.0
39.62% <ø> (ø)

2.7.0
39.62% <ø> (ø)

2.8.0
39.62% <ø> (ø)

community
39.78% <ø> (ø)

enterprise
51.98% <ø> (ø)

enterprise-<IP_ADDRESS>
51.98% <ø> (ø)

enterprise-<IP_ADDRESS>
?

enterprise-<IP_ADDRESS>
?

enterprise-<IP_ADDRESS>
?

enterprise-<IP_ADDRESS>
?

enterprise-<IP_ADDRESS>
?

enterprise-<IP_ADDRESS>
?

enterprise-<IP_ADDRESS>
?

enterprise-<IP_ADDRESS>
?

integration
53.36% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


HDFS-17370. Fix junit dependency for running parameterized tests in hadoop-hdfs-rbf

Description of PR
We need to add junit-jupiter-engine dependency for running parameterized tests in hadoop-hdfs-rbf.
How was this patch tested?
All parameterized tests in TestObserverWithRouter didn't run by mvn test command before this change. They worked correctly after making the change. I verified this on my local machine.
before
[INFO] Results:
[INFO]
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

after
[INFO] Running org.apache.hadoop.hdfs.server.federation.router.TestObserverWithRouter
[INFO] Tests run: 39, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 420.454 s - in org.apache.hadoop.hdfs.server.federation.router.TestObserverWithRouter
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 39, Failures: 0, Errors: 0, Skipped: 0

For code changes:

[x] Does the title or this PR starts with the corresponding JIRA issue id (e.g. 'HADOOP-17799. Your PR title ...')?

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
11m 36s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+0 :ok:
xmllint
0m  0s

xmllint was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
41m 44s

trunk passed

+1 :green_heart:
compile
0m 39s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
compile
0m 36s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
mvnsite
0m 43s

trunk passed

+1 :green_heart:
javadoc
0m 43s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
0m 33s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
shadedclient
76m 43s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 31s

the patch passed

+1 :green_heart:
compile
0m 32s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javac
0m 32s

the patch passed

+1 :green_heart:
compile
0m 29s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
javac
0m 29s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
mvnsite
0m 32s

the patch passed

+1 :green_heart:
javadoc
0m 28s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
0m 24s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
shadedclient
33m 44s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
9m 48s

hadoop-hdfs-rbf in the patch passed.

+1 :green_heart:
asflicense
0m 36s

The patch does not generate ASF License warnings.

139m 13s

Subsystem
Report/Notes

Docker
ClientAPI=1.44 ServerAPI=1.44 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6522/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/6522

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient codespell detsecrets xmllint

uname
Linux 8b0ac2a3186a 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 1ea43d0f0c510fca389532d800874415816d21f9

Default Java
Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6522/1/testReport/

Max. process+thread count
2582 (vs. ulimit of 5500)

modules
C: hadoop-hdfs-project/hadoop-hdfs-rbf U: hadoop-hdfs-project/hadoop-hdfs-rbf

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6522/1/console

versions
git=2.25.1 maven=3.6.3

Powered by
Apache Yetus 0.14.0 https://yetus.apache.org

This message was automatically generated.

Thanks for your review, @simbadzina.


feat: allow brillig to read arrays directly from memory

This PR allows the BrilligSolver to read inputs directly from ACIR memory. This allows us to remove constraints which are generated purely to load values out of memory to pass into ACIR.
Resolves https://github.com/noir-lang/noir/issues/4262

Benchmark results
Metrics with a significant change:

note_trial_decrypting_time_in_ms (8): 105 (+624%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit 92fb2b09 and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
128 txs

l1_rollup_calldata_size_in_bytes
45,636
180,516
720,036

l1_rollup_calldata_gas
222,456
870,588
3,464,148

l1_rollup_execution_gas
314,943
988,328
3,683,805

l2_block_processing_time_in_ms
1,153
4,368
17,282

note_successful_decrypting_time_in_ms
295 (-3%)
968 (-1%)
3,598 (-2%)

note_trial_decrypting_time_in_ms
:warning: 105 (+624%)
96.9 (-9%)
142 (-3%)

l2_block_building_time_in_ms
17,858 (-1%)
70,892
285,137

l2_block_rollup_simulation_time_in_ms
13,066
51,836
209,001

l2_block_public_tx_process_time_in_ms
4,764 (-3%)
18,976
75,873 (-1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
15,217 (+11%)
29,225 (+10%)

note_history_successful_decrypting_time_in_ms
2,302 (-8%)
4,537 (-1%)

note_history_trial_decrypting_time_in_ms
80.9 (-2%)
225 (+7%)

node_database_size_in_bytes
17,285,200
33,038,416

pxe_database_size_in_bytes
29,923
59,478

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
313 (+1%)
44,476
26,153

private-kernel-ordering
198 (-1%)
44,473
16,553

base-rollup
1,406
128,930
881

root-rollup
82.2
4,088
677

private-kernel-inner
445
71,607
26,153

public-kernel-private-input
246
32,563
26,153

public-kernel-non-first-iteration
245
32,605
26,153

merge-rollup
7.58 (-1%)
2,608
881

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
0 deployed contracts
1 deployed contracts

tx_size_in_bytes
17,187
39,991

Transaction processing duration by data writes.

Metric
0 new commitments
1 new commitments

tx_pxe_processing_time_ms
555
1,315

Metric
0 public data writes
1 public data writes

tx_sequencer_processing_time_ms
0.538 (+1%)
588 (-1%)


Rework of the habitability assignation probabilities?

Man this title is a mouthfoul.
But anyway, the heavy feels a bit off to me. In my current playthrough, like half of the species I find come from the "special" planets/stars. I think those species should be quite a lot rarer (also 'cause those one with the barren habitability have quite a buff in the early colonization).
So, shall we discuss about the new values?
I'd say at least a 75% chance of a "normal" planet class.

Normal habitability is random and currently the preferences are actually already assigned through events with weighed modifiers, including filters so that mainly rock-y looking portraits (don't really exist but I tried to find them) are assigned to Molten worlds, and so on. Weights can be experimented with as wanted so if you wish to tweak them go ahead and try some out until you think you've found a good combination. Either way, Stellar preference for example currently has an extraordinarily low chance of spawning already. Setting it even lower would inevitably get me complaints from people who think they never spawn.
There's 3 possible courses of action I can see:

Status quo.

Tweak weighed modifiers for less specials. Risk of having people on the other side of the spectrum complain.

Create an event chain that triggers on game start and asks the player to specify the wanted frequency of specialty preferences (and possibly other things as well later on).

3 is the only robust solution I think, but requires some serious extra work, and I'm not sure if that's really warranted...
Either way the UI lag is something I can't fix. I haven't noticed it personally on my pc, bu the Stellaris UI is notably laggy even in vanilla with an okay CPU+GPU. There are built-in filters to remove extra icons on the galaxy map as well.


5-7 second login times

I have Waterfall, my queue server, and my main server all hosted on the same machine. The queue server and the main server are hosted on <IP_ADDRESS> and Waterfall is open on the public IP address.
Upon connecting to the Waterfall server, it takes about 5-7 seconds to actually log onto the server, and it just hangs on "Logging in..."
I've tested Waterfall without any plugins, but the problem persists.
Please let me know if you need my configuration file.

Try disable plugins on spigot server. Logging screen depends on server response.

Tried that and still no-go, I should also mention if I run a normal MC server in online mode and connect to it without Waterfall, it only takes about half a second to log on.

plugins? both proxy and server

Yes, if I remove all plugins from the server and proxy, it still takes forever to log in :P

same machine?

Yep, I've moved the backends to <IP_ADDRESS> on the dedicated and the problem still persists

When you join the spigot server directly, is it an instant join?

Yes

referenced in https://github.com/PaperMC/Paper/issues/674

Same problem here. Logging in via Waterfall sometimes takes 10 seconds whereas using Bungeecord login is almost instant.

@sebastianbinder in my case it's the exact opposite.
Also try several different server modifications on the serving end to see if that makes a difference.

@DominicDV in your reference issue @aikar has an interesting explanation for why this may happen.

Did some further testing. For me this happens only on builds 103 upwards. Build 102 is fine. There has been a netty update between those two builds: https://github.com/SpigotMC/BungeeCord/commit/53cc3242e1d2786c34b2e138d233c4eeca8e3b1d
Can anyone tell me, if build 102 (https://ci.destroystokyo.com/job/Waterfall/102/) works for him and starting with build 103 (https://ci.destroystokyo.com/job/Waterfall/103/) these problems occur?

Guys, do you have any similar results like in my test above?

Yep can agree, i see a similar pattern @sebastianbinder

@WaterfallMC guys, do you have an idea why that new netty version works with Bungee but not with Waterfall?

I'll see about doing some profiling at since point - this should be priority for us

@jamierocks great! Hope there will be a solutions for us :)

Implementing some sort of basic timings system may also help, and it's been on my TODO list for a while.

@Techcable good idea - that'll be nice for profiling. Unfortunately I need to switch back to BungeeCord as soon as 1.12 gets released as I cannot use any newer Waterfall version after that build I mentioned before.

I have a patch that may help things, I'll make a commit when I get back ;)

Great - I can test the build as soon as it is available.
I'm not using sponge :/

Will you be able to log DNS requests made by the server? I encountered this delay with misconfigured DNS servers.

Why should there be a difference between Bungeecord and Waterfall if this was a DNS problem?

We do use the async DNS resolver, but I can't see how that would be causing any issues.

@jamierocks what about your patch that "may help"?

Guys, any update on this issue?

ah crap, i completely forgot to get around to this after my business exam. im away at the moment, but i imagine a quickfix would be downgrade netty

Any update on this?

With https://github.com/SpigotMC/BungeeCord/commit/73a81ff2439864187f0b40a7273e375540cc6bdc / https://github.com/WaterfallMC/Waterfall/commit/3b5e511743de70f4e60215e9ad4b37366d98bc47 the issue seems to be fixed for me...

Yeah, I thought it may have been - another netty update. Could someone else confirm this fix, and I'll get this issue closed.

Updated to master yesterday, have not noticed this problem yet.
2017-06-27 12:04 GMT+02:00 Jamie Mansfield<EMAIL_ADDRESS>
Yeah, I thought it may have been - another netty update. Could someone
else confirm this fix, and I'll get this issue closed.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/WaterfallMC/Waterfall/issues/123#issuecomment-311313232,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABKp3_2eASki0TBPSgusrtywIcX4i3NMks5sINOWgaJpZM4MTW3y
.

Good enough for me. Closing.

I still have this problem, and i tried witout plugins.. on every server..


maybe bump required node.js?

the current node.js version that they use in the container software, v10, will be deprecated soon:
https://help.glitch.com/hc/en-us/articles/16287495688845-What-version-of-Node-can-I-use-and-how-do-I-change-update-upgrade-it
feels like glitch will update their container software to at least 12. if they do, that would be a good time for us to bump the minimum required node.js version for this project too

it is past the date listed, and v10 is still present on containers and in use by their software

https://support.glitch.com/t/fallback-node-version-update/67960?u=wh0 see you thursday

https://support.glitch.com/t/fallback-node-version-update/67960/7?u=wh0 see you tuesday instead

https://support.glitch.com/t/fallback-node-version-update/67960/8?u=wh0 see you not this tuesday instead

https://support.glitch.com/t/fallback-node-version-update/67960/9?u=wh0 see you next tuesday instead

https://support.glitch.com/t/fallback-node-version-update/67960/10?u=wh0 see you thursday instead


[REQUEST] Support for CUDA Graphs

Does DeepSpeed support Pytorch code with CUDA Graphs? If not, do think it may be helpful to DeepSpeed users for further speedups?
Context: I am trying to optimize my training code that can benefit from launching multiple kernels together.

Hi @sarvghotra
Thanks for mentioning this.
Of course, we will look into this to bring faster speed to DeepSpeed.
Best,
Reza

Any progress on this request?


Wasm build

Following the discussion on #113 :
It would be nice to have the option to use the rapier3d Wasm build instead of the rapier3d-compat build.
Size on disk as of 0.9.0:
rapier3d (Wasm): 1.4MB
rapier3d-compat (JS): 1.9MB

I did a little asking on the Rapier Discord. People seem to be using the non-compat packages successfully with Webpack 5, using a config like the following:
const path = require('path');

const config = {
    entry: './src/index.js',
    output: {
        path: path.resolve(__dirname, 'dist'),
        publicPath: 'auto',
    },
    experiments: {
        asyncWebAssembly: true
    }
}

module.exports = (env, argv) => {
    if (argv.mode === 'development') {
        config.mode = 'development';
        config.output.filename = 'physics.debug.js';
        config.output.webassemblyModuleFilename = 'rapier3d.debug.wasm';
    }

    if (argv.mode === 'production') {
        config.mode = 'production';
        config.output.filename = 'physics.js',
        config.output.webassemblyModuleFilename = 'rapier3d.wasm';
    }

    return config;
};

Maybe we can reconstruct a similar setup for Vite. Vite seems to have a maintained plugin here:
https://github.com/Menci/vite-plugin-wasm

Haven't people inlined WASM payloads into JS? Maybe via LZ4.

I took a crack at this by taking the same approach that this person did in their repo, where this is the commit they migrate from raiper3d-compat to the wasm build.
Applying the changes in that repo - mainly adding wasm & top level await plugins to vite.config, and then refactoring all the imports in the library - seemed to make the demo work successfully with the WASM build. Problem is, the wasm build doesn't seem to play nice with vitest, as whenever I changed any of the test imports to use the WASM build I got the following error:
Error: Failed to resolve entry for package "@dimforge/rapier3d". The package may have incorrect main/module/exports specified in its package.json.
I believe this is due to an incompatibility with the vite-wasm-plugin and the vitest environment, as detailed in this issue.
I have made a draft PR for visibility of the issue if it is helpful, as I'm not sure how to proceed from here: https://github.com/pmndrs/react-three-rapier/pull/385

Thanks for spending time on this @balraj-johal! I had a very brief look at your PR -
In my mind, ideally we would have 2 flavours of @react-three/rapier - one that still uses @dimforge/rapier3d-compat, and a new one that uses @dimforge/rapier3d (which has the external wasm file).
I think maintaining a flavour that doesn't require folks to set up a wasm friendly build config is important for keeping the library accessible. Otherwise, I fear we're going to have a lot of folks sticking on the old versions.
I'm not exactly sure how this should look, there's a few ways to approach it. e.g.

two separate packages
one package with entrypoints
one package with support for both @dimforge/rapier3d and @dimforge/rapier3d-compat + tree shaking support to remove the unused dependency

That last one could be interesting, as it could solve some problems around how we handle this with respect to the new addons package.
This is a bit of a tricky problem to solve, but I think it's worth solving 🙂

Indeed @isaac-mason, I had the same idea. Ideally one could choose something like import { Physics } from '@react-three/rapier/wasm' if one's setup supports it.
I haven't thought too much about how that could work, but in general since everything is created via factories coming from the world instance, it might not be too painful to switch out just the core context with the wasm equivalent 🤔

Using the -compat version shouldn't affect determinism. Beyond a small difference in how the library is initialised, there aren't any functional differences.

awesome news! thanks for the clarification


Deploy to Heroku

Does this only work on meteor hosting, or can I get this to work on a heroku deploy? If so, what should I set the env variables to on heroku ?

This should work on whathever hosting platform you want to use, i have this working on :
DO, Modulus and meteor hosting never use heorku, but it should be the same

I am trying to deploy to heroku now and something is amiss.  Any idea on what I should set env variables to?  Thnks

Hell, I've never deployed meteor to a heroku instance, I personally prefer something simple like Modulus, Scalingo or if you want to hurt for a couple of minutes NodeChef. Still, what are you doing to deploy? This should work on heroku since we are not using a temporary server folder to accumulate files before uploading to S3.

I ended up manually entering AWS API Key and Secret directly into Heroku as a configuration variable. All working fine now.


Support multi-channel ABFs

Dear @swharden
thanks a lot for your program, really nice.
We have a set of .abf files that display both recorded signals as well as our voltage protocol. When we use your program by just dragging and dropping our files we unfortunately only can see the traces from the recording but not the protocol. The generated csv file only display the time and the sweeps but not the protocol.
We have been looking at the documentation but could not find anything how we could also extract the data from the protocol we apply. Is there any way to extract as well the protocol trace from our files?
if you need to look at one example I can provide you a file.
We are using Clampfit version <IP_ADDRESS>
Best

Hi @rjlopez2, github lets you add files <10MB directly in this comments box. Is that enough for you to share a sample ABF?
When you say "voltage protocol", do you mean a trace that you normally have to generate using clampfit by clicking "edit" and "create stimulus waveform signal"? If this is the case, one solution may be to use ClampFit to generate the signal, then save the result as a new ABF. It's a little hacky, but it could get the job done in a pinch.
Note that there's also pyabf which can create stimulus waveform signals programmatically

Hi @swharden,

github lets you add files <10MB directly in this comments box. Is that enough for you to share a sample ABF?

indeed I wanted to upload right the way an example file but git-hub didn't like it the .abf format. I changed the file extension to .txt but this is in fact a .abf file. Just change it back to .abf and give it a go.

When you say "voltage protocol", do you mean a trace that you normally have to generate using clampfit by clicking "edit" and "create stimulus waveform signal"?

I assume this is the case, but I can confirm this later with the persons that did the experiment.

one solution may be to use ClampFit to generate the signal, then save the result as a new ABF. It's a little hacky, but it could get the job done in a pinch.

yes, we came up with this idea as well, however since we have large number of recording we would like to avoid to have to go one by one and try to do it programmatically when possible.

Note that there's also pyabf which can create stimulus waveform signals programmatically

yes thanks!
I noted this after I formulate the issue here, but I will definitely have a look at it.
thanks a lot in advance.
Ruben
2022_08_12_0006.txt

Re-stating the feature suggestion: AbfConvert currently only outputs the first ADC channel in the ABF. The program could be extended to export all channels, solving the issue originally described here.
The code that controls which channel is exported is here:
https://github.com/swharden/AbfConvert/blob/027a2395f988c17f09e1fc4c6981760b27774757/src/AbfConvert.GUI/Form1.cs#L63-L66
abf.GetSweep() has an optional argument to indicate which channel is to be exported.

Hey @swharden
Thanks for clarifying the issue here.
Btw I manage tho use the pyabf API and it's no just super well documented and straight forward to use but also super complete. It allows me to extract the two channels in the record. Probably this was also part of the information I was confused: there is indeed two channels containing data: one with the reading from the experiment (pAmp) and the other one is having what we called earlier the "voltage protocol" (mV).
In the mean time I will stick to the pyabf API because is solving our program and because even if I would like to make a contribution to implement this  feature,  unfortunately I am not literate with the language this app was build with (I believe C#)
Thanks again for your feedback and fast response and for helping me to understand/ learn what was happening here -newby here :)
Cheers
Ruben

Hi @rjlopez2, sorry it took so long to get to this.
I added an option to set the channel when exporting. You can download the new version 1.2 from the website. Let me know if this doesn't do the trick! https://swharden.com/software/AbfConvert/


Applying blockwise min/max on array with multiple partitions leads to error

Hi all,
I was trying to get the maximum and minimum values for an array using dask.array's blockwise function. However on calling the compute function, I end up with an index error.
This only happens when the array has multiple partitions, it does not occur when there is only a single partition within the array. Below is a minimal, reproducible example + the resulting error:
import dask.array as da

z = da.random.randint(1,100, (10000), chunks=5000)
z = da.blockwise(np.min, "i", z, "i", dtype=z.dtype)
z.compute()

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/v_envs/chaosEnv/lib/python3.8/site-packages/dask/base.py", line 285, in compute
    (result,) = compute(self, traverse=False, **kwargs)
  File "/home/v_envs/chaosEnv/lib/python3.8/site-packages/dask/base.py", line 568, in compute
    return repack([f(r, *a) for r, (f, a) in zip(results, postcomputes)])
  File "/home/v_envs/chaosEnv/lib/python3.8/site-packages/dask/base.py", line 568, in <listcomp>
    return repack([f(r, *a) for r, (f, a) in zip(results, postcomputes)])
  File "/home/v_envs/chaosEnv/lib/python3.8/site-packages/dask/array/core.py", line 1077, in finalize
    return concatenate3(results)
  File "/home/v_envs/chaosEnv/lib/python3.8/site-packages/dask/array/core.py", line 4807, in concatenate3
    chunks = chunks_from_arrays(arrays)
  File "/home/v_envs/chaosEnv/lib/python3.8/site-packages/dask/array/core.py", line 4576, in chunks_from_arrays
  File "/home/v_envs/chaosEnv/lib/python3.8/site-packages/dask/array/core.py", line 4578, in <listcomp>
    result.append(tuple([shape(deepfirst(a))[dim] for a in arrays]))
IndexError: tuple index out of range

Environment:

Dask version: 2021.6.1
Python version: 3.8.5
Operating System: ubuntu 20.04
Install method (conda, pip, source): pip

Thank you!

Hi @Mulan-94
Your example should be:
import numpy as np
import dask.array as da

z = da.random.randint(1,100, (10000), chunks=5000)
z = da.blockwise(np.min, "", z, "i", dtype=z.dtype)
z.compute()

...which computes the answer 1.
The reason we have np.min, "", ...`` (instead of np.min, "i", ...) is that we know the output of np.min` will be a scalar. Roughly speaking:

scalar --> ""
1d array --> "i"
2d array --> "ij"

This particular bit of the blockwise examples might be useful to you:

Any index, like i missing from the output index is interpreted as a contraction (note that this differs from Einstein convention; repeated indices do not imply contraction.) In the case of a contraction the passed function should expect an iterable of blocks on any array that holds that index. To receive arrays concatenated along contracted dimensions instead pass concatenate=True.
Inner product multiplying a by b, two 1-d vectors

def sequence_dot(a_blocks, b_blocks):
    result = 0
    for a, b in zip(a_blocks, b_blocks):
        result += a.dot(b)
    return result

z = blockwise(sequence_dot, '', a, 'i', b, 'i', dtype='f8')
z.compute()
250

@GenevieveBuckley thank you so much for your reply. Apologies for the example, it was an oversight on my part.

This particular bit of the blockwise examples might be useful to you

Noted, I think this can be closed then. Thanks again.

No need to apologize, it's tricky to get your head around this stuff.
Glad we got you unstuck :+1: