Implements unlift operator for total functions returning an Option result

This pull request adds the static method <T, R> PartialFunction<T, R> unlift(Function1<T, Option<R>> totalFunction) to the interface PartialFunction. This method unlifts a total function returning an Option result into a partial function. The partial function is defined at a value if and only if the given total function doesn't return None at this value.
An example use case of this method is the following:
Seq<Option<T>> maybeValues = ...
Seq<T> values = maybeValues.collect(PartialFunction.unlift(Function1.identity()))

In Scala, one would use Pattern Matching: maybeValues.collect { case Some(x) => x }.

Codecov Report

Merging #2123 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@             Coverage Diff              @@
##             master    #2123      +/-   ##
============================================
+ Coverage     97.37%   97.38%   +<.01%
- Complexity     5196     5197       +1
============================================
  Files            92       92
  Lines         11945    11948       +3
  Branches       1587     1587
============================================
+ Hits          11632    11635       +3
  Misses          157      157
  Partials        156      156

Impacted Files
Coverage Δ
Complexity Δ

vavr/src/main/java/io/vavr/PartialFunction.java
100% <100%> (ø)
2 <1> (+1)
:arrow_up:

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 a6ae155...15e9f4e. Read the comment docs.


feat(atomWithHash): optimize return value to prevent unnecessary re-renders

close https://github.com/pmndrs/jotai/issues/1657

Thanks for working on this!
Yeah, it feels a little hacky. We would like to refactor it. I think we can merge it and release it for now. What do you think?

Agreed! Let's merge it 🙌


[incubator/sparkoperator] scheduling.volcano.sh to spark-operator-rbac.yaml

Is this a new chart
No
What this PR does / why we need it:
Solves podGroup not created issue with batch-scheduling in spark-operator using volcano scheduler - https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/issues/968
Which issue this PR fixes

fixes #23124

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[ ] DCO signed
[ ] Chart Version bumped
[ ] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @yuchaoran2011

@Gouthamkreddy1234 Please bump the chart version in Chart.yaml to 0.7.2


注释掉无效代码

注释掉无效代码，此处判空没有意义吧？
注释掉无效代码

 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.

 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.


Fix pervasive syntax errors in OWL Restrictions

The syntax rule for owl:Restriction states:

The class owl:Restriction is defined as a subclass of owl:Class. A restriction class should have exactly one triple linking the restriction to a particular property, using the owl:onProperty property. The restriction class should also have exactly one triple that represents the value constraint c.q. cardinality constraint on the property under consideration, e.g., that the cardinality of the property is exactly 1.

Note that this was written on top of the branch for #32

This is actually independent of #32 and less controversial, because it's just a syntactic (syntactic-oid?) error.  If you like, I could rebase this on main, and then we can merge it before dealing with #32 .
LMK what you would prefer.

Force pushed a change that makes this sit right on main instead of requiring the earlier commit.
It looks like it's failing the CI which means I fear that there might be something in our toolchain that requires the ill-formed owl:Restriction s

Locally test_validation passes for me but in GitHub Actions it fails.  I'm not sure why. Is it possible that it's passing for me because rdflib sees the locally cached copies of the required ontologies in my catalog-v001.xml file?  It doesn't make any sense to me that GitHub's copy of rdflib would be rejecting something that my local copy thinks is fine.

My approval is contingent on you removing the unrelated changes around the annotation property, as you noted you plan to.


Incorrect emit of defining class expression with static property inside loop

As @jeffreymorlan  points out in the PR #8551, below code is emited incorrectly.
Compiler options: --target es5, --target es6
const arr: {y(): number}[] = [];
for (let i = 0; i < 3; i++) {
    arr.push(class C {
        static x = i;
        static y = () => C.x * 2;
    });
}
arr.forEach(C => console.log(C.y()));

Verified

Just looking at old bugs; this one was fixed in #43197 and contains associated tests for class declarations in loops.


[provernet] Verify that proofs submitted to L1 correspond to published blocks

Fixed by @LHerskind in #7635


[todo]: update first objective

The first objective needs to be updated to actually describe what the system is doing, it's features rather than have it be general to what the researcher is supposed to do

done


platform_define does not seem to detect otp18

