Clean up cross bootstrapping

Contains #320840, will recompute diff once that one is merged.
This will just be one commit then.
Description of changes
For a long time, we've had crossLibcStdenv, *Cross libc attributes, and *bsdCross pre-libc package sets. This was always bad because having "cross" things is "not declarative": the naming doesn't reflect what packages need but rather how we provide something. This is ugly, and creates needless friction between cross and native building.
Now, almost all of these *Cross attributes are gone: just these are kept:

Glibc's and Musl's are kept, because those packages are widely used and I didn't want to risk changing the native builds of those at this time.

generic libcCross, theadsCross, and friends, because these relate to the convolulted GCC bootstrap which still needs to be redone.

The BSD and obscure Linux or freestnanding libcs have conversely all been made to use a new stdenvNoLibc, which is like the old crossLibcStdenv except:

It usable for native and cross alike

It named according to what it is ("a standard environment without libc but with a C compiler"), rather than some non-compositional jargon ("the stdenv used for building libc when cross compiling", yuck).

I should have done this change long ago, but I was stymied because of "infinite recursions". The problem was that in too many cases we are overriding stdenv to remove things we don't need, and this risks cyles since those more minimal stdenvs are used to build things in the more maximal stdenvs.
The solution is to pass stage.nix stdenvNoCC, so we can override to build up rather than tear down. For now, the full stdenv is also passed, so I don't need to change the native bootstraps, but I can see this changing as we make things more uniform and clean those up.
Finally, the BSDs also had to be cleaned up, since they have a few pre-libc dependencies, demanding a systematic approach. I realized what @rhelmot did in 6120256 (specify what packages just need stdenvNoLibc) is definitely the right approach for this, and adjusted NetBSD and OpenBSD to likewise use it.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

In the interest of not waiting a long time for ofborg again, I will move those comments in a second PR.

@Ericson2314: how did you miss the ofBorg label that it rebuilds a stdenv?

51f1ecaa59a3 Clean up cross bootstrapping

This one rebuilds both *-darwin stdenvs.  Let me revert the PR; you can redo it later.

I am sorry @vcunat. I do not know how I missed that; there is no excuse.


Handle corrupted domain.json files gracefully

We got a report of a user having the Zulip desktop app just hang on startup.
It turned out the cause was their domain.json file was totally corrupted JSON and didn't open (it was filled with \0 characters).
We should probably do some combination of the following.
(0) See if we have any bugs that might cause this corruption (e.g. if we open the file for writing before doing a network request and only after the network request returns, write to the file).
(1) Quickly look into whether there's a standard Electron storage library we should be using that does this sort of error-handling for us.  That might be the best plan.
(2) If not, make the code that reads domain.json handle errors in a reasonable way.  We probably want to show some sort of user-facing error like "The Zulip app's configuration file (path) seems to be corrupted; this is very rare and likely caused by problems with your filesystem.." with a button "Clear state" or something.  And we should log something to e.g. Sentry so we can track how often it happens.

@geeeeeeeeek is it possible that reloading the DB while updating the saved server causing this issue. Do we really need to reload db here -
https://github.com/zulip/zulip-electron/blob/0a1866abb58a1bba4200e790161eb357b39ac3e9/app/renderer/js/utils/domain-util.js#L49
https://github.com/zulip/zulip-electron/blob/0a1866abb58a1bba4200e790161eb357b39ac3e9/app/renderer/js/utils/domain-util.js#L218
https://github.com/zulip/zulip-electron/blob/master/app/renderer/js/utils/domain-util.js#L212-L221

Short term solution - If domain.json or setting.json gets corrupted for some reason then re-create both the files so that users don't get the hanging app window.
Long term solution - Find the root cause of why the files are getting corrupted and fix that.

Made some changes in error handling of corrupted config files. From now on, if the config files (settings.json, domain.json) gets corrupted for some reason then we re-initialize those files that way user won't get hanging app window. For an example if the domain.json gets corrupted -

First we're showing the error dialog -

Deletes and re-init domain.json. Also logging the errors for better debugging.
FYI @timabbott.

Is this fixed? If so, i think, it can be closed.

Is this fixed? If so, i think, it can be closed.

@vsvipul nope, I still get this error once in a while but not sure how to reproduce.


'npm link' issue with yeoman generator

Hello,
I was trying to use latest version of yeoman jhipster generator, this implies to run 'npm link' in the generator source directory, everything seems to work fine (link has been created) but it fails when I try to use it.
It works well when not using nvm.
Here is how to reproduce the error with Node 0.10.35 on Windows 7 64bit
git clone https://github.com/jhipster/generator-jhipster.git
cd generator-jhipster
npm link

npm install -g yo
yo jhipster
Error jhipster

You don't seem to have a generator with the name jhipster installed.
You can see available generators with npm search yeoman-generator and then insta
ll them with npm install [name].
To see the 0 registered generators run yo with the `--help` option.

This is not an NVM issue.
Since you've cloned jhipster instead of installing with npm, you also need to run npm install within the cloned directory. This is something npm does automatically, but cloning does not.
When I cloned the project and ran npm install, followed by npm link, the generator ran:

Thanks a lot and sorry for mis-reporting.

Your tool is great, especially because it does not require node or python to run as others do.

No worries, and I'm glad to hear you're finding it useful!!


"transfer" transaction "actions[0].action_trace.receipt.receiver == "tokenxchange" no longer exist?

