feat: Add OpenTabletDriver udev rules

Rather than build our own RPM, this grabs the portable tar.gz release straight from GitHub and pulls the rules out of it.
Needs further discussion, let's make sure we actually want to go this route. It's simpler than packaging our own RPM, but definitely not as clean.

This and recent udev stuff makes me think we should have an agreed upon process for adding udev rules our different contributors alway add in a consistent way.
I'm imagining something that fits with what we already do, like ...
How to add new udev rules, order of preference:

use upstream RPM if available; add as packages.json "include" in main
use upstream spec if available, build RPM in COPR; add as packages.json "include" in main
use tarball of upstream git repo if fully dedicated to udev rules; add to confingrepo and build as part of ublue-os-udev-rules
use tarball of upstream git repo, filter to only udev rules(and license, readme, etc); add to confingrepo and build as part of ublue-os-udev-rules
copy udev rule files directly into config repo and build as part of `ublue-os-udev-rules

I think today we already have examples of steps 2, 3, and 5... this PR would be an example of 4.


lua: Upgrade the LuaJIT version to 2022-12-22

Commit Message: lua: Upgrade the LuaJIT version to 2022-12-22
Additional Description: The current LuaJIT version used in Envoy is 1d8b747c161db457e032a023ebbff511f5de5ec2, which is created on 2020-10-12, more than 2 years ago. Plenty of bugfix and new features happen after that.
Risk Level: Middle
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
Fixes #25763

/retest


Fail to create a stored procedure which name contains "+"

OS: Win10
Build Version: 20220801.1
Regression: Not a regression
Repro Steps:

Create a SQL account -> Create a database -> Create a collection -> Create a stored procedure which name contains "+", like "test+".
Check whether succeeds to create a stored procedure which name contains "+".

Expect:
Succeed to create a stored procedure which name contains "+".
Actual:
Fail to create a stored procedure which name contains "+".

More details in Output:
12:06:07 AM: Error: cannot open azureDatabases:/test%2B-cosmos-stored-procedure.js?id%3D%2Fsubscriptions%2F3b55f2b8-b6d0-4e03-a3f9-2b22471450c6%2Fmicrosoft.documentdb%2Fdatabaseaccounts%2Fsubscriptions%2F3b55f2b8-b6d0-4e03-a3f9-2b22471450c6%2FresourceGroups%2Fnicole-sql-pro%2Fproviders%2FMicrosoft.DocumentDB%2FdatabaseAccounts%2Fnicole-sql-pro%2Fdata01%2Fimport%2F%24StoredProcedures%2Ftest%2B. Detail: Unable to read file 'azureDatabases:/test+-cosmos-stored-procedure.js?id=/subscriptions/3b55f2b8-b6d0-4e03-a3f9-2b22471450c6/microsoft.documentdb/databaseaccounts/subscriptions/3b55f2b8-b6d0-4e03-a3f9-2b22471450c6/resourceGroups/nicole-sql-pro/providers/Microsoft.DocumentDB/databaseAccounts/nicole-sql-pro/data01/import/$StoredProcedures/test+' (Error: Unable to resolve nonexistent file 'azureDatabases:/test+-cosmos-stored-procedure.js?id=/subscriptions/3b55f2b8-b6d0-4e03-a3f9-2b22471450c6/microsoft.documentdb/databaseaccounts/subscriptions/3b55f2b8-b6d0-4e03-a3f9-2b22471450c6/resourceGroups/nicole-sql-pro/providers/Microsoft.DocumentDB/databaseAccounts/nicole-sql-pro/data01/import/$StoredProcedures/test+')

More Info:
This issue also reproduces for the Graph account.

As pointed out in https://github.com/microsoft/vscode-cosmosdb/issues/1732, the user shouldn't try to create resources whose name contain '+' or '%2B'.


Add Greenkeeper Service to keep dependencies tested and fresh

Greenkeeper is used by AMP and other projects to keep npm up to date.

@lindner We're using it now? Can we close this?

Closing in favor of https://github.com/PolymerLabs/arcs/issues/2199


Error

Hi, wondering if you might be able to assist as to why this is not working for me on Mac Silicon:
Also, is there a way to have the program run in English?
IL EST IMPORTANT D'ECRIRE EXACTEMENT LE NOM DE L'ARTISTE
Entrez le nom de l'artiste: zomes
Traceback (most recent call last):
File "/app/./src/Main.py", line 29, in
macroScraper = MacroScraper(logs)
^^^^^^^^^^^^^^^^^^
File "/app/src/MacroScraper.py", line 35, in init
self.WD = WorkingDirectory()
^^^^^^^^^^^^^^^^^^
File "/app/src/WD.py", line 35, in init
self.path = os.path.join(os.environ['USERPROFILE'], "Music\MacroScraper\")
~~~~~~~~~~^^^^^^^^^^^^^^^
File "", line 679, in getitem
KeyError: 'USERPROFILE'

What is your OS? On windiws it is working fine.
If you want a quick debug, just replace os.path.join(.... by the path to your music directory followed by "MacroScraper".
I'm currently working on using an api to download the music, because it is kind of slow. I planned to write the update in english.

MacOS Monterey...
Thanks maybe there is something incompatible in my setup.


unable to access phone input in the current version

hey it would be great if you let me contribute to this package with you

phone input is currently in master branch and it is not available in the latest pub version yet,
but if you wish to use it right now, you can depend on the master branch, see this guide: https://dart.dev/tools/pub/dependencies#git-packages

hey it would be great if you let me contribute to this package with you

what kind of contribution are you willing to offer?

i have seen there are many modules that are under dev
i will help you creating those modules

i have seen there are many modules that are under dev i will help you creating those modules

what do you mean by creating those modules?

i have seen that components like table, chart are not built yet so i am willing to contribute for the same

i have seen that components like table, chart are not built yet so i am willing to contribute for the same

oh you don't have to, its already on progress, its just not yet available to use


cmd/compile: optimize unaligned load-XOR-store on byte slices

It would be nice if the following sets of code were equivalent on platforms that support unaligned loads/stores (386, amd64, arm64,  ppc64le, s390x...). I've used XOR in these examples but it is also true for the other logical operators:
(1)
binary.LittleEndian.PutUint32(dst, binary.LittleEndian.Uint32(src) ^ x)

(2)
dst[0] = src[0] ^ byte(x)
dst[1] = src[1] ^ byte(x>>8)
dst[2] = src[2] ^ byte(x>>16)
dst[3] = src[3] ^ byte(x>>24)

(3) [less important]
x ^= uint32(src[0])
x ^= uint32(src[1]) << 8
x ^= uint32(src[2]) << 16
x ^= uint32(src[3]) << 24
binary.LittleEndian.PutUint32(dst, x)

Currently (1) is optimal on platforms with unaligned loads and (2) is optimal on other platforms. It would be nice if the compiler could optimize (2) into (1). I've added (3) as an additional case where the current rules are suboptimal.
If this is ever done it will help simplify the generic golang.org/x/crypto/internal/chacha20 implementation.

I think I'm missing something: why is (1) not optimal on other platforms?

Example (1) is equivalent to the following code which contains an extra 3 shifts:
v := uint32(src[0])
v |= uint32(src[1]) << 8
v |= uint32(src[2]) << 16
v |= uint32(src[3]) << 24
v ^= u
dst[0] = byte(v)
dst[1] = byte(v>>8)
dst[2] = byte(v>>16)
dst[3] = byte(v>>24)

On the other hand this doesn't actually result in many more instructions on arm because of the shifted register inputs. The assembly on mips benefits a bit more from (2) though. I don't know if there is a speed difference.

It seems like (1) is the code we should expect people to write, and it may be a bit easier to recognize and rewrite than (2). (It's usually easier to distribute mathematical operations than to un-distribute them, especially binary operations that don't carry.)


Add ability to stream FileSystemSnapshot depth-first

Allow visiting FileSystemSnapshot hierarchies using the Java streams API. In places this allows for simpler functional code chaining. In other places it also leads to more efficient code.

@bot-gradle test QFL please.

OK, I've already triggered the following builds for you:

QuickFeedbackLinux build

@bot-gradle test QFL please.

OK, I've already triggered the following builds for you:

QuickFeedbackLinux build

@bot-gradle test QFL please.

OK, I've already triggered the following builds for you:

QuickFeedbackLinux build


speed up readAxivity

I do not have time for this at the moment, but creating this as a note for the future or for others who may want to help do this work.
GGIRread::readAxivity currently seems to be the slowest of the data reading functions used by GGIR.
One possible quick speed gain would be to replace as.POSIXct by fasttime::fastPOSIXct. I just tested and it provides a 12% speed increase for reading the first 24 hours of the data. It seems, however, that more time goes into reading data chunks further down in the data.
However, it may be worthwhile refactoring the entire function. Reference points for that may be:

Current version of the readAxivity, because this was thoroughly debugged and verified in 2020.
https://github.com/digitalinteraction/openmovement/blob/master/Docs/ax3/cwa.h (by Axivity manufacturer)
https://github.com/digitalinteraction/openmovement/blob/master/Docs/ax3/ax3-technical.md (by Axivity manufacturer)
https://github.com/muschellij2/read.cwa
~~https://github.com/OxWearables/actipy~~ => no longer possible as that would be a violation of their license

[ ] Profile readAxivity when embedded in GGIR and specifically whether time is lost with conversion of output format.


OpenSearch benchmarks with a large number of shards

What should we add to our content collections?
In the migrated help article https://help.aiven.io/en/articles/2413410-number-of-shards-and-indexes-in-elasticsearch we have benchmarks. These benchmarks are outdated and need to be re-run and documented.

Having a large number of shards affect your OpenSearch performance
out from OpenSearch. Some benchmark results from three-node Aiven
OpenSearch business-8 cluster:

1 000 shards: no visible effect in OpenSearch performance.

10 000 shards is already quite a lot - creating new shards starts to
take longer and longer time. Variance in performance grows.

15 000 shards: creating new shards takes significantly longer time,
often tens of seconds.

20 000 shards: inserting new data randomly takes significantly longer
times (20x longer than mean). Similarly, variance in search
performance grows significantly.

Aiven for OpenSearch takes a snapshot once every hour. With 10 000 shards
cluster is continuously taking new backups and deleting old backups from
backup storage. This will naturally affect service performance, as part
of the capacity is continuously in use for managing backups.

Is this something you would work on yourself?
[ ] I plan to open a pull request for this

I think the benchmark data is so easily outdated that we should look at publishing this in blog posts rather than our evergreen docs. It's a great idea, but it shouldn't be an open issue on this repo.


Upgrade fluentbit to 1.0.4

Signed-off-by: Christian Simon<EMAIL_ADDRESS>Upgrade fluentbit to 1.0.4

Over to you
/assign @JoshVanL

fluent-bit pods failing for me
Warning  Failed   2m31s (x5 over 3m58s)  kubelet, ip-10-99-48-239.eu-west-1.compute.internal  Error: failed to start container "fluent-bit": Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "exec: \"/bin/sh\": stat /bin/sh: no such file or directory"

/unasign
/assign @simonswine

/unassign

Thanks good catch, was not straightforward to fix they removed busybox from their image
/assign @JoshVanL
/unassign

/lgtm


Unjam game jam from traffic jam

The "Traffic Jam" game contains so many blocks that the Workspace is super cluttered. @abchatra says remove the game from the list.
Closes #2623

@abchatra ah this was one of our honorable mentions, i think the user might be disappointed if we removed it--would it be possible to just replace with this version instead:
https://arcade.makecode.com/82921-64280-76040-39471
(i just did "expand all" -> "format" to get the code a bit more spread out)

sounds good.

@shakao - That's brilliant!


Fix return type annotation on get_creation_date()

_DAVResource.get_creation_date() is annotated as returning Optional[datetime], but _DAVResources.get_property_value() passes the method's return value to get_rfc3339_time(), which requires a Unix timestamp instead.

Thanks for contributing. There is still a lint error that we need to fix before merging

@mar10 Lint resolved.


DEV: Remove maintainer

Checklist

[x] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.
I do have some suggestions for making it better though...
For recipe/meta.yaml:

ℹ No valid build backend found for Python recipe for package qtpyinheritance using pip. Python recipes using pip need to explicitly specify a build backend in the host section. If your recipe has built with only pip in the host section in the past, you likely should add setuptools to the host section of your recipe.
ℹ noarch: python recipes should usually follow the syntax in our documentation for specifying the Python version.

For the host section of the recipe, you should usually use python {{ python_min }} for the python entry.
For the run section of the recipe, you should usually use python >={{ python_min }} for the python entry.
For the test.requires section of the recipe, you should usually use python {{ python_min }} for the python entry.
If the package requires a newer Python version than the currently supported minimum version on conda-forge, you can override the python_min variable by adding a Jinja2 set statement at the top of your recipe (or using an equivalent context variable for v1 recipes).

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12459726603. Examine the logs at this URL for more detail.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-webservice.
I tried to rerender for you, but it looks like there was nothing to do.
This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12459773813. Examine the logs at this URL for more detail.


On module version management

If m1 and m2 depend on m3 but each require different versions, can m1 pass data to m2?
https://github.com/dtolnay/semver-trick

Currently no, but in the system we've been sketching: yes!
The central feature is that when m3 is upgraded to a new version, any type names in the new version of m3 that are not changed will semantically be treated as aliases to their namesakes in the old version.
The only catch is that we haven't really introduced type aliases yet...

Maybe it's the same thing, but the way we talked about it we have focused on the transition from one version to another.
In this case I'm not talking upgrades. A library (m1) written by someone depends on m3 version 1. A second library m2 depends on m3 version 2. Now we write an app that uses the two libraries and we tie them together so data is passed from one to the other. This isn't a temporary transition but the permanent state of the system. Will it work?
Do you mean we would use the upgrade function to automatically and continously upgrade the data structures passed between the two? IMHO that seems different than the upgrade case. For one, it seems we also need downgrade capability.

We should adopt content addressing and so the local names are not interesting. m1 can pass data to m2 if the type of the thing in m3 is unchanged. Otherwise it needs a conversion function in between!

I'm going to close this in preference of tracking content addressing using #817.


TODO linter: Check that PRs don't add any files with permissions other than 644 to the repository

See https://github.com/ocaml/opam/issues/3782

Fixed by https://github.com/ocurrent/opam-repo-ci/pull/75


Update Ops Server Configuration Preparation doc for 10.4

[x] Update software references from 10.3.1 to 10.4

[x] Update the "Create the "KeepPublishedSD"..." step to 10.4.

[x] Remove screenshot in 'Create the "KeepPublishedSD"...' step.

Fixed in ops-server-config/v.next. Closing issue.


Fix push makefile target

This PR fixes the push makefile target, after currently it is failing.

Are the first two commits related to this PR?

nope my bad. fixed


Great Project!!!

Hi @iceglow , I am Moses Olafenwa, the CEO of the company building and maintaining DeepStack AI Server.
This is a very wonderful project you have here, developing a nice, seamless integration for DeepStack on the Node-RED platform.  My team will publish a tutorial soon on this project on our Blog and will feature it on our developer sites too.

Hi @OlafenwaMoses,
Deepstack and NodeRED are some of my absolute favourite software, so this news makes me very happy.
Don't hesitate to reach out with feature requests, and as always, code contributions are more than welcome.

@iceglow Thanks for the kind response. We surely be happy to contribute to this project going forward.
As promised, here is the tutorial our team published on DeepStack, Node-RED and the Node-RED-Contrib-DeepStack. Check is out and share with your network.
https://medium.com/deepquestai/no-code-ai-automation-with-deepstack-and-node-red-c8ed40fbbe62

BTW: The above article is one out of many we will publish on Node-RED-Contrib-DeepStack


Add workflows

Related Issue
Add the CI for the deploy, lint, and prettier fix to bug_report, feature_request, and add-event
Closes: No issue
Describe the changes you've made
created files for deploy and lint
Type of change
What sort of change have you made:

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Code style update (formatting, local variables)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update.
[ ] This change requires a documentation update

How Has This Been Tested?

[x] My code follows the guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented on my code, particularly wherever it was hard to understand.
[ ] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings.
[ ] I have added tests that prove my fix is effective or that my feature works.
[ ] Any dependent changes have been merged and published in downstream modules.

Screenshots (if applicable)

Original
Updated

No
No

Code of Conduct

[x] I agree to follow this project's Code of Conduct

What checks are failed?

 What checks are failed?

Failed due to the need to authorize the PR build. I'm the only one who can validate builds, that's kind of annoying and i need to find a way to solve  this.


Update README

The README file is still the one from glutin.

Is winit the successor to glutin?

@bgourlie No, look at the comments in tomaka/glutin#726

fixed in #27


Switch to Angular CLI

This PR closes #225
It turns dspace-angular in to an Angular CLI project.
Key differences are:

The project now runs on port 4000 for production and port 4200 for development
Development mode uses watch by default
The preboot property does not exist anymore, in cli the server side is built for production builds only. As a consequence dev builds are a lot faster.
The configuration files were moved from ./config/ to ./src/environments. This is where Angular CLI stores their configuration files by default.
The environment-files are now .ts files instead of .js files, so are the webpack files
The environment variables are not being injected anymore but simply imported

Known issues:

Overlaying themes doesn't work yet. Currently only the default theme can be used.
Loading sass variables as a typescript module doesn't work yet. The variables we had (e.g. the grid breakpoints) are hardcoded in typescript for now
There are a number of tests that now throw a warning saying the test "has no expectations". This is usually because those tests contain an asynchronous element, and the test wasn't set up to take that in to account. CLI's test runner points those out now, but those issues were already there. Those tests have never actually tested anything. We felt that fixing them all was out of the scope for this PR, and should be tackled in multiple small PRs

Update 2020-03-27
The config system has been overhauled.
Environment files no longer need to be on git. The system also no longer crashes when there's no custom dev or prod config. We support environment variables, and we also added support for .env files.
We investigated hosting the environment on an endpoint so it could be updated without the need for a rebuild, but that didn't turn out to be feasible in the time we had.
For more info see Readme.md

thanks @artlowel for this important PR
I have to premise that I've only had a quick overview but I'll write you first questions/doubts right now.
There is a specific reason for removing deploy/undeploy scripts? Before we use pm2 as node process manager, why do not make it coexist with CLI?

The preboot property does not exist anymore, in cli the server side is built for production builds only.

This could impact negatively on development: watching the behaviour of the application when works with SSR is very useful sometimes. However if there are no other possible solutions, we'll adapt to it and we'll need to be more careful that SSR works properly

There is a specific reason for removing deploy/undeploy scripts? Before we use pm2 as node process manager, why do not make it coexist with CLI?

We felt that there was no reason for pm2 to be a direct dependency of dspace-angular. We have servers using pm2 and others using forever. We felt that that choice shouldn't be made for you by dspace.

The preboot property does not exist anymore, in cli the server side is built for production builds only.

This could impact negatively on development: watching the behaviour of the application when works with SSR is very useful sometimes. However if there are no other possible solutions, we'll adapt to it and we'll need to be more careful that SSR works properly

That wasn't a choice we made. It is the way it works for universal development on cli at the moment. however the universal team is working on improving this, in the near future it will likely no longer be necessary. For now though the benefit is much faster rebuilds when you make a change during development.

That wasn't a choice we made. It is the way it works for universal development on cli at the moment. however the universal team is working on improving this, in the near future it will likely no longer be necessary. For now though the benefit is much faster rebuilds when you make a change during development.

This is a good news :+1:

We felt that there was no reason for pm2 to be a direct dependency of dspace-angular. We have servers using pm2 and others using forever. We felt that that choice shouldn't be made for you by dspace.

We don't see it as a dspace constraint, but I see it as added value. Out of the box dspace already has scripts to deploy/undeploy quickly and easily. Our opinion is not to remove it especially because it is an already existing option.

On Thu, Mar 19, 2020 at 03:11:52AM -0700, Art Lowel wrote:

There is a specific reason for removing deploy/undeploy scripts? Before we use pm2 as node process manager, why do not make it coexist with CLI?

We felt that there was no reason for pm2 to be a direct dependency of dspace-angular. We have servers using pm2 and others using forever. We felt that that choice shouldn't be made for you by dspace.

Thank you -- I agree.
--
Mark H. Wood
Lead Technology Analyst
University Library
Indiana University - Purdue University Indianapolis
755 W. Michigan Street
Indianapolis, IN 46202
317-274-0749
www.ulib.iupui.edu

@tdonohue
Thanks for offering to help me with the e2e issues I'm experiencing with Travis (locally it seems to work), here's a list of things I tried to solve this:

Added more thens to e2e test https://github.com/DSpace/dspace-angular/pull/625/commits/45beb3f93fab59f26605c0aff08126840c7013be
Added a method that waits until there's no more "Loading..." visible on the page https://github.com/DSpace/dspace-angular/pull/625/commits/97953912c55f5cb30b9cfe564fd09aaab64a8590
Increased timeouts to 3 minutes (180000) https://github.com/DSpace/dspace-angular/pull/625/commits/51dd1b1b2b787b2db740a2551cba44e2f10e879a
Switched everything back to port 3000 https://github.com/DSpace/dspace-angular/pull/625/commits/172d3891f05e0995acb4ea6ccc72310ed55c7f76
Used the 4Science REST server again, instead of the docker instance https://github.com/DSpace/dspace-angular/pull/625/commits/ad4b7fa254c3e8114aac67012a0bd371f60fc11f
Ran just the e2e (without other tests https://github.com/DSpace/dspace-angular/pull/625/commits/2e367cb87c26c14f54439927a70d1e32d071e15d)

All these changes did not seem to make a difference.
I also tried setting up a Travis container in Docker, in hope of debugging the issue there, but all the tests succeeded there as well.
However, I am fairly certain that my Docker container setup is not exactly the same as that of the 'real' Travis, because locally I had to add "--no-sandbox" to the Chrome settings for both the Karma and Protractor tests to get it to run the tests at all.
I don't have much experience with Docker, so I might have done something wrong.
I used this tutorial to run Travis in Docker: https://jonlabelle.com/snippets/view/markdown/run-travis-ci-builds-locally-with-docker
Together with this image: travisci/ci-ubuntu-1804:packer-1582574251-a9b1ae58
I could not find much about it online, all I could find was this StackOverflow post (that I'm not sure is even related): https://stackoverflow.com/questions/54966792/dockerized-angular-e2e-tests-pass-on-local-machine-but-timeout-in-travis-ci/54992080
I hope this helps! If you have any other questions, let me know.

@LotteHofstede : Thanks for the info. I've dug a bit yesterday and today, and I'm fairly certain the problem is not with Docker.  The Docker containers are starting up fine, and if I add this to the .travis.yml, I see an immediate response from the Docker-based REST API:
before_script:
  - curl http://localhost:8080/server/

This runs before protractor kicks anything off, so I can verify Docker has started by then.  It seems to me like something is not running properly within Protractor or the Chrome headless browser.  I've yet to narrow down exactly what the issue is, but I'm almost certain it's not Docker that is the problem here.
If I discover more, I'll let you know. But, I wanted to let you know I've been working on this a bit behind the scenes (I'm just using Travis with my personal acct to run tests to see if I can figure out what is going on, rather than adding to this PR.)

@LotteHofstede :
I've narrowed down the issue further.  It's not Docker, but the core problem is that the <ds-loading> tag never goes away (for any of the e2e tests).  So, the "loading..." message always appears for every e2e test.  The only e2e tests that currently succeed are those that depend on parts of the page which do not end up appearing where the <ds-loading> tag starts at.  You can see this behavior by adding the equivalent of a page.waitUntilNotLoading(); inside every single e2e test. When that is done, they all fail with a timeout, as the "loading" message never disappears from the app.
This bit of debug code can also be used to print out the full HTML that protractor sees in a given test. Every time I do this in an e2e test it prints out the HTML page with the "loading" message (beware it prints out a lot of CSS as well, so you have to jump to the bottom to find the HTML portion of the page):
    // This block of code will print the source of page (for debugging test issues)
    browser.getPageSource().then(function (res) {
        console.log("Page Source code is = " + res);
    });

So, from what I can tell, the issue seems to be something in how Protractor is loading our Angular CLI app.  I'm not sure why that would be, but it seems to have nothing to do with the REST API availability (Docker is working). My best guess is it must be something in how Protractor is configured now that we've updated to Angular CLI.  But, I'm not sure exactly where the problem is quite yet.

@tdonohue Thank you so much!! That makes a lot of sense, actually!
I'll reverse the unnecessary changes (but in a new commit so the comments in this PR don't become messed up) and I'll apply your recommended changes to the travis.yml, and of course I'll fix the issue in set-env.ts.
Thanks again, you saved me a lot of time!

@LotteHofstede: Sounds good.  It looks like the latest commit still had failures (though the failures are a bit different this time around).  It is possible the .travis.yml changes caused unexpected new issues. If so, we can move that to a separate follow-up PR.  I'll leave it up to you though :)  Let me know if you need any further help, otherwise I'll wait for re-review / re-test once you are ready.

@tdonohue The tests fail because of the fix, woops... There is a unit test that relies on a nameSpace value configured in the environment.test.ts file, but it's now overwritten by Travis' env-variable value for the nameSpace (that does get set now I've applied your fix).
I'm working on a solution that makes sure unit tests don't use the set-env.ts script at all, because they should be independent from the environment they run in.

@atarix83 : Can you re-review this PR?  It looks to me like your previous requests/questions have all been resolved, but it'd be good to get your approval.

@atarix83 The script is now a typescript file instead of a javascript one, because it relies on other typescript files.
To run the script from your console* you'll need use ts-node like this:
ts-node  --project ../../../tsconfig.ts-node.json ../../../scripts/sync-i18n-files.ts -s en.json5 -i -t cz.json5
*) Note that the wiki page runs the script from resources/i18n, but the i18n folder is now located at src/assets/i18n, so I executed it in that location.

thanks @LotteHofstede it works, maybe is better to update the wiki after this PR is merged

This is at +2 and ready to be merged.  @artlowel will merge it tomorrow as merger will likely require immediate updates to the demo Angular UI (once this gets deployed).
After merger, as noted by @atarix83 , we also should update the documentation on the sync-i18n-files script on this wiki page: https://wiki.lyrasis.org/pages/viewpage.action?pageId=117735441#DSpace7TranslationInternationalization(i18n)Localization(l10n)-Startinganewlanguagetranslationfromscratch


[REQUEST]: MPI-ESM1-2-HR historical

List of requested idds
'CMIP6.CMIP.MPI-M.MPI-ESM1-2-HR.historical.r1i1p1f1.Amon.tas.gn.v20190710',

Description
Hello,
On both Google and AWS, the above noted dataset shows that it only contains the years 1915-1959. I'm not sure if this was on purpose. I'd like to request data for Jan 1985-Dec 2014 to be added to the repositories. Thank you for making CMIP6 data easier to access!

Hi @kareed1,
thanks for raising an issue here!
I assume you are still using the 'old' catalog file here. Can you provide some more information (small code snipped) on how you are accessing the data currently?
The new current catalog (more info how to access) does not seem to have that iid:
def zstore_to_iid(zstore: str):
    # this is a bit whacky to account for the different way of storing old/new stores
    return '.'.join(zstore.replace('gs://','').replace('.zarr','').replace('.','/').split('/')[-11:-1])

iids_requested = [
'CMIP6.CMIP.MPI-M.MPI-ESM1-2-HR.historical.r1i1p1f1.Amon.tas.gn.v20190710',
]

import intake
# uncomment/comment lines to swap catalogs
url = "https://storage.googleapis.com/cmip6/cmip6-pgf-ingestion-test/catalog/catalog.json"
col = intake.open_esm_datastore(url)

iids_all= [zstore_to_iid(z) for z in col.df['zstore'].tolist()]
iids_uploaded = [iid for iid in iids_all if iid in iids_requested]
iids_uploaded

gives an empty list.
I will add this to the ingestion and see what we get.

Hi @jbusecke ,
Thank you for the updates and your assistance on this. It probably is from the old catalog. I had found some code online to get started, so I'm not sure how old that code was. Below is an example of the Python code I'm using.
import numpy as np
import pandas as pd
import xarray as xr
import zarr
import gcsfs

#available datasets on Google Cloud
df = pd.read_csv('https://storage.googleapis.com/cmip6/cmip6-zarr-consolidated-stores.csv')

#access to GC data sets
gcs = gcsfs.GCSFileSystem(token='anon')

#query the table
df_atm = df.query("table_id      == 'Amon' & \
                   source_id     ==  'MPI-ESM1-2-HR' & \
                   variable_id   == 'tas'  & \
                   experiment_id == 'historical' & \
                   member_id     == 'r1i1p1f1'")

#retrieve data from Google cloud
var_path = df_atm.zstore.values[0]             #pathway dataset on Google Cloud
mapper = gcs.get_mapper(var_path)              #dataset object
dat = xr.open_zarr(mapper)                     #open the dataset

Cool thanks for that info. That all looks good but I recommend using https://storage.googleapis.com/cmip6/cmip6-pgf-ingestion-test/catalog/pangeo_esgf_zarr_qc.csv (https://storage.googleapis.com/cmip6/cmip6-pgf-ingestion-test/catalog/catalog.json points to that!) going forward.

I have high hopes that a solution to https://github.com/jbusecke/pangeo-forge-esgf/issues/42 will address this issue too.

Ok the dataset was ingested, but ended up in our non-qc catalog.
I did some digging:
# you need specific versions of the following libraries to reproduce the following on the LEAP-Pangeo hub
pip install leap-data-management-utils[pangeo-forge] git+https://github.com/jbusecke/pangeo-forge-esgf.git@new-request-scheme

Lets load the store and run out tests (failing these causes this to be put in our non-qc catalog)
import zarr
from pangeo_forge_esgf.utils import facets_from_iid
from leap_data_management_utils.cmip_testing import test_all
import intake
# uncomment/comment lines to swap catalogs
url = "https://storage.googleapis.com/cmip6/cmip6-pgf-ingestion-test/catalog/catalog_noqc.json" # Only stores that fail current
col = intake.open_esm_datastore(url)
iid = 'CMIP6.CMIP.MPI-M.MPI-ESM1-2-HR.historical.r1i1p1f1.Amon.tas.gn.v20190710'
facets = facets_from_iid(iid)
del facets['mip_era']
cat = col.search(**facets)
store = zarr.storage.FSStore(cat.df['zstore'].tolist()[0])
test_all(store, iid)

gives
---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
Cell In[24], line 15
     12 store = zarr.storage.FSStore(cat.df['zstore'].tolist()[0])
     13 # ds = xr.open_dataset(store, engine='zarr')
     14 # ds
---> 15 test_all(store, iid)

File [/srv/conda/envs/notebook/lib/python3.11/site-packages/leap_data_management_utils/cmip_testing.py:72](https://leap.2i2c.cloud/srv/conda/envs/notebook/lib/python3.11/site-packages/leap_data_management_utils/cmip_testing.py#line=71), in test_all(store, iid, verbose)
     70 def test_all(store: zarr.storage.FSStore, iid: str, verbose=True) -> zarr.storage.FSStore:
     71     ds = test_open_store(store, verbose=verbose)
---> 72     test_time(ds, verbose=verbose)
     73     test_attributes(ds, iid, verbose=verbose)
     74     return store

File [/srv/conda/envs/notebook/lib/python3.11/site-packages/leap_data_management_utils/cmip_testing.py:49](https://leap.2i2c.cloud/srv/conda/envs/notebook/lib/python3.11/site-packages/leap_data_management_utils/cmip_testing.py#line=48), in test_time(ds, verbose)
     47 if verbose:
     48     print(time_diff)
---> 49 assert (time_diff > 0).all()
     51 # assert that there are no large time gaps
     52 mean_time_diff = time_diff.mean()

AssertionError:

so the time is not continous!
we can confirm that
import matplotlib.pyplot as plt
import xarray as xr
ds = xr.open_dataset(store, engine='zarr')
plt.plot(ds.time) # note do not use the built in plot since it will seem like the time is continous, because the time is plotted against itself not the array index

Yeah thats not great...but its fixable!
plt.plot(ds.sortby('time').time)

so @kareed1 you can use the above to work with the dataset for now.
I want to understand how this happened though...
from pangeo_forge_esgf.client import ESGFClient
iid = 'CMIP6.CMIP.MPI-M.MPI-ESM1-2-HR.historical.r1i1p1f1.Amon.tas.gn.v20190710'
client = ESGFClient()
dataset_id = client.get_instance_id_input([iid])[iid]['id']
file_dict = client.get_recipe_inputs_from_dataset_ids([dataset_id])
list(file_dict[iid].keys())

this seems fine
'tas_Amon_MPI-ESM1-2-HR_historical_r1i1p1f1_gn_197501-197912.nc',
 'tas_Amon_MPI-ESM1-2-HR_historical_r1i1p1f1_gn_198001-198412.nc',
 'tas_Amon_MPI-ESM1-2-HR_historical_r1i1p1f1_gn_198501-198912.nc',
 'tas_Amon_MPI-ESM1-2-HR_historical_r1i1p1f1_gn_199001-199412.nc',
 'tas_Amon_MPI-ESM1-2-HR_historical_r1i1p1f1_gn_199501-199912.nc',
 'tas_Amon_MPI-ESM1-2-HR_historical_r1i1p1f1_gn_200001-200412.nc',
 'tas_Amon_MPI-ESM1-2-HR_historical_r1i1p1f1_gn_200501-200912.nc',
 'tas_Amon_MPI-ESM1-2-HR_historical_r1i1p1f1_gn_201001-201412.nc'

My first suspicion was that the files are not correctly concatenated, but that might not be it.
Will dig some more and follow up.

Oh wait, this is not a complete set of files! How strange.

Ill move discussion over to https://github.com/jbusecke/pangeo-forge-esgf/issues/46, but will close this for now. Feel free to use the non-qc data for now, but proceed with caution @kareed1


Error in timestamp comparison in expect_grouped_row_values_to_have_recent_data

@pan-kadams reports the following error on BigQuery when using expect_grouped_row_values_to_have_recent_data
No matching signature for operator < for argument types: TIMESTAMP, DATETIME. Supported signature: ANY < ANY at [38:9]

See: https://github.com/calogica/dbt-expectations/issues/104#issuecomment-1146246737

This issue here is that if the column passed in is not a timestamp datatype, BigQuery won't implicitly convert this during the < comparison.  So, the fix is likely to explicitly cast both sides of the evaluation to a timestamp.


How can I get selected asset on tapping collection view cell?

currently i m getting this images into done button tapped. please help me ASAP.

Post your code here.

acutally, i want to get all images which will be selected on collectionvie cell tapped i want to display all images in collectionview whenever i select image from dkimagepicker then my collectionview will be reloaded so what can i do?


Build Fails when build target set to px4esc_1_6

/usr/lib64/ccache/arm-none-eabi-g++ -mthumb -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -c -O3  -g3 -ffreestanding -fsingle-precision-constant -fno-common -fmessage-length=0 -Wall -fno-exceptions -ffunction-sections -fdata-sections -fno-rtti -fno-threadsafe-statics -DDEBUG -include config_px4esc_1_6.h -DTOOLCHAIN_GCC_ARM -DNO_RELOC='0' -DUAVCAN_TINY=1 -DUAVCAN_DEBUG=0 -DUAVCAN_GENERAL_PURPOSE_PLATFORM=0 -DUAVCAN_NOEXCEPT=1 -DUAVCAN_TOSTRING=0 -DUAVCAN_USE_EXTERNAL_SNPRINTF=1 -DUAVCAN_NO_ASSERTIONS=1 -DUAVCAN_NO_GLOBAL_DATA_TYPE_REGISTRY=1 -std=c++11 -Iapp/include/ -Iarch/include -Iarch/src -Iarch/src/chip -I/usr/lib64/ccache/../arm-none-eabi/include/ -Ilibuavcan/include -Ilibuavcan/include/dsdlc_generated -I/usr/lib64/ccache/../arm-none-eabi/include/  -o build/app/hal.o app/src/hal.cpp
In file included from arch/src/stm32_rcc.h:43:0,
                 from arch/src/stm32.h:85,
                 from ./config_px4esc_1_6.h:71,
                 from <command-line>:0:
app/src/hal_px4esc_1_6.cpp: In function 'void hal_read_phase_shunts_(int16_t*)':
app/src/hal_px4esc_1_6.cpp:187:55: error: 'STM32_ADC1_JDR1' was not declared in this scope
         phase_shunt_signal_lsb[1] = (int16_t)getreg32(STM32_ADC1_JDR1);

Sorry, moved where the includes happen to work better with the new headers and forgot to update the PX4ESC HAL file. Fixed in 3e273032ca4843894aea445194b40d42b346a70e.

@bendyer Thank you! I builds fine with my PR.


CLOUDSTACK-9613: Unable to set NAT rules on any interfaces except first interface of VM.

Description:
VMs have multiple network interfaces.
It is not possible to set a NAT rule on any of the interfaces except the first interface of the VM from UI. Because the UI only lists the IPs of the first interface.
The rules can only be set on the "default" interface but even after setting the secondary as the default interface the outcome is still the same. Only the first interface is listed in the UI as available for setting NAT rules.
Steps to Reproduce:

Create two networks.
Create a VM.
Attach both the networks to the VM.
Create NAT rules using both the networks.
Observe the add VM section while creating the rule.
The same IPs appear for both the case.

Please see the below snaps to observe the issue clearly.
VM NIC1

VM NIC2

Creating NAT rule from Network-1

Add VMs section

Creating NAT rule from Network-2

Add VMs section

Expected:
Add VMs section from Network-1

Add VMs section from Network-2

Resolution:
Instead of always passing the id of the first nic, passing the id of
the nic which is on the same network as the IP address of which
we are enabling port-forwarding/load-balancing.

@nitin-maharana Hi Nitin, can we use "networkId: network.id" instead nicId ?

@ustcweizhou : Yes, we can directly pass networkid instead nicId. They handled the same way in case of multiple vm.

@nitin-maharana so I suggest to use "networkId" instead of nicId, it is simpler change.

@ustcweizhou : I made the changes. Thanks.

Thanks @nitin-maharana a similar fix was merged with #1785 since it was for 4.9. Please close this PR.


Extension build fails on linux

This is happening both for the nightly and 4.8 stable:
http://slicer.cdash.org/viewBuildError.php?buildid=1115624

I confirm the extension build and packaged successfully.


Use @ngrx-router-store #331

What:

The goal is to use ngrx-router-store to get the selected book from the url.

Issue number: 331

@Jeykairis can you you give a heads up when this is ready for a review? :)

@Jeykairis looks great, thanks! It's nice that it is now possible to share link to particular book.
The only thing left would be to rebase 10 commits into one which follow standard format specified in Contributing guide and we're good to merge!

Usually, we use squash and merge by renaming the commit as wanted to keep the master history clean.
On my side I use git reset --mixed then commit all changes with the excepted message and then push -f to erase the history of the branch.
Is it what you except or do you have more instructions for the rebase?
I also try to git rebase -i  e96e406f430bb5ccd88879d6e413fea4a0e35d61 and replace all pickby squash but not sure it's what you want neither.

@Jeykairis I could try using githubs squash and merge. In my professional project I was usually doing git rebase -i HEAD^<number-of-commits> and then replaced pick with fixup

f, fixup = like squash, but discard this commit's log message

and rewrite one commit that was pick to have the final message. Then it is a single commit PR so it can be just merged. I can try using GitHub's squash and merge if you want.

I usually use githubs squash and merge for this.
Or git rebase master -i, and after this you'll have to force push.

@Jeykairis hmm that's strange error. Besides that it is on your branch so that means once you rebase it you force push it to your own origin ( which is your fork ) which should update the PR automatically. Anyway no worries I can just squash and merge.

@Jeykairis ah sorry my bad, the ^ means like one so ^^ is like 2 commits but in your case the correct way to do this is rebase -i HEAD~10, then fixup all besides one, then change commit message of the one left and the --force push. Sorry for the confusion :)

Thank you @tomastrajan and @timdeschryver for your explanations and letting me the time to explore the rebase tool.
The git rebase master -i first looks to ask me less work by removing commits resolving conflicts with master but next I have to make some fix after the rebase.
Finally, here is the clean commit 😄

@Jeykairis amazing, thank you for your effort!


Getting AttributeError: aenter on async with self.queue_lock:

Hi,
I wanted to enquire if there are examples of unit tests for this. I have been continuously struggling with unit tests for sanic async post method with the following error:
async with self.queue_lock:
AttributeError: __aenter__

I am getting this error for:
async with self.queue_lock:
        if len(self.queue) >= MAX_QUEUE_SIZE:

For more details, I am using a code from here: https://github.com/deep-learning-with-pytorch/dlwpt-code/blob/master/p3ch15/request_batching_server.py#L58
The test I am trying:
import json
import pytest
from ..app import app

@pytest.mark.asyncio
async def test_basic_post():
    _, response = await app.asgi_client.post("/predict", data=json.dumps(INPUT), headers=HEADERS)
    print(response)

Please do let me know if anyone has come across this and has a solution. Thank you.
CC: @ahopkins

Do you mean like this?
https://sanicframework.org/en/plugins/sanic-testing/getting-started.html

I am trying similar thing which works for GET but does not work for POST in my endpoint.
I get error as above when I try for POST, I think it is something to do with asyncio lock and loop.
self.queue_lock = asyncio.Lock(loop=self.app.loop)

I am not sure that this is related to sanic-testing at all. Am I mistaken? It seems lore likely to me that the issue is in the route handler as whether or not the lock is properly setup does not have anything to do with this lib.

I guess one thought I have is this:
self.queue_lock = asyncio.Lock(loop=self.app.loop)

You may be running into problems by manually setting the loop. You do not need to do this on Lock, and in fact you should not do it at all:

Deprecated since version 3.8, removed in version 3.10: The loop parameter. This class has been implicitly getting the current running loop since 3.7.

Source

Thank you for your response @ahopkins.
I understand what you mentioned here, this means I do not need a loop here in lock at all. I will try that and get back. Thanks.

test_endpoint.py [2021-12-31 18:46:12 +0000] [33939] [INFO] Goin' Fast @ http://<IP_ADDRESS>:62918
[2021-12-31 18:46:12 +0000] [33939] [INFO] Goin' Fast @ http://<IP_ADDRESS>:62919
[2021-12-31 18:46:12 +0000] [33939] [ERROR] Exception occurred while handling uri: 'http://<IP_ADDRESS>:62919/predict'
Traceback (most recent call last):
  File "/Users/vedantruparelia/workspace/tensorflow-test/env/lib/python3.9/site-packages/sanic/app.py", line 770, in handle_request
    response = await response
  File "/Users/vedantruparelia/workspace/python_projects/tf_sanic_example/request_batching_server.py", line 106, in predict
    output = await style_transfer_runner.process_input(data)
  File "/Users/vedantruparelia/workspace/python_projects/tf_sanic_example/request_batching_server.py", line 48, in process_input
    async with self.queue_lock:
AttributeError: __aenter__
[2021-12-31 18:46:12 +0000] - (sanic.access)[INFO][<IP_ADDRESS>:62920]: POST http://<IP_ADDRESS>:62919/predict  500 735
<Response [500 Internal Server Error]>

Using the following code which I have taken from https://github.com/deep-learning-with-pytorch/dlwpt-code/blob/master/p3ch15/request_batching_server.py:

import asyncio
import functools
import tensorflow as tf
from sanic import Sanic
from sanic.response import  json
from sanic.log import logger
import numpy as np

app = Sanic("test-server")

MAX_QUEUE_SIZE = 3  # we accept a backlog of MAX_QUEUE_SIZE before handing out "Too busy" errors
MAX_BATCH_SIZE = 2  # we put at most MAX_BATCH_SIZE things in a single batch
MAX_WAIT = 1        # we wait at most MAX_WAIT seconds before running for more inputs to arrive in batching

class HandlingError(Exception):
    def __init__(self, msg, code=500):
        super().__init__()
        self.handling_code = code
        self.handling_msg = msg

class ModelRunner:
    def __init__(self):
        self.queue = []

        self.queue_lock = None

        self.model = tf.keras.models.load_model("best_model_HDF5_format.h5")

        self.needs_processing = None

        self.needs_processing_timer = None

    def schedule_processing_if_needed(self):
        if len(self.queue) >= MAX_BATCH_SIZE:
            logger.debug("next batch ready when processing a batch")
            self.needs_processing.set()
        elif self.queue:
            logger.debug("queue nonempty when processing a batch, setting next timer")
            self.needs_processing_timer = app.loop.call_at(self.queue[0]["time"] + MAX_WAIT, self.needs_processing.set)

    async def process_input(self, input):
        our_task = {"done_event": asyncio.Event(),
                    "input": input,
                    "time": app.loop.time()}
        async with self.queue_lock:
            if len(self.queue) >= MAX_QUEUE_SIZE:
                raise HandlingError("I'm too busy", code=503)
            self.queue.append(our_task)
            logger.debug("enqueued task. new queue size {}".format(len(self.queue)))
            self.schedule_processing_if_needed()

        await our_task["done_event"].wait()
        return our_task["output"]

    def run_model(self, batch):  # runs in other thread
        return self.model.predict_on_batch(batch['a'])

    async def model_runner(self):
        self.queue_lock = asyncio.Lock()
        self.needs_processing = asyncio.Event()
        while True:
            await self.needs_processing.wait()
            self.needs_processing.clear()
            if self.needs_processing_timer is not None:
                self.needs_processing_timer.cancel()
                self.needs_processing_timer = None
            async with self.queue_lock:
                if self.queue:
                    longest_wait = app.loop.time() - self.queue[0]["time"]
                else:  # oops
                    longest_wait = None
                logger.debug("launching processing. queue size: {}. longest wait: {}".format(len(self.queue), longest_wait))
                to_process = self.queue[:MAX_BATCH_SIZE]
                del self.queue[:len(to_process)]
                self.schedule_processing_if_needed()
            if not to_process:
                continue
            # so here we copy, it would be neater to avoid this
            batch = {}
            for t in to_process:
                for key, val in t["input"].items():
                    batch[key] = val

            batch = {
                k: np.array(v).reshape(len(v),) for k, v in batch.items()
            }
            # we could delete inputs here...

            result = await app.loop.run_in_executor(
                None, functools.partial(self.run_model, batch)
            )
            for t, r in zip(to_process, result):
                t["output"] = r
                t["done_event"].set()
            del to_process

style_transfer_runner = ModelRunner()

@app.route('/predict', methods=['POST'])
async def predict(request):

    data = request.json
    output = await style_transfer_runner.process_input(data)
    return json({"prediction": str(output)})

if __name__=="__main__":
    app.add_task(style_transfer_runner.model_runner)
    app.run(host="<IP_ADDRESS>", port=8000,debug=True)

Sanic version: 21.6.0
pytest-sanic: latest version
TensorFlow version: 2.7.0
best_model_HDF5_format.h5 - Tensorflow Keras saved model (Happy to send this file if required)
@ahopkins - I tried it by removing loop from Lock and Event, I am still getting the same error. The error is only in the unit tests, not in the actual run. I might be wrong but I somehow feel while running unit tests, the program(sanic app), I am not sure how add_task and app communicate in the tests because I think that the Lock in process_input() is unable to recognise the Lock which is instantiated in the model_runner() which is running as a task in the sanic app.

Hey @ahopkins
My apologies, this issue was more from pytest-sanic side of things and I have it resolved now.
You can close this. Thank you for your time and efforts.
The only thing I was not doing right was while testing I did not add a task to the app in the fixture where I yield the app. I got it resolved by adding the task before yielding the app.
Thanks again.


Setting HTTP on hit or miss

Is there a way to set a http header on hit or miss?

You can use WithBeforeReplyWithCache option to custom response header.
https://github.com/chenyahui/gin-cache/blob/main/option.go#L94

I have this code
var invalidateCache cache.Option = cache.WithBeforeReplyWithCache(func(c *gin.Context, cache *cache.ResponseCache) { 	c.Request.Header.Set("teest", "yes") })
But it doesn't set header

Maybe it should to use c.Writer.Header?

Thanks, it works like that!


twister: check if qemu is executable

When the qemu binary file doesn't exist or it is unexecutable, cmake will not throw error message, also the twister can't
detect this error, then the twister will hang forever
https://github.com/zephyrproject-rtos/zephyr/issues/35386
Signed-off-by: Jingru Wang<EMAIL_ADDRESS>

https://github.com/zephyrproject-rtos/zephyr/pull/36257 also can handle this problem


chore(ci): upgrade actions/github-script to v5

Motivation
Believe there were some security related fixes in the Octokit library that was the reason for the major version bumps.
Current usage shouldn't be affected by the breaking changes https://github.com/actions/github-script#breaking-changes-in-v5
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
Will need to test after landing, since this action uses pull_request_target
Related PRs
(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/facebook/docusaurus, and link to your PR here.)

Behavior looks the same, so let's merge!


Bad IP when container have multiple network in docker-compose

Hi.
I use docker-compose to up all my services.
I have created many network for different services : nginx-proxy, postgresql, frontend etc...
i create a new network with "docker network create -d bridge nginx-proxy"
My docker-compose nginx-proxy look like :
version: '2'
networks:
  proxy-tier:
    external:
      name: nginx-proxy

services:
  nginx:
    image: nginx
    container_name: nginx
    volumes:
         [certs, conf etc......]
    ports:
      - 80:80
      - 443:443
    networks:
      - proxy-tier

  docker-gen:
    image: jwilder/docker-gen
    depends_on:
      - nginx
    container_name: docker-gen
    volumes_from:
      - nginx
    volumes:
      - "[...]nginx.tmpl:/etc/docker-gen/templates/nginx.tmpl:ro"
      - "/var/run/docker.sock:/tmp/docker.sock:ro"
    command: -notify-sighup nginx -watch -only-exposed -wait 5s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf

  letsencrypt-gen:
      [some good conf, it's work like a charm]

All works very well when i launch an app with the same networks as nginx-conf like that :
version: '2'
networks:
  proxy-tier:
    external:
      name: nginx-proxy

services:
  django:
    build: .
    ports:
      - "8066:80"
    networks:
      - proxy-tier
    command: python manage.py runserver <IP_ADDRESS>:80
    environment:
      VIRTUAL_HOST: "myhost.mydns.com"
      VIRTUAL_PORT: "8066"
      LETSENCRYPT_HOST: "myhost.mydns.com"
      LETSENCRYPT_EMAIL<EMAIL_ADDRESS>
The django service are on the same network as the nginx-proxy, and the docker-gen build a good upstream with the ip of the django container (<IP_ADDRESS>:8066)
The problem appear when i start a container with two or more network, like a postgresql :
networks:
  proxy-tier:
    external:
      name: nginx-proxy
  postgres-tier:
    external:
      name: postgresql-network

services:
  django:
    build: .
    ports:
      - "8066:80"
    networks:
      - proxy-tier
      - postgres-tier
    command: python manage.py runserver <IP_ADDRESS>:80
    environment:
      VIRTUAL_HOST: "myhost.mydns.com"
      VIRTUAL_PORT: "8066"
      LETSENCRYPT_HOST: "myhost.mydns.com"
      LETSENCRYPT_EMAIL<EMAIL_ADDRESS>
  postgresql:
      image: postgresql
      expose:
          - 5432
      networks:
          - postgres-tier

I don't want the postgresql and nginx on the same network. And all work well like that. Django and Postgres can talk together, and nginx can talk to Django only.
So Django are now on two networks : proxy-tier (172.21.0.x) and postgres-tier ( 172.24.0.x ).
My problem is this :
Docker-gen look at the ip of the django and  randomly fills the nginx config file with the proxy-tier ip (<IP_ADDRESS>) or the postgres-tier (<IP_ADDRESS>). He did not choose the ip in common with nginx all the time.
So, i have sometime (when i launch new services) a nginx conf file with upstream ip that nginx can not talk.
Did you know how can i fix this ? Actually, i add nginx in all network, but it seem a little hacky, and not very secure. Not fully automated too, cause i can't create new network without relaunch all my nginx-proxy docker-compose for add the new network.
Thank you.

Hello,
I'm having the same issue and tried several of the methods proposed in the other issues, without any success.
Thank you anyway for this tool, it's very nice !

Same here

For anyone else who runs into this issue with docker-compose, here was my solution), motivated by @Angel0fDarkness, and merged into the Master Template.

Pass in an env variable into docker-gen with the name of the network.  Requires docker-compose to be passed in the COMPOSE_PROJECT_NAME explicitly otherwise default it to the name of your project:
https://gist.github.com/jonovate/fe1c65b1bfe8c73ab3627ec755daefb3#file-docker-compose-yml-L24

Wrap existing template in check if our env variable exists .. wish it could be cleaned up better, suggestions?
https://gist.github.com/jonovate/fe1c65b1bfe8c73ab3627ec755daefb3#file-nginx-upstream-tmpl-L12-L71


Abtstraction layer for models .NET COre SDK V2

Models:
- generate interface for all models which include properties for the RAML type itself
- generate implementation class using all properties (inherited) of the RAML type
- deserialize using CustomAttribute (DeserializeAs)


License

We would be thankful if you could change the license from GPL to MIT, because we want to use it in a non-GPL licensed project.
Thanks in advance

Of course. Thanks for asking!


chore: setup, lint and all process changed using node js

Initial checklist

[x] I read the support docs
[x] I read the contributing guide
[x] I agree to follow the code of conduct
[x] I searched issues and couldn’t find anything (or linked relevant results below)
[x] If applicable, I’ve added docs and tests

Description of changes
TODO

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

Comparison is base (5472087) 67.31% compared to head (2ae753e) 67.22%.
Report is 1 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #124      +/-   ##
==========================================
- Coverage   67.31%   67.22%   -0.10%
==========================================
  Files          12       12
  Lines         361      360       -1
  Branches       34       34
==========================================
- Hits          243      242       -1
  Misses        118      118

Files
Coverage Δ

packages/utils/src/escalade.ts
65.21% <100.00%> (-0.75%)
:arrow_down:

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


Update color tokens to use variables

Currently the toolkit uses a raw set of color values via shared styles. This makes it difficult for consumers of the toolkit to use colors given that there's no semantic meaning associated with them.
For example, a designer building a VS Code extension would have no way of knowing which color was used for input backgrounds unless they manually cross-referenced the hex value with the colors in colorRegistry.ts
Ideally we could use variables to expose a list of semantic tokens that match the list used in VS Code itself. These variables would referenced the raw "Base " or "Accent " colors as they exist today, updated to use the latest themes.

If vscode is switching to color variables, it's worth looking into defining colors in oklch() instead of the older hex rgb values.
Oklch pros:

has wide support

See: https://caniuse.com/mdn-css_types_color_oklch

easier to define and vary colors in a programmatic design system

Change single hue variable to have all colors update

is perceptually uniform

Changing hue should not change lightness or chroma (as opposed to rgb/hsl/lch/lab). See: https://evilmartians.com/chronicles/oklch-in-css-why-quit-rgb-hsl#oklch-vs-hsl
Having minimum guarantees about color also makes color contrast accessibility easier to manage.

This is related to our Figma toolkit, not the vscode repo, just in case that wasn't clear. I don't believe Figma supports formats other than those pictured below but cool to read about oklch()!


task: dumps version to 0.7.3

You don't need this one.
I have merged @anapschuch 's pr to bump the version to 0.7.2


autoprefixer no effect！please give me help

Are you intending to replace all the existing options, or to add the importLoaders variable into the options field - because at the moment you are completely replacing them? If you're trying to add it to the existing list of options, you need to include the existing options too.
loader.options = {
  ...loader.options,
  importLoaders: 2
}

@dawnmist  Sorry,  I still have the same problem after I am modified.

@dawnmist   hank you very much for your patience and help me.


⚠ Turnos 24x7 has degraded performance

In f2aad02, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 1080 ms

Resolved: Turnos 24x7 performance has improved in 051f34b.


Profiles

Overview
These changes encompass the entirety of support for the profiles framework as well as a suite of new features and workflow behavior governed by newly introduced profile attributes.
Framework
The architecture and APIs for the profiles framework are documented in detail here: datavis-cartodb/cartodb-docs/playbooks/profiles.md.  There are new ruby models, changes to the User model as well as a new ProfileAttributes BackBone model which serve as the primary interface for the profiles framework.
New Profile Attributes Features
The new features for which the profiles framework is used include the following:

Profile Enablement

Static enablement through profiles_users table
temporary or 'session' enablement via http headers
Rake Task for static enablement: rake profiles:enable:user[username,profile_name]

Font

Updated Default FixedTitle Font
Updated Default Fixed Description Font
Support for a new set of allowed fonts as part of profile attributes

Export Image

All styles transferred from fixed title/description to export image view
All styles including font and opacity transferred to actual exported image

Locking Map

Lock Pan on a map
Lock Zoom on a map

Default Overlays

Fixed title on by default flag
New fixed title default opacity
New fixed description default opacity

Default basemaps

Optional whitelist of certain basemaps for which to enable user

Any feature behind a profile attribute will not change default behavior if the profile attribute is not set for the user.  Aside from some bug fixes, the workflow of user's without profile attributes will be unchanged.

Submodule carto_assets seems to be reverted to an old commit

I've addressed all the comments and tested the changes.  If all looks good to @mbektas and the headless tests are successful, I think this PR is ready to merge.

An asset version bump will also be required with these changes. The current blp_prod version is 3.23.72

Confirmed with product that we do want to keep lock pan and zoom turned on for everyone.

Closing. Will open a new pull request for blp_dev.

Approved by Mehmet and Vishal.  Will create a new PR for blp_dev.


Revamp the station item entry exit recording logic

Allow station storage set to "Storage" logic to also work in blackbox
Support input and output from the same station

Addressed by

505c8d24cbf083588319586cc4febd47f9f1233c
f51bbbb1338a780ae6d24759c0957b9f04905d35
afbe499b8e90371c7357b461e649d75ae9c717df
d477aab898a1fab49d6fe51b438b3224af6ae68d


Add Scastie Links to Issue Template and/or README

Type of issue: feature request | documentation

Impact: no functional change

Development Phase: request
Other information

If the current behavior is a bug, please provide the steps to reproduce the problem:
What is the current behavior?
We suggest Scastie in Issue Template, but we don't actually provide the links
What is the expected behavior?
The links are easy to find on the README and/or the Issue Template
We should include 3.5.0-RC1, 3.4.4 at least
Please tell us about your environment:

What is the use case for changing the behavior?
Scastie links are super handy!

https://scastie.scala-lang.org/KtzZQ3nFTea9KoNh0tRqtg for Definition/Instance on 3.5.0-RC1
https://scastie.scala-lang.org/qgcsppKCShmlyIOr8qudqQ for simple example on 3.5.0-RC1
I'll need to test a 3.4.4 one

hello @mwachs5  can try to work on this ?

Hi @Burnleydev1 , you could work on this, but you have also done a lot of docs so maybe #2107 would be more of a different challenge for you?

hi @desirekaleba , sure!

Right, there is nothing in the Issue Template or the README docs about Scastie yet. I think a good place to be add it would be in the README under Useful Resources: https://github.com/chipsalliance/chisel3#useful-resources
and in the Issue Template under This part (need to view the raw version of the page to see it):
**Other information**
 <!-- include detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. Stack Overflow, gitter, etc -->

Hi @mwachs5, @debs-sifive  I need some clarification please on handling issues.
If an issue is open, can any contributor start working on it?
How do I know that an issue is not assigned to a specific Contributor?
Please assign me an issue so I don't work on one that has been assigned already.
I have been learning basic commands around git.
I need to do some practice here on a good first issue!

@debs-sifive, concerning #2143 @mwachs5 mentioned that there is something about it.
Which one would you please assign to me going forward?


Uniquely identify actors of the same type residing on the same host?

Hi,
Is there any way to distinguish two actors of the same type other than what is shown in the echoserver.rs example, where (as I understand it) the same echo actor is signed twice to give each copy a unique public key?
I guess what I'm looking for is some way to give an actor a unique name or id, much like capability providers can be named.
Just to give some context to the question: I'm experimenting with a generic host where applications can be deployed from manifests (similar to examples/sample_manifest.yaml), but where the host and capability providers are static/long-lived, whereas (multiple) actor applications are dynamically deployed and removed during the lifetime of the host.

For a long-lived host where the capabilities stay and the actors move in and out, then the thing you want to use for actor uniqueness is definitely its public key. This is how gantry operates - you upload and download wasm modules based on their public keys.
If what you're looking for is to run two copies of the same actor with the same cryptographically signed identity, then we don't currently support that. I'm assuming you're asking so that you could load actor Mxxxxx multiple times into the same host, each time with a different set of configuration--to potentially use the same logic (actor) running on two different ports, or expose an actor via HTTP and the same actor via NATS, etc?
If you could provide a little more context on the use case, I can let you know if there's a workaround given existing constraints.

My original concern about allowing multiple identical actors (the same unique identity, hash, module bytes) to run within the same host was that waSCC wouldn't be able to safely protect that actor from stepping on its own configuration - e.g. network port conflicts, blocked access to shared resources, etc.
However, that problem exists with or without the ability to run duplicate actors within the same host. As I said, I'd love to hear more about your use case that warrants duplicate actors then I might be able to provide more useful information.

So, previously I've used a combination of actors and dataflow to write applications that can be deployed across distributed runtimes (hosts) and you can find some info here on the assumptions made on the applications.
The waSCC project piqued my curiosity, and I wanted to see if I could create applications the same way. To give a concrete "hello world"-example:
init : flow.Init(data="Hello World!")
print : io.Print()
voidport > init.in
init.out > print.token

where the two first lines create actors and the two final lines determine the massaging routes between the actor ports. Regardless of on which host the init and the print actor resides, the message from init would find its way to print.
As I understand how waSCC works, there would be no way to make sure that the message arrived at the particular print actor instantiated by this script (manifest), as opposed to another print actor from some other application.
Now, I'm aware that waSCC actors don't have an init, and that they need an external request to activate; but I guess using an http_server cap for init would do the trick here.
I hope I've managed to explain what I'm trying to achieve, even though the example is somewhat contrived.

One more thing. I guess the above would also require that I figured out some way to create per-application topics for messages based on the flow graph.

Looking at the assumptions from the Ericsson Calvin page, I see these two bullets:

Actor classes are uniquely identifiable
Actor instances are uniquely identifiable

If you take a philosophical approach, then the waSCC actor public key right now is a unique identifier for an actor class, or in other terms, the prototype. An actor on its own it lacks the ability to uniquely identify an instance (although internally there is a unique, monotonically-increasing hostID variable assigned to each wasm module). Representing two instances of the same prototype basically comes down to a choice of state management:

Stateless - The actor prototype code is invoked with all of the context necessary to perform its task and it does not maintain data between calls. In some architectures, the data passed to the prototype is a unique instance ID used for "state lookup" during calls, which is what I'm doing in the architecture for a distributed online game engine
Stateful - The combination of the actor's prototype code and per-instance data is held in memory, and so every instance is a snapshot of a running wasm interpreter and the VM state.

In the architecture I describe for the game, I deliberately avoid the stateful version because I don't want the overhead of having to maintain two active wasm interpreters for what amounts to exactly the same code that would only otherwise differ by state.

Thanks for the pointer to the MUD blog post, delightful read! I've added "blog-ahead compilation" to my active vocabulary.
I'm new to wasm (and Rust for that matter) and naïvely assumed that all instances shared the same interpreter. The use of prototypes makes perfect sense now. I need to recalibrate my compass, and digest this for a while but I'm pretty sure that that will result in new questions.
Thinking somehow seem to results in more questions than answers...
Just one final check: There is currently no mechanism in waSCC that assists in passing an instance ID during calls – so I'd have to come up with my own solution for that, right?

waSCC, and waPC underneath it, are both pretty strict about remaining ignorant to the shape and manner of the message payloads. It's this agnosticism that allows waSCC to support all kinds of scenarios and be as portable as it is.
Once I get some of the work done on the MUD, I can share the code with you, but you're right in that I am passing instance IDs around and then inside the wasm code, fetching state from a key value store that's keyed on that instance ID.
My grandfather used to say that "if you have questions, you're doing it right" :) I've always loved that saying.
As a side note on running multiple copies of the interpreter: if your wasm engine is a JITter, then it's actually compiling the wasm code into native code instead of interpreting it on demand. Part of the guarantee of wasm is the isolated sandbox, so the JITters produce isolated/sandboxed code. If two instances of the same module could share code paths, even innocently in the name of optimization, then any successful module impersonator could get scheduled alongside the real module and steal any and all sensitive data that flows through the code paths.

If you want to chat more about WebAssembly and/or waSCC, feel free to come by our community meeting every Friday at 1pm Eastern.


gzip

Implement support for compression with a gzip header/trailer.

:+1:, any progress on this?

It's not something I have focused yet. I was planning to look at it after I've fixed the block splitting behaviour to emulate that of miniz/zlib (mostly done), and #7 (as these things don't require any API change).
My idea for this issue was to use the code from flate2 to create a crate for gzip headers as suggested here and use that. It should be relatively simple to implement as the gzip bits are after all just metadata and a checksum, and there are already crates for the checksum algorithm (CRC-32). Of course, anyone is welcome to contribute and it's very motivating to see someone interested in this.

Fixed in 8268a6778c102136ed428cf5868039afa3c1daa5

Awesome! Thanks!

You might want to update the README and state that the library is pure-Rust

It sort of says already, but I guess I could make it a bit clearer.


Vncstart command not responding

Whenever I type vncstart command it doesn't start even I kept my phone 6 hours from turning off ,still vnc start commd not responding

Had the same issue. This tutorial fixed everything

Thanks for the help
On Fri, 5 Jul, 2024, 10:14 pm 6Y6EH, @.***> wrote:

Had the same issue. This tutorial
https://github.com/modded-ubuntu/modded-ubuntu/issues/68#issuecomment-1243499117
fixed everything
—
Reply to this email directly, view it on GitHub
https://github.com/modded-ubuntu/modded-ubuntu/issues/157#issuecomment-2211156803,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BAMSYX66VP7WWZQKAJM5XRDZK3ENPAVCNFSM6AAAAABKMQ3WGGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMJRGE2TMOBQGM
.
You are receiving this because you authored the thread.Message ID:
@.***>

Is your problem solved?


Revert "Revert "Split get_terrain_vert_pos() into valid and get_vpos""

Reverts PX4/ecl#305

#303 Is now linked to the required compatibility changes https://github.com/PX4/Firmware/pull/7585


Sync notification doesn't launch Services

Software and hardware versions
ODK Services 2.0 rev 214
Problem description
Sync notification from Services are not clickable. Clicking on the notification doesn't launch Services.
Steps to reproduce the problem

Sync
Wait for Sync to finish
Click on notification

Expected behavior
Clicking on the notification launches Services.
Other information

Fixed by https://github.com/opendatakit/services/pull/57


Extend the @require_deps decorator to work better with parameterized tests

It would be maybe useful to be able to pass the name of the class as a parameter to the decorated function and have access to all the parameterized tests (or maybe just the ones that the test depends on). If we implement this we should have a way to get the variant of the parameterized tests.
Not sure what is the best way to support dependencies on parameterized tests, this is just a suggestion.

Is this for an external test depending on another test that is parameterized? Or is this for inter-parameter dependencies? For the first option, it sounds like passing a regex to require_deps would do the trick. For the second case, I think it would make more sense to extend the parameter directive.

Is this for an external test depending on another test that is parameterized? Or is this for inter-parameter dependencies? For the first option, it sounds like passing a regex to require_deps would do the trick. For the second case, I think it would make more sense to extend the parameter directive.

Is this for an external test depending on another test that is parameterized?

Almost, it is about an external test depending in many parameterized tests, with different parameters. In my case the user would want to do something like this:
steps = range(10)

@rfm.parameterized_test(*[[step] for step in steps])
class ComputeTest(rfm.RunOnlyRegressionTest):
...

testnames = [ f'MPI_ComputeTest_{step}' for step in steps ]

@rfm.simple_test
class AnotherTest(rfm.RunOnlyRegressionTest):
    def __init__(self):
        ...
        for test in testnames:
            self.depends_on(test)

    @rfm.require_deps
    def some_function(self, ComputeTest_0, ComputeTest_1, ...):
         # do something with all the ComputeTest testcases

This now is not very practical. We can use [self.getdep(t) for t in testnames] to get a list of the dependencies and use them in a different implementation of some_function, but maybe we could also extend @rfm.require_deps decorator. One idea it to work with the name of the test without parameters, ComputeTest in this case, and the argument becomes a ilst of Testcases that can be used in the method.

Is this for an external test depending on another test that is parameterized?

Almost, it is about an external test depending in many parameterized tests, with different parameters. In my case the user would want to do something like this:
steps = range(10)

@rfm.parameterized_test(*[[step] for step in steps])
class ComputeTest(rfm.RunOnlyRegressionTest):
...

testnames = [ f'MPI_ComputeTest_{step}' for step in steps ]

@rfm.simple_test
class AnotherTest(rfm.RunOnlyRegressionTest):
    def __init__(self):
        ...
        for test in testnames:
            self.depends_on(test)

    @rfm.require_deps
    def some_function(self, ComputeTest_0, ComputeTest_1, ...):
         # do something with all the ComputeTest testcases

This now is not very practical. We can use [self.getdep(t) for t in testnames] to get a list of the dependencies and use them in a different implementation of some_function, but maybe we could also extend @rfm.require_deps decorator. One idea it to work with the name of the test without parameters, ComputeTest in this case, and the argument becomes a ilst of Testcases that can be used in the method.

Oh I see. I reckon that'd be a lot easier to implement this using the new parametrised tests with the parameter directive instead. With these, you have the full parameter space available as cls.param_space, where doing iter(cls.param_space) will give you the iterator that cycles through all the parameter combinations. From this, I think it should be easier to extend the depends_on method such that it adds all the dependencies on the test variants under the hood. With this approach, if I'm not mistaken (🧐😂), require_deps would just remain as is.
The above python snippet would now look as follows:

@rfm.simple_test
class ComputeTest(rfm.RunOnlyRegressionTest):
    parameter('step', *range(10))
    def __init__(self):
        ...

@rfm.simple_test
class AnotherTest(rfm.RunOnlyRegressionTest):
    def __init__(self):
        ...
        self.depends_on(ComputeTest)

    @rfm.require_deps
    def some_function(self, ComputeTest_0, ComputeTest_1, ...):
         # do something with all the ComputeTest testcases

Though, now that we have two supported methods for doing parametrised tests, I'm not sure what the plan is moving forward when implementing new functionalities.

Oh I see. I reckon that'd be a lot easier to implement this using the new parametrised tests with the parameter directive instead. With these, you have the full parameter space available as cls.param_space, where doing iter(cls.param_space) will give you the iterator that cycles through all the parameter combinations. From this, I think it should be easier to extend the depends_on method such that it adds all the dependencies on the test variants under the hood. With this approach, if I'm not mistaken (🧐😂), require_deps would just remain as is.
The above python snippet would now look as follows:

@rfm.simple_test
class ComputeTest(rfm.RunOnlyRegressionTest):
    parameter('step', *range(10))
    def __init__(self):
        ...

@rfm.simple_test
class AnotherTest(rfm.RunOnlyRegressionTest):
    def __init__(self):
        ...
        self.depends_on(ComputeTest)

    @rfm.require_deps
    def some_function(self, ComputeTest_0, ComputeTest_1, ...):
         # do something with all the ComputeTest testcases

Though, now that we have two supported methods for doing parametrised tests, I'm not sure what the plan is moving forward when implementing new functionalities.

Sorry, I think I didn't explain well enough. What is not practical for me is more the definition of def some_function(self, ComputeTest_0, ComputeTest_1, ...): since you need to write all the testnames that you need. Afaik there is no way to write a loop with all the test names as arguments for some_function. I put only 10 which is doable but it could be many more, in a case that you want to collect all their outputs for example for some post processing. The way ReFrame supports this now is with the getdep method.
    # No need for the decorator
    def some_function(self):
        for t in testnames:
            testcase = self.getdep(t)
            # do something with all the ComputeTest testcases

If we consider this enough then this issue can be closed, but in the readthedocs reference we suggest that the @require_deps decorators should be preferred.

Sorry, I think I didn't explain well enough. What is not practical for me is more the definition of def some_function(self, ComputeTest_0, ComputeTest_1, ...): since you need to write all the testnames that you need. Afaik there is no way to write a loop with all the test names as arguments for some_function. I put only 10 which is doable but it could be many more, in a case that you want to collect all their outputs for example for some post processing. The way ReFrame supports this now is with the getdep method.
    # No need for the decorator
    def some_function(self):
        for t in testnames:
            testcase = self.getdep(t)
            # do something with all the ComputeTest testcases

If we consider this enough then this issue can be closed, but in the readthedocs reference we suggest that the @require_deps decorators should be preferred.

Yep, we should I think.


[Feature Request]: Structured Contact Us page.

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
Currently your contact us form does not have any normal mode or darkmode feature.
Also it is not responsive in small screen not even in large screen. Also add unnecessary horizontal scrollbar. Which is not supposed to be. Also it's not match the color pallet of your website.
Use Case

I redesign whole page along with it's normal mode and dark mode implementation.
Make it responsive for all screen.
Remove the horizontal scroller from this page.

Benefits
No response
Add ScreenShots
As you can seen in this video
https://github.com/user-attachments/assets/dd9976bd-86e2-49bc-9621-07c0b8f0c111
@Soujanya2004 Please assign it to me. It's need modification!
Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

@Suvadip-sana you can work on the responsiveness of the page, @harshbhar0629 will modify the colors


is any plan add json_pretty method ?

json

json.rs

       let json = Request::post(url)
        .header("Content-Type", "application/json")
        .timeout(Duration::from_secs(timeout))
        .body(body)?
        .send()?
        .json::<serde_json::Value>()?;

Serialize the given data structure as a pretty-printed String of JSON.
like this:
       let json = Request::post(url)
        .header("Content-Type", "application/json")
        .timeout(Duration::from_secs(timeout))
        .body(body)?
        .send()?
        .json_pretty:<serde_json::Value>()?;

I'm not sure I understand what is being proposed here. In this example, the json method is de-serializing the response body from the server into the desired type, so a json_pretty here wouldn't make sense since one method can de-serialize both pretty and compact JSON equivalently.
Isahc doesn't provide any convenience methods right now for serializing the request body, but you can probably use to_vec_pretty from serde_json to do that.


[Codelab Issue] Testing Codelab 5.2#, Step 9# - Wrong title on snippet

Describe the problem
Code snippet with heading referring to the wrong file (TasksFragment.kt)
In which lesson and step of the codelab can this issue be found?
Lesson 9 + step 2.6

.
How to reproduce?
What are the exact steps to reproduce the problem?
Versions

What version of Android Studio are you using?

Additional information
Add any other context about the problem here.
codelab: advanced-android-kotlin

#223

@JoseAlcerreca what is this ninja trick? Did you close both issues because one is a duplicate of the other?

No, it's fixed internally but I thought "nobody is going to check between the time I mark them as fixed and the time they're out" but I underestimated you.

@JoseAlcerreca sorry for jumping to a conclusion. Understood. Thank you for the contribution.


10 Marine RPG glasses

Fixed

done in https://github.com/RMC-14/RMC-14/commit/78318f488ce19571a1f810abf694bf6d668e3b91


Added return typehint to phpdoc methods.

We have some problems when doesn't know about return typehint, here I fixed this problem.

thank you


Reconciliate processes masks errors in DDP plugin if _sync_dir isn't initialized

🐛 Bug
If someone has no trainable parameters in their model, and call trainer.test(), Lightning would raise an exception because the DDP module construction would raise an exception around no parameters with requires_grad found.
this error is compounded by the process reconciliation check. when configure_ddp raises an exception, we don't call _share_information_to_prevent_deadlock in the DDP plugin
def pre_dispatch(self):
        # move the model to the correct device
        self.model_to_device()

        if self.sync_batchnorm:
            self.model = self.configure_sync_batchnorm(self.model)

       # raise exception here because on trainable params
        self.configure_ddp()

        # sync_dir initialize here, will be skipped
        self._share_information_to_prevent_deadlock()`