Using erlang 18, rebar3 dies not seem to set 'noerlangnow' macro.
rebar.config
{erl_opts, [debug_info,
{platform_define, "18", {d, noerlangnow}},
...
code:
-ifdef(noerlangnow).
-define(now(), erlang:timestamp()).
-else.
-define(now(), erlang:now()).  <---
-endif.

When I do this manually I got no issue:
erlc -Dnoerlangnow -I ./include/ ./src/*.erl

Can you give the output of rebar3 report ?

Shouldn't it be {platform_define, "18", noerlangnow}? You may wish to future proof that regex.

Yea, it should be {platform_define, "18", noerlangnow}.

That does not seem to work either.
tried:
{erl_opts, [debug_info,
{platform_define, "18", d, noerlangnow},
code:
-ifdef(noerlangnow).
-compile({nowarn_deprecated_function, {erlang,now,0}}).   <---- Should be here but not
-endif.
Used: erlc  -Dnoerlangnow -I ./include ./src/replication_helper.erl  No problem.
But not from rebar3 compile:
replication_helper.erl:31: erlang:now/0: Deprecated BIF. See the "Time and Time Correction in Erlang" chapter of the ERTS User's Guide for more information
REBAR3 REPORT:
Rebar3 report
version 3.0.0-beta.3+build.327.ref97ae8d6
generated at 2015-10-21T16:16:59+00:00
Please submit this along with your issue at https://github.com/rebar/rebar3/issues (and feel free to edit out private information, if any)
Task:
Entered as:

Operating System: x86_64-unknown-linux-gnu
ERTS: Erlang/OTP 18 [erts-7.0.3] [source] [64-bit] [smp:2:2] [async-threads:0] [hipe] [kernel-poll:false]
Root Directory: /usr/local/lib/erlang
Library directory: /usr/local/lib/erlang/lib
Loaded Applications:
bbmustache: 1.0.4
certifi: 0.1.1
common_test: 1.11
compiler: 6.0
crypto: 3.6
dialyzer: 2.8
edoc: 0.7.17
erlware_commons: 0.16.0
eunit: 2.2.10
getopt: 0.8.2
inets: 6.0
kernel: 4.0
providers: 1.5.0
public_key: 1.0
relx: 3.7.1
sasl: 2.5
snmp: 5.2
ssl_verify_hostname: 1.0.5
stdlib: 2.5
syntax_tools: 1.7
tools: 2.8

Escript path: /opt/test/ReplicationEngine/rebar3
Providers:
app_discovery as clean compile compile cover ct deps dialyzer do edoc escriptize eunit help install install_deps list lock new path pkgs release relup report shell tar tree unlock update upgrade upgrade upgrade version xref
.

No, we said the correct way was {platform_define, "18", noerlangnow}

Nor this:
{erl_opts, [debug_info,
{platform_define, "18", {d, {noerlangnow, true}}},
It seems like it does not recognize it is 18.
from erl shell:
2> erlang:system_info(otp_release).
"18"

Let me try agin


how should I display the risks layer in the dashboard ?

@jdilger in the wireframe, the risks are quoted in the "costs" txt :
"Note: Estimates on the probability of natural regeneration success is included in the "Risks" category." but this theme is not displayed on the dashboard. Should i use the same display as benefits or constraints ?

@12rambau we talked about having them shown as single values (specifically for anything that is a national level product).  Ideally, there would be a separate small section for risks.

Ok i'll create a dashboard tile that kinda look like the one you've designed and use a json to populate itself (I'll give you the format in the top of the tile file)


[Docusaurus] improvs and fixs

up version
add light theme for code
back example on main page
change sh to bash in docs for right display of highlights

Great, thanks! 👍 👍


⚠ ClamAV has degraded performance

In cab1f57, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 72 ms

Resolved: ClamAV performance has improved in d55027c.


Instead of saving UserProfile fields one by one, we can save it in on…

Few things to keep in mind here-

Added 'related_name' to UserProfile's 'user' field, so that we can access it inside 'update' method.
Instead of creating 100 serializer fields for 100 model fields, we can just create a nested serializer for UserProfile, and put it inside our UserDetailsSerializer.
We can also access UserProfile instance values using -
company_name = userprofile_data.get('company_name')

Major advantage of this is, we can have a clean and nice looking code with DRF handling so much for us.
Another major advantage is that we dont have to create multiple serializer fields for multiple UserProfile model fields.

This is my first contribution towards open source. Looking forward for more.

Thanks for accepting it.

Thanks for accepting it.

It is still showing the old documentation, because the documentation is running from iMerica's repository and my PR was merged into jazzband's master branch. Please merger into iMerica's master branch.
Thanks

It is still showing the old documentation, because the documentation is running from iMerica's repository and my PR was merged into jazzband's master branch. Please merger into iMerica's master branch.
Thanks

It doesn't have to do with my fork. It's that I haven't released the latest changes. I'll do so shortly.

It doesn't have to do with my fork. It's that I haven't released the latest changes. I'll do so shortly.


incorrect selection of timesteps for 6hourly geopotential from AUS2200

AUS2200 1hourly files have some variables only every 6 hours but at 01-07 etc timesteps.
This is causing issues in properly build files for geopotential heigh which relies on one of this variables.
Somehow files are expected to have values starting at 06 to 00 of day after which throws everything off as only 07-13-19 timsteps are included. They should start at 01!!

Also removing time slicing just after loading input data!

This is solved as there's nothing wrong with the code is because of the mismatch of timestamp in the filename and file and the fact that this variables are saved at a completely different timestep than the other in same file, you need to adjust separately the start end of experiment to get it to select times as expected.


Align http and undici metric name

Currently, opentelemetry-instrumentation-http exports metrics under the name http.client.duration, while instrumentation-undici exports metrics as http.client.request.duration. It would seem that this is the same metric, and should be named as such (unless I'm misunderstanding something here?).
I'm not sure which is "correct" or which package needs to change, but it would seem like one of them should be changed to match the other. Same for their context. Guessing this can be hacked via a View or something, although a native solution would be way more elegant.
Additional context
The difference I see between how these these packages are being utilized is via "fake fetch" packages, such as node-fetch, Axios, and other packages that use node: HTTP under the hood, vs. packages using native fetch (or importing undici). It might be interesting to note the client in the context.
/cc @david-luna (https://github.com/open-telemetry/opentelemetry-js-contrib/pull/1951) and @hectorhdzg (https://github.com/open-telemetry/opentelemetry-js/pull/3149) who seemingly added these two versions. Thanks guys!

Hi thanks for reaching out :slightly_smiling_face:  - I think this may be a duplicate of #4572, see reasons below:
A while ago there were changes in the semantic conventions for HTTP and we have not updated @opentelemetry/semantic-conventions yet to match the latest semconv. This package contains the constants for metric and attribute names. These there were quite a few challenges to overcome but this update is on-track now. @opentelemetry/instrumentation-undici is using a later version of the semconv which it has locally for now as it's a new instrumentation.
@dyladan is currently working on updating the semantic conventions package (@opentelemetry/semantic-conventions) #4690 so that we can update @opentelemetry/instrumentation-http and all other instrumentations to the latest semconv version. This update will include metrics names and align them with what you see today in @opentelemetry/instrumentation-undici. See #4572 as the tracking this update.
I'm closing this feature request as a duplicate of #4572.

great, thanks so much, all!


Failed to build cryptography in OS X

I follow the documentation and executed the commands required for OS X. I have created and activated a virtualenv with the name of caravel and installing cryptography within it. I am unable to build cryptography package. Following are the error logs that I am receiving.
Failed building wheel for cryptography
Failed to build cryptography
Installing collected packages: idna, pyasn1, six, enum34, ipaddress, pycparser, cffi, cryptography
Running setup.py install for cryptography
Complete output from command /Users/priyanktrivedi/development/caravel/bin/python2.7 -c "import setuptools, tokenize;file='/private/var/folders/60/11qs
tkk57k3858vdl52ft4jc0000gn/T/pip-build-SZIt74/cryptography/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /var/folders/60/11qstkk57k3858vdl52ft4jc0000gn/T/pip-GsbdNx-record/install-record.txt --single-version-externally-managed --co$pile --install-headers /Users/priyanktrivedi/development/caravel/bin/../include/site/python2.7/cryptography:
running install
running build
running build_py
running egg_info
writing requirements to src/cryptography.egg-info/requires.txt
writing src/cryptography.egg-info/PKG-INFO
writing top-level names to src/cryptography.egg-info/top_level.txt
writing dependency_links to src/cryptography.egg-info/dependency_links.txt
writing entry points to src/cryptography.egg-info/entry_points.txt
warning: manifest_maker: standard file '-c' not found
reading manifest file 'src/cryptography.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'docs/_build'
warning: no previously-included files matching '*' found under directory 'vectors'
writing manifest file 'src/cryptography.egg-info/SOURCES.txt'
running build_ext
generating cffi module 'build/temp.macosx-10.10-x86_64-2.7/_commoncrypto.c'
already up-to-date
generating cffi module 'build/temp.macosx-10.10-x86_64-2.7/_padding.c'
already up-to-date
generating cffi module 'build/temp.macosx-10.10-x86_64-2.7/_constant_time.c'
already up-to-date
generating cffi module 'build/temp.macosx-10.10-x86_64-2.7/_openssl.c'
already up-to-date
building '_commoncrypto' extension
/usr/local/bin/gcc -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/usr/local/opt/openssl/include -I/usr/local/Cellar/python/2.7.11/Frameworks/Python.$ramework/Versions/2.7/include/python2.7 -c build/temp.macosx-10.10-x86_64-2.7/_commoncrypto.c -o build/temp.macosx-10.10-x86_64-2.7/build/temp.macosx-10.10-x8$_64-2.7/_commoncrypto.o
In file included from /usr/include/dispatch/dispatch.h:51:0,
from /System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:15,
from /System/Library/Frameworks/CoreFoundation.framework/Headers/CFPropertyList.h:13,
from /System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:55,
from build/temp.macosx-10.10-x86_64-2.7/_commoncrypto.c:424:
/usr/include/dispatch/object.h:143:15: error: expected identifier or '(' before '^' token
typedef void (^dispatch_block_t)(void);
^
/usr/include/dispatch/object.h:362:3: error: unknown type name 'dispatch_block_t'
dispatch_block_t notification_block);
^
In file included from /System/Library/Frameworks/Security.framework/Headers/SecDigestTransform.h:28:0,
from build/temp.macosx-10.10-x86_64-2.7/_commoncrypto.c:460:
/System/Library/Frameworks/Security.framework/Headers/SecTransform.h:579:15: error: expected identifier or '(' before '^' token
typedef void (^SecMessageBlock)(CFTypeRef message, CFErrorRef error,
/System/Library/Frameworks/Security.framework/Headers/SecTransform.h:612:8: error: unknown type name 'SecMessageBlock'
SecMessageBlock deliveryBlock)
^
error: command '/usr/local/bin/gcc' failed with exit status 1

Try CC=clang pip install cryptography?

Thanks @andrewhn . That worked.


Further JSON test fixes required

Context
PR #267 introduces directory structure changes to the existing JSON tests.
Problem
This requires us to change the way these tests are run in Rust code because the older files no longer exist. What we have currently is configured to read big JSON files that deserialize into a vector of TestCase and we loop over them to run our tests. But now, we have split all these huge JSON files into multiple files such that each JSON file is a single TestCase. Now that there are so many files, it is messy to read each file manually and run test over it.
Proposed Solution
Configure Rust test to loop over these files instead of manually having to read each one of them.

I'll cherrypick the changes from #267 and delete the now obsolete test code. If there are new test-failures (e.g. https://github.com/informalsystems/tendermint-rs/pull/267#issuecomment-629222593), I'll "blacklist" those for now and fix them later.

From the description I was expecting that all these 4 tests fail:
./single_step/sequential/commit/one_third_vals_don't_sign.json
./single_step/sequential/commit/more_than_two_third_vals_sign.json
./single_step/skipping/commit/one_third_vals_dont_sign.json
./single_step/skipping/commit/more_than_two_third_vals_sign.json
Weirdly only the first currently fails.


Fix: Moved submission consent legal texts to localizable legal file

This is a  text key refactoring. Moved the submission consent legal texts out of the localizable file into the localizable legal file.

Milestone and Jira Issue please :)


Replace custom require loader with process.dlopen and using static path to node.napi.node

Specification
Native bindings is currently loaded using requireBinding. This is integrated into our native addon packaging style using optional dependencies.
However this won't work as part of ESM. So it has to be changed to using dlopen in preparation for ESM migration.
Furthermore, require supports the package.json specification of main. Which we are currently setting to node.napi.node. However instead we just fix statically where our .node files will be, and that it will always be in @matrixai/quic-linux-x64/node.napi.node.
This means dlopen should work better, and plus it becomes simpler to use when it comes to integrating into esbuild bundling and pkg.
In particular it means:

esbuild needs to specify @matrixai/quic-linux-x64 as an external package, since esbuild cannot bundle such a thing - this is done by setting it in optionalDependencies and passing it to the external option in await esbuild.build(esbuildOptions). - The reason it is in optionalDependencies is because this allows it to be installed into the node_modules so when a nix-build occurs, it will in fact exist when esbuild is running. This we cannot really automate, and we have to do this for all native addons. See package.json in Polykey-CLI.
pkg needs to specify an asset as<EMAIL_ADDRESS>- Currently we're using node-gyp-build to auto-find native modules, however this does not work for our custom optional dependency structure. So currently this is also manually specified.

I think it should be possible to update our native module finding code to look for node.napi.node that is within our direct dependencies too, by just iterating through the root directory of each package, then it should be possible to make that automatic as well. That would reduce this:
  "pkg": {
    "assets": [
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>    ],
    "scripts": [
      "dist/polykeyWorker.js"
    ]
  },

Down to:
  "pkg": {
    "assets": [],
    "scripts": [
      "dist/polykeyWorker.js"
    ]
  },

Since it would be auto-found.
Additional context

https://github.com/MatrixAI/Polykey-CLI/pull/4#issuecomment-1767333932

Tasks

...
...
...

If this is done, we should also be updating @matrixai/db and the other native code as much as possible. @amydevs


Laravel 8.60.0 Shift

This pull request includes updates for the recent minor version release of Laravel as well as updates to your package dependencies. Feel free to commit any additional changes to the shift-ci-v8.60.0 branch.
Before merging, you need to:

Checkout the shift-ci-v8.60.0 branch
Review all pull request comments for additional changes
Run composer update
Test your application (no tests?)

:warning: The Shift build servers run PHP 8. If you are still running PHP 7.4 or lower you should run composer update locally to ensure you have the proper versions of your dependencies to reflect your PHP 7 environment.

:information_source: The following Laravel packages were updated as they are known to be compatible with Laravel 8.60. Nonetheless, you should review the CHANGELOG to ensure no additional changes are needed.

[ ] stevegrunwell/time-constants


Ensembl - Release 85

Hi,
It's possible to add human release 85.
Or explain, how we can fix it in your local installation.
Thanks,
Eric.

Maybe it's a good idea to check if the URL exist, compare to save the max release in the constant MAX_ENSEMBL_RELEASE in ensembl_release_versions.py. This solution avoids to update the code at each new release.

Ok we can install it, but I don't find the way to use it:
ensembl = EnsemblRelease(85)
Traceback (most recent call last):
File "/u/eaudemard/dev/IRIC/tools/gene_prediction.py", line 331, in
main()
File "/u/eaudemard/dev/IRIC/tools/gene_prediction.py", line 270, in main
ensembl = EnsemblRelease(args.ENSEMBL)
File "/soft/bioinfo/linux_RH7/python-2.7.10/lib/python2.7/site-packages/pyensembl/ensembl_release.py", line 39, in init
self.release = check_release_number(release)
File "/soft/bioinfo/linux_RH7/python-2.7.10/lib/python2.7/site-packages/pyensembl/ensembl_release_versions.py", line 33, in check_release_number
release, MIN_ENSEMBL_RELEASE, MAX_ENSEMBL_RELEASE))
ValueError: Invalid Ensembl releases 85, must be between 54 and 84

Modify  the code doesn't work enough!
ensembl.gene_name_of_transcript_id(select_id)
ValueError: Missing genome data file from ftp://ftp.ensembl.org/pub/release-85/gtf/homo_sapiens/Homo_sapiens.GRCh38.85.gtf.gz. Run pyensembl install --release 85 --species homo_sapiens
And "Run pyensembl install --release 85 --species homo_sapiens" doesn't help.

Hi @ericloud,
We've been incrementing the max release manually since (1) it affects how we set up tests for the library and (2) sometimes we have to fix non-obvious things to get a new release to work. Twice now the GTF format has been broken or changed from updated releases. I'll get PyEnsembl working with release 85 soon.

Ok, thanks for your feedback.


flask-restful requires username and password, but I never did that

I started to add a method_decorator to a resource I have, and then deleted the code, reverting it to the non-protected resource it was that worked. Now, every time that I try to access that resource, I see the error "the server at localhost requires a username and password. the server says: flask-restful"
I have cleaned all .pyc files out, and uninstalled and reinstalled flask-restful. There are no other code changes other than adding and deleting the small decorator as well as the method_decorator line in the resource. I am still seeing the "username and password" dialogue.
What could be causing this? Glad to upload pictures or provide more information if there is not enough.

Possibly your browser? Try another browser.

Just tested with Firefox (was previously using Chrome Canary) and I am seeing the exact same "Authentication Required" dialog.

Update: I am accessing a third party API, and the auth error I am getting seems to be coming from that API. But, since flask-restful is the one serving the Resource, it's showing "flask-restful" in the Authentication Required error dialogue, and this may be misleading. I'm going to update this and close it once I confirm that it is my third party causing the issue, and not anything to do with Flask-Restful. Thank you very much @svenstaro for the very prompt reply :smile:

I had a similar problem. Every 401 from my server was showing this authentication dialog in the browser.
Here's how I fixed it:
# Flask RESTful
restful_api = Api(app)
restful_api.unauthorized = lambda a: a  # Overwrite the credentials response

Clever @gregeinfrank, I'm going to make a note of that. But it does look like the API that I was using to serve the photo was at fault, and that someone revoked those credentials for one reason or another.
I would suggest that if it's even possible, Flask-Restful passes the "server says: x" error through so that it doesn't display as flask-restful. In reality, in this case here, it would have optimally read "NetKernel."

Just weighing in after having working out all the kinks in the code - I think that having the option as a config variable to disable the WWW-Authenticate challenge raised on every 401 would be great.
I used @gregeinfrank's fix because I just want the endpoint to return a 401 so the end-user knows that their authentication in that request is wrong, not raise another Basic authentication attempt. Looking at the other issues referenced above, it seems like there was generally hesitation to allow users to disable this WWW-Authenticate at some point in the past.

It's tricky because the request made by the client did not fail because a valid username/password was not provided, the request made by the backend to the external api on the client's behalf was actually the one that failed, but that error is being shown to the client directly. Perhaps returning a 400 error to the client in this case would be more appropriate, or 500 if the username/password for the other API is not provided by the client and is stored in the server configuration.

@joshfriend What do you think about adding a config for that for now? It seems to generally be a problem that people have and I don't like the hack being accepted as the general way to fix it.

Give this a spin guys and tell me how it works out for you.

RFC2616:

The response MUST include a WWW-Authenticate header field (section 14.47) containing a challenge applicable to the requested resource.

I like the config option added in fe53f49, but the default should really be True.

This is a correctness vs. pragmatism thing. On one hand, you probably never will want your API backend to issue a Basic Auth to your browser, on the other hand it's not correct not to do so. Judging by all the different issues that were reported on this and how many people were bitten by this, I think one can argue that in this case, convenience is better than correctness but I'm happy to change it if it makes you entirely unhappy.


reactivate Mozsár Bistro

they are uptodate again

https://github.com/theDavidBarton/puppeteer-daily-menu-scraper/pull/48/files


Pymoo crashes when sequential runs have different n_obj

When running several optimizations in series, Output objects are reused. This leads to incorrect values of certain indicators and in case of a different number of objectives, to a crash with the following error.
N[..., neither_nan] = (X[..., neither_nan] - xl[neither_nan]) / (xu[neither_nan] - xl[neither_nan])
IndexError: boolean index did not match indexed array along dimension 1; dimension is 3 but corresponding boolean dimension is 1

For an example, see here.
As mentoined by @blankjul on Discord, this can be fixed by explicitly instantiating a new Output object when setting up the algorithm.
from pymoo.util.display.multi import MultiObjectiveOutput
termination=setup_termination(n_max_gen_1),
    seed=seed_1,
    verbose=True,
    save_history=False,
    output=MultiObjectiveOutput()
)

Thank you for documenting the issue here!


NI USRP-2920 Support

Hi, would you add support for the NI USRP-2920 SDR box?

Please try tx_samples_from_file.


Proposal: Make OpenMP an optional dependency

Is it possible (desirable) to make OpenMP an optional dependency?
As far as I understand, OpenMP is only directly used in kway_graph_refinement_commons.cpp with the directive critical (one thread at a time).
In my fork, I have defined a  preprocessor macro USE_OPENMP, which is set only in the case I would use OpenMP, and wraps the OpenMP calls.
What are the expected effects?

Hi Igor, I will soon have a closer look.

pull request #42 fixes this.
Thanks Igor!


Confusion about 'transformed_params2depthplussilhouette' function

Thank you for sharing the code. I am confused about the transformed_params2depthplussilhouette function here.
def transformed_params2depthplussilhouette(params, w2c, transformed_pts):
    rendervar = {
        'means3D': transformed_pts,
        'colors_precomp': get_depth_and_silhouette(transformed_pts, w2c),
        'rotations': F.normalize(params['unnorm_rotations']),
        'opacities': torch.sigmoid(params['logit_opacities']),
        'scales': torch.exp(torch.tile(params['log_scales'], (1, 3))),
        'means2D': torch.zeros_like(params['means3D'], requires_grad=True, device="cuda") + 0
    }
    return rendervar

Since in the transform_to_frame function, transformed_pts are the points transformed into current camera frame. Why do we need to transform it again in the code  get_depth_and_silhouette(transformed_pts, w2c) ? Shouldn't we just use the transformed_pts to compute the depth ?

I think it's related to the render camera setting. The gaussian render Renderer(raster_settings = curr_data['cam'], so the render camera's view is always from the first frame's position (call it as view camera). Usually it's identity, which is easy to understand. But when it's not identity, the depth value from scene to view camera used be adjusted.
I may not express it very well, but I think the key is there is a view camera.

Hi @RPFey, Thanks for your question! @Buffyqsf is right.
The input w2c for the transformed_params2depthplussilhouette function is the first_frame_w2c, the viewing camera. Ideally, if all the poses are with respect to the first frame (as is the case with SplaTAM), the input w2c would be identity. However, to make sure the function is general and works with any viewing camera definition, we convert the world frame Gaussians to the viewing camera frame to compute the depth:
https://github.com/spla-tam/SplaTAM/blob/a0bda58dd6fbf3e2ad31e40adc48514923bec4c0/utils/slam_helpers.py#L172

Thank you for your replies. It answers my questions !

@Buffyqsf hello，I am still confused about why the view matrix and projection matrix of the rendering camera remain the same in every frame. What is the purpose of these two matrices?

@whwh747 I'm sorry that I don't follow this for a long time. I remember it because SplaTAM transformed the scene instead of the camera.


[lexical-markdown] Refactor: Update regExpEnd optional type in MultilineElementTransformer

[lexical-markdown] Refactor: Broaden regExpEnd optional type to boolean
Description
Current Behavior:
In the MultilineElementTransformer interface, the regExpEnd property's optional field was unnecessarily restricted to only accept true as a value. This strict typing didn't provide any practical benefit and limited potential use cases where false might be a valid state.
Changes:

Modified the type definition of optional in regExpEnd from true to boolean
This change allows for more flexible usage of the optional flag
Makes the type definition more intuitive and consistent with typical boolean flag patterns

Closes #[issue number]
Test plan
Before
The regExpEnd type was overly restrictive:
regExpEnd?: RegExp | {
  optional?: true;  // Could only be true
  regExp: RegExp;
};

After
The regExpEnd type now allows both true and false values:
CopyInsert
regExpEnd?: RegExp | {
  optional?: boolean;  // Can be either true or false
  regExp: RegExp;
};

This change maintains backward compatibility while providing more flexibility in how the optional flag can be used.

The reason why you would use optional?: true is to make it clear that the default is false, and that there's no reason to specify it otherwise. I'm not sure this really has any benefit, there are other places in the code where an optional true is used as the type (such as discrete?: true and skipTransforms?: true), so if this change was desired I would expect that it would be done to the whole project. Does anyone else have opinions on this? @zurfyx @ivailop7
Generally speaking it's best to use types to limit the number of possible runtime states that should to be considered. {x?: boolean} has 4 states and {x?: true} has 3 (one less each when exactOptionalPropertyTypes is used)

@etrepum , this is actually very insightful. However I did not know the default was false as I could not tell from just looking at the types. Is there a way to explicitly tell the user of the function that the default is false while keeping the type as true?

The type itself already says that either the setting doesn't mean anything at all, or the default is not true. What you could do to make it more explicit for people who don't understand that implication is to add more documentation to the type.

I see what you mean. I will close this PR for now. Thanks for sharing the thinking behind it.


tab suspender added

Description
tab suspender added
added all required files
html,css,js,manifest.json ,background and content file
there is one request mam
from description you added level 1
i request you to check file chnages
it took my whole yesterday ,get  3 hour to understand chrome things and making this
and added excluded URLs feature today
please check file changes
Fixes:  #914
Type of change

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] I have made this from my own
[x] I have taken help from some online resourses
[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

ATTACH SCREEN-SHOTS / DEPLOYMENT LINK
Extension View

tabs after getting suspended if they are using memory

@Sulagna-Dutta-Roy
done with this issue kindly check my request


Added Open Collective backers and sponsors and call to donate after npm install

Is that post install thing mandatory?

It's not, but preferred :-)
We would love to experiment with it, get users' feedback and see how it performs.
You can also remove the logo to make it much less prominent by removing the "logo" attribute in package.json.

and you can also remove it entirely anytime if people complain. So I think it's worth trying. What do you think?

I think I don't want the banner at all. It's annoying. People didn't use the thing yet, but it already asks about money. Also if offline-plugin will be installed as a dependency, will the banner be shown?

Thanks for the PR! I'm going to format it a bit nicer, probably put bakers/sponsors to the top. But I'm going to disable the postinstall banner.


CSRF is not necessary for read operations

COUCHDB-2762

+1
I see only problems with _update handler(where GET is disabled on query server side, not httpd => custom query server may create/modify documents on GET) and custom externals which could not respect REST and do modifications on GET, but here we can nothing much to do.

Any preference for a single clause version?
validate(#httpd{method = Method}) when Method == 'GET'; Method == 'HEAD'; Method == 'OPTIONS' ->

@rnewson if you fit it in 80 line right margin - ok (: Personally, I found your initial version more readable - less syntax noise around the valuable data, but fine with both solutions.

I'll go with the original then. thanks!


Email Callback on training done

Description & Motivation
A simple callback that accepts a user's email and an app account password to notify the user that their training is complete by email. Inspired by wandb
The call back will use the user's email as both sender and receiver so no need for an external SMTP.
email =<EMAIL_ADDRESS>password = os.getenv("EMAIL_PASSWORD")
email_callback = EmailCallback(email, password)

trainer = Trainer(
        ...
        callbacks=[email_callback],
    )

Could also add details on how the training went, like test or validation measures. We could also add graphs and make it an entire report. It can get as detailed as we want. It's also possible to notify the used of any potential crashes.
Would love to work on this if approved!
Pitch
A lot of the time, training takes up a number of hours and users keep checking up on their models manually. An automatic notification on a user's phone where they can't miss it will speed up the development process.
Alternatives
Users manually create the callback.
Additional context
No response
cc @borda

The callback for training notification would be really helpful...
I would like to make contribution for this... Please assign me the issue.
Thanks...

@Sar2580P I opened it because I really wanted to work on it so I would love to make the PR myself but thanks for reaching out <3

No problem bro, go ahead with it....
Best of Luck

@Sar2580P Thank you bro, I will as soon as the mods feel approve it

Hey @loucaspapalazarou The callback looks great but could we first gather some feedback from the community to make sure enough users want/can use this so it's justified to maintain it within the package?

Hey @awaelchli, yup that sounds great!


Add formula for Helm 3.11.1

Why

It's the current version used by Fedora folks (as per ansible scripts in bootstrap repo)
Gets rid this pesky error log: ERRO[0000] failure getting variant error="getCPUInfo for OS darwin: not implemented"
Fixes broken auto-complete in fish shell

we just added a newer verson


HTTP3 still receiving packets after request cancellation

Hi,
I've been trying to use request cancellation for HTTP3 requests. I have two Go threads running, one that keeps looping and does HTTP3 requests to a quic-go server and another thread that does calculations in the background and sometimes cancels an ongoing request of the other thread. When I cancel an ongoing request, the looping thread immediately proceeds and makes the next request.
However, I notice that after canceling a request and then starting a new one, the new request takes a lot longer to complete than I expected. (I am testing this in a controlled environment with a constant capped throughput, so I know what kind of throughput I should expect). I can also see with qlog that there are still packets being received even though I have canceled the request and no new requests have started yet.
This is the code I use to make requests:
ctx, cancel := context.WithCancel(context.Background())
...
req = req.WithContext(ctx)
...
req, err := http.NewRequest("GET", url, nil)
...
resp, err = client.Do(req)

The CancelFunc cancel is passed to a struct where it can be called by the other Go thread like this:
a.m_cancel()

When the CancelFunc is called, the first thread does actually stop being blocked, which led me to assume the request cancellation was working. However, as I said before, I still seem to be receiving packets according to the qlog at that point. And when starting a new request, the throughput seems to be lower than usual.
Here is a part of the qlog file from the client:
...
{"time":7921.414793,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1461,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1439},"frames":[{"frame_type":"stream","stream_id":56,"offset":155040,"length":1414}]}}
{"time":7946.913974,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":693,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":33},"frames":[{"frame_type":"ack","ack_delay":25.527651,"acked_ranges":[[1362,1461],[1343,1360]]}]}}
{"time":7980.567649,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1462,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1439},"frames":[{"frame_type":"stream","stream_id":56,"offset":156454,"length":1414}]}}
{"time":7980.86731,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":694,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":42},"frames":[{"frame_type":"ack","ack_delay":0.344855,"acked_ranges":[[1362,1462],[1343,1360]]},{"frame_type":"stop_sending","stream_id":56,"error_code":268},{"frame_type":"reset_stream","stream_id":56,"error_code":268,"final_size":76}]}}
{"time":7980.878632,"name":"recovery:metrics_updated","data":{"bytes_in_flight":140,"packets_in_flight":5}}
{"time":7980.94935,"name":"recovery:loss_timer_updated","data":{"event_type":"set","timer_type":"pto","packet_number_space":"application_data","delta":1152.063464}}
{"time":8039.87949,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1463,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1439},"frames":[{"frame_type":"stream","stream_id":56,"offset":157868,"length":1414}]}}
{"time":8065.337259,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":695,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":33},"frames":[{"frame_type":"ack","ack_delay":25.534002,"acked_ranges":[[1362,1463],[1343,1360]]}]}}
{"time":8099.064123,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1464,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1439},"frames":[{"frame_type":"stream","stream_id":56,"offset":159282,"length":1414}]}}
{"time":8124.585036,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":696,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":33},"frames":[{"frame_type":"ack","ack_delay":25.582478,"acked_ranges":[[1362,1464],[1343,1360]]}]}}
{"time":8158.487436,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1465,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1439},"frames":[{"frame_type":"stream","stream_id":56,"offset":160696,"length":1414}]}}
{"time":8183.854988,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":697,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":33},"frames":[{"frame_type":"ack","ack_delay":25.411857,"acked_ranges":[[1362,1465],[1343,1360]]}]}}
{"time":8217.552353,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1466,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1439},"frames":[{"frame_type":"stream","stream_id":56,"offset":162110,"length":1414}]}}
{"time":8236.121671,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1467,"dcil":0,"key_phase_bit":"0"},"raw":{"length":422},"frames":[{"frame_type":"stream","stream_id":56,"offset":163524,"length":397}]}}
{"time":8236.182735,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":698,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":32},"frames":[{"frame_type":"ack","ack_delay":0.16822,"acked_ranges":[[1362,1467],[1343,1360]]}]}}
{"time":8295.324486,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1468,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1439},"frames":[{"frame_type":"stream","stream_id":56,"offset":163921,"length":1414}]}}
{"time":8320.723111,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":699,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":33},"frames":[{"frame_type":"ack","ack_delay":25.46369,"acked_ranges":[[1362,1468],[1343,1360]]}]}}
{"time":8354.735237,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1469,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1439},"frames":[{"frame_type":"stream","stream_id":56,"offset":165335,"length":1414}]}}
{"time":8380.130113,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":700,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":33},"frames":[{"frame_type":"ack","ack_delay":25.460133,"acked_ranges":[[1362,1469],[1343,1360]]}]}}
{"time":8408.360393,"name":"transport:packet_received","data":{"header":{"packet_type":"1RTT","packet_number":1470,"dcil":0,"key_phase_bit":"0"},"raw":{"length":1299},"frames":[{"frame_type":"ack","ack_delay":0.304,"acked_ranges":[[654,673]]},{"frame_type":"stream","stream_id":56,"offset":166749,"length":1268}]}}
{"time":8408.389113,"name":"recovery:metrics_updated","data":{"smoothed_rtt":380.871,"latest_rtt":1070.573796,"rtt_variance":355.284,"bytes_in_flight":108,"packets_in_flight":4}}
{"time":8408.485323,"name":"recovery:loss_timer_updated","data":{"event_type":"set","timer_type":"pto","packet_number_space":"application_data","delta":1400.315491}}
{"time":8434.048519,"name":"transport:packet_sent","data":{"header":{"packet_type":"1RTT","packet_number":701,"dcil":4,"dcid":"a58110f9","key_phase_bit":"0"},"raw":{"length":31},"frames":[{"frame_type":"ack","ack_delay":25.81021,"acked_ranges":[[1391,1470]]}]}}
...

I am not very familiar with the logging format, but I can see a "stop_sending" packet at timestamp 7980.86731, which would line up with the moment I canceled the request, which was at about 7800ms. My looping thread waited 5 seconds after the cancellation before making a new request. Is it possible that the packets that are being received are still from the canceled request?
Am I doing request cancellation correctly for quic-go? Is it possible that the server is still sending packets, even though the request was canceled by the client?

The problem seemed to originate from my network simulation and not from quic-go itself.


add 'IGNORE_USER_PERMISSIONS': False/True to documentation

I was waiting for this for a long time, and it would be a waste if it is lost
'IGNORE_USER_PERMISSIONS': True,

The docs for that setting are included in PR #705 which adds that setting :)
Is there anything else you feel which should be added to the docs?


fix: #44 add confirmation popup before publish FOM

refs: #44
Tested the confirmation popup, and publish is successful

Thanks for the PR!
Any successful deployments (not always required) will be available below.

api
admin
public

Once merged, code will be promoted and handed off to following workflow run.

Main Merge Workflow

Thanks for the PR!
Any successful deployments (not always required) will be available below.

api
admin
public

Once merged, code will be promoted and handed off to following workflow run.

Main Merge Workflow

Thanks for the PR!
Any successful deployments (not always required) will be available below.

api
admin
public

Once merged, code will be promoted and handed off to following workflow run.

Main Merge Workflow

Thanks for the PR!
Any successful deployments (not always required) will be available below.

api
admin
public

Once merged, code will be promoted and handed off to following workflow run.

Main Merge Workflow

Hi @basilv , I wonder do you know how I could test this? If I create a FOM by myself, then I have to submit a spatial file before publish, do we have a sample spatial file?

fyi, we might need to change the text for the confirmation popup for finalizeFOM later today or tomorrow


PCLOUDS-1862: Add CIDR param for cluster in GCP Monitor deployment script

Adding new parameters:
--cluster-ipv4-cidr,
--services-ipv4-cidr,
--master-ipv4-cidr

Should we document it somewhere?

Should we document it somewhere?

I've created a ticket for the documentation team.


Improve the show password method in login, sign-up, and forget password page

Remove the show password checkbox and add icons in the input fields.
Do this on the login, sign-up, and forget password page.

@tjanhvi didn't get your idea?
Explain again, please.

In the form, there is a checkbox to show the entered password so i want to remove it and mention it in the input box as an icon that shows the entered password.

Hi, can you assign this to me? I have an idea to improve the show password button with a eye logo attached at below when user click the eye button then the password become visible and I can add a password strength at the user sign up and forget password page.

Hi, can you assign this to me? I have an idea to improve the show password button with a eye logo attached at below when user click the eye button then the password become visible and I can add a password strength at the user sign up and forget password page.

Under DCP or LGMSoC?

Hi, can you assign this to me? I have an idea to improve the show password button with a eye logo attached at below when user click the eye button then the password become visible and I can add a password strength at the user sign up and forget password page.

Under DCP or LGMSoC?

Nope for both

Fine.


Upload images

https://user-images.githubusercontent.com/5423775/131428140-30088fd4-e660-4b4c-9eec-c434844beaa3.mp4


Logs for the Kovri and Dev meetings held on 2016-06-25

Added "Logs for the Community meeting held on 2017-07-02".


pydocstyle corections on exceptions.py for #742

This is for #742
I changed the format of the docstrings for cookiecutter/exceptions.py.
Few of the docstrings required minimal rewording to fit pep257 style.
I hope this is fine.

Codecov Report

Merging #995 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #995   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          18     18
  Lines         780    780
=====================================
  Hits          780    780

Impacted Files
Coverage Δ

cookiecutter/exceptions.py
100% <100%> (ø)
:arrow_up:

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 5503196...ef12c82. Read the comment docs.

I messed up commit history, closing this one and will open a new one for the same change


Remove implicit casts

Fixes #53

Maybe it will be better to have a talk about the project structure after the main goals in #52 are achieved?

Sure. To get familar with your thoughts you could just open an issue and describe them. Afterards we can find a date to talk this through.

I've seen that the way we are separating projects now (Name.Core and Name.Wrapper) give us some limitations

I think our current arrangement is not intentional as such, but rather because we just built on top of what was already there (initially we had pure ABI structs in Name.Wrapper, hence the strange split)
In my opinion, we should keep the wrapper entirely auto-generated and move Sys.Value, etc to the Core namespace (we're already doing this with Sys.Type -> GObject.Type). This way, we get around any limitations while still keeping the nice separation between unmanaged functions and our 'safe' API.


Create new CLi for ManagedNetwork

Resource Provider
What is the Azure resource provider your feature is part of?
Microsoft.Azure.Management.ManagedNetwork
Description of Feature or Work Requested
Provide a brief description of the feature or work requested. A link to conceptual documentation may be helpful too.
ManagedNetwork will enable customer to control and configure their network from one single place. It will help users to manage features such as peering, security and so forth.
The following is our repo link:
https://msazure.visualstudio.com/One/_git/Networking-MNC
The following is our PR for Python SDK:
https://github.com/Azure/azure-sdk-for-python/pull/7364
Minimum API Version Required
What is the minimum API version of your service required to implement your feature?
2019-06-01-preview
Swagger Link
Provide a link to the location of your feature(s) in the REST API specs repo. If your feature(s) has corresponding commit or pull request in the REST API specs repo, provide them. This should be on the master branch of the REST API specs repo.
https://github.com/Azure/azure-rest-api-specs/tree/master/specification/managednetwork/resource-manager
Target Date
If you have a target date for release of this feature/work, please provide it. While we can't guarantee these dates,
it will help us prioritize your request against other requests.
As early as possible

@yanfa317 Thanks. I will check it soon and it's better for us to have a short meeting next week.

@yanfa317 Hello. Could you share the current state of service? Private Review/Public Review/GA?

@MyronFanQiu Hi. Our service will take private review around End of Jan. Before it, we will have a big change for swagger/sdk/cli, and we are working on it. Thanks.

@yanfa317 Thanks

@yanfa317 Since the service is still under private review and you will have a big change for swagger. Is it ok to close this issue first and you can create a new one in the future?

@MyronFanQiu We found a bug in current cli, and @zikalino is helping us to fix it. But it seems that he is busy for something else now. I hope that we can solve the bug first before we close it.

Any update for this issue?

@yonzhan I will close it for now since we have big change in our design and will move our service into Network.


[Feature request] Fav songs and a favorite songs submenu

Bump to "High priority"

Implemented, still need to add back buttons and random buttons but will be done quickly


Add conversion to RistrettoScalar & Merge into master

The implementation for FieldElements is almost done, we only need to add the conversion from a FieldElement to a RistrettoScalar.
@Bounce23 we will need to realize about the conversion details and try to implement it properly.
On this merge request the following features have been added:

FieldElement definition in modulo 2^252 +<PHONE_NUMBER>7372353535851937790883648493.
Sum, Sub, Mul implementations have been implemented. Mul in particular using the Montgomery reduction algorithm.
To/From bytes conversions have also been implemented.
Tests have also been added.

@Bounce23  can you review the last commits added? Then We can merge. Just check that you agree with the implementation that closed #6


[docs] Source code viewer for examples

The examples on each page should have an option to view source.
I probably want to remove the lang="ts" from the example sources and consider converting them away from Tailwind.

Hi,
nice library. I am curious how you would solve the issue of adding the demo source code in the docs automatically. I currently need to run another script copying files such that each example has the source code below, eg.
https://svelte-konvajs.patwie.com/examples/shapes/line-blob


feat(932151): direct command injection stricter sibling

I added another rule that adds on 932150 since these new additions are too FP-prone to work with PL 1 and too complicated for a simple keyword.
This PR contains fixes for bypasses that were originally found and reported by @hussein98d in 6XU2YA19, FIVDL6UT, and VXH0CIJO. Though I've added a few tricks of my own.

CRS Bug Bounty PR assessment

Rules affected (list rules): FIXME
Paranoia Level addressed (1, 2, 3, 4, full or explain): FIXME
FTW passes (yes or no) : FIXME
Rule(s) picked for solution (correct or not-correct or explain) : FIXME
Risk for false positives (irrelevant, adequate, substantial or explain) : FIXME
Regular expression quality (inspirational, decent base, needs work, adequate or explain) : FIXME
Documentation (needs work, adequate or explain) : FIXME
Tests (none or some or adequate) : FIXME

Verdict (Unusable, inspirational, usable, almost perfect or perfect) : FIXME

This is not meant to be final. As a CRS dev, feel free to comment below and edit this form directly. As committer or observer, feel free to comment below with feedback and we will think about updating the assessment accordingly.

OK, let's get down to business.
Scoring variable
@fzipi noted that you raise the PL1 scoring variable when defining a PL2 rule. Please fix. And thank you for spotting @fzipi
Notice in 931150
Please add the following remark to the comments in 931150:
# This rule has a stricter sibling: 931151
False Positives
The regular expression patterns you propose / define are limited, but there is a substantial chance we will stumble into false positives. The rule is PL2, so FPs are kind of accepted. But it would still be good to test this throughly. But given the number of findings currently in the queue, we will have to merge and rely on user feedback.
So let's skip this caveat and merge when the two issues above are addressed.

@dune73, I've made the necessary changes. That should be the end of it :).
FYI: The IDs you listed were incorrect. It should have been 932150 and 932151. Just wanted to clear that up since I had to do a bit of searching to make sure I wasn't interpreting it incorrectly.

Sorry for the recurring typo with the rule numbers. I was meaning to say 932xxx, and I do not know why I mistyped that 3-4 times.
Thank you for the fixes. Looks all good to me. Merging now.

This also covered 13SXD562.


Add a webauthn include directory with W3C Document License

and other basics borrowed from webperf.

Thanks @mkruisselbrink


Apache scanner group actor

This group actor runs augeas, takes its output and
then runs apache_scanner actor that will filter
and return only relevant information.
What constitutes 'relevant information' can be found
in the apache_scanner/apache_scanner.py (this can be extended).

Please check your code by using flake8
./apache_scanner.py:134:80: E502 the backslash is redundant between brackets
./apache_scanner.py:135:25: E127 continuation line over-indented for visual indent
./apache_scanner.py:135:80: E502 the backslash is redundant between brackets

So, I've refactored this a little. I will write docs and do some tests next time.

Fixed failing travis tests.


Analyzer Error in Webstorm

Analyzer Feedback from IntelliJ
Version information

IDEA WS-171.3780.79
<NO SDK>
WS-171.3780.79, JRE 1.8.0_112-release-736-b13x64 JetBrains s.r.o, OS Windows 10(amd64) v10.0 , screens 3840x2160, 3840x2160, 3840x2160

Exception
Please append the contents of:
file://C:\Users\admin\AppData\Local\Temp\report.txt
Dart analysis server, SDK version 1.22.0, server version 1.17.0, FATAL error: Failed to handle request: {clientRequestTime:<PHONE_NUMBER>847, params: {file: \date_time.dart, offset: 269, length: 52}, method: analysis.getNavigation, id: 82}
NoSuchMethodError: The method 'then' was called on null.
Receiver: null
Tried calling: then(Closure: (AnalysisDoneReason) => dynamic)
#0      Object._noSuchMethod (dart:core-patch/object_patch.dart:44)
#1      Object.noSuchMethod (dart:core-patch/object_patch.dart:47)
#2      AnalysisDomainHandler.getNavigation.<getNavigation_async_body> (package:analysis_server/src/domain_analysis.dart:177)
#3      Future.Future.microtask.<anonymous closure> (dart:async/future.dart:184)
#4      _rootRun (dart:async/zone.dart:1146)
#5      _CustomZone.run (dart:async/zone.dart:1026)
#6      _CustomZone.runGuarded (dart:async/zone.dart:924)
#7      _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:951)
#8      _rootRun (dart:async/zone.dart:1150)
#9      _CustomZone.run (dart:async/zone.dart:1026)
#10     _CustomZone.runGuarded (dart:async/zone.dart:924)
#11     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:951)
#12     _microtaskLoop (dart:async/schedu

Thanks for the report!
This has been fixed in bleeding edge and should be included in the next dev and stable builds.


Default routes with trailing slash end up in infinite redirect loop

This occurs when redirect_default_route is set to true. The setting of redirect_trailing_slash does not matter for this to occur.
When a page's route is defined with a trailing slash and its URL is requested, Grav ends up in a redirect loop.
---
routes:
  default: /support/
---

In class Grav in the page function line 117, the trailing slash is removed.
Later in same function line 134 the path is tested against the default route and if no match, it redirects.
Because the default route has a slash but the path not, we end up in an infinite redirect loop.

I can see this.  routes should not have  a trailing slash and we probably should trim them anyway.
Also wouldn't hurt to have logic to take trim that trailing slash in the redirect also.

I personally do not like routes with a trailing slash, but sometimes you want to be able migrate existing sites to Grav and keep existing and long established URLs and bring all the page SEO juice across as well.
So unless Grav can support trailing slash URLs I would not be able to use it for some sites.

I was proactive and submitted a PR. See https://github.com/getgrav/grav/pull/405

This has been merged.  Thanks!


Why we need Object.freeze(obj[key]) in StyleSheet.create only in DEV?

Description
It's strange and why only in dev?
First arrive Object.freeze:

was:
became:
and now Object.freeze still there:

Do we really need it? Without freeze all works fine:o
Version
all from a8e3c7f5780516eb0297830632862484ad032c10
Output of npx react-native info
dosent mater but if you want:
System:
    OS: macOS 12.4
    CPU: (10) arm64 Apple M1 Max
    Memory: 327.95 MB / 32.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 16.15.1 - /usr/local/bin/node
    Yarn: 1.22.15 - /usr/local/bin/yarn
    npm: 8.12.1 - /opt/homebrew/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  Managers:
    CocoaPods: 1.11.3 - /opt/homebrew/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 21.4, iOS 15.5, macOS 12.3, tvOS 15.4, watchOS 8.5
    Android SDK:
      API Levels: 28, 30, 31, 33
      Build Tools: 29.0.2, 30.0.2, 31.0.0, 33.0.0
      System Images: android-33 | Google Play ARM 64 v8a
      Android NDK: Not Found
  IDEs:
    Android Studio: Not Found
    Xcode: 13.4.1/13F100 - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.15 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 17.0.2 => 17.0.2
    react-native: 0.68.0 => 0.68.0
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Steps to reproduce

change some value in StyleSheet.create obj like in code example

Expected result:

value changed in DEV and prod variant

Actual result:

value changed in prod variant and not changed in DEV variant

Snack, code example, screenshot, or link to a repository
dummy example:
import {Button, StyleSheet, View} from 'react-native';
import React, {useState} from 'react';

export enum ITypes {
  primary = 'primary',
  disabled = 'disabled',
}

const primaryStyle = () => {
  return StyleSheet.create({
    container: {
      padding: 10,
      backgroundColor: 'red',
    },
  });
};

const disabledStyle = () => {
  const defaultStyles = primaryStyle();

  defaultStyles.container.backgroundColor = 'grey';

  return defaultStyles;
};

const stylesCreate = (type: ITypes) => {
  switch (type) {
    case ITypes.primary:
      return primaryStyle();
    case ITypes.disabled:
      return disabledStyle();
    default:
      return primaryStyle();
  }
};

const Test = () => {
  const [type, setType] = useState(ITypes.primary);
  const styles = stylesCreate(type);
  return (
    <View style={styles.container}>
      <Button
        title={type}
        onPress={() =>
          type === ITypes.primary
            ? setType(ITypes.disabled)
            : setType(ITypes.primary)
        }
      />
    </View>
  );
};

You are not supposed to modify the values of a created stylesheet, thats why its frozen. Its enabled for dev only because it costs too much performance in prod.

@danilobuerger, Thanks you for fast reply but why not supposed to modify?
when I modified the values of a created stylesheet I didn't find memory leak or something like that  (or maybe I was blinded:c)

Previously the function performed some more tasks:

A check similar to prop-types which was removed in rn 66. (https://github.com/facebook/react-native/commit/2e8c0bd7ea7db1aac183eb7f656772d3cffcb132)
A global style sheets registry which would return a number instead of the object allowing for further performance optimizations (which were never realised) of only sending the style sheet over the bridge once. Removed in rn 56 (https://github.com/facebook/react-native/commit/a8e3c7f5780516eb0297830632862484ad032c10)

Now a days its more of a convention and legacy. When using typescript you still get the right typings. Also future performance optimizations are still possible.
Anyway, just create multiple style objects and select the one you need instead of modifying them.

Thanks for the explanation:3

Anyway, just create multiple style objects and select the one you need instead of modifying them.

This is a good idea when you don't have too many values in StyleSheet.create:)
But when there are a lot of them, it becomes difficult to maintain such code:o

Because instead of 1 change in the parent style, you need to make 5 (depends on count of objects from StyleSheet.create) changes to other StyleSheet.create
For example, you have something like that:
const mainStyles = (theme) => StyleSheet.create({
    container: {
      padding: 10,
      margin: 10,
      padding: theme.spaces.Space8,
      borderRadius: theme.spaces.Space8,
      borderWidth: theme.spaces.Space2,
      borderColor: focused ? colors.BorderNormal : 'transparent',
      marginVertical: theme.spaces.Space8,
      minWidth: 120,
      flexDirection: 'row',
      justifyContent: 'space-between',
      alignItems: 'center',
      backgroundColor: 'red',
    },
  });

const secondStyles = (theme) => StyleSheet.create({
    container: {
      padding: 10,
      margin: 10,
      padding: theme.spaces.Space8,
      borderRadius: theme.spaces.Space8,
      borderWidth: theme.spaces.Space2,
      borderColor: focused ? colors.BorderNormal : 'transparent',
      marginVertical: theme.spaces.Space8,
      minWidth: 120,
      flexDirection: 'row',
      justifyContent: 'space-between',
      alignItems: 'center',
      backgroundColor: 'grey',
    },
  });

And when you need to change margins you have to do 2 changes instead of one in mainStyles:c

Or use a spread operator like {...mainStyles, backgroundColor: 'red'} but it can affect performance, especially when using big list or something like that

Hope I'm not bugging you up at all
Anyway,  thank you one more time:)

const styles = StyleSheet.create({
    container: {
      ...
    },
    primary: {
      backgroundColor: 'red',
    },
    disabled: {
      backgroundColor: 'grey',
    },
});
<View style={[styles.container, disabled ? styles.disabled : styles.primary]} />

You code is good for simple disable style:o
But when you have a multi theme app with custom color's (like telegram with custom theme) or  a lot of style variants for component - all came complex:c


UI: VIP Forms

Issue 1: Users cannot add additional text for the VIP description
Issue 2: Users cannot add "Never expires" VIP in the VIP settings view
Solution 1: Added prefix & suffix fields to the form with disabled example preview field

Solution 2: Added "Never expires" button & allowed very high date for the datetime field

I want to reword this view at some point. This is just a temporary fix.


Fixed strings in command

Fixes an issue where if you don't have a "%" in the command, it will interpret a string as a list.
In alert(), we treat the command as a list, but it was only being converted from a string to a list IF there was a % formatter.
See #592

lgtm

lgtm


Update interface to 0.0.11

Updates io.get-coursier:interface from 0.0.10 to 0.0.11.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention @scala-steward in the comments below.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [{ groupId = "io.get-coursier", artifactId = "interface" }]

labels: semver-patch

CI errors are transient, but that release is borked anyway. Let's wait for 0.0.12.


Link to Syntex Contract Sample Repository

The link to the Contracts Management Solutions Assets Repository link does not work. No sample contracts are found in the GitHub repositories.

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

ID: bea6e11b-2884-3ae0-9416-be51af65ecaf
Version Independent ID: 3393bb9c-317d-4338-7048-a28fe5d34858
Content: Step 1. Use Microsoft Syntex to identify contract files and extract data - Microsoft Syntex
Content Source: microsoft-365/contentunderstanding/solution-manage-contracts-step1.md
Service: microsoft-syntex
GitHub Login: @chuckedmonson
Microsoft Alias: chucked

@dduffy101021 -- Thank you for letting us know about the broken link. We're sorry about that. It has been fixed and you should now be able to access the sample files. Thanks again.


Add logs email receivers in configuration table

Questions
Answers

Description?
"Error: invalid e-mail address" when opening modules page in debug mode after upgrade to 1.7.8

Type?
bug fix

BC breaks?
no

Deprecations?
no

Fixed ticket?
Fixes PrestaShop/PrestaShop#26680

How to test?
Upgrade PrestaShop to 1.7.8 in debug mode and go to the module page

Possible impacts?
no

We can only validate your PR if we have a clear, reproducible scenario we can follow to observe the bug. In order to be able to explore your PR, to verify any side-effects, to make sure it is correct, we need a complete understanding of it, and so does the QA team. That's why a list of steps "1. do this 2. do then that 3. we should see ... but instead we should see ..." is a must-have needed for us to verify the bug 😉 . So before we review the PR we need the bug report confirmed.

PHPStan issue not related to change https://github.com/PrestaShop/PrestaShop/issues/26861

Issue updated

Hello @PierreRambaud, it's done.

Hello,
I tested the PR with upgrade from <IP_ADDRESS> to <IP_ADDRESS> but the issue is not fixed
https://watch.screencastify.com/v/z4Mi8udTXGKT7J3u18t3
Could you please check?
Many thanks,

Hello @marwachelly,
The fix has been moved in the update script to version <IP_ADDRESS>
Can you test on an update to <IP_ADDRESS>?
Thanks

Hello @rsoulard-prolaser
I created the version <IP_ADDRESS> from 1.7.8.x then I tested the PR with autoupgrade from <IP_ADDRESS> to <IP_ADDRESS>
While the upgrade I faced the attached error

And the issue is still not resolved as shown bellow
https://watch.screencastify.com/v/8Ele0AX9wzi3xDaixD6p
Could you please check?

Hello @marwachelly,
I have update the script,
Thanks

The previous error confused me with the "select" in the "insert"...

Hello,
I tested the PR with upgrade from <IP_ADDRESS> and <IP_ADDRESS>  following the steps bellow and the issue is resolved

Open BO <IP_ADDRESS> /<IP_ADDRESS>
Go to Logs page and change the minimum severity level to 2
Install this module: logger.zip
Complete 1 click upgrade to <IP_ADDRESS> (created from 1.7.8.x branch)
Login
Enable debug
LOGOUT
Login => unable to login
https://watch.screencastify.com/v/bzfZXBIO6Hge35kChtNI
https://watch.screencastify.com/v/7PvMFwPdC8BrB5OEFCKh

Thank you @rsoulard-prolaser

Thank you @rsoulard-prolaser


Microsoft.Extensions.HealthCheck nuget package missing

I'm looking at creating a library of healthcheck extensions; however the Microsoft.Extensions.HealthChecks nuget package is missing when in visual studio; and marked as removed when trying to access this via the nuget website.  I've noticed that the project GitHub link list on the nuget site is not pointing to this project? Is the healthcheck library available under someother link or nuget name?

Did you mean Microsoft.Extensions.Diagnostics.HealthChecks? 😄

Thanks, looking at nuget there seems to be a few package that have Microsoft.Extension.HealthChecks and namespace that are from Microsoft which is a little confusing when looking for the correct package.  Thanks again

Closing since this has been answered. Thanks @PinpointTownes


Cypress configuration+ first simple test

Changes Proposed

Check List

[x] The title of my pull request is a short description of the changes

[ ] This PR relates to some issue:

[x] I have documented the changes made (if applicable)

[x] I have covered the changes with unit tests

Cypress added to the project.

Added  component test for TextInput  component

Not sure if we need the example.json file and all the comments inside command.ts.
Do you think I can remove those?
@nir2002

Codecov Report
Patch and project coverage have no change.

Comparison is base (9dee9a4) 30.04% compared to head (450193f) 30.04%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@                Coverage Diff                 @@
##           helm-dashboard-v2     #457   +/-   ##
==================================================
  Coverage              30.04%   30.04%
==================================================
  Files                     10       10
  Lines                   1348     1348
==================================================
  Hits                     405      405
  Misses                   902      902
  Partials                  41       41

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


numba is broken in latest image

The following code does not work in ~our latest docker image~ 2022.02.04 with

numpy 1.22.2
numba 0.53.1

from numba import vectorize, float64
@vectorize([float64(float64)])
def add_one(a):
    return a + 1
add_one(1.)

# UFuncTypeError: ufunc 'add_one' did not contain a loop with signature matching types <class 'numpy.dtype[float64]'> -> None

I can fix it by installing the a newer version of numba, which requires an older version of numpy

numpy 1.21.5
numba 0.55.1

This seems like https://github.com/numpy/numpy/issues/20735
xref https://discourse.pangeo.io/t/xarray-aply-ufunc-is-giving-new-error/2309

Actually, our latest master is on numpy 1.22.3, where this should be fixed (see https://github.com/numpy/numpy/pull/21139)
https://github.com/pangeo-data/pangeo-docker-images/blob/1affb9fbbdebbcc1023d7ad71f7151684e360c0b/pangeo-notebook/conda-linux-64.lock#L318
However, numba is still pinning < 1.22. So that's why we are stuck on numba 0.53.1:
https://github.com/pangeo-data/pangeo-docker-images/blob/1affb9fbbdebbcc1023d7ad71f7151684e360c0b/pangeo-notebook/conda-linux-64.lock#L398
So this works in our latest image!


Use list comprehension and lazy iteration

For MemInfo.search, Python 3's filter returns a generator object which is not a list (but can be iterated). We force it to become a list by using list comprehensions which are more expressive at the same time. The same can be done by doing list(filter(...)) but that requires the list to be iterated twice.
For MemInfo.get, we don't need to consume the whole file before processing. We can do stream processing via file.next to avoid needing to read the whole file into memory.

Awesome :+1: Thank you.


Download vinvl pre-training model

I failed to used azcopy command to download vinvl pre-training model. Could you show me how to download pretraining models? Thank you!
./azcopy cp https://penzhanwu2.blob.core.windows.net/results/vinvl/od_models/vinvl_vg_x152c4.pth .
INFO: Scanning...
failed to perform copy command due to error: Login Credentials missing. No SAS token or OAuth token is present and the resource is not public.

The link above is not public. Please use the following link to download the model.
extract vision features with VinVL object-attribute detection model
pretrained models at https://penzhanwu2.blob.core.windows.net/sgg/sgg_benchmark/vinvl_model_zoo/vinvl_vg_x152c4.pth
the associated labelmap at https://penzhanwu2.blob.core.windows.net/sgg/sgg_benchmark/vinvl_model_zoo/VG-SGG-dicts-vgoi6-clipped.json

still cannot download the model file

Cannot download the pretrain model.
./azcopy copy https://penzhanwu2.blob.core.windows.net/sgg/sgg_benchmark/vinvl_model_zoo/vinvl_vg_x152c4.pth .
Error message like:
INFO: Scanning...
INFO: Proxy detected: https://azcopyvnextrelease.blob.core.windows.net -> http://sys-proxy-rd-relay.byted.org:8118
INFO: Authenticating to source using Azure AD

failed to perform copy command due to error: no cached token found, please log in with azcopy's login command, required key not available

@KosukeTrue , could you try it again? It should work now.

Hello， how  to download?

Just updated the links to copts. Please check it out here https://github.com/pzzhang/VinVL/blob/main/README.md
Best,
Pengchuan

Hello，where is weight of model??


eza: 0.18.17 -> 0.18.18

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/eza-community/eza/releases.
meta.description for eza is: Modern, maintained replacement for ls
meta.homepage for eza is: https://github.com/eza-community/eza
meta.changelog for eza is: https://github.com/eza-community/eza/releases/tag/v0.18.18
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.18.18 with grep in /nix/store/d0nfjisy88g35qhdy6c4h9dg4zr4xppn-eza-0.18.18
found 0.18.18 in filename of file in /nix/store/d0nfjisy88g35qhdy6c4h9dg4zr4xppn-eza-0.18.18

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

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

eza

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/d0nfjisy88g35qhdy6c4h9dg4zr4xppn-eza-0.18.18 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

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

Or:
nix build github:r-ryantm/nixpkgs/077d53abb48f0c0b6799f204d2827115dd63d50b#eza

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/d0nfjisy88g35qhdy6c4h9dg4zr4xppn-eza-0.18.18
ls -la /nix/store/d0nfjisy88g35qhdy6c4h9dg4zr4xppn-eza-0.18.18/bin

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

2 packages built:

eza
eza.man

Maintainer pings
cc @cafkafk @9glenda for testing.

Result of nixpkgs-review pr 319581 run on aarch64-darwin 1

2 packages built:

eza
eza.man


Add records to the parser

See the manual for more details about the initial proposal. This should be the bare minimum for implementing records. Initializer lists {x = 10, y = 10} can be implemented later.

Codecov Report

Merging #64 into master will increase coverage by 0.02%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #64      +/-   ##
==========================================
+ Coverage   91.29%   91.31%   +0.02%
==========================================
  Files           9        9
  Lines        1550     1554       +4
==========================================
+ Hits         1415     1419       +4
  Misses        135      135

Impacted Files
Coverage Δ

titan-compiler/coder.lua
90.51% <100%> (ø)
:arrow_up:

titan-compiler/ast.lua
93.15% <100%> (+0.19%)
:arrow_up:

titan-compiler/parser.lua
93.57% <100%> (+0.12%)
:arrow_up:

titan-compiler/lexer.lua
97.34% <100%> (ø)
:arrow_up:

titan-compiler/checker.lua
88.6% <100%> (ø)
:arrow_up:

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 b130139...a6e6f02. Read the comment docs.

The Index vs Array vs Dot question actually brings an interesting question. Is dot-notation not going to be syntax sugar for bracket notation?
Because bracket-notation for records means we get indirect addressing of record fields, which is a powerful (and desirable!) feature, but one which demands more from the type checker and code generator:
Given record type
record R
    x: A
    y: B
    z: C
end

and a record
local r: R

as a coming-from-Lua programmer, I expect r[s] to be valid, have type A | B | C, and to perform the equivalent of the following pseudo-code:
if (s equals "x") {
   tmp = r.x;
} elseif (s equals "y") {
   tmp = r.y;
} elseif (s equals "z") {
   tmp = r.z;
} else {
   runtime error;
}

This is an important feature because it will be our only way to do "pointers to record fields". This is probably beyond the scope of this PR (as it's probably best to implement dot-only records first then extend them later), but definitely something to keep in mind for anyone thinking about efficiency of records in Titan. :)

as a coming-from-Lua programmer, I expect r[s] to be valid, have type A | B | C, and to perform the equivalent of the following pseudo-code:

If s is only known at runtime what you want is runtime reflection, and definitely something Titan should have (it can use the same mechanism that Lua uses to access record fields at first, and be as fast/slow as an access from Lua), but I am not sure we would like to allocate such prime syntactic real estate as e1[e2] to it, we might want to reserve this for future CTMP hooks.

This is an important feature because it will be our only way to do "pointers to record fields".

Actually having a type that is a mutable, typesafe reference to the innards of a Titan data structure (array, record, object) is rather straightforward, as everything is backed by a TValue anyway, and the Lua interpreter already has a builtin, GC-traceable value that is in essence a TValue* called Upval. We can even be trendy and call these references "lenses". 😃

I am not sure we would like to allocate such prime syntactic real estate as e1[e2] to it, we might want to reserve this for future CTMP hooks.

e1[e2] is an archetypical syntax for indirect addressing, and is the one used in Lua to achieve that same goal. I'd like things that look the same to act the same whenever possible. CTMP will be a new feature and will demand new syntax. Overriding the syntax of such a basic Lua feature with a different one would be more confusing than anything.
So, my expectation would be that either e1[e2] is not supported in records at all or, if they do, they act the same as in Lua (modulo nullability behavior, since that's a general difference wrt typing in Titan).

Having records be Titan's table-analogs and e1[e2] be runtime reflection for them is reasonable, but I think too constraining for objects (think userdata, and e1[e2] being whatever the userdata decides it is).
It is still an open question on whether objects and classes will subsume records later on, or they will both coexist.
AFAIK Lua and Javascript the only language where [] is runtime reflection for object-like data structures. For both Ruby and Python [] is an overridable method call on the object, mimicking the behavior of statically-typed languages where there is operator overloading for [].


Add compatibility with Ping Logger module

Fix auto-hide player list to display ping on the same line as the player color dot
Close #43

Awesome! Thanks for submitting a Pull Request. Will testing soon and release if all is good :)


Ica bench

Additions
Adds benchmarking code for linfa-ica it is a small refactor of the provided example. Will add benchmark stats if accepted.

Example output
test result: ok. 0 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running benches\fast_ica.rs (target\release\deps\fast_ica-239ba21dab7bb851.exe)
Fast ICA/GFunc_LogCosH/1000
                        time:   [74.308 µs 74.549 µs 74.808 µs]
Found 10 outliers among 100 measurements (10.00%)
  9 (9.00%) high mild
  1 (1.00%) high severe
Fast ICA/GFunc_LogCosH/10000
                        time:   [745.54 µs 747.69 µs 749.94 µs]
Found 10 outliers among 100 measurements (10.00%)
  1 (1.00%) low mild
  4 (4.00%) high mild
  5 (5.00%) high severe
Fast ICA/GFunc_LogCosH/100000
                        time:   [10.645 ms 10.671 ms 10.700 ms]
Found 2 outliers among 100 measurements (2.00%)
  1 (1.00%) high mild
  1 (1.00%) high severe

Codecov Report
Base: 39.17% // Head: 38.76% // Decreases project coverage by -0.40% :warning:

Coverage data is based on head (c7c9ca5) compared to base (1f260de).
 Consider uploading reports for the commit d8c9493 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #261      +/-   ##
==========================================
- Coverage   39.17%   38.76%   -0.41%
==========================================
  Files          92       92
  Lines        6096     6077      -19
==========================================
- Hits         2388     2356      -32
- Misses       3708     3721      +13

Impacted Files
Coverage Δ

algorithms/linfa-linear/src/float.rs
20.00% <0.00%> (-13.34%)
:arrow_down:

algorithms/linfa-nn/src/heap_elem.rs
0.00% <0.00%> (-10.00%)
:arrow_down:

algorithms/linfa-logistic/src/argmin_param.rs
41.17% <0.00%> (-8.83%)
:arrow_down:

...rithms/linfa-clustering/src/k_means/hyperparams.rs
27.08% <0.00%> (-6.25%)
:arrow_down:

...linfa-clustering/src/appx_dbscan/cells_grid/mod.rs
46.42% <0.00%> (-6.21%)
:arrow_down:

...orithms/linfa-clustering/src/optics/hyperparams.rs
20.58% <0.00%> (-5.89%)
:arrow_down:

algorithms/linfa-linear/src/glm/distribution.rs
54.90% <0.00%> (-5.89%)
:arrow_down:

algorithms/linfa-svm/src/classification.rs
42.10% <0.00%> (-5.27%)
:arrow_down:

src/composing/platt_scaling.rs
30.43% <0.00%> (-5.22%)
:arrow_down:

algorithms/linfa-pls/src/utils.rs
53.19% <0.00%> (-4.26%)
:arrow_down:

... and 51 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

not sure if the test is flaky but when I run cargo clippy --all-targets -- -D warnings I don't get any errors as reported in the failing codequality Lint

You're not seeing the error because the version of Rust in CI is newer than your local version. Just fix the error so the CI passes.

Gotcha it appears to be a new problem on

You're not seeing the error because the version of Rust in CI is newer than your local version. Just fix the error so the CI passes.

Gotcha it appears to be a new problem on Master too. Assuming it happened with the Rust release Nov 3rd. I addressed it and reran the test locally with no issues with the latest Rust.

Can you do the benchmark comparison in #228 ?

Sure thing

I don't have permission to merge per "Only those with write access to this repository can merge pull requests." However, below are the necessary things that can be dumped in that issue once you merge. Also, the report is attached as a zip file.
Context

Laptop mid charge level with wall charger power plugged in
Laptop not in use during test
Laptop not over heating

Run: cargo bench -p linfa-ica
     Running benches\fast_ica.rs (target\release\deps\fast_ica-d0c3b5752e019610.exe)
Fast ICA/GFunc_Cube/1000
                        time:   [63.292 µs 63.701 µs 64.270 µs]
Found 24 outliers among 100 measurements (24.00%)
  22 (22.00%) high mild
  2 (2.00%) high severe
Fast ICA/GFunc_Cube/10000
                        time:   [594.96 µs 599.06 µs 603.51 µs]
Found 6 outliers among 100 measurements (6.00%)
  5 (5.00%) high mild
  1 (1.00%) high severe
Fast ICA/GFunc_Cube/100000
                        time:   [10.097 ms 10.163 ms 10.236 ms]
Found 8 outliers among 100 measurements (8.00%)
  4 (4.00%) high mild
  4 (4.00%) high severe

Fast ICA/GFunc_Logcosh/1000
                        time:   [80.528 µs 80.737 µs 80.965 µs]
Found 8 outliers among 100 measurements (8.00%)
  1 (1.00%) low severe
  5 (5.00%) low mild
  1 (1.00%) high mild
  1 (1.00%) high severe
Fast ICA/GFunc_Logcosh/10000
                        time:   [790.09 µs 792.99 µs 796.68 µs]
Found 13 outliers among 100 measurements (13.00%)
  1 (1.00%) low mild
  7 (7.00%) high mild
  5 (5.00%) high severe
Fast ICA/GFunc_Logcosh/100000
                        time:   [11.175 ms 11.241 ms 11.311 ms]
Found 3 outliers among 100 measurements (3.00%)
  2 (2.00%) high mild
  1 (1.00%) high severe

Fast ICA/Exp/1000       time:   [95.226 µs 95.656 µs 96.168 µs]
Found 11 outliers among 100 measurements (11.00%)
  6 (6.00%) high mild
  5 (5.00%) high severe
Fast ICA/Exp/10000      time:   [930.76 µs 935.38 µs 941.12 µs]
Found 12 outliers among 100 measurements (12.00%)
  1 (1.00%) low severe
  1 (1.00%) low mild
  7 (7.00%) high mild
  3 (3.00%) high severe
Fast ICA/Exp/100000     time:   [18.221 ms 18.381 ms 18.559 ms]
Found 9 outliers among 100 measurements (9.00%)
  2 (2.00%) high mild
  7 (7.00%) high severe

Run cargo bench -p linfa-ica -F intel-mkl-static
     Running benches\fast_ica.rs (target\release\deps\fast_ica-2e03c80ee39d2cab.exe)
Fast ICA/GFunc_Cube/1000
                        time:   [51.978 µs 52.182 µs 52.431 µs]
                        change: [-35.893% -31.248% -26.694%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 13 outliers among 100 measurements (13.00%)
  9 (9.00%) high mild
  4 (4.00%) high severe
Fast ICA/GFunc_Cube/10000
                        time:   [466.80 µs 469.63 µs 473.14 µs]
                        change: [-21.665% -20.949% -20.232%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 9 outliers among 100 measurements (9.00%)
  1 (1.00%) low mild
  6 (6.00%) high mild
  2 (2.00%) high severe
Fast ICA/GFunc_Cube/100000
                        time:   [9.2229 ms 9.3005 ms 9.3897 ms]
                        change: [-9.4661% -8.4831% -7.3959%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 11 outliers among 100 measurements (11.00%)
  5 (5.00%) high mild
  6 (6.00%) high severe

Fast ICA/GFunc_Logcosh/1000
                        time:   [69.136 µs 69.490 µs 69.884 µs]
                        change: [-13.958% -13.385% -12.795%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 8 outliers among 100 measurements (8.00%)
  3 (3.00%) low mild
  4 (4.00%) high mild
  1 (1.00%) high severe
Fast ICA/GFunc_Logcosh/10000
                        time:   [672.37 µs 675.86 µs 680.20 µs]
                        change: [-15.858% -14.933% -13.922%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 20 outliers among 100 measurements (20.00%)
  2 (2.00%) low mild
  4 (4.00%) high mild
  14 (14.00%) high severe
Fast ICA/GFunc_Logcosh/100000
                        time:   [10.314 ms 10.412 ms 10.527 ms]
                        change: [-8.3714% -7.3728% -6.1955%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 8 outliers among 100 measurements (8.00%)
  3 (3.00%) high mild
  5 (5.00%) high severe

Fast ICA/Exp/1000       time:   [76.481 µs 76.798 µs 77.180 µs]
                        change: [-20.431% -19.929% -19.446%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 13 outliers among 100 measurements (13.00%)
  4 (4.00%) high mild
  9 (9.00%) high severe
Fast ICA/Exp/10000      time:   [708.61 µs 714.43 µs 721.13 µs]
                        change: [-23.322% -22.474% -21.608%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 5 outliers among 100 measurements (5.00%)
  1 (1.00%) low mild
  4 (4.00%) high mild
Fast ICA/Exp/100000     time:   [16.429 ms 16.604 ms 16.795 ms]
                        change: [-10.997% -9.6641% -8.3325%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 9 outliers among 100 measurements (9.00%)
  6 (6.00%) high mild
  3 (3.00%) high severe

criterion.zip


Error: Container action is only supported on Linux

Just tried to add this action into our GH Actions pipeline (https://github.com/prisma/prisma/pull/11967), but unfortunately half of our builds run on Windows and MacOS which is not supported by the action. That is unfortunately pretty limiting for our use case (especially as I know our most flaky tests are on MacOS without Docker and I was hoping to track these).

👋 @janpio: Thanks for letting me know that you ran into this. I'm sorry for the friction. I'll try to help get things heading in the right direction for you.
macOS: The good news is that we should be able to get macOS support up and running for you pretty quickly. In fact, you can even see an example of it in action in Homebrew/brew. :-) As you'll notice in that example, we're not using the GitHub Action there, since container actions are only supported on Linux. Instead, we're installing the BuildPulse test-reporter binary and running it directly. (The GitHub Action is just a tiny wrapper around the test-reporter binary, so we're not really losing anything by downloading and running the test-reporter binary directly. 😅) I'll comment on https://github.com/prisma/prisma/pull/11967 to try to help get things set up.
Windows: I don't yet have a test-reporter binary for Windows, but since the test-reporter is written in Go, it should be possible to ship a Windows binary. I'll look into this and let you know what I find out.
About the error: Container action is only supported on Linux: I'll update the README of this action to state that the action works well for Linux, and I'll include instructions for using the test-reporter binary directly on macOS.

Windows: I don't yet have a test-reporter binary for Windows, but since the test-reporter is written in Go, it should be possible to ship a Windows binary. I'll look into this and let you know what I find out.

👋 @janpio: I've published a pre-release version of the test-reporter with support for Windows: v0.23.0-pre.
I put together a tiny demo workflow to verify that it's working, and we can see the successful upload when it runs.
You'd be the first team using the Windows binary, so we might bump into issues that we don't know about yet. If that happens, I'll certainly prioritize investigating those issues, but I just want to set expectations that we might encounter some unforeseen friction.
Would you like to try to incorporate this into https://github.com/prisma/prisma/pull/11967, or would it make sense to get https://github.com/prisma/prisma/pull/11967 shipped and then have a follow-up pull request to add Windows support? I would personally recommend adding Windows support in a follow-up pull request so that https://github.com/prisma/prisma/pull/11967 doesn't get any larger and can ship sooner, but what sounds best to you?

👋 @janpio: I've published a stable release of the test-reporter with preliminary support for Windows: v0.23.0. It's been working reliably in my testing, so I'm cautiously optimistic that it's ready for people to try it out. Please feel free to give it a try at your convenience, and let me know if you run into any issues or if you'd like a hand with anything.
I've also updated the README to include instructions for using the test-reporter binary on macOS and Windows, so hopefully that will help future teams avoid running into the Container action is only supported on Linux error. 🤞
With those things in place, I think we can close out this issue. If there's anything else that would be helpful to address, just let me know. :bow:

Awesome.
The one thing that would make me fully happy and jump on adding this right now would be an example if a job that works on all 3 operating systems. Probably 3 different run steps gated with if, or some weird bash code that switches between binaries to download.

Nice.
There are also "composite" actions which are weird in some ways, but could be a pretty good match (Recently interacted with one that I forked at https://github.com/janpio/azure-cosmos-db-emulator-github-action/ + https://github.com/janpio/azure-cosmos-db-emulator-github-action/blob/main/action.yml [that one is Windows only, but I would be surprised if you can not handle what you need in there])

Thanks so much for that pointer, @janpio! A composite action seems to do the trick (#3), and that's a much smaller change than switching to a JavaScript-based action. 😅
If you're interested, you can see the composite action in use in this job step, which runs on macOS and Linux, and we can see successful uploads for macOS and Linux.
If you'd like to try this out in prisma/prisma, I put together a commit at https://github.com/jasonrudolph/prisma/commit/43ffd866642781e51aeb9856581bd6b44cfa2bfd that should do the trick. You'll note that it uses the cross-platform branch of the action. That's because I haven't yet merged #3. I'd like to first verify that it will work correctly for you. If we can confirm that it's working correctly for you in a branch on prisma/prisma, then I'll merge #3 and publish a new release of the action.
How's that sound?