Hi, in the account actions I query from block producers, I realized the "action_trace.receipt.receiver" in "transfer" transactions is no longer the actual sender or receiver of the transaction, instead the receiver became the contract name, such as "eosio.token". For exchanges, should we remove this logic (actions[0].action_trace.receipt.receiver == "tokenxchange) for accepting deposits?

normally receiver = contract owner (the account who has the executing contract)

closed as no reply. Please ask in eosio.stackexchange.com if you have further questions.


Add a check for similar names

Currently, pypi will reject a new package upload if the name is "too similar" to an existing package. However, that is the only place I could find to run this similarity check. Running a search for the name I wanted to use did not bring up the similarly-named package in the first five pages of results; I finally had to guess what the similar name might be and search for it directly.
It would be useful to have a "check if name is valid" search box on the website, where I could have run the search and seen exactly what package was blocking my desired name.
See also https://github.com/pypi/warehouse/issues/11139

Yes, i think this idea is great and very doable.
I hope that the official will implement this imaginative idea.


⚠ Bofrost.be has degraded performance

In 38f09e8, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1517 ms

Resolved: Bofrost.be performance has improved in 27cf525.


ISO needs a more recent kernel to support Ryzen 5

Hello,
The current ISO can't boot properly on a Ryzen 5 (4500U in my case) as the 5.4 kernel doesn't support the GPU inside the Ryzen CPU.
Regards,
Angelo

which kernel do we need?

which kernel do we need?

ok, will go with kernel59 as the official xfce iso does.

ok, will go with kernel59 as the official xfce iso does.

which kernel do we need?

Anything from 5.8 and higher will work. Perhaps lower as well, but I've never tested those. Usually I stay with LTS kernels, but for some reason Manjaro hasn't marked the 5.10 as being LTS.
Regards,
Angelo

which kernel do we need?

Anything from 5.8 and higher will work. Perhaps lower as well, but I've never tested those. Usually I stay with LTS kernels, but for some reason Manjaro hasn't marked the 5.10 as being LTS.
Regards,
Angelo

its on kernel 59 now

its on kernel 59 now


Create a CIP for KELs in Cardano

This task will be defined and created in conjunction with the Cardano Foundation Identity team

Initially, KEL will be anchored using CESR serialization as strings in the transaction metadata, splitted in several strings by max length allowed.

we created a cardano agent that submits key events to cardano as transaction metadata.
We defined to used the metadata label<PHONE_NUMBER>038518 obtained with the python function:
METADATA_LABEL = int(''.join([str(ord(char) - 96) for char in 'KERIWATCHER'.lower()]))


Move node-typha.yaml -> node.yaml

This manifest was incorrectly named as "typha" even though it is valid
independent of whether or not typha is in use.
Also move the KDD mode manifest to the top to match other guides.

[ ] Tests
[ ] Documentation
[ ] Release note

None required

Deploy preview for calico ready!
Built with commit 94a2b4c8b5d0e7e2673867f60ad7ed3ab3426f63
https://deploy-preview-2571--calico.netlify.com

Are you sure there aren't external references to the old name, which this change will break?
(Thought triggered by thinking of Henry's test script for installing and testing DNS policy in an EKS cluster, which uses a YAML named calico-typha.yaml.)

@neiljerram I haven't changed the location for any released versions, just v3.7 and master. There may be external references to this manifest, but I'm not worried about breaking them if they are targeting unreleased code.
The currently released versions are actually different already, but I left them as-is. For example:
v3.6:
https://docs.projectcalico.org/v3.6/getting-started/kubernetes/installation/manifests/app-layer-policy/kubernetes-datastore/calico-networking/calico-node.yaml
v3.7 (after this PR):
https://docs.projectcalico.org/v3.7/manifests/alp/node.yaml

Ok that sounds fine then; thanks for considering my paranoia!


Some issues with _headers

I had to make some adjustments to get the theme site up and running, see https://github.com/spf13/hugoThemesSite/blob/master/static/_headers

That policy works for me elsewhere, but I'll see if I can hone in on this to improve it. Here's our current security grade, which is a "D" so lots of room for improvement.
https://observatory.mozilla.org/analyze.html?host=themes.gohugo.io
Also, it doesn't look like we're forcing SSL on Netlify, but can take that up elsewhere.
Thanks!

Definitely set up SSL redirection. Also set up HSTS and submit to HSTS preload list.
CSP should be doable to, you just need to go through all the docs and see what you load from which origin. You can try https://addons.mozilla.org/en-us/firefox/addon/laboratory-by-mozilla/ but it will definitely need work from your side. Also, report-uri.io is your friend.

The site gets a B- score now which is much better so I suggest that this issue can be closed.
https://observatory.mozilla.org/analyze/gohugo.io


fix: Corrected a problem where code was not multithread safe

Summary:
Closes #1647
When running the validator with multiple datasets (like in the web validator) we sometimes have errors in the results because the noticeContainer is shared between threads.
Please make sure these boxes are checked before submitting your pull request - thanks!

[x] Run the unit tests with gradle test to make sure you didn't break anything
[ ] Add or update any needed documentation to the repo
[x] Format the title like "feat: [new feature short description]". Title must follow the Conventional Commit Specification(https://www.conventionalcommits.org/en/v1.0.0/).
[x] Linked all relevant issues
[ ] Include screenshot(s) showing how this pull request works and fixes the issue(s)

The problem repaired in this in PR happened only if the validator is processing more than one dataset at the same time.
As a stopgap measure, for the web validator we changed the configuration to allow only 1 simultaneous request per instance.


Add alt text to Profile and Help menu icons

help menu was added in #380 and settings menu was added in #180.  These values are read by jaws screen reader.


⚠ sandbox-api.piste.gouv.fr healthcheck has degraded performance

In bf00f4f, sandbox-api.piste.gouv.fr healthcheck (https://sandbox-api.piste.gouv.fr/cassation/judilibre/v1.0/healthcheck) experienced degraded performance:

HTTP code: 200
Response time: 2578 ms

Resolved: sandbox-api.piste.gouv.fr healthcheck performance has improved in bbb0b0c.


Update and remove logger debug messages

Description

Closes #192

Additional Changes

Update spatial_avg() with check for weights kwarg
Add test for spatial_avg() using custom weights

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings
[x] Any dependent changes have been merged and published in downstream modules

If applicable:

[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass with my changes (locally and CI/CD build)
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have noted that this is a breaking change for a major release (fix or feature that would cause existing functionality to not work as expected)

Codecov Report

Merging #193 (2f2f8f6) into main (201a575) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main      #193   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            8         8
  Lines          381       419   +38
=========================================
+ Hits           381       419   +38

Impacted Files
Coverage Δ

xcdat/__init__.py
100.00% <100.00%> (ø)

xcdat/axis.py
100.00% <100.00%> (ø)

xcdat/bounds.py
100.00% <100.00%> (ø)

xcdat/dataset.py
100.00% <100.00%> (ø)

xcdat/spatial_avg.py
100.00% <100.00%> (ø)

xcdat/xcdat.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Added description of ImportError on MacOS High Sierra to 'Troubleshooting and Common Errors' section

Added description of ImportError on MacOS High Sierra to 'Troubleshooting and Common Errors' section

Thanks for working on this @novokrest!  I merged this as eb7a7446391326be6c6d540a5770cbbd3795caff, after a few tweaks.  I hope this will help a lot of future folks avoid these confusing filesystem problems :)
As a sidenote, you might want to set your GIT_AUTHOR_NAME to be your full name, since we use that data to write the Zulip release notes.


[SPARK-42945][CONNECT][FOLLOWUP] Disable JVM stack trace by default

What changes were proposed in this pull request?
This is a follow-up of #40575.
Disables JVM stack trace by default.
% ./bin/pyspark --remote local
...
>>> spark.conf.set("spark.sql.ansi.enabled", True)
>>> spark.sql('select 1/0').show()
...
Traceback (most recent call last):
...
pyspark.errors.exceptions.connect.ArithmeticException: [DIVIDE_BY_ZERO] Division by zero. Use `try_divide` to tolerate divisor being 0 and return NULL instead. If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error.
== SQL(line 1, position 8) ==
select 1/0
       ^^^

>>>
>>> spark.conf.set("spark.sql.pyspark.jvmStacktrace.enabled", True)
>>> spark.sql('select 1/0').show()
...
Traceback (most recent call last):
...
pyspark.errors.exceptions.connect.ArithmeticException: [DIVIDE_BY_ZERO] Division by zero. Use `try_divide` to tolerate divisor being 0 and return NULL instead. If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error.
== SQL(line 1, position 8) ==
select 1/0
       ^^^

JVM stacktrace:
org.apache.spark.SparkArithmeticException: [DIVIDE_BY_ZERO] Division by zero. Use `try_divide` to tolerate divisor being 0 and return NULL instead. If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error.
== SQL(line 1, position 8) ==
select 1/0
       ^^^

	at org.apache.spark.sql.errors.QueryExecutionErrors$.divideByZeroError(QueryExecutionErrors.scala:226)
	at org.apache.spark.sql.catalyst.expressions.DivModLike.eval(arithmetic.scala:674)
...

Why are the changes needed?
Currently JVM stack trace is enabled by default.
% ./bin/pyspark --remote local
...
>>> spark.conf.set("spark.sql.ansi.enabled", True)
>>> spark.sql('select 1/0').show()
...
Traceback (most recent call last):
...
pyspark.errors.exceptions.connect.ArithmeticException: [DIVIDE_BY_ZERO] Division by zero. Use `try_divide` to tolerate divisor being 0 and return NULL instead. If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error.
== SQL(line 1, position 8) ==
select 1/0
       ^^^

JVM stacktrace:
org.apache.spark.SparkArithmeticException: [DIVIDE_BY_ZERO] Division by zero. Use `try_divide` to tolerate divisor being 0 and return NULL instead. If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error.
== SQL(line 1, position 8) ==
select 1/0
       ^^^

	at org.apache.spark.sql.errors.QueryExecutionErrors$.divideByZeroError(QueryExecutionErrors.scala:226)
	at org.apache.spark.sql.catalyst.expressions.DivModLike.eval(arithmetic.scala:674)
...

Does this PR introduce any user-facing change?
Users won't see the JVM stack trace by default.
How was this patch tested?
Existing tests.

Merged to master. Thank you, @ueshin and @allisonwang-db .


ffmpeg / ffprobe executable not found

Describe the bug
I had to update my NodeJs (20.17.0) / npm (10.8.2) due to requirement of another tool. Therefor my PG2 v.2.0.0 stopped working and I had to update to -current edge (2.0.3).
After some issues I got it working again - except for Video Support. At startup, the ffmpeg / ffprobe check fails - Error: Error accessing ffmpeg, cant find executable: Error: ffmpeg exited with code 2
I knew this issue from 2.0.0 release and solved it by copying the executable arm version to .../node_modules/ffprobe-static/bin/linux/arm and gave it the correct permissions.
But this solution isn't working for 2.0.3.
What I checked so far

compare file/folder structure between 2.0.0 and 2.0.3 regarding executables - OK
set permissions and ownership to all files - OK
check access to executable ffmpeg (system version) for PG2-user by running ffmpeg -version - OK
check access to executable ffprobe (system version) for PG2-user by running ffprobe -version - OK
check access to executable ffmpeg (npm version) for PG2-user by running ../node_modules/ffprobe-static/bin/linux/arm/ffmpeg -version - OK
check access to executable ffprobe (npm version) for PG2-user by running ../node_modules/ffprobe-static/bin/linux/arm/ffprobe -version - OK

Now I have no further Idea on how to fix this. Any suggestions?
Additional information:
I did reuse the config.json and database from my 2.0.0 setup.
Environment (please complete the following information):

OS: armbian (armhf)

Used app version:

compiled from source (2.0.3)

Finally got it!
May anyone else facing this issue, may this helps:
1. Get the full path for ffmpeg

edit node_modules/ffmpeg-static/index.js and add the line console.log(ffmpegPath); before module.exports = ffmpegPath;
save and exit
run /usr/bin/node index.js will output the correct path where PG2 is looking for the executable

2. Get the full path for ffprobe

edit node_modules/ffprobe-static/index.js and add the line console.log(ffprobePath) before exports.path = ffprobePath;
save and exit
run /usr/bin/node index.js will output the correct path where PG2 is looking for the executable

3. Copy the executables

copy the correct version (according to your system) into the paths from 1. and 2.

I made the mistake to compile PG2 from source on a x86 machine, but run it on an ARM. So NPM downloaded the wrong version and I had to replace it.


Any error that is thrown in gulp files is completely silenced

It has been at least more than 11 times that I was bitten by this and then I need to use very unorthodox techniques to figure out where the silenced error was thrown.
Can we print out those errors?
Related https://github.com/dignifiedquire/aegir/issues/67

no more gulpfiles :tada:


IDEA: Change all the two-char functions

You could change the two-char atoms to either overloads of other atoms, or one-char atoms. I assume there isn't already 256 used bytes.
Sorry for typos, I'm on mobile.

How do you suggest overloading? Considering that atoms have fixed arity, you might be referring to type overloading. If you are, I don't see how this would save many bytes, in the long run.

I'm afraid it's too late now :-1:... and yes, I think all 256 bytes were being used before you even asked for this.

What about the two-char nilads? Those could possibly be copied into the unused nilad bytes.

I think that once they are assigned their two-byte names, they cannot change, because it will break each and every PPCG answer using them at all.

That's why I said copied.

Nah, that would be impractical and wasteful. Newer nilads could use that space!

Well, at least nilads like pi should be a nilad.

See my edited message.


Make website responsive

Make sure to check the following pages:

distro item
shows

They have fixed-with images that need to be taken care of!


Brainteasers-Randomized_array

[ ] PR's title includes the challenge's name and language
[ ] PR has short and clear description of the challenge
[x] PR has appropriate labels and milestones for easy identification
[x] PR it is assigned to the owner
[x] reviewers are assigned
[x] the PR contributes only one focused change
[x] the branch is up to date with main/master
[x] the code works when pulled and run locally
[x] all conflicts are resolved (if any)
[x] It is linked to an issue in the appropriate column of the project board
[x] feedback is addressed (if any, and if it is appropriate feedback.)

README Documentation

[x] The solution is documented in /src/README.md
[x] The markdown source is formatted
[x] Spelling and grammar is correct in all text
[x] The markdown looks correct when you preview the file
[x] All links and images work
[x] The README documents the solution's behavior, strategy(ies) and implementation(s)
[x] There are use cases in code blocks to illustrate the function's behavior

Python Files

[x] There is a module header
[x] There is a module docstring
[x] File names are in snake_case
[x] Test files are named test_<module_name>.py

Function Docstring

[x] Behavior description
[x] Parameter description
[x] Return value description
[x] Include any assumptions
[x] Include 3 or more (passing!) doctests
[x] Include 1-2 use cases (if necessary)

Function Implementation

[x] The solution is not is not copied from djeada
[x] The code is auto-formatted
[x] The code has no (reasonable) linting mistakes
[x] Variables are named with snake_case
[x] The function has a clear and helpful name
[x] The file's name matches the function name
[x] The code follows the strategy as simply as possible
[x] Variable names are clear and helpful
[x] Comments explain the strategy (if necessary)
[x] There are type annotations
[ ] (challenge) The code includes defensive assertions

Unit Test Suite

[x] The test class has a helpful name in PascalCase
[ ] The test class has a docstring
Each unit test has

[x] A helpful name
[ ] A clear docstring
[x] Only one assertion

[ ] All tests pass
[ ] There are tests for defensive assertions
[x] There are tests for boundary cases
[x] Test suite includes black-box and glass-box tests

I just finished the changes I was supposed to fix


How to sponsor fixing bugs exposed when searching large files?

I really love "ag" and use it every day for work as a developer, but it has limitations when searching big files. I have put together my own fork with many PRs which haven't made it into this repo, and it gets a lot closer. It includes PCRE2 from #1035 but it still has trouble with big files. Any way I can sponsor somebody and how do I go about it?

 One word of warning - most of my open PRs on this repo are pretty old and in most cases I have better versions of them in my own fork. I sorta lost interest in pushing PRs here due to the general trend of only small tweaks being accepted rather than larger features/fixes/refactors.
Anyway, if you want to keep rolling with PCRE2 in your fork, check out https://github.com/aswild/the_silver_searcher/commit/bbd3ee46113e3e7f13a75ba65fa35da06b3fe2d1 where I removed PCRE1 support and got considerable speedup by reducing heap thrashing on every call to pcre2_exec.
As far as searching big files goes, I think that's a fundamental/hard problem in ag. Except when searching stdin in stream mode, the whole file to be searched has to be buffered in memory, either with mmap or by reading it into the heap. There's even a check that the file length isn't greater than INT_MAX due to PCRE limitations*. Naturally, this leads to memory pressure and performance issues on some systems. This is further complicated by the way ag saves matches as pointers into the full file buffer, and since all matches are collected before stdout is mutex-locked, it means the whole buffer has to wait around in memory before any of its matches get printed to the console.
I don't mean to sound discouraging, these aren't insurmountable roadblocks, but they are the product of multiple interlocking facets of ag's design that would require significant effort to refactor.
* I just realized that this limitation isn't needed in PCRE2 and I should probably remove it in my fork.

Hi Allen, wow that's a fantastic repo you have. Yes, I'll attempt to merge in your changes, it will take me a while (vacation tomorrow) but excited to see it perform better.

There's even a check that the file length isn't greater than INT_MAX due to PCRE limitations*I removed that after applying your original PCRE2 patch.
but they are the product of multiple interlocking facets of ag's design that would require significant effort to refactorGot it, I'm not sure yet if I would mind if AG had to read the whole file into the heap as long as it free'd it after searching. The majority of my "big" file searches are right over the "big_file" hump and under 20GB. The systems have enough memory to cover putting it in the heap, but I understand if the current design would start triggering limitations when searching large files.

PS. I see good performance gains when generating and consuming profiling results.
|   Test
|
ICC 2019
-O3 -ipo -axCORE-AVX2 -xSSE4.2 -qopt-report=4 -qopt-report-phase ipo
|  ICC 2019
-O3 -ipo -axCORE-AVX2 -xSSE4.2 -ansi-alias -qopt-report=4 -qopt-report-phase ipo -prof-use -prof-dir=$PWD  |  ICC 2019
-O2 -ipo -axCORE-AVX2 -xSSE4.2 -ansi-alias -qopt-report=4 -qopt-report-phase ipo -prof-use -prof-dir=$PWD  |  GCC 9.2-O3 -flto -g0 -march=native -mtune=native  |  GCC 9.2-O2 -flto -g0 -march=native -mtune=native  |  GCC 9.2-O3 -flto -g0 -march=native -mtune=native -fprofile-use  |
|
Regular
|
0:21.49
|
0:24.00
|
0:21.30
|
0:22.14
|
0:21.77
|
0:21.81
|
|
Small
|
0:48.44
|
0:53.45
|
0:36.53
|
0:39.70
|
0:40.29
|
0:31.08
|
|
Big
|
1:57.91
|
1:46.18
|
1:34.93
|
1:44.23
|
1:42.66
|
1:22.76
|
On Wednesday, March 17, 2021, 5:04:26 PM CDT, Allen Wild @.***> wrote:
Hey, thanks for the shout-out. One word of warning - most of my open PRs on this repo are pretty old and in most cases I have better versions of them in my own fork. I sorta lost interest in pushing PRs here due to the general trend of only small tweaks being accepted rather than larger features/fixes/refactors.
Anyway, if you want to keep rolling with PCRE2 in your fork, check out @.*** where I removed PCRE1 support and got considerable speedup by reducing heap thrashing on every call to pcre2_exec.
As far as searching big files goes, I think that's a fundamental/hard problem in ag. Except when searching stdin in stream mode, the whole file to be searched has to be buffered in memory, either with mmap or by reading it into the heap. There's even a check that the file length isn't greater than INT_MAX due to PCRE limitations*. Naturally, this leads to memory pressure and performance issues on some systems. This is further complicated by the way ag saves matches as pointers into the full file buffer, and since all matches are collected before stdout is mutex-locked, it means the whole buffer has to wait around in memory before any of its matches get printed to the console.
I don't mean to sound discouraging, these aren't insurmountable roadblocks, but they are the product of multiple interlocking facets of ag's design that would require significant effort to refactor.

I just realized that this limitation isn't needed in PCRE2 and I should probably remove it in my fork.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

AFAIK, files are free'd (or munmap'd) when ag is finished with them, i.e. after their results have been printed. But there can be one allocated file per worker thread, and by default there's one worker thread per CPU core. If you have a lot of CPUs and a lot of big files in the directory being searched, things could start adding up. At least with mmap, the kernel can page in/out file data as needed without exploding the heap and potentially thrashing swap.


New Public Issue?

[ ] Task List
[ ] Yay

No milestones for projects gah. They'd need to be duplicated across multiple repo's


0.27.0 [Bug]

The problem
After update 0.27.0 connected devices sensor shows the wrong numbers
from 46 to 30 clients

Your device model

Firmware type
Stock
Firmware version

Integration version with the issue
0.27.2
Method of the integration installation
HACS
What version and type of Home Assistant installation do you use

Is there anything useful in the logs?
No response
Diagnostics information
No response
Additional information
No response

Please, upgrade to 0.28.0 and check whether you still have the issue

I apologize to spam this thread but I don't want to open a new one as my problem is only minor compared to this 🙏
I just upgraded to v0.28.0 from v0.25.0 and I lost a couple of speed sensors, like wired upload speed etc
is it possible to downgrade to a previous version? if yes how to do it properly? (I have an other machine running v0.22.0 and that could be the source)

@sezlony,
Hello, please check the configuration and make sure that the wired interface is selected.
In any case, you can downgrade to the exact previous version by choosing it in HACS (it shows the last 5 versions to install)

every possible interface is checked in the configuration but still no luck
I feel very dumb now for not recognizing the options for choosing the desired version...
Thank you for your support and PLEASE DELETE these unnecessary comments!

Please, upgrade to 0.28.0 and check whether you still have the issue

same

@sezlony,
Hello, please check the configuration and make sure that the wired interface is selected.
In any case, you can downgrade to the exact previous version by choosing it in HACS (it shows the last 5 versions to install)

not every device from WiFi track

I'd rather downgrade to v0.22, but that is not available in the dropdown menu and copying to it's folder manually also does not work. why?

@Vaskivskyi

@Vaskivskyi hm??

Please, check with version 0.29.0. If the issue persists, please, check issue #792 regarding which number of the connected clients to check in the Web UI.
If some devices do not show up in the integration, please, report which exactly devices and how they are connected. Again, refer to #792 about the details on what info can help to troubleshoot connection issues with some devices


feat: configure RabbitMQ status action

Description

This PR aims to add the RabbitMQ status action with some simple configuration.
It also removes the executed flag on the status actions because it is not that useful for now. We need a better way of handling the status action logs and preventing double execution on the same proposal if already executed.

Motivation and Context
We want to be more explicit with sending messages to the RabbitMQ and being able to select triggers for sending messages to the exchanges.
How Has This Been Tested

e2e tests
manual tests

Fixes
https://jira.esss.lu.se/browse/SWAP-3529
Changes
https://github.com/UserOfficeProject/user-office-core/assets/6333063/be5676f2-7c9a-4d90-995d-90f17b62cff6
Depends on

Tests included/Docs Updated?

[x] I have added tests to cover my changes.
[ ] All relevant doc has been updated

Is there a better way of exposing (or communicating) the ability to send a status action to a queue to a user? I don't think a User Officer should have to know what RabbitMQ is or what exchange is being used.

Is there a better way of exposing (or communicating) the ability to send a status action to a queue to a user? I don't think a User Officer should have to know what RabbitMQ is or what an exchange is.

Maybe the user should be just be told what the outcome will be of whatever consumes the event. This would be the description has to be configurable, maybe determined by the environment.

Is there a better way of exposing (or communicating) the ability to send a status action to a queue to a user? I don't think a User Officer should have to know what RabbitMQ is or what an exchange is.

Maybe the user should be just be told what the outcome will be of whatever consumes the event. This would be the description has to be configurable, maybe determined by the environment.

@Scott-James-Hurley I will open another ticket for this and we can discuss both within our team and on the planning meeting as well for improving the communication with the regular users so they can understand what this action outcome is and what to expect. Thanks for the feedback.


Fixed layout problems

This PR includes fixes for most of the problems @dvnahuel requested in the following link:
https://www.figma.com/design/4fVd9wneclsvYDYD95ApZ9/Hemi-Portal?node-id=5546-22666&t=KHgKWmnEqCtX1I5C-1
The list below shows the fixes done in this PR:

[X] (Landing Page) Border color is different
[X] (Landing Page) The box is missing the shadow
[X] (Landing Page) on-hover the background whould be grayscale/50
[X] (Landing Page) Footer here is full width, it should only occupy the width of the cards container
[X] (Landing Page) Border is different color and with wider border
[X] (Landing Page) On-hover this socials should be grayscale/950
[X] (Tools Page) Arrow icon is different from design
[X] (Tools Page) Space between these elements should be 8px
[X] (Tools Page) Space between this elements and the text on the top should be 16px
[X] (Tools Page) The space between these containers should be 16px
[X] (Tools Page) Let’s remove the footer border and adjust the margins, these should be 24px bottom left and right, bot elements should be with with space-between property
[X] (Tools Page) Left section container should be 100% VH with 8px of margin
[X] (Tools Page) The header should be with the same margins as in the landing page (20px top, 24 right)
[X] (Tools Page) Background color here should be white
[X] (Tools Page) We should use validations, at least native ones in this case, ‘CLAIM’ should be disabled until the user inputs an ID

The pending fixes are:

[ ] (Tools Page) Let’s use rainbow kit for wallet management

It will require a big refactor to change wallet management to rainbow kit

[ ] (Tools Page) I should be able to click the inputs here

The inputs are only enabled when the wallet is connected

Hey there! Can we get a few screenshots to better see the visual updates?

Hey there! Can we get a few screenshots to better see the visual updates?

There is no much difference in the visuals, just minor details as you can see below:
Landing Page (Before this PR):

Landing Page (After this PR):

Tools Page (Before this PR):

Tools Page (After this PR):


feat: Provide firstname and lastname to UserSkel

This should become standard to allow for better pre-defined personalization.

Okay for me, but fill a new skel with the information from the google login
https://github.com/viur-framework/viur-core/blob/209396bf72a1fea6fdffac13c825397b50728b71/core/modules/user.py#L448

Please fill them with values, as in #677

you mean #2?!

@sveneberth I've added a synced-Flag to let the user decide if information should be kept synchronous with Google.
I've also changed the way how the update-flag is being determined.


Implement OpTreeIter::nth correctly

The previous implementation of nth was incorrect, it returned the nth
element of the optree but it did not modify the internal state of the
iterator such that future calls to next() were after the nth element.
This commit fixes that.
Signed-off-by: Alex Good<EMAIL_ADDRESS>

Love this - can you fix the fmt and I'll merge?

The fmt was failing due to the CI toolchain being out of date. I've rebased this on top of #366 which fixes the problem


build-tools needs support for kind/dind

Most of our integration testing relies on being able to run dind and kind. Currently, the build-tools docker image does not support this, although it does have the actual docker and kind binaries in the image.
Requirements for CI:

docker run works from within the image. Presumably this also means kind create cluster works as well.

In order to do this in the old image, we had a startup script running service docker start. This does not work in the new image, likely we remove some data needed for it to work or something?
 Otherwise, it is extremely slow to recreate a cluster every time you do a command and makes debugging harder since the cluster will be torn down each time. There are two options I see here:

Create the cluster outside of the docker container (kind-cluster and build-tools container are both running in the host's docker environment). This seems like a good option if its possible. Seems like it should be possible
Make build-tools not ephemeral. This is the approach istio/installer takes. We make a docker image that contains all of our build tools as well as the kind node image, then we spin up a kind cluster and any time we run commands, we do docker exec instead of docker run.

See also https://github.com/istio/istio/issues/16736

Oh weird, I thought I tried -v /var/run/docker.sock:/var/run/docker.sock and things weren't working but mustve done something wrong. Seems using that, I can now docker run and it will create it on the host docker!
kind create cluster also works! but we need to give access to the kubectl context on the host, as in https://github.com/istio/istio/issues/16736. I think we can do this by mounting ~/.kube though. What is weird is inside the docker container I cannot connect to the kind cluster, but I can from the host (once ~/.kube is mounted)
For prow I think we just need to add the same volume, I will try it out

Kubernetes prow team explicitly forbids mounting docker.sock and does service docker start instead

cc @sdake

done


Feedback for: swarm/index.md

File: swarm/index.md
Please add a warning or disclaimer indicating that this is not the latest or preferred method of managing a swarm, considering this is the first result on a google search for "Docker swarm"

Please weigh in on #578 and let me know if that PR addresses your concerns. Thanks!


Create queue.md

hi I have written some functions related to queue and what they do.

Hi i am new to this open source.So i just wanted to know that do we close the pull up request once we get all 3 checks??Thanks in advance.


Fix Example in Service Account Documentation

Changes

Today, the example provided for writing service accounts is broken i.e.
the resource and taskspec specification is incomplete. As such, users
may be misled when using this example.
In this change, we fix the resource and taskspec specification of the
example.
Co-authored-by: sbose78<EMAIL_ADDRESS>Co-authored-by: sbwsg<EMAIL_ADDRESS>/kind documentation
--
Pruning old PRs as Build Captain (https://github.com/tektoncd/pipeline/pull/3829)
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[n/a] Docs included if any changes are user facing
[n/a ] Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Release notes block below has been filled in or deleted (only if no user facing changes)

Release Notes

NONE

thanks @jerop
/lgtm

/test pull-tekton-pipeline-alpha-integration-tests


update bottom to 0.6.4

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

[x] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Thanks for the heads up, I'll take a look!

I would highly suggest using winget-create to easily update manifests with the latest metadata.

Gonna open a new PR due to some branch mess, but just as some feedback, I tried using winget-create, and could not figure it out, and eventually hit API limits... so I guess I'll just manually create it for now.

Hey @ClementTsang,
I noticed you had some issues with the update command for Winget-Create and we are working on making improvements. The reason for the mismatch is that the existing manifest is expecting a neutral msi, but we detected the installer to be an x64 msi.
Fortunately, in our latest release of Winget-Create, we added an interactive update flag for you to manually fix those mismatches by running
wingetcreate update Clement.bottom -v <Version> -i

We hope you try it out, and feel free to tag me or create a new GitHub issue if it doesn't behave as you expected.
Thanks!


[Installation user experience] The installation of .Net Core 3.1 doesn't have a good user experience

Environment
Windows build number: 10.0.18363
PowerToys version: 0.18.0
PowerToy module for which you are reporting the bug (if applicable): installer

Description
I don't like the behavior of the installer/PT regarding .Net Core 3.1.
After starting I was asked if I wan't to install .Net Core 3.1 an clicked yes. Because of only the homepage is opening I clicked more than one times.
.Net Core 3.1 should be included in the installer or there should be a ".Net Core 3.1 is downloading" splash screen.

same here, i installed the new update and it told me to get .net core. i was in the process of visiting the website and suddenly .net core popped up and downloaded

How do I get Power Tools running after installing .Net Core 3.1? Power Tools doesn't appear to recognize the install of .Net and keeps asking me if I would like to download it.

For anyone else who runs into the same issue apparently the Runtime is not sufficient, you need the SDK. It appears to run now, but the settings page refuses to appear.

@mattharrison

apparently the Runtime is not sufficient, you need the SDK

The SDK is not needed. There is something else that went wrong on your installation and got fixed when you installed the SDK.

@htcfreek
installing the .NET Core after the PowerToys installer was the only way to support the current auto-update, we already planned to change this for future versions and have the .NET Core installer run first.

Direct link to the .NET Core Desktop Runtime:
https://dotnet.microsoft.com/download/dotnet-core/thank-you/runtime-desktop-3.1.4-windows-x64-installer

PowerToys won't run for me since the upgrade this morning. Prompted to install .net Core, but the download page at microsoft fails

just updated and received the .net prompt. installed the runtime then tried clicking on powertoys icon on systray. Got error msg that .net was required with buttons Yes that directed me to where I had just downloaded and installed it and no that did nothing. The app functions kept running even with the error so I guess is some GUI related error.
Got .net from the link on release page, installed and now everything works.
Link opened when clicking Yes on the error:
https://dotnet.microsoft.com/download/dotnet-core/?utm_source=getdotnetcore&utm_medium=referral
Working .net link :
https://dotnet.microsoft.com/download/dotnet-core/thank-you/runtime-desktop-3.1.4-windows-x64-installer

Closing this in favor of https://github.com/microsoft/PowerToys/issues/3341


Arguments passed in wrong order to detail::AsyncComposite

-    auto * worker = new detail::AsyncComposite(image_, source_image, mode, opacity, dx, dy,
+    auto * worker = new detail::AsyncComposite(source_image, image_, mode, dx, dy, opacity,

Fixed in v4.5.1 release


reproduce question

Excuse me，I want to ask how to get login credentials from hotcrp，and how to get access to c220g2 machine in Cloudlab Wisconsin？Thanks for your answers.

Please check this with your instructor if you are taking the course at UW-Madison. Otherwise, you don't have access.


File handling (in unittests?) not working on Windows

I am considering further cleanup suggestions, e.g. marking class methods as such etc. I may also at some point suggest one or another modification to the use of decorators and the meta class.
However, before I start doing any of this I need to have green unit tests. Setting this up showed that the current use of resources and their file paths does not seem to be compatible with Windows (which is my main platform right now).
Therefore I have 26 of the current 175 tests failing, most of them being confused about '' or Windows drive letters.
As you are probably not working on Windows I can offer to generalize. But please let me know if I'm on the right track and that the core of the issue is not something completely different.

Indeed, I'm working on Linux, I will check what could be the issue. I thought I was dealing with basic and builtin methods from Python, perhaps I missed some spots, I'm going to check that and try to setup a windows virtual machine to do some tests.
What do you have in mind regarding the decorators and meta-class?

So, I've checked and I think the issues were located in the tests themselves: the links towards each test file was expressed in a unix-like fashion. This were a little bit confusing at first as the image I use for my virtual machine is a W10 which is happy with unix-like pathes.
Anyway, all the tests runs on this image except the one that tries to fetch an XMI from GenMyModel. It seems that there is some issues with SSL certificates. I can't tell if the issue is only related to my virtual machine or if you also have this issue. If everything runs smoothly on your machine, beside the 'http uri' related test, I will disable it.

Tests are passing now on Windows 10. I'll retry on Windows 7 on Monday, as that was the machine failing originally, although I could reproduce the original errors also on my personal W10 machine.
Thanks a lot.
Let me just say that I have no intention or expectation that you or anybody else is responding (and fixing) this fast. I merely opened the ticket to have some way discussing the issue and honestly was offering to fix it myself, in pretty much the way you did. I have no issue with doing this, so please don't feel obliged to do fixes like this within an eyeblink like you did now. I am happy to fix or improve if possible as this obviously gives me a chance to learn how you did things.
But nevertheless: thank you very much!

Since you asked: on my current machine, all 175 tests are passing now.

I didn't felt obliged at all. It was good for me to put my nose again in those tests to see from where the issue could come from and I must say that I was also curious about seting up a dev. env. in Windows. I have a real tendency to forget about Windows.
Also, I didn't meant to cut your fun (I'm really sorry if you felt it that way), but as you proposed to clean the main code of PyEcore, I was ashamed to let you with a failing playground. Don't worry, next time I will probably not be so fast.

Don't worry, all is well. :-) Thanks a lot!

On my W7 machine test_uri_http is still failing here:
            except OSError as err: # timeout error
>               raise URLError(err)
E               urllib.error.URLError: <urlopen error [Errno 11004] getaddrinfo failed>

But probably since at work I am behind an HTTP proxy... I am not sure this kind of test relying on an internet connection is the best idea. Maybe you really do deactivate it.

I was worried that this test could cause issues as the one you have. Moreover, it is not very relevant if you want to develop 'offline', as it requires a connection to work... deactivating is indeed a better thing to do. You can remove it if you want, or I can do it if you are on other stuffs.

Please go ahead and remove it directly on the develop branch so we spare ourselves the PR game for this. :-)

I'm on it, consider it done.


Use escape key to exit colour editor UI

Summary of the Pull Request
Use the escape key to exit the colour editor UI. I wasn't sure if this was the right way to do this but using other methods didn't produce a reliable result especially when opening the UI from the picker and not interacting with it, escape wouldn't actually work.
What is this about:
Use the escape key to exit the colour editor UI.
What is include in the PR:
Add additional methods to detect and close the UI.
How does someone test / validate:
Manual testing.
Quality Checklist

[x] Linked issue: #9696
[ ] Communication: I've discussed this with core contributors in the issue.
[ ] Tests: Added/updated and all pass
[ ] Installer: Added/updated and all pass
[ ] Localization: All end user facing strings can be localized
[ ] Docs: Added/ updated
[ ] Binaries: Any new files are added to WXS / YML

[ ] No new binaries
[ ] YML for signing for new binaries
[ ] WXS for installer for new binaries

Contributor License Agreement (CLA)
A CLA must be signed. If not, go over here and sign the CLA.

@enricogior, any reason to not check in?


Split asset and static by default, and root static items?

Sorry about the strange title, let me explain.
First, I think it's a bit strange that the built assets files are placed in the same location as the static files manually added.  What was the reason for this?  Why not have the built assets in /assets and the manually added files in /static?
Second, how would one add root items, for example favicon.ico or .htaccess?  Perhaps a config option for the static files would be useful, for example /static/ as default but could be set to / for adding the files at root level.

I'm open to this change, though would prefer to just have static always compile to root, rather than providing an option. @linusborg @zigomir Thoughts?

Less options = less config = better imho.

Options are a bad thing? I disagree.
Why even have an option for the name of the assets folder then? Forcing them to use the folder you chose is not better.
If your concern is that it will require more configuration at setup, then that's handled by default options.

@Sarke Options are a bad thing if they don't actually open up any new options, as each choice we force users to make adds cognitive load. They also make template maintenance more complex. If static assets always compiled to root, then it would allow everyone to do what they want. Users could build out their desired folder structure inside of that folder.

@chrisvfritz I don't know. I get the basic point that subdirectories make any 'target' directory possible, but:
(-) Copying them to root by default seems a bit strange, since all other content besides indexhtml is in some subdirectory. So I would feel that most people would want to put is somewhere else.
(+) True, you can do that with a subdirectory in /static/, but:
(-) But if people want to do that in most cases anyway, having them create a subfolder each time seems unnessessary
(+) So a config option with a default value of /static would cover the default usecase (have static assets somewhere else, but not in root) and enable people to change this location if they want to.

I would feel that most people would want to put static file into a subdirectory as well.

@LinusBorg I'm not sure that assumption is correct - for example, I think most people prefer to have files like favicons in the root (and actually, that's where they should go). So it could even be argued any configuration except for copying to root would be "wrong", unless users are also configuring server-side redirects for paths like /favicon.ico.

@chrisvfritz One thing to consider is that static file sites like VueJS are getting more commonly hosted on CDN hosting, so redirects wouldn't be possible.
And the older shared hosting only allow redirects through an .htaccess, which would have to be in the root as well.

Good points ...

@Sarke Well, netlify and surge (two of the most popular services for static hosting) do actually support redirects, but yeah - it'd be easier for people to just be able to place a file somewhere and not have to configure anything (anywhere) to get it to go where they want.

S3 static website hosting doesn't support redirects, so our favicons are currently broken. Would love to see either one of the proposed solutions implemented.

@adambiggs S3 do support redirects
You can define redirect behavior on the object level or at bucket level
At object level:
https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html
Basically you upload an empty file with "x-amz-website-redirect-location" set to the new location
At bucket level:
https://docs.aws.amazon.com/AmazonS3/latest/dev/HowDoIWebsiteConfiguration.html

Thanks for the info @heinzdmx, I wasn't aware of that. I think changing assetSubDirectory is an easier fix though.

I'd like to 1up this suggestion as well. I'm working in an app where client and server stuff live together in folders /client and /server. Right now, both folders are completely monolithic, but I'm trying to rearrange things so that they play together more nicely, and part of that is pulling the build processes and such out of client and into my project root.
I want to be able to put my static assets folder in /static, not /client/static as I am forced to now.


Federation registry role

Added federation-demo role that deploys the latest version of the federation-registry project. In more details the role performs the following actions:

It prepares the target host by installing all required packages and tools
It clones the project from github
It installs and configures the node projects (federation-registry-frontend,federation-registry-backend-api,federation-registry-backend-ams-agent)
It creates and configures the postgresql database if necessary
It creates and configures the ams topics and subscriptions if necessary

@linathedog would it be possible to have a single role for deploying both the demo and the production environment of the federation registry? For example:
Production vars (should be the defaults though defaults/main.yml):
federation_git:
  git_repo<EMAIL_ADDRESS>  git_branch: "master"

Demo vars:
federation_git:
  git_repo<EMAIL_ADDRESS>  git_branch: "devel"


docker-compose example in readme out of date

In the readme, it says to use payum/payum-server as the image name in the Docker Compose file, checking this out on Docker Hub however, it says that it's deprecated and to use payum/server instead.

payum/server should be used. the doc's been fixed.


Tray icon is always show as unread even if there are no unread messages

Aknowledgements

[X] I have checked that there's no other issue describing the same or
similar problem that I currently have, regardless if it has been
closed or open.

[X] I can confirm that this is not an issue with the Discord website,
but it is a problem specific to the WebCord itself. I have tested
if this bug occurs on Chromium/Chrome or any other Chromium-based
browser that uses unpatched/upstream Chromium engine.

[X] I have tried running the build from the master branch and it does
not have any fixes implemented according to my issue.

[ ] My issue describes one of the unstable and/or not fully implemented
features.

[ ] I have found a workaround to mitigate or temporarily fix this issue
in affected releases (please write it in Additional context section
below).

Operating System / Platform
🐧 Linux
Operating system architecture
x64 (64-bit Intel/AMD)
Electron version
20.1.0
Application version
3.8.0
Bug description
Tray icon is always show as unread even if there are no unread messages.
How to reproduce? Just open WebCord and look at the tray.
The bug appeared after updating to 3.8.0. Reverting to 3.7.1 fixes the issue.
Additional context
No response

This is something that occurred for me as well, but in pre-3.8.0 releases. I have no idea why it exactly occurs, but what I know is that hashes changes on the Discord side for unknown reasons. It could be something with the crypto module used for hashing, but it could also be an issue with the Discord image slightly changing and confusing WebCord.
You can check the hash compared by WebCord (which by mismatch WebCord might think the current favicon displays a mention message) by looking at verbose logs:
webcord --verbose

Occasionally, I can reproduce this issue. Right now I can't 🤷🏽♂.

I can confirm this issue in the 3.8.0 release. It was not present in the previous release.

I can confirm this issue in the 3.8.0 release. It was not present in the previous release.

Confirming the issue won't help much with fixing it. It's already well-known and I know it could occur in the older releases, with the higher chance on occurance on Windows and macOS as result of toBitmap method is platform-dependant and I've generated hashes on Linux. I was also able to reproduce this in AppImage version of WebCord.
Anyway, I've confirmed that Discord is in fact sharing different icons sometimes for unknown reasons:

These two images looks identically, yet they hold different data. However experimenting with GIMP I think this might be due to different metadata, so I went by different approach – I try to fix it by converting to raw bitmap format and then back to... JPEG with quality 90%. That seemed to work quite well and I'm no longer able to reproduce this in AppImages, at least right now.


[Template]: Bulk upload data

Title
Insert CSV into database
Objective
A user uploads a CSV/spreadsheet, which will be of a particular format, which the user can see and download.
A user is able to add a single entry using a Modal, OR upload a CSV/spreadsheet file which must match the existing format. The tool will validate the file, and append the table data to the database.
functionality to be highlighted:
File picker
Data validation using JS editor
Wireframes
https://www.figma.com/file/0k6nAag845scrCkqd3YqlR/Bulk-Upload?node-id=0%3A1
Validation criteria
The user should be able to upload CSV files only
The file should match the format of the existing table defined
The app should populate the data into the correct columns
The user should be able to add image and document links to the system as well, and they will be displayable on the database
Use case
Martketing
Industry
Real Estate
Data sources
Any

Hi, is Feature released?

https://app.appsmith.com/bulk-insert-update/bulk-insert-update-623cd37b4d9aea1b062b347b


BUG - Symbol of undefined

When tried to access the client with id 35 from the home page

Closing this bc it was caused by a corrupted data in the staging DB that I fixed already


travis integration

As there are tests I think it makes sense to integrate CI

👍

Rejecting because of PR #14


Usage in Docker

What's the best workflow to use Pipenv with Docker?
I am trying to accomplish this with a Django project running inside Docker / Docker Compose.
Any tips / suggestions / ideas?
P.S. also, I am using https://github.com/yyuu/pyenv to automatically activate my virtualenvs and manage local Pythons. Does that not work well with this toolchain?

this would be a replacement for that workflow

I see, thank you. Great work on this @kennethreitz!

Well, pyenv is more than just a virtualenv manager (in fact, that aspect comes only as a plugin). It's real use case is to manage multiple Python versions on a single machine, which seems orthogonal to the use case of pipenv. So I think the question remains if they play nicely together.

I believe that https://github.com/kennethreitz/pipenv/issues/98, which we're in the midst of debugging, is caused by a pyenv incompatibility.

So, what is the advised workflow in docker ? I have a project using pipenv that requires twisted that cannot be built into my alpine docker. I want to use the provided alpine package py-twisted. Can pipenv install the dependencies directly on the system and not on a virtualenv (it looks like pipenv install --system still creates a virtualenv) ?

@Stibbons, yes, you can use --system to install the packages directly on the system. It does create a virtualenv as part of it's initialization check but we're looking into making that more sensible. The created virtualenv won't be utilized unless you run pipenv install without --system.

Great !

Does subsequent "pipenv run" knows the latest pipenv install has been executed with --system ? I have lot of issues on travis where (like in docker) I prefere to use the system's python instead of a virtualenv's one. Can pipenv run automatically finds out it need to use system's python?
(i also prefere using exactly the same chain of command between travis/docker and manual dev, instead of having to maintain 2 build scripts) ?

It would be nice if we could set the use of --system as an environment variable (e.g. PIPENV_USE_SYSTEM). This would allow most commands and scripts to stay constant while using environment variables to change specific behaviors.

Good idea :) I use pipenv like usual in my docker, simply in prepend all command by pipenv run. This forces the use of a virtualenv inside the docker, maybe it is overkill. But I like the idea of the env var :)

@clintonb Agreed. I really want to leverage the protection of the Pipfile.lock mechanism, but when I'm using Docker, I'd prefer to leave the virtualenv aspect aside. It'd be awesome if those two features could become usable independently.

Requirementslib has interfaces to both

Also as of next release I enabled auto_envvar_prefix so you might be able to do something like PIPENV_RUN_SYSTEM=1

Thanks @techalchemy!


Maven Build + Test

[x] Remove org.example monikers
[x] Push a simple add function
[x] Write JUnit Tests
[x] Update pom.xml with deps
[x] mvn test

Completed as per https://github.com/vijay-jaisankar/spe-mini-project/actions/runs/4469329566/jobs/7851281176


Unable to use the package

The index.js file which is required to import this module into the app.module.ts is missing. In system.config.js, the path needs to be provided for the js file but there is no js file in the package. If there is another way to import this package, please let me know. @temich666

Tnx!. index.js was created


Merge items in inventory

Because it didn't differentiate between "apples" and "Apples" need to build a script to merge the items.
Copy over

Most recent purchase date
Change transaction log items to be the master?

Did this manually since it there was only 1 list to worry about.


No peers

This is an AWESOME idea! But it doesn't work for me at the moment. I'm just getting a "No peers" message. Using Brave on Ubuntu, for what that's worth.

We haven’t tested in Brave, so perhaps there’s some exception occurring there. Thanks for reporting!

I appear to be having the same issue in Chrome.

Are you testing in the same url but in different browsers? It’s normal to say no peers if you are alone in the discussion.

Yeah, google.com.

Alright, I will need to debug once I arrive home. I’m roaming atm.

Alright. Yeah, perhaps it's just a minor UI/UX issue and not a technical
issue. Maybe instead of "No peers", which is going to be the norm until
this service gets really popular, it should just say nothing and only
inform you if there ARE peers?
On Tue, Mar 19, 2019 at 11:26 AM André Cruz<EMAIL_ADDRESS>wrote:

Alright, I will need to debug once I arrive home. I’m roaming atm.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ipfs-shipyard/discussify-browser-extension/issues/24#issuecomment-474513376,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AToX_YjNqhMqgK12oES-nmNpZ7sHpyEhks5vYSvogaJpZM4b8xze
.

I'm currently in google.com in Chrome and Chrome incognito and both can see each other.

Yeah, perhaps it's just a minor UI/UX issue and not a technical issue. Maybe instead of "No peers"

We are still exploring how to do this correctly, see https://github.com/ipfs-shipyard/pm-discussify/issues/55. To do this properly though, peer-base needs to give us more information about what's happening under the hood in terms of synchronization.

I've had it open in a tab this whole time. Did you see my comment at https://www.google.com/?

Sorry, I think I’ve missed you. I’m there now. You may also reach me on freenode, same nick as the GitHub.

I was on google.pt 😂
I'm on google.com now

We were able to see each other and discuss on the extension. Can we close this issue?


Local_Time Conversion error

Hi! I'm doing some tests, and when I try to convert a String format variable to LocalTime, when you insert it into the table it looks correct, but if you view it from the dashboard it doesn't.
However, when the variable is read from a CSV file, it is displayed correctly in both the table and the dashboard.
Is it possible that I am doing the process of passing from String to LocalTime wrong? It inserts it correctly into the table, but it doesn't work correctly

Steps to reproduce
If from Atoti, I read a CSV that contains a LocalTime field and when reading the CSV I indicate that this field is LocalTime, it works correctly

If I do a logs.head() it works correctly and in the dashboard too...

But if I try to pass to an endpoint, a String to LocalTime transforms it correctly and inserts it correctly in the Logs table:

But if I check the dashboard, it doesn't show the same as the table.

Actual Result

Expected Result

Environment

atoti: 0.7.2
Python: 3.10.9
Operating System: Windows 10 Enterprise

Logs (if relevant)

Hi,
In your append_rows_to_table() endpoint, can you try printing the whole rows to show that not only the first row is good but all the other ones too?
Instead of Table.append() can you try to use Table.load_pandas() passing it a DataFrame where you made sure that the HMS_INI and HMS_FIN columns both have the good type (time and not string or something else)?

Hi,
Of course, I put a screenshot of before and after the conversion

And reference to the issue of changing the append to load_pandas, it still doesn't work

The result remains the same for both changes

Thanks for your time

Hi,
I can reproduce the error with this simpler code:
from datetime import datetime, date, time

import atoti as tt

session = tt.Session()

table = session.create_table("test", keys=["id"], types={
    "id": tt.INT,
    "datetime": tt.LOCAL_DATE_TIME,
    "date": tt.LOCAL_DATE,
    "time": tt.LOCAL_TIME
})
session.create_cube(table)

table += (1, datetime(2023, 1, 24, 16, 57, 0), date(2023, 1, 24), time(16, 57, 0))

table.head()
#               datetime       date            time
# id
# 1  2023-01-24 16:57:00 2023-01-24 0 days 16:57:00

When I look at the Arrow table created to transfer the row from Python to the atoti server, I get this:
pyarrow.Table
id: int32
datetime: timestamp[ns]
date: date32[day]
time: time64[ns]
----
id: [[1]]
datetime: [[2023-01-24 16:57:00.000000000]]
date: [[2023-01-24]]
time: [[16:57:00.000000000]]

so the types are right but something goes wrong after since I also get wrong data from the server in the pivot table:

I'll let you know when this is fixed.


Update code style config

Your PHPCS configuration output the following error:
ERROR: the "ruleset.xml" coding standard is not installed. The installed coding standards are WordPress-Docs, Zend, PHPCS, WordPress-VIP, PSR2, CakePHP, Squiz, PEAR, WordPress-Core, WordPress-Extra, PSR1, WordPress and MySource


feat(date): add support for different timeZone offsets

usually offset for timeZone is 1 hour but there are countries
with 30mins and 45mins offset. For example, IST is +5:30 and Nepal is +5:45
modify CalenderCodec write date logic(similar to DateCodec)

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

Codecov Report

Merging #2320 into master will decrease coverage by 0.01%.
The diff coverage is 66.66%.

@@             Coverage Diff              @@
##             master    #2320      +/-   ##
============================================
- Coverage     81.63%   81.61%   -0.02%
- Complexity     6952     6953       +1
============================================
  Files           141      141
  Lines         25870    25888      +18
  Branches       6183     6186       +3
============================================
+ Hits          21119    21129      +10
- Misses         2986     2993       +7
- Partials       1765     1766       +1

Impacted Files
Coverage Δ
Complexity Δ

...com/alibaba/fastjson/serializer/CalendarCodec.java
83.16% <61.9%> (-4.05%)
19 <0> (+1)

...ava/com/alibaba/fastjson/serializer/DateCodec.java
87.14% <83.33%> (+0.28%)
33 <0> (ø)
:arrow_down:

...com/alibaba/fastjson/serializer/SerialContext.java
72.91% <0%> (-4.17%)
19% <0%> (ø)

Continue to review full report at Codecov.

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


Conditional data annotations seem to not work when inputs are named dynamically (BeginCollectionItem HtmlHelper)

Hello!
I am attempting to use [RequiredIfValue] and/or [RequiredIfAnyValue] linked to inputs that are named dynamically in the View. I'm using another Nuget Package which provides the dynamic naming => [BeginCollectionItem HtmlHelper] (https://www.nuget.org/packages/BeginCollectionItem/).
One other detail is that the condition or value I am checking for is of type "bool" (Checkboxes). In other words, a textbox should be required only if a specific checkbox is checked.
Model:
Checkbox
[Display(Name = "Is your entry a set?")]
public bool? EntrySet { get; set; }
Textbox
[RequiredIfValue("EntrySet","True")]
[RegularExpression("([1-9][0-9]*)", ErrorMessage = "Invalid")]
[Range(0, 99, ErrorMessage = "Invalid")]
public int? PiecesInSet { get; set; }
View:
This View can have one or more Entry Forms, and each Entry Form can have one or more Entries. Therefore we use the BeginCollectionItem HtmlHelper so that each input has a unique name.
Entry Forms
@using (Html.BeginCollectionItem("EntryForms"))
{
    foreach (HeritageArtsEntry ev in Model.HeritageArtsEntries)
     {
          Html.RenderPartial("_HeritageArtsEntry", ev);
     }
}

Entries inside each Entry Form
@{
        var Contact1Prefix = ViewData.TemplateInfo.HtmlFieldPrefix;
    }

@using (Html.BeginCollectionItem(Contact1Prefix + ".HeritageArtsEntries"))
{

        @Html.Bootstrap().CheckBoxFor(ev => ev.EntrySet).HtmlAttributes(new { @class = "form-control colored-blue" }).IsChecked(false)

    @Html.Bootstrap().LabelFor(ev => ev.PiecesInSet).LabelText("Number of pieces in your set:").HtmlAttributes(new { @class = "col-md-2 control-label" })

        @Html.Bootstrap().TextBoxFor(ev => ev.PiecesInSet).HtmlAttributes(new { @class = "form-control" }).Placeholder("Enter #")
        @Html.ValidationMessageFor(ev => ev.PiecesInSet)

}

Actual Rendered Elements in DOM:
Checkbox
<input class="form-control colored-blue" id="EntryForms_921a053e-b41d-4aef-a0f8-adeee2e9a9a0__HeritageArtsEntries_0b185b02-15dc-490d-8cc3-14dbb5da9e17__EntrySet" name="EntryForms[921a053e-b41d-4aef-a0f8-adeee2e9a9a0].HeritageArtsEntries[0b185b02-15dc-490d-8cc3-14dbb5da9e17].EntrySet" type="checkbox" value="true">

Textbox
<input class="form-control" data-val="true" data-val-number="The field PiecesInSet must be a number." data-val-range="Invalid" data-val-range-max="99" data-val-range-min="0" data-val-regex="Invalid" data-val-regex-pattern="([1-9][0-9]*)" data-val-requiredifvalue="The PiecesInSet field is required." data-val-requiredifvalue-otherproperty="EntrySet" data-val-requiredifvalue-othervalue="True" id="EntryForms_4e70c3cb-7ec6-478c-9549-41fdb0ef99bd__HeritageArtsEntries_32dcac53-24ab-4118-9a9f-f0162b33f386__PiecesInSet" name="EntryForms[4e70c3cb-7ec6-478c-9549-41fdb0ef99bd].HeritageArtsEntries[32dcac53-24ab-4118-9a9f-f0162b33f386].PiecesInSet" placeholder="Enter #" type="text" value="">

In my mind the problem is there is a conflict in naming?
"EntrySet"
is not equal to
"EntryForms[921a053e-b41d-4aef-a0f8-adeee2e9a9a0].HeritageArtsEntries[0b185b02-15dc-490d-8cc3-14dbb5da9e17].EntrySet"
If this is a problem it would be a life-saving update and a very useful one I believe! Thanks!
Sam Thompson

Interesting problem. Can't wait to dig into it. Thanks for the example, @samuelmaxton

Thank you @samuelmaxton.
You are correct in that the issue is with the naming but it isn't really a bug in the code.  Unfortunately this is because of how the MVC engine works and how the extensions were written (by implementing IClientValidatable).  At the time that the client validation rules are generated inside of the MVC engine, the model does not and cannot know that it is part of a collection.
I may look to creating a custom model metadata provider in future implementations where I may have access to more information about the model but this will not be a quick change.
In the mean time there is a potential work around that you could implement which would be to override the client side validation method for this model by updating it on your page load.
$(function () {
       $.validator.methods.
});

function newValidation(element, params)
{
                var obj = $(element);
                var otherObj = getObjectFromElement(params.element); // You will want to change this line with a new selector for getting the closest input that is a checkbox.

                if (otherObj.val() == null || otherObj.val() == undefined || otherObj.val() === '') {
                    return true;
                }

                return params.othervalue === otherObj.val() ?
                    obj.val() != null && obj.val() != undefined && obj.val() !== '' : true;
}

I hope this help at least provide you with a work around.  Let me know if you have any more questions.
As an aside this is something I will get updated in the documentation because this issue is not unique to this scenario but to any complex model.  In the case of a complex model the work around is to name the other property the full complex model name i.e. (EntityForms.HeritageArtEntry).

Thanks, Nick. Really appreciate you looking at this. I would just like to confirm one line of code above:
   $.validator.methods.requiredif = newValidation;

I was under the impression I should use requiredifvalue instead of requiredif since the value of the checkbox must be "True" -------> [RequiredIfValue("EntrySet","True")]
   $.validator.methods.requiredifvalue = newValidation;

Is this correct?

Greetings, So I got it working...Thanks for your help.
var newValidation = function (element, params) {
    var obj = $(element);

    //The checkbox's old name
    var otherProperty = $(element).attr("data-val-requiredifvalue-otherproperty");

    //Find the GUID that uniquely identifies the entry I'm working with
    var entryGUID = $(element).parent().parent().parent().parent().find('input').val();
    //Find the relevant checkbox element using its new name
    var otherObj = $('input[name$="[' + entryGUID + '].' + otherProperty + '"]');

    if (otherObj.val() == null || otherObj.val() == undefined || otherObj.val() === '') {
        return true;
    }

    return params.othervalue === otherObj.val() ?
        obj.val() != null && obj.val() != undefined && obj.val() !== '' : true;
};

var newValidationMethod = function (value, element, params) {
    return newValidation(element, params);
};

$(function () {
    $.validator.methods.requiredifvalue = newValidationMethod;
});

Great I'm glad you were able to get it working!  For the record I think you can used required if as well.  I think the way I implemented it, it is able to determine if checkboxes or radio buttons are checked.


Random Background colour changer

Plz assign me this issue.

@Mridul-2003 You have to make something creative. This type of project is not accepted


Form does not reset after failed login/signup

Bug report
Describe the bug
When I cause an auth failure the form will show a spinner on the button and the error message, but the button stays disabled and I can't submit the form again.
To Reproduce
Steps to reproduce the behavior, please provide code snippets or a repository:

Enter an unregistered email/password
Press 'Sign In'

Expected behavior
Enable the button after resetting the form.
Screenshots

System information

OS: macOS
Version of supabase-js: 1.33.3
Version of Node.js: 14.18.1

@mozeryansky - Do you get any errors in the console? I can not seem to replicate:
https://user-images.githubusercontent.com/22655069/164065640-8c396968-d52d-4c4b-beb6-3513122c9da0.mov

The only log is the failed login attempt:
POST https://jfpobqybpivejuojlnsj.supabase.co/auth/v1/token?grant_type=password [400 Bad Request 257ms]

Here I see loading is set true, but it is not set to false after the requests come back:
https://github.com/supabase/ui/blob/c280fa175f2327a2c823951843f7e5b30dd6b9b4/src/components/Auth/Auth.tsx#L312-L326
Should that code call this function instead?
https://github.com/supabase/ui/blob/c280fa175f2327a2c823951843f7e5b30dd6b9b4/src/components/Auth/Auth.tsx#L217-L225
Although I'm not sure how yours is working and mine is not. I tried Firefox and Chrome. Seeing that loading is set false on mount I wonder if your sample is redirecting? Here is how I use the components:
return <>

      <SupabaseAuth.UserContextProvider supabaseClient={supabaseClient}>

          <SupabaseAuth supabaseClient={supabaseClient} />

      </SupabaseAuth.UserContextProvider>

  </>

And I have no redirects/re-mounts.

I tried setting up a dev environment but I realized I'm not using React 18. I couldn't follow the linking instructions in development.md since there are breaking changes for React 18. I checked out an older version of my project using react 17 and the form does reset, so it must be a React 18 related issue.

Yeah I think this is related to React 18. I've just updated react react-dom to their latest versions on my test project. After updating I seem to be getting the same as what you have experienced in your opening post:
https://user-images.githubusercontent.com/22655069/164188462-b9bb561a-3b7b-4f5d-8834-482011a39bb5.mov
In the example above I was just using the example in the docs:
import { Auth, Typography, Button } from "@supabase/ui";
import { createClient } from "@supabase/supabase-js";

const supabaseUrl =
const supabaseAnonKey =

const supabase = createClient(supabaseUrl, supabaseAnonKey);

const Container = (props) => {
  const { user } = Auth.useUser();
  if (user)
    return (

        <Typography.Text>Signed in: {user.email}</Typography.Text>
        <Button block onClick={() => props.supabaseClient.auth.signOut()}>
          Sign out
        </Button>

    );
  return props.children;
};

export default function AuthBasic() {
  return (
    <Auth.UserContextProvider supabaseClient={supabase}>

        <Container supabaseClient={supabase}>
          <Auth supabaseClient={supabase} />
        </Container>

    </Auth.UserContextProvider>
  );
}

Is there a better way to handle this in react 18?

Is there a better way to handle this in react 18?

https://github.com/supabase/ui/issues/350
No, I intend to make my own login form. The current form is nice but I don't want the UI just the functionality, it'd be good if they exposed something like useAuthForm() and I can define all the UI myself.

@mozeryansky this might be handy https://github.com/supabase-community/supabase-auth-helpers

The auth component has been moved to it's own repo and package.
github.com/supabase-community/auth-ui.
You can also read the docs for auth ui here.
Thanks for all the comments and suggestions so far.
If this is still an issue, please open a new issue in the new repo.


Fix Clang warnings

Description
Fixes -Wall, -Wextra and -Weverything warnings. Fixes the majority of -Wpedantic warnings as well, however a few couldn't be corrected AND pedantic isn't officially supported in this library.
Test Steps

Ran build checks locally on my Ubunto 18.04 instance with GCC 7.5.0.

Checklist:

[ x ] I have tested my changes. No regression in existing tests.
[ x ] I have modified and/or added unit-tests to cover the code changes in this Pull Request.

Second point is non-applicable.
Related Issue
https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/issues/558
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Tagging you @htibosch for review since you're a +TCP expert 😄

Thank you @kstribrnAmzn,
I approve of the PR


Failure in macOS 2.7 build

https://github.com/metanorma/metanorma-bipm/runs/7299291956?check_suite_focus=true
Somehow it is only 2.7 macOS that fails.
Failures:

  1) Metanorma::BIPM references BIPM English citations
     Failure/Error: expect(File).to receive(:exist?).with(/index\.yaml/).and_return false

       #<File (class)> received :exist? with unexpected arguments
         expected: (/index\.yaml/)
              got: ("/Users/runner/work/metanorma-bipm/metanorma-bipm/lib/metanorma/../../lib/metanorma/bipm/boilerplate-en.xml")
       Diff:
       @@ -1 +1 @@
       -[/index\.yaml/]
       +["/Users/runner/work/metanorma-bipm/metanorma-bipm/lib/metanorma/../../lib/metanorma/bipm/boilerplate-en.xml"]
     # ./spec/metanorma/base_spec.rb:1224:in `block (2 levels) in <top (required)>'
     # ./spec/spec_helper.rb:43:in `block (4 levels) in <top (required)>'
     # ./spec/spec_helper.rb:43:in `chdir'
     # ./spec/spec_helper.rb:43:in `block (3 levels) in <top (required)>'
     # ./spec/spec_helper.rb:42:in `block (2 levels) in <top (required)>'

Finished in 1 minute 18 seconds (files took 5.6 seconds to load)
64 examples, 1 failure

Failed examples:

rspec ./spec/metanorma/base_spec.rb:1223 # Metanorma::BIPM references BIPM English citations

Passing now: https://github.com/metanorma/metanorma-bipm/actions/runs/2684259668
Strange.


reclaiming memory for inference

While https://github.com/microsoft/DeepSpeed/pull/896 solves the leak problem, ideally we should also have a new method to free all optimizer/scheduler related parts to pave wave for inference. In some environments like google colab general RAM is very scarce so every bit counts.
Here is one way to approach this:
engine, optimizer, scheduler = deepspeed.initialize(...)
# do the training and
# then before inference do:
engine.free_optimizer_and_scheduler()
optimizer = None
scheduler = None
# it's then user's responsibility to make sure they have no remaining references to optimizer/scheduler objects for them to be freed.

with a new deepspeed method:
def free_optimizer_and_scheduler(self):
    self.lr_scheduler.optimizer = None
    self.optimizer.optimizer = None
    self.lr_scheduler = None
    self.optimizer = None

That way after training is done a lion part of the general RAM used by deepspeed is reclaimed. There are probably other bits to manually clean to reclaim even more.
Let me know if it sounds good to you and I will make another PR with this feature. We can in the future extend it if need be to support other things to benefit inference.
Thank you.
@jeffra, @RezaYazdaniAminabadi

I think these things that you mentioned makes sense. We also need to make sure such freeing or not allocating the memory for those training-related parts not happen in an automatic way when we are at inference mode. I mean that user don't need to specifically call a function like free_optimizer_and_scheduler to free those memory, but have an easy way of switching mode like eval mode in PyTorch.

I agree! That would be nice indeed.
But torch's model.eval()/train() just turns some flags on/off, how would you deal with the user switching back from eval to train in deepspeed? Do you save the config and simply re-init the parts that were freed for eval.

yes, that can be a viable option, as we have to eventually control the checkpointing through deepspeed if we want to seamlessly switch between these two modes. I think we can hide all the necessary operations for the switching between inference and training modes, and the user still feels it's like switching a flag on and off.

yes, please!


Unpin node

Draft for now to see if it passes

:( Node 16.latest still has an npm that issues a warning that breaks the build and there's a new issue with 18.latest running playground tests.

Gave up and filed #835


Ignore all tests but first

This is not a great contribution, but I like when all tests but first are ignored.

This is a perfectly good contribution :) Thanks


Chore : my first contribution  🤙🏼 #477

Description ✏

Returns a list of undergrad student emails who are not registered for a given event.
Finds the event attendees and filters down those students who are not attending.

Type of Change 🐞

[x] Feature - A non-breaking change which adds functionality.
[ ] Fix - A non-breaking change which fixes an issue.
[ ] Refactor - A change that neither fixes a bug nor adds a feature.
[ ] Documentation - A change only to in-code or markdown documentation.
[ ] Tests - A change that adds missing unit/integration tests.
[ ] Chore - A change that is likely none of the above.

Checklist ✅

[x] I have done a self-review of my code.
[ ] I have manually tested my code (if applicable).
[ ] I have added/updated any relevant documentation (if applicable).

Hey @imnotrafa, is this PR ready? No rush if not, just want to make sure we don't have this as a draft when it is ready for review

Hello @tomas-salgado , yes! sorry I forgot to submit currently got caught with school work. will be submitting a PR on Tuesday if thats okay.

Yep no worries @imnotrafa, just wanted to check!

@tomas-salgado  I created a differnet pull request thus I believe this one can be deleted.


Make cell_methods-derived bounds optional in getvar

This is following the suggestion from https://github.com/COSIMA/cosima-cookbook/issues/284#issuecomment-1034283040, to be able to return a Dataset if we need things like time_bounds, otherwise default to a DataArray and don't attach additional attributes. I don't know if return_dataset is a particularly enlightening name, happy to take suggestions there...
Closes #284.

I can only think of worse names than return_dataset. Like return_type='DataArray' which is kinda awful. return_bounds is more specific, but makes it harder to add other related variables (like curvilinear grid coords) if that was considered useful in the future, and doesn't indicate the type of the object returned from the function changes.

Looks good. I am happy to merge or let you do it.


[EPIC]: datahub.io site changes

Look at old page here - https://web.archive.org/web/20210821005514/https://datahub.io/) - source code in https://github.com/datahub-v2/frontend

- [ ] https://github.com/datopian/datahub/issues/1323
- [ ] https://github.com/datopian/datahub-next/issues/574
- [x] https://github.com/datopian/datahub/issues/1158
- [ ] https://github.com/datopian/datahub/issues/1326
- [ ] https://github.com/datopian/datahub/issues/1334
- [ ] datopian/datahub#1327

## Someday / Maybe
- [ ] SQL explorer for CSV (eg, duckdb or alasql) - cool to have but not necessary
- [ ] Auto generate json version of CSV ...
- [ ] Previews for larger (CSV) files (? may be less important for now)
- [ ] Support for more formats e.g. parquet, sqlite, xls, ...

Closing as mainly FIXED. We gonna have weekly newsletter item in the next sprint.


ci: upgrade chrome-webstore-upload-cli

Try out this version of the Hiro Wallet - download extension builds.

Upgrading Chrome Webstore upload package per Google OAuth updates.
RE: https://github.com/hirosystems/devops/issues/1009

Strange that a dev dep package used only in our CI causes app-level React type errors
src/app/app.tsx:28:8 - error TS2786: 'PersistGate' cannot be used as a JSX component.
  Its instance type 'PersistGate' is not a valid JSX element.
    The types returned by 'render()' are incompatible between these types.
      Type 'React.ReactNode' is not assignable to type 'import("/Users/kyranjamie/dev/hiro/stacks-wallet-web/node_modules/@types/react-dom/node_modules/@types/react/index").ReactNode'.

28       <PersistGate loading={<FullPageLoadingSpinner />} persistor={persistor}>
          ~~~~~~~~~~~

src/app/components/transaction/transaction-type-icon.tsx:54:27 - error TS2786: 'FunctionIcon' cannot be used as a JSX component.
  Its element type 'ReactElement<any, any> | Component<MdiReactIconProps, any, any> | null' is not a valid JSX element.
    Type 'Component<MdiReactIconProps, any, any>' is not assignable to type 'Element | ElementClass | null'.
      Type 'Component<MdiReactIconProps, any, any>' is not assignable to type 'ElementClass'.
        The types returned by 'render()' are incompatible between these types.
          Type 'React.ReactNode' is not assignable to type 'import("/Users/kyranjamie/dev/hiro/stacks-wallet-web/node_modules/@types/react-dom/node_modules/@types/react/index").ReactNode'.

54     contract_call: () => <FunctionIcon size="14px" />,
                             ~~~~~~~~~~~~

src/app/features/errors/app-error-boundary.tsx:55:6 - error TS2786: 'ErrorBoundary' cannot be used as a JSX component.
  Its instance type 'ErrorBoundary' is not a valid JSX element.
    The types returned by 'render()' are incompatible between these types.
      Type 'React.ReactNode' is not assignable to type 'import("/Users/kyranjamie/dev/hiro/stacks-wallet-web/node_modules/@types/react-dom/node_modules/@types/react/index").ReactNode'.

55     <ErrorBoundary
        ~~~~~~~~~~~~~

src/app/features/errors/error-boundary.tsx:142:17 - error TS2786: 'FallbackComponent' cannot be used as a JSX component.
  Its element type 'ReactElement<any, any> | Component<FallbackProps, any, any> | null' is not a valid JSX element.
    Type 'Component<FallbackProps, any, any>' is not assignable to type 'Element | ElementClass | null'.
      Type 'Component<FallbackProps, any, any>' is not assignable to type 'ElementClass'.
        The types returned by 'render()' are incompatible between these types.
          Type 'React.ReactNode' is not assignable to type 'import("/Users/kyranjamie/dev/hiro/stacks-wallet-web/node_modules/@types/react-dom/node_modules/@types/react/index").ReactNode'.
            Type '{}' is not assignable to type 'ReactNode'.

142         return <FallbackComponent {...props} />;
                    ~~~~~~~~~~~~~~~~~

Found 4 errors in 4 files.

Errors  Files
     1  src/app/app.tsx:28
     1  src/app/components/transaction/transaction-type-icon.tsx:54
     1  src/app/features/errors/app-error-boundary.tsx:55
     1  src/app/features/errors/error-boundary.tsx:142
error Command failed with exit code 2.


teleport

how chahnge the specific x.y cordinates to mouse cordinates

What type of coordinates are you trying to change?

tp: function(args) {
    var id =this.playerTracker.pID;
    if (isNaN(id)) {
        this.writeLine("Please specify a valid player ID!");
        return;
    }

    // Make sure the input values are numbers
    var pos = {
        x: this.playerTracker.mouse.x,
        y: this.playerTracker.mouse.y
    };

    // Spawn
    for (var i in this.gameServer.clients) {
        if (this.gameServer.clients[i].playerTracker.pID == id) {
            var client = this.gameServer.clients[i].playerTracker;
            for (var j in client.cells) {
                client.cells[j].position.x = pos.x;
                client.cells[j].position.y = pos.y;
                this.gameServer.updateNodeQuad(client.cells[j]);
            }
          this.writeLine("You have been Teleported to ur cursor place ");
            break;
        }
    }
},

put it in playercommand.js and Use /tp in chat to make it work

@ogarcpl  you´re the best  thank you so much :1st_place_medal:


LCFS - Implement Email Notification Triggers in Backend for Subscribed Users

Description:
Implement email notification triggers throughout the backend codebase. For example, when a compliance report is assessed, users from the organization that owns the report should receive an email notification if they are subscribed to that notification type. Each notification type should have its trigger implemented at the appropriate location in the backend.
Purpose and benefit to user:

Keeps users informed about important actions related to them.
Enhances user engagement and satisfaction.
Ensures timely communication of relevant events.

Acceptance Criteria:

[ ] Given I am a user subscribed to a notification type, when the corresponding event occurs (e.g., compliance report is assessed), then I receive an email notification.
[ ] Given I am a user not subscribed to a notification type, when the event occurs, then I do not receive an email notification.
[ ] Given the system triggers an event, notifications are sent only to users subscribed to that notification type.

Development Checklist:

[ ] Identify all notification types and their triggering events.
[ ] Implement notification triggers at the correct locations in the backend code.
[ ] Ensure notifications respect user subscription preferences.
[ ] Integrate triggers with the existing email templates.
[ ] Test to confirm that notifications are sent correctly to subscribed users.

Notes:

Coordinate with the business team to verify notification requirements.
Handle user data securely when sending emails.
Ensure that adding new notification types in the future is straightforward.

Email template
Subject: B.C. LCFS Notification
From<EMAIL_ADDRESS>Body:
This email was generated by the Government of British Columbia, Low Carbon Fuel Standard portal.
A  update has occurred within the Low Carbon Fuel Standard portal. For more details, please go to: https://lowcarbonfuels.gov.bc.ca/
You received this email because you subscribed at the site above, to stop receiving these email, log in to your account here: https://lowcarbonfuels.gov.bc.ca/notifications
ANALYST
Transfers
•	Submitted to government for analyst review
o	SUBMITTED (Signed and submitted by transfer partner 2)
•	Rescinded by either transfer partner
o	RESCINDED (this should only trigger if the report was previously Submitted but not Sent)
•	Director recorded/refused
o	RECORDED or REFUSED
Initiative agreements and other transactions
•	Director approved/returned to analyst
o	APPROVED or RETURNED  (initiative agreements, designated actions, admin adjustments)
Compliance & supplemental reports
•	Submitted to government for analyst review
o	SUBMITTED (both compliance and supplemental reports)
•	Compliance manager recommendation
o	RECOMMENDED BY MANAGER (compliance, supplemental and reassessment reports)
•	Director assessment
o	ASSESSED or REASSESSED (compliance, supplemental and reassessment reports)
COMPLIANCE MANAGER
Compliance & supplemental reports
•	Submitted to government for analyst review
o	SUBMITTED (both compliance and supplemental reports)
•	Analyst recommendation
o	RECOMMENDED BY ANALYST (compliance, supplemental and reassessment reports)
•	Director assessment
o	ASSESSED or REASSESSED (compliance, supplemental and reassessment reports)
DIRECTOR
Transfers
•	Analyst recommendation
o	RECOMMENDED
Initiative agreements and other transactions
•	Analyst recommendation
o	RECOMMENDED (initiative agreements, admin adjustments)
Compliance & supplemental reports
Compliance manager recommendation
•	RECOMMENDED BY MANAGER (compliance, supplemental and reassessment reports)
BCEID
Transfers
•	Transfer partner proposed, declined, rescinded or signed & submitted
o	SENT or DECLINED or RESCINDED or SUBMITTED (by transfer partner/other BCeID organization)
•	Director recorded/refused
o	RECORDED or REFUSED
Initiative agreements and other transactions
•	Director approved
o	APPROVED (initiative agreements, admin adjustments)
Compliance & supplemental reports
•	Director assessment
o	ASSESSED or REASSESSED (compliance, supplemental and reassessment reports)