as a result, sync_dir is not initialized.
As part of the exception handling, we call reconciliate_processes: https://github.com/PyTorchLightning/pytorch-lightning/blob/35876bb75f27eb8f44220afd4bfa757a0432d233/pytorch_lightning/trainer/trainer.py#L519
which causes this path creation to fail:
def reconciliate_processes(self, trace: str):
        if self.world_size < 2:
            return

        sync_dir = self._sync_dir

        # The cluster may be configured to periodically purge the `/tmp`
        # directory, in which case `sync_dir` may not exist anymore at this
        # point. Idempotently create it to ensure its existence.
        Path(sync_dir).mkdir(parents=True, exist_ok=True)`

@ananthsub pointed out this in https://github.com/PyTorchLightning/pytorch-lightning/pull/9096
To Reproduce

Expected behavior

Initialize sync_dir before configure_ddp is called
Check sync_dir is not None before create path

Environment

PyTorch Lightning Version (e.g., 1.3.0):
PyTorch Version (e.g., 1.8)
Python version:
OS (e.g., Linux):
CUDA/cuDNN version:
GPU models and configuration:
How you installed PyTorch (conda, pip, source):
If compiling from source, the output of torch.__config__.show():
Any other relevant information:

Additional context

This error emerges as there's a gap between the _sync_dir initialization and when reconciliate_processes is called.

Let's initialize _sync_dir as early as possible to reduce this time when exceptions can be introduced
In the worst case, let's check for None before creating the path in the plugin.

Hey @four4fish,
Good catch !
Best,
T.C


Fix config file syntax in README

The syntax for the SSH_DEFAULT_OPTIONS setting is not correct in the
README file, and causes a runtime error as is.

See Issue #25

Thank you, I just merged the fix!


Branded imagery to be used as bumpers for Janus branded videos

Goals
Branded imagery to be used as bumpers for any of our Janus branded You Tube videos

@serenamarie125
Can you provide examples of "branded bumpers"? Not familiar with that term.

here are some examples of what they do for developers.redhat.com

I think Figma is probably best - then we could edit there and generate a PNG.  wdyt?

sorry for all the screenshots :) this is from YouTube ... alternatively people may choose to edit the actual recording and add


[v2.2] Bluetooth: controller: split: Regression slave latency during connection update

Describe the bug
Slave latency should not be applied between the ack of a
Connection Update Indication PDU and until the instant.
When caching was introduced in split controller, implementation missed this
consideration which caused connection events to be skipped, being in slave latency.
To Reproduce
You will need logic analyser to observe the GPIO toggles of BLE controller radio events.
Steps to reproduce the behavior in peripheral, building:

mkdir build; cd build
cmake -GNinja -DBOARD=nrf52_pca10040 -DCONFIG_BT_CTLR_DEBUG_PINS=y ../samples/bluetooth/peripheral
ninja

Building of central (test shell) for testing:

mkdir build; cd build
cmake -GNinja -DBOARD=nrf52_pca10040 ../tests/bluetooth/shell
ninja

Steps:

bt init
bt scan on
Use the discovered Bluetooth address of the peripheral
bt connect <address>
wait until auto connection update completes
bt conn-update 6 6 9 64
bt conn-update 28 28 0 64

Observe in the logic trace that connection events before the switch to 50 ms interval does not show cancelled slave latency during the time between the connection update procedure intiation to the connection update instant.
Expected behavior
Slave latency should not be applied between the ack of a
Connection Update Indication PDU and until the instant.
Impact
BT Specification violation.
Screenshots or console output
If applicable, add a screenshot (drag-and-drop an image), or console logs
(cut-and-paste text and put a code fence (```) before and after, to help
explain the issue.
None.
Environment (please complete the following information):

OS: (e.g. Linux, MacOS, Windows): Linux
Toolchain (e.g Zephyr SDK, ...): Zephyr SDK
Commit SHA or Version used: 79942b47cc

Additional context
Add any other context about the problem here.
This is fixed in bc357718a7 for the split controller and b7e35ae4a3 for legacy controller.
Backport 2.2 PR: #23965

Fix has been merged, no reason to keep the issue open.


No Error -> images come out Black

I use the provided example workflow tried various combinations of smaller T5 and Flux models with recommended settings but all generated images come out black. anyone else experience this?


Add $GLIZZY Hot-Dog

Hello,
I want to submit to community "$GLIZZY Hot-Dog" collection
777 $glizzy 3d hot-dog on Fractal Bitcoin!

please check your json files. They didn't pass the check. @IBW3B


Error flagged with cdk nag

Currently unable to complete a fresh deployment with the latest release.
Error message:
[Error at /testGenAIChatBotStack/RagEngines/SageMaker/Model/MultiAB24A/Provider/waiter-state-machine/Resource] AwsSolutions-SF1: The Step Function does not log "ALL" events to CloudWatch Logs. Logging "ALL" events to CloudWatch logs help operators troubleshoot and audit systems.
[Error at /testGenAIChatBotStack/RagEngines/SageMaker/Model/MultiAB24A/Provider/waiter-state-machine/Resource] AwsSolutions-SF2: The Step Function does not have X-Ray tracing enabled. X-ray provides an end-to-end view of how an application is performing. This helps operators to discover performance issues, detect permission problems, and track requests made to and from other AWS services.
Looking into a solution for them as I think they were introduced with the new cdk nag changes.

Confirmed release 4.0.2 doesn't have this issue and was introduced with 4.0.3.


How to organize the OV-setting SUN-RGBD datasets?

I've downloaded the file named sunrgbd_v1_revised_0415.tar, is this file enough for testing and evaluation process?

Hi, all the data I released should be downloaded.


Bug report: Find input box not automatically focused

Describe the bug
Not sure if this is a bug or a feature request... when hitting CMD+F / CTRL+F the Find tool opens at the top of the Input/Output but the keyboard input isn't automatically directed to the Find input box. Focus is also lost from the Input/Output box so typing has no effect.
To Reproduce

Enter some text into the Input box
Hit CMD+F / CTRL+F to display the Find tool
Type something
Notice that your input doesn't appear anywhere

Expected behaviour
I expected the Find input box to be focused when the Find tool appears, so users can hit CTRL+F / CMD+F then immediately start typing their query
Desktop (if relevant, please complete the following information):

Browser: Chrome 126 / Firefox 128
CyberChef version: 10.19.0

I want to work on this bug.