Simplify wallet registration UX flow

After #252, we could consider rewording the screens in the wallet registration so that it says "Continue" instead of "Approve", except for the final step, which is actually the user approval that matters.
If possible, it would be even better to completely remove all the intermediate button presses: the user just keeps scrolling right until "Approve"/"Reject" is shown after inspecting the last key.
Once this is done, it's this flow of going right until the final step is feasible for the signing flow as well, although that's probably more complicated in that case.

Mostly done in #270; only partially for devices not using NBGL - but it should come for free once all devices migrate to NBGL.


Database Navigator expand "struct" data type

Is your feature request related to a problem? Please describe.
The lack of this feature makes it harder and more complicated to find correct information.
Describe the solution you'd like
When expanding a table that contains struct-columns it should be possible to further expand these structs to see how the column is designed.
Describe alternatives you've considered
Being able to some how easily describe the column to DDL-like format or similar without it all ending up on a single row.
Additional context

You can open column list in Metadata Editor. Will it cover your needs?

If not, please describe how such types should be displayed?

A struct column is a "complex" column, basically columns or arrays. But they are all declared with data types just as a normal column. So I would expect to be able to "expand" the column and see those nested columns inside it. The view in your screenshot gives no more information than the database navigator.

Thank you for the details. We will implement it.


Discuss about CLI for nestor

This issue is open to discuss the need of a CLI for nestor.
If we agree on the fact that we should have one, there should be a discussion about how it will be architectured, should it request nestor-api or build things locally, etc.

I believe it would be useful to provide a CLI, that internally would wrap the logic to go to the next workflow step, to deploy a branch and so on.
It could be a module inside the current project, in my opinion we would just need a few features to start with:

Deploy a branch in a k8s namespace
Update the config of an application
List the apps running in a namespace
Deploy a single application and its configuration in a given environment

But that would require the user to configure access to the K8s namespace, kind of like we use with our current proxy, and also auth through gcloud.

I will investigate which tools we could use for this and do a POC 👍


Sprockets >=2.1 always checks entire directory?

I just upgraded from Sprockets 2.0 to 2.3. The first thing I noticed is that Sprockets 2.3 is that it now ALWAYS compiles all of my files every single time I hit "Save". I backtracked revisions, and this behavior started happening in 2.1.
In 2.0, it would only compile the single file that changed. Was there a setting introduced to control this behavior?
Thanks

Make sure Environment#cache is set.


Adding kubectl binary in openshift CI test container

What type of PR is this?
/kind enhancement
What does this PR do / why we need it:
To get the argocd admin password we need the kubectl command to execute command $ kubectl get secret argocd-cluster-cluster -n openshift-gitops -ojsonpath='{.data.admin\.password}' | base64 -d. So we need the kubectl binary available in openshift CI test container path.
Have you updated the necessary documentation?

[ ] Documentation update is required by this PR.
[ ] Documentation has been updated.

Which issue(s) this PR fixes:
Fixes #?
N/A
How to test changes / Special notes to the reviewer:
In the CI test container kubectl binary should be downloaded to bin/ directory. For local verification you can execute the script install-kubectl.sh  and check the kubectl binary should be downloaded to bin/ directory

To get the argocd admin password we need the kubectl command to execute command $ kubectl get secret argocd-cluster-cluster -n openshift-gitops -ojsonpath='{.data.admin.password}' | base64 -d. So we need the kubectl binary available in openshift CI test container path.

@varshab1210 Can you please try this scenario in the local feature file. For example
Scenario: Execute KAM bootstrap command with --output and --push-to-git=true flags
        When executing "kam bootstrap --service-repo-url $SERVICE_REPO_URL --gitops-repo-url $GITOPS_REPO_URL --git-host-access-token $GIT_ACCESS_TOKEN --push-to-git=true --output bootstrapresources" succeeds
        Then stderr should be empty
         When executing "oc apply -k bootstrapresources/config/argocd/" succeeds
         Then stderr should be empty
         And login "argocd-cluster-server"

To get the argocd admin password we need the kubectl command to execute command $ kubectl get secret argocd-cluster-cluster -n openshift-gitops -ojsonpath='{.data.admin.password}' | base64 -d. So we need the kubectl binary available in openshift CI test container path.

@varshab1210 Can you please try this scenario in the local feature file. For example
Scenario: Execute KAM bootstrap command with --output and --push-to-git=true flags
        When executing "kam bootstrap --service-repo-url $SERVICE_REPO_URL --gitops-repo-url $GITOPS_REPO_URL --git-host-access-token $GIT_ACCESS_TOKEN --push-to-git=true --output bootstrapresources" succeeds
        Then stderr should be empty
         When executing "oc apply -k bootstrapresources/config/argocd/" succeeds
         Then stderr should be empty
         And login "argocd-cluster-server"

Sure, I will do it in a separate pr. Thanks @amitkrout for scenario step

Thanks @varshab1210 for addressing all review comments.
/approve
/lgtm


Unable to run package in Linux Mint

I installed geoclue-tz on my Linux Mint Cinnamon 21.3,  but after installation I get an error:
$ geoclue-tz
geoclue-tz: command not found

installation log:
$ go install github.com/zquestz/geoclue-tz@latest
go: downloading github.com/zquestz/geoclue-tz v1.0.0
go: downloading github.com/zquestz/go-ucl v0.0.0-20220615095619-8a3686d7543a
go: downloading github.com/spf13/cobra v1.8.1
go: downloading github.com/spf13/pflag v1.0.5

go version:
$ go version
go version go1.23.2 linux/amd64

go env:
$ go env
GO111MODULE=''
GOARCH='amd64'
GOBIN='/home/karpo518/YandexDisk/go/bin'
GOCACHE='/home/karpo518/.cache/go-build'
GOENV='/home/karpo518/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/home/karpo518/YandexDisk/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/karpo518/YandexDisk/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/local/go'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/usr/local/go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.23.2'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/home/karpo518/.config/go/telemetry'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build183472936=/tmp/go-build -gno-record-gcc-switches'

Package path:
/home/karpo518/YandexDisk/go/bin/geoclue-tz

You can get it to run from your installed location by adding your go/bin directory to your $PATH.
export PATH=/home/karpo518/YandexDisk/go/bin/:$PATH

Thanks for your reply. I don't understand what you mean by cd geoclue-tz because no such directory is created when the package is installed. Only file. I solved the initial problem and set up PATH correctly, but I'm still stuck.
$ go env
GO111MODULE=''
GOARCH='amd64'
GOBIN='/home/karpo518/go/bin'
GOCACHE='/home/karpo518/.cache/go-build'
GOENV='/home/karpo518/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/home/karpo518/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/karpo518/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/local/go'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/usr/local/go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.23.2'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/home/karpo518/.config/go/telemetry'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1583440530=/tmp/go-build -gno-record-gcc-switches'
$ go install github.com/zquestz/geoclue-tz@latest
$ geoclue-tz
[Error] Unable to write "/etc/geolocation": root access required
$ sudo geoclue-tz
sudo: geoclue-tz: команда не найдена
$ cd $HOME/go/bin/
$ ls -hl
summary 5,7M
-rwxrwxr-x 1 karpo518 karpo518 5,7M ноя  7 10:11 geoclue-tz
$ go build .
go: go.mod file not found in current directory or any parent directory; see 'go help modules'

I updated README.md with better install directions. Hopefully it helps!

Okay. I can run it by Option 2. But i dont understand, how it fix redshift problem. I came here from the topic =) https://forums.linuxmint.com/viewtopic.php?t=422300

Okay, so there are a few things to check, to make sure things are working correctly!
First run /usr/lib/geoclue-2.0/demos/where-am-i
This should output your coordinates, and makes sure that GeoClue itself is working correctly! If this errors out that means GeoClue isn't running on your machine, and it will need to be started! You can check GeoClue status with sudo systemctl status geoclue. This should show it active and running. If not, you can start it with sudo systemctl start geoclue.
Then, if geoclue is running and working, you want to make sure the geoclue agent is running, this is what RedShift talks to in order to connect to GeoClue! So run ps aux | grep geoclue and you should see /usr/lib/geoclue-2.0/demos/agent running. If not you must make sure that is started! Just start it with  /usr/lib/geoclue-2.0/demos/agent &. This will make sure it is started in the background.
Now, once all those things are going, then RedShift should be able to get your coordinates correctly. Most distros will make sure GeoClue is running with its agent, so technically everything I stated above should already be working!
Now, I personally use redshift-gtk which shows RedShift in my systray. If you click on the RedShift icon, and go to Info it should show something like:

This means RedShift is working as expected!

First run /usr/lib/geoclue-2.0/demos/where-am-i
There are no /usr/lib/geoclue* directories on my system
My redshift: window:

I
The error I get when I change any Redshift setting:

Well it looks like you have a few issues.

RedShift doesn't work on Wayland =(
GeoClue isn't even installed on your machine, so that would need to be installed.

Luckily Linux Mint is integrating a Night Light feature right now. You will just need to be patient. https://blog.linuxmint.com/?p=4762


st_debug

This PR covers three loosely related cleanup issues that will improve code quality and help us debug our work.
#58 - We can now use the st_debug macro function to keep useful debug logging code around, without having to comment/uncomment it all the time. Example:
st_debug(ST_DBG_SEQ_MATCH, "Chaining Offset: %d; Code: %#04X\n", offset, code);

If SEQUENCE_TRANSFORM_DEBUG is set to 0, or the ST_DBG_SEQ_MATCH flag hasn't been set via st_debug_set_flag or st_debug_set_flag_str, this call will do nothing.
If you need to call a function only for debugging (or wrap a block a code), you can use the st_debug_check macro function. Example:
if (st_debug_check(ST_DBG_GENERAL)) {
    st_key_buffer_print(buf);
}

The tester now accepts -d command line options to enable these flags. The -h option has been updated to show the available flags. Example:
./tester -d rule_search

#59 - The SANITY_CHECK define has been removed. The new st_assert macro function is now used instead. This macro should be used whenever we want to make sure our assumptions are correct. Example:
st_assert(code, "Unexpected null code! Offset: %d\n", offset);

When compiling for the firmware, this call does nothing. In the tester, a failing assert will print a message and call abort, which gives us to opportunity to attach a debugger to investigate the issue.
All CDATA and TDATA calls are now using this to guard against OOB indexing.
#60 - ST feature/option defaults are now defined in st_defaults.h (which should be the first file included by our .c files if they need to use any of these defines). WARNING: some have been renamed!
Here are the current default values:
#define SEQUENCE_TRANSFORM_IDLE_TIMEOUT 2500
#define SEQUENCE_TRANSFORM_ENHANCED_BACKSPACE 1
#define SEQUENCE_TRANSFORM_FALLBACK_BUFFER 1
#define SEQUENCE_TRANSFORM_DEBUG 0
#define SEQUENCE_TRANSFORM_LOG_TIME 0
#define SEQUENCE_TRANSFORM_RULE_SEARCH 0
#define SEQUENCE_TRANSFORM_RULE_SEARCH_MAX_SKIP 4
#define SEQUENCE_TRANSFORM_RECORD_RULE_USAGE 0

If a user wants to change one of these, they should set it directly in their layout's config.h.
(The tester Makefile automatically sets the ones it needs to be able to test everything.)

This looks really good.
I ran into only one obvious issue: the code doesn't compile with CONSOLE=no, because the compiler detects unused variables in the debug_rule_match function in trie.c. I'm pretty sure this was a pre-existing issue that I didn't notice until I explicitly tested building with all of the new enable flags. I can't make a comment on the relevant code, because it doesn't show up in the changes here.
I'm running a build off of this PR on my keyboard right now, and it works the same as before, as expected.
I'm good with merging this as soon as the issue with building when CONSOLE=no is addressed. (Locally I fixed it by wrapping the entire body of the function in an #if CONSOLE block, but I don't understand these issues as well as you, so maybe you have a better solution.


Reuse particles to reduce sim time?

The scene I am trying to run takes a long time to run and I want to use the function reuse particles to speed up the simulation. It seems that the reuse particles function will remove all the particles outside the specified box, is there a method for the particle to not be considered in the simulation but still rendered (i.e. treating each particle as a rigid object?)  or maybe there's is a way for older particles to be ignore when solving for nonPressurefore because that seems to take the most time for a given sim step in my scene?

Maybe this could be achieved by using an AnimationField which sets the velocity to zero and keeps a constant position.

Thanks. I am trying to simulate a cylindrical column where the particles stacks in layers on the perimeter of the column. Setting Particles state to AnimationField only seems to work if I do that for the every particles which seems to defeat the point of doing the simulation. I tried to set the state to AnimationField for certain amount of particles (i.e. bottom layer), their positions still change  when the top layers of particles interact with them and I am not able to get the column to stand for long no matter how high the viscosity I set using Weiler2018. I didn't set the surface tension because the result doesn't appear as what we needed.

I think if the AnimationField does not help, this can only be achieved by programming a few lines. First, to prevent the non-pressure methods from computing forces for inactive particles something like this is required in the non-pressure method:
if (fm->getParticleState(i) == ParticleState::Active)
Second, you can use a Python script to mark the inactive particles and reset them to their original position.


Custom Filter Documentation

The doc at https://www.reportskit.co/examples/filter_boolean mentions followiung config for the custom filter:
measure:
  key: post
  name: Published Posts
filters:
- key: is_published
  criteria:
    value: true
dimensions:
- author

Is the criteria required? I don't think so since the custom filter does not take any argument?

In this case, criteria is indeed required, but this may not be the most intuitive design (see Possible Solution below). Currently, when a filter is listed in filters, it only means that it will only be applied if filter criteria is provided (either in the configuration or from a form filter, like a checkbox). If the criteria is blank, then the filter won't be applied, similar to how form filters usually work.
Part of the motivation for this is to allow users to whitelist filters that can be used by form filters. For example, if the following YAML is used, then it means that a checkbox can be used to optionally enable the is_published filter:
measure:
  key: post
  name: Published Posts
filters:
- key: is_published
dimensions:
- author

If we changed this behavior, such that above YAML meant that is_published is always enabled, then the is_published checkbox wouldn't do anything.
Possible Solution
I think the confusion here is due to is_published being defined as a boolean filter, even though it's more of a scope without arguments (it's not really a boolean filter, as it doesn't support true/false values). One solution might be to define a new type of filter called a scope:
class Post < ApplicationRecord
  include ReportsKit::Model
  reports_kit do
    filter :is_published, :scope, conditions: ->(relation) { relation.where(status: 'published') }
  end
end

This would have the following behavior:

Scopes cannot be used as interactive form filters (e.g. checkboxes)
Scopes are enabled whenever they are listed in the report configuration
Scopes do not support criteria (we could support this in the future, but most use cases don't require it)

In my own use of ReportsKit, I've noticed a lot of this kind of odd use of boolean filters when a scope would be more appropriate, so this seems like a common problem, and the above solution would work well for my use cases, at least.
This would also open the door for us to more concisely use existing ActiveRecord scopes (perhaps without configuring a ReportsKit scope), but we may want to defer that until after we have this more general problem solved.
Thoughts?

Thanks for the explanation. I'm not sure I understand I fully understand all the possible use cases as I am just tinkering with reports_kit currently. Here are my two cents anyway, in no particular order:
Support for scopes (besides through context object) would be cool, IMHO. Scopes should be able to take parameters through the config. When scopes take multiple parameters it might be a bit tricky to build a form for them.
I find the configuration of filters to be somewhat overloaded and there are multiple allowed variants.
It looks like this is valid as well?:
filters:
- is_published

About the filters and forms: I think this does impose a security issue if a user can disable filters by modifying the request that is being sent to the server? If so, then this behavior should be disabled by default!
I don't mind verbosity when it adds clarity. So how about a config format that is explicit (i.e. a key to enable filters for forms)


Example are out of date?

Hello 👋
Thanks for your work, I'm interested in this crate, but I found the examples to be out of date?
Also, I think this doesn't give the realtime sound volume, how could I get this information?

Hey,
I've personally made it just to control the volume of applications. I think the getVolume function actually gets the volume of the program but it isn't actual volume that being outputted since that's not what i made this for.

Thanks for your answer about the actual outputted volume!
For the examples, do you have the same problem I encountered?

No i don't have any problems with the example. I think the issue you're describing is something different from what this lib does... it is basically a api for interacting with the windows volume mixer via rust it does nothing with any sound.


Create Hamiltonian_path.java

🛠 Issue (Number)
Issue No. #339
👨💻 Changes proposed
This is the code for Hamiltonian Path in java which was assigned to me.
✔ Check List (Check all the applicable boxes)

[✔ ] My code follows the code style of this project.
[✔ ] This PR does not contain plagiarized content.
[✔ ] The title of my pull request is a short description of the requested changes.

📄 Note to reviewers
Hamiltonian Path is a path in an undirected graph that visits every vertex exactly once.
SAMPLE OUTPUT:-

📷 Screenshots

@iianuragii Nice code Add a screenshot of the code output

I have added it in the Issue section of "Note to Reviewers".

Add comments to explain your algorithm and time complexity

Comments are already added

Hiiii Sir,
My code is approved by four of the reviewers to whom you have given the responsibility to check. Can you please merge my request if there is not any further problems to overwrite.
Thank You.


Add navbar & footer blood page

issue #105 done
i made only necessary changes & made navbar & footer of blood page.
the preview is attached in issue section
Hence, merge my PR

@varshith2517 @Anishkagupta04
look into this!


installing trezor bridge has negative results

If you install their bridge binary on linux(firmware update reasons!) I get this for enumerate:
[{"path": "bridge:lib01", "type": "trezor", "error": "Could not open client or get fingerprint information: trezord: acquire/lib01/null failed with code 400: wrong previous session"}, {"path": "webusb:001:1", "type": "trezor", "error": "Could not open client or get fingerprint information: LIBUSB_ERROR_BUSY [-6]"}]

This was resolved by removing the bridge in the stripped down library.


Update init.py to include a default SERVER_NAME and SERVER_PORT

Fix for #13

Hey, @frob. Sorry I haven't been paying enough attention to this repo. Merging this now. Thanks!


Add dism, dvmp to discovery service and tree view

Quite a few lines added, but this is just a direct copy-paste of code already in the discovery service.
New endpoints added. Tree view now shows the complete view of MTC CRs,
DVMP
/namespaces/openshift-migration/directvolumemigrationprogresses
/namespaces/openshift-migration/directvolumemigrationprogress/my-dvmp-name (currently 404ing)

DISM
/namespaces/openshift-migration/directimagestreammigrations
/namespaces/openshift-migration/directimagestreammigration/my-dism-name (currently 404ing)

Tree view with DVMP and DISM
AUTH_OPTIONAL=1 ROLE=discovery make run-fast
curl localhost:8080/namespaces/openshift-migration/plans/plan-rocket-chat/tree | jq

    {
      "kind": "Migration",
      "namespace": "openshift-migration",
      "name": "dc1b8da0-931d-11eb-a725-0f1f65d7ed65",
      "children": [
        {
          "kind": "DirectVolumeMigration",
          "namespace": "openshift-migration",
          "name": "dc1b8da0-931d-11eb-a725-0f1f65d7ed65-q4q8q",
          "children": [
            {
              "kind": "DirectVolumeMigrationProgress",
              "namespace": "openshift-migration",
              "name": "49e187c6e58b404f60caf687d18cb2bf",
              "objectLink": "/namespaces/openshift-migration/directvolumemigrationprogresses/49e187c6e58b404f60caf687d18cb2bf"
            }
          ],
          "objectLink": "/namespaces/openshift-migration/directvolumemigrations/dc1b8da0-931d-11eb-a725-0f1f65d7ed65-q4q8q"
        },
        {
          "kind": "DirectImageMigration",
          "namespace": "openshift-migration",
          "name": "dc1b8da0-931d-11eb-a725-0f1f65d7ed65-7xz42",
          "objectLink": "/namespaces/openshift-migration/directimagemigrations/dc1b8da0-931d-11eb-a725-0f1f65d7ed65-7xz42"
        }
      ],
      "objectLink": "/namespaces/openshift-migration/migrations/dc1b8da0-931d-11eb-a725-0f1f65d7ed65"
    }

https://user-images.githubusercontent.com/7576968/113610010-9222c380-961a-11eb-9d28-e619acc45d14.mov


The list doesn't show what type of transaction the transaction is

SOlution from #20

Solved by #20


Can't yarn install the repository

error An unexpected error occurred: "https://registry.yarnpkg.com/@aws-cdk%2Faws-dynamodb: self signed certificate in certificate chain".
info If you think this is a bug, please open a bug report with the information provided in "/Users/haithai/workspace/tools/aws-development-with-localstack/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

try to run this command yarn config set "strict-ssl" false and execute yarn install


Added Coconut compilation

The only thing I would discuss is maybe using a more recent version of python? 3.10 is already out. I tested with 3.9 it seems to work fine. Is there a reason to use 3.8? I'm not sure what's the best practice is with coconut.

Since we target for 3.8+, it will work for 3.9 and 3.10 no problem.
The best practice would be to have universal code. However, since I sometimes use Python 3.8 syntax, compilation for (at least) 3.8 is needed.
If we get to it, we can bump the target version to 3.9 or 3.10.
We probably also need to have the --strict option, but I think some don't compile with this flag, so this should be a separate PR.


✨ Implement read-only and write-only fields

Fixes #27

Hi @paul1999 thanks a lot for your contribution.
I finally have the time to look into this and review your changes.

Thanks, I merged it and released it with 0.5.6.


URL for 'Postmark’s features' broken

The link in the README for 'Postmark’s features' (https://postmarkapp.com/why-postmark) is broken.

Thank you for bringing this up! We’d removed that page a while ago and didn’t have a good replacement until recently. Now I could finally fix this.


Add browserslist data file(s)

Our front-end projects use tools like autoprefixer and Babel to modify CSS/JS to make it compatible with older browsers that we support. These tools rely on data from the browserslist project along with a user-configurable list of supported browsers to determine which prefixes/polyfills/etc to use.
Having a centralized list of supported browsers in the browserslist format would reduce duplication across projects, allow us to more easily update the supported browsers list, and serve as a nice reference.
We can follow the guide for shareable browserslist config in the README to do this.
We should consider having at least two different config files: one for public-facing sites and one for internal sites. Public-facing sites will have a much broader support matrix than internal sites.

@kmuncie could you weigh in (and/or open a PR) on these shareable browserlist files?

Just a note that we may not be able to fully follow the guide for shareable browserslist config files that I linked to in the comment above because it would require publishing a package with the browserslist-config- prefix, and I think we'd prefer just to keep the files in this repo with our other standardized config. I don't see a reason we couldn't either symlink to it or require it in like we do with our other config files.

Addressed in #35


Simulator builds fail for both iOS and Android after flutter upgrade - Error: The non-abstract class 'ChipsInputState' is missing implementations for these members: - TextInputClient.currentAutofillScope

Hello, I am on the master channel, and I just ran flutter upgrade today and everything broke. I tried downgrading but that did not work. I am using vscode. Here are my tool versions:
Flutter 1.18.0-6.0.pre.106 • channel master • https://github.com/flutter/flutter.git
Framework • revision 84c84fb249 (15 hours ago) • 2020-04-20 21:35:01 -0400
Engine • revision 2bde4f0ae4
Tools • Dart 2.9.0 (build 2.9.0-1.0.dev a12c36dd97)

code build done.                                           19.7s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **
Xcode's output:
↳
    Compiler message:
    ../../../.pub-cache/hosted/pub.dartlang.org/flutter_chips_input-1.8.0/lib/src/chips_input.dart:64:7: Error: The non-abstract class 'ChipsInputState' is missing implementations for these members:
     - TextInputClient.currentAutofillScope
    Try to either
     - provide an implementation,
     - inherit an implementation from a superclass or mixin,
     - mark the class as abstract, or
     - provide a 'noSuchMethod' implementation.

Hi @ochmist
Please consider to create issue in the flutter_chips_input repository
Closing, as this may be an issue with the 3rd party plugin,
if you disagree please write in the comments and I will reopen it
Thank you

I am facing the same problem.
I executed flutter upgrade today and I only have flutter_form_builder as a dependency in pubspec.yaml.
@ochmist, please let me know if you solved the issue.

I am also experiencing this after running flutter upgrade today

I downgraded to flutter version 1.17.0 temporarily and am able to at least build my project, but it would be great if this issue can be addressed asap as it is a build-blocker

I was facing the same problem.
I executed flutter upgrade today and I only have flutter_form_builder as a dependency in pubspec.yaml. I was at flutter's master channel.
@ochmist, you can switch to another flutter channel from the terminal: flutter channel stable. This might solve the issue temporarily for you.

Agreed. That is how I resolved it as well. I will reopen the bug under flutter_form_builder (it is also the only dependency that may use Chips Input in my project).

Hi @ochmist
Please consider to create issue in the flutter_chips_input repository
Closing, as this may be an issue with the 3rd party plugin,
if you disagree please write in the comments and I will reopen it
Thank you

Sorry for the noise. I will file it under the appropriate project.

The new issue can be tracked here.

As a solution, if you want to keep working on dev of master channels, add this to your pubspec dependencies:
flutter_chips_input: 1.9.0-dev.1
I know is a bit weird to add another dependency to your project, but it works for now :D


Updated DPD Signature

💡 Summary
What is the work, as a high-level summary?
This provides a DPD signature for Bacnet.  I've been running this on several live networks for many months and have been happy with the results.  It has uncovered several Bacnet networks I did not know about on non standard ports, which is pretty common for this protocol.
Motivation and context
Why does this work belong in this project?
This would be useful because...
It would detect Bacnet networks on non standard ports, which is pretty common in networks I monitor.  Non standard ports are often used to separate networks logically on the same IP address.
Implementation notes
The DPD signature I've been testing for many months:
signature bacnet_dpd {
  ip-proto == udp
  src-port == 1024-65535
  dst-port == 1024-65535
  payload /\x81\x0a..\x01/
  enable "bacnet"
}

Acceptance criteria
How do we know when this work is done?

[ ] Criterion

You will be able to see Bacnet networks on non standard ports.

We merged your DPD signature into the main branch with one additional change. We have added 0x0b to the payload check to capture both "Original_Unicast_NPDU" and "Original_Broadcast_NPDU" functions


APT whitelist request for clang-4.0

Hi @BanzaiMan is there any update on this or the associated PR https://github.com/travis-ci/apt-package-whitelist/pull/3297 ?

Any progress with this?

@rianquinn you might be more interested in https://github.com/travis-ci/apt-package-whitelist/issues/4033 although it's not got any further.

clang-5.0 is now in via #4033, so if I were you I'd use that unless you explicitly need clang-4.0

@peternewman We do need clang-4.0 specifically. It appears that the packages are added to the whitelist, but the source whitelist is missing the llvm-toolchain-precise-4.0. There is a llvm-toolchain-trusty-4.0.
Looking at LLVM's site, the repo does exist, so someone just as to add it to the source whitelist.
http://apt.llvm.org/

I think you want this one then @rianquinn https://github.com/travis-ci/apt-source-whitelist/issues/360 .
I'd suggest liking it or bumping to try and get some action.


rancher-compose.yml mem_limit

https://github.com/rancher/rancher/issues/3554

@joshwget
Can we use the newer version of libcompose in vendor instead? I thought we suppose to keep sync with it.
@carolynhu
Don't add changes then remove it. In this case, one commit should be enough. You can amend your original PR.
Ideally, one commit should get one thing done. It should be clear, meaningful, easy to understand, incremental (means works by itself), and don't break build or functionality.

Copying the yaml package was intended. I'm trying to move away from the dependency on libcompose.

@joshwget I see.
@carolynhu
Since we decide to move one package under our control, we need to do it in an understandable way:

The first commit: copy the files. Only move, no modification or anything. So when others read about it, they know functionality doesn't change.
The second commit: update our source code to point to the new package. If necessary, update vendor.conf, remove the old dependency code in vendor directory.
Any additional change in the additional commits.

You can split the second commit into two commits as well. The point is, the reader of commits log should know what's happened exactly without second guessing. Each commit gets one and only one thing done. Everything in one commit is logically coherent, easy to understand, and hard to separate into another commit.

Why permission of file changed back and forth?


Sprache only works with strings!

Why not trying to generalize it to handle streams of T? In my case, I have language that is a stream of tokens (XamlInstruction). I cannot create a parser with Sprache because it only allows me to create parsers whose base input is a string.
What about turning string inputs into IEnumerable. I've tried to do it myself, but it seems you're working with the concept of "lines" that is to coupled with other concepts like carriage returns, that aren't applicable in the generalization I'm proposing.

If I recall correctly, you can create a parser from anything. You just can't use most of the predefined methods that are available, and must recreate most of them yourself.
If you'd like to try another similar parser builder there's one available in the repo louthy/language-ext. When I checked it it was more generic, but had less features than Sprache.
Michelangelo P.

On 16 Jun 2016, at 23:15, José Manuel Nieto<EMAIL_ADDRESS>wrote:
Why not trying to generalize it to handle streams of T? In my case, I have language that is a stream of tokens (XamlInstruction). I cannot create a parser with Sprache because it only allows me to create parsers whose base input is a string.
What about turning string inputs into IEnumerable. I've tried to do it myself, but it seems you're working with the concept of "lines" that is to coupled with other concepts like carriage returns, that aren't applicable in the generalization I'm proposing.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

There are a few limitations pretty much baked into Sprache - string-only input is one, and character-by-character parsing (no tokenization) is the other. Eventually after coming to grips with how the library works, both limitations become apparent, but imposing them makes it much easier to go from zero-to-parser without a lot of background knowledge.
I'd love to have a fully token-based/generic implementation otherwise similar to Sprache, but I think it's a separate project. Sprache is great for quick and easy text processing and should probably stay that way, but having a companion project that is token-based and generic would be a natural step forwards and let people (like we!) who've built large parsers on Sprache to migrate without too much pain... Thoughts?

I agree! @nblumhardt. A new Project would be the way to go. Unfortunately, I don't feel like I'm the one to start it from scratch :(

:-) Neither am I, to be honest .. I did create an early, very simple version of this, I will see if I can dig it out...

Closing this one as it's not able to be actioned right now, but I'd love to hear from anyone who gives this a shot :-)

@SuperJMN started: https://github.com/datalust/superpower
I'm realizing in the process what a nice sweet spot Sprache occupies. I'm getting better error messages (and handling some corner cases more elegantly) in my large test parser, but for quite a lot more effort. Worth it when the messages need to be displayed to end-users, but definitely more of a companion to Sprache parser than a "vnext" of it.
Having fun with it, but it's early days and not everything works particularly well just yet.... :-)


k_pipe_get() does not respect min_xfer

Describe the bug
The following code hangs indefinitely at k_pipe_get(), but it should not, according to the documentation:
unsigned char buf[64];
struct k_pipe;
size_t bytes_written = 0;
size_t bytes_read = 0;
char rxbuf[32] = {};

k_pipe_init(&p, buf, sizeof(buf));

k_pipe_put(&p, "Hi!", 3, &bytes_written, 3 /* min_xfer */, K_FOREVER);
// wrote 3 bytes
printf("Wrote Hi!\n");

k_pipe_get(&p, rxbuf, sizeof(rxbuf), &bytes_read, 1 /* min_xfer */, K_FOREVER);
// bytes_read should equal 3
// k_pipe_get() should return immediately since min_xfer is 1
// but hangs indefinitely
printf("Read '%s'\n", rxbuf);

To Reproduce
Steps to reproduce the behavior:

mkdir build; cd build
cmake -DBOARD=qemu_cortex_m3
make
See error

Expected behavior
As per the documentation

Data can be synchronously received from a pipe by a thread. If the specified minimum number of bytes can not be immediately satisfied, then the operation will either fail immediately or attempt to receive as many bytes as possible and then pend in the hope that the receive can be completed later. Accepted data is either copied from the pipe’s ring buffer or directly from the waiting sender(s).

Since "the specified minimum number of bytes can be immediately satisfied", the call to k_pipe_get() should return immediately.
Impact
This is a showstopper for me if I would like to continue using the k_pipe API.
Screenshots or console output
Environment (please complete the following information):

OS: Linux
Toolchain: cross-compile
Commit SHA or Version used: 2833d016aa0b747c5c6fdd363dea4a9ebda941eb

Additional context
I can make a PR. Have a patch for it already. I wonder though if k_pipe_put() has the same problem. Will investigate.

Yep. k_pipe_write() has the same problem. Will include a fix for that as well.

While I agree the documentation could be interpreted the way you do, and that it might be useful if it worked that way, it seems the implementation respects "immediately satisfied" and "fail immediately" only in the case of K_NO_WAIT.
If your interpretation is to be supported I don't think your proposed solution in #24486 will work because at the point you discover that the minimum transfer hasn't been satisfied immediately some bytes may have been transferred, and they can't be clawed back, so failure will cause lost data.
I suspect a proper solution would be to modify pipe_xfer_prepare(), which checks for how much is available immediately but also has comments that are inconsistent with your desired interpretation.  Additional  modifications in the other functions will be required to complete early without pending when min_xfer is satisfied.
But first it has to be confirmed that this is a bug, rather than misleading documentation.

I guess technically, if K_NO_WAIT is specified, then the documentation is consistent.
However, I see no way to perform blocking I/O without entirely pre-determined data lengths. To be completely transparent, it is #24426 that is blocked.

I interpreted the API documentation to mean that if I called k_pipe_get() with min_xfer = 1 and timeout = K_FOREVER, then I would be able to mimic the same behaviour as read(2), and perform an actual blocking call that would return as soon as min_xfer was received or an error occurred.
Technically speaking, if an error occurs and some bytes have been read, the the number of bytes read is still available in bytes_read, so they don't need to necessarily be "clawed back".

@andyross could you take a look?

  But I think I agree with @cfriedt that it can only reasonably be interpreted as having higher precedence than the timeout.  That is, what we want is:
"Here is some data (or a buffer to receive data), please transfer at least this many bytes of it, if necessary waiting this long to do it before returning"
But what we've implemented is:
"Here is some data (or buffer), please transfer all of it, if necessary waiting this long before returning, but as a special case it's OK to return early if you can synchronously move this smaller amount instead".
Yeah, we're wrong, even if you can squint and make us legal per our vague docs.  The PR looks good, I'll put comments there.

Thanks for having a look @andyross @carlescufi


Get Docker file into GitHub

Put Docker file into malariagen/jupyterhub/docker/notebook/Dockerfile

Here is the way we usually install conda. This uses a list of packages to install via conda and another list to install via pip.
Also would be good to install the minimum Ubuntu packages necessary to enable downloading a notebook as a PDF.

Btw I think downloading a notebook as PDF requires xetex. I think you can get this via the texlive-xetex package, although this may incur substantial size on the image, let me know if it looks too big and maybe we can drop this.

Both notebook and hub docker files are now in github
malariagen/jupyterhub/dockerfiles
The images have been pushed to dockerhub
https://hub.docker.com/u/malariagen/

Thanks @slejdops, that's great.
I suggest that any further changes to these docker files we make via a pull request, with at least one review. E.g., if you want to make a change, submit a PR and request a review from me and @idwright. Similarly if I want to propose a change, I submit a PR and ask you to review. Going via PRs is good because it helps to share the knowledge and create a nice record of changes being made.


ESP32 Alternative Format and Gerber Workflows

@bjhiltbrand @Kaldek I've uploaded my "wide" version of the ratgdo board. It avoids the potential conflicts with the USB while leaving room open to add additional terminals if that's ever necessary or wanted.
But wait, there's more!
I'm also proposing we generate the Gerber files using Github Actions. I have a POC included in this PR that will generate artifacts for each of the boards (including JLC files). I have yet to include any release publishing code, but I think the end goal would be to version the boards and allow people to download the Gerber files directly from the releases page, rather than having to manually update them and sort through them in future PRs.
Totally open to any feedback on this. If there are updates or changes or you just hate it, let me know. If you like it and want to move forward, I'd like to remove the existing Gerber files and cleanup the repo a bit before we merge this in.
Consider this the start of a discussion. Thanks!

I would absolutely agree with this! versioning these KiCAD files and making it easy for people to get their own boards built is a great way to get this out to the masses. I am by no means an expert in KiCAD and only know enough to be dangerous. I only started putting the KiCAD files out here because I was already sort of familiar with it and would be using it to build my boards, so I figured why not have them here to collaborate with the group better. Using github actions takes the human error out of the equation in building repeatable results for release on whatever cadence you choose - especially when it comes to creating the CPL files, where I have zero experience (as I have never submitted a board for full fabrication with pick & place before).


Docs: Add S-K-Y-Light / Sky's Details to AboutUs Page

For Week 7 Tasks: Add S-K-Y-Light / Sky's Details to AboutUs Page

LGTM


[MINOR][BUILD] Update all checkstyle dtd to use "https://checkstyle.org"

What changes were proposed in this pull request?
Below build failed with Java checkstyle test, but instead of violation it shows FileNotFound on dtd file.
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/102751/
Looks like the link of dtd file is dead http://www.puppycrawl.com/dtds/configuration_1_3.dtd.
This patch updates the dtd link to "https://checkstyle.org/dtds/" given checkstyle repository also updated the URL path.
https://github.com/checkstyle/checkstyle/issues/5601
How was this patch tested?
Checked the new links.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Test build #102752 has started for PR 23887 at commit a22f4f6.

ok to test

cc @HyukjinKwon @srowen

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8275/
Test PASSed.

Test build #102753 has started for PR 23887 at commit a22f4f6.

LGTM, pending Jenkins

Test build #102752 has finished for PR 23887 at commit a22f4f6.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/102752/
Test PASSed.

Test build #102753 has finished for PR 23887 at commit a22f4f6.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/102753/
Test PASSed.

Merging to master / 2.4 / 2.3.

Thanks all for reviewing and merging!


Add build test to workflow

Issue  📐

#79 Add build test to workflow

Guidelines 🔐
I accept the fact that i have followed the guidelines and have not copied the codes from around the internet

[x] Contribution Guidelines
[x] Code of Conduct

Issue to be closed 🛅

**My pull request closes #79 **

Screenshots 📷
Here are the pictures of changes that i have made 🔽

Why are the builds failing? Can you explain?


blog post to introduce dashflow

resolved by https://medium.com/@benb88/dashflow-automate-local-development-tasks-51c50a4f11bd


Add Gradle Check script in OpenSearch

Is your feature request related to a problem? Please describe.
Create gradle check script in OpenSearch repo. This script will be used after jenkins will go public. For now add it to the OpenSearch to make it visible.

[x] Create a jenkinsfile to run gradle check.
[x] Test gradle check with CentOS and AL2 docker images present here.
[x] Create a new ubuntu docker image for gradle check.
[x] Publish it to dockerhub.
[ ]  Run the workflow within the docker container.
[ ] Run gradle check on CI jenkins to test.

Describe the solution you'd like
Create a new ubuntu docker image for gradle check with all the required JDKs.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

Image is available on dockerhub: docker pull opensearchstaging/ci-runner:ci-runner-ubuntu1804-build-v1


Isar3: Can't use generated code in a dynamic query

Steps to Reproduce
I want to build dynamic queries and use the great generated code for filtering.
Imagine my repo gets a nullable value called myValue.
If the value is given, I want to filter on it. If not, I want to ignore it.
(in reality, there are several values)
Code sample
I try to do the following:
var query = _isar.items.filter();
if (myValue != null) {
  query.myValueEqualTo(myValue);
}

final result = await query.findAll();

The problem is that the type that is returned from filter() can't be used for findAll().
The method 'findAll' isn't defined for the type 'QueryBuilder'.
What works, but is very ugly:
var query = _isar.items.where();

if (myValue != null) {
  // ignore: invalid_use_of_protected_member
  query = QueryBuilder.apply(query, (query) {
    return query.addFilterCondition(
      FilterCondition.equalTo(
        property: r'myValue',
        value: myValue,
      ),
    );
  });
}
final result = await query.findAll();

Details

Flutter version: 3.1.3
Isar version: 3.1.0

[ x ] I searched for similar issues already
[ x ] I filled the details section with the exact device model and version
[ x ] I am able to provide a reproducible example

I think the ideal way to do this would be to use an optional filter
Conditional:
final result = await _isar.items
  .filter()
  .optional(
    myValue != null,
    (q) => q.myValueEqualTo(myValue!),
  ).findAll();

Link to docs

Thats exactly what I was looking for, thanks!


Fix stats given by stats.toJSON using options.context

Adding context to stats.toJSON in done webpack plugin to get module paths to be relative to webpack config context.

Yes, i have already made this change. i'm waiting for your feedback on the
filter function
On Tuesday, December 22, 2015, François Bonnefont<EMAIL_ADDRESS>wrote:

Adding context to stats.toJSON in done webpack plugin to get module paths
to be relative to webpack config context.
You can view, comment on, or merge this pull request online at:
https://github.com/halt-hammerzeit/webpack-isomorphic-tools/pull/41
Commit Summary

Fix stats given by stats.toJSON using options.context

File Changes

M source/plugin/plugin.js
https://github.com/halt-hammerzeit/webpack-isomorphic-tools/pull/41/files#diff-0
(4)

Patch Links:

https://github.com/halt-hammerzeit/webpack-isomorphic-tools/pull/41.patch
https://github.com/halt-hammerzeit/webpack-isomorphic-tools/pull/41.diff
—
Reply to this email directly or view it on GitHub
https://github.com/halt-hammerzeit/webpack-isomorphic-tools/pull/41.

Ah, thanks :). Confirming that it works great: https://github.com/halt-hammerzeit/webpack-isomorphic-tools/issues/40#issuecomment-166439126

Ok, I've released the patched version with your Pull Request code included
https://github.com/halt-hammerzeit/webpack-isomorphic-tools/commit/70744b27a6cde71bfdb1aff78cd9e6716bc04b90

Thanks!

FYI
I'm posting this in every issue and PR to notify whoever may be interested:
today I've released an alternative helper library called universal-webpack.
It takes a different approach than webpack-ismorphic-tools and instead of hacking Node.js require() calls it just compiles all code with target: 'node' webpack configuration option.
As a result, all Webpack plugins and features are supported.
If you think you might need that here's an example project:
https://github.com/halt-hammerzeit/webpack-react-redux-isomorphic-render-example


Self-Service ssh key adds _ if the ssh key has a comment

Describe the bug
Adding an ssh key via self-service ssh-rsa SSHKEY<EMAIL_ADDRESS>Will end up as ssh key<EMAIL_ADDRESS>in the API rendering further access with the key impossible.
Expected behavior
I see two ways of solving that.
One would be the way most of the GIT providers do it and basically give only one field to add a key - the stripping of comment and key-type is done behind the scenes afterwards.
This would be easier for the UX as customers might not be aware that they need to only paste the key portion of their key.
Alternatively we could try to be clever on the self-service and strip the comment away

https://github.com/amazeeio/lagoon/pull/1745


Azure DevEx Architecture Board: Review of IC3 ACS Calling

New SDK Review meeting has been requested.
Service Name: IC3 ACS Calling
Review Created By: Jorge Garcia Hirota
Review Date: 2/2/2023 2:05 PM PT
Hero Scenarios Link: here
Architecture Diagram Link: Not Provided
Core Concepts Doc Link: Not Provided
APIView Links: Android, iOS, .NET,
Description: User Facing Diagnostics
When working with calls in Azure Communication Services, problems may arise that cause issues for your customers. To help with this scenario, we have a feature called 'User Facing Diagnostics' that you can use to examine various properties of a call to determine what the issue might be.
Detailed meeting information and documents provided can be accessed here

Meeting updated by Ronnie Geraghty
Service Name: IC3 ACS Calling
Review Created By: Jorge Garcia Hirota
Review Date: 2/6/2023 2:05 PM PT
Hero Scenarios Link: here
Architecture Diagram Link: Not Provided
Core Concepts Doc Link: Not Provided
APIView Links: Android, iOS, .NET,
Description: User Facing Diagnostics
When working with calls in Azure Communication Services, problems may arise that cause issues for your customers. To help with this scenario, we have a feature called 'User Facing Diagnostics' that you can use to examine various properties of a call to determine what the issue might be.
Detailed meeting information and documents provided can be accessed here

Hi @ronniegeraghty . Yes the JS version was reviewed a few months ago; this is the GH issue:
https://github.com/Azure/azure-sdk/issues/3014

Recording (MS INTERNAL ONLY)


Is dit Engels of Nederlands?

https://github.com/Ronabundy1/your-tribe-profile-card/blob/ac37ca288eacdc3f952eca82ace9502d49bdeedc/index.html#L2

Fixed!


Test the just-built runtime when building the runtime unittests on Darwin

@swift-ci Please test

Does this also require changing SwiftRuntimeLongTests install name as well?

Does this also require changing SwiftRuntimeLongTests install name as well?

I've changed the patch to instead unconditionally rpath-ize all libraries of all unittests.
@mikeash Could you take another look?

@swift-ci Please test

Build failed
Swift Test OS X Platform
Git Sha - b0aa9ac6675171fb3dac55289d072e3943d333ae

@swift-ci Please test

Build failed
Swift Test OS X Platform
Git Sha - beb39b370c5a80f01c4af6c6a7419428e7b54938

Everything passing but the Python linter, so switching to a smoke test.

@swift-ci Please smoke test


Add a new validated barcode field, and rename the existing one

This change renames the existing "Barcode or serial number" field as "Other product identifiers", in recognition of the reality that this field currently contains a mixture of barcodes, serial numbers, model numbers, ASINs, eBay item numbers, and other unidentified codes.
It also adds a new "Barcode number" field which accepts a single barcode number (of type UPC, EAN or GTIN). This number is validated to make sure that it is of the right format (usually 12 or 13 digits) and has a valid check digit.  If valid, it is stored in a standardised 13 digit format (12 digit barcodes are padded with a leading 0).
Multiple barcodes for a single product are not currently supported, as this requires further work to understand how best to support product variants.
The barcodes are not checked for uniqueness, as we do not yet allow a single product to be associated with multiple cases.
A separate rake task moves any existing valid barcodes within the "Barcode or serial number" field to the new barcode field.
Trello card: https://trello.com/c/R1dgyUc3/764-3-add-barcode-field
Before

After

Validation message

@slorek as I understand it, GTIN refers to the whole system, and the numbers can be 8, 12, 13 or 14 digits long! 😱   Perhaps we should call the attribute gtin13 to be super explicit though?
I did consider standardising on the full 14 digits, but it seems that the only use case for the 14 digit version is to be able to also encompass various types of containers of products (eg crates or shipping containers), which I don't think we need to support – and 13 digits is what you'd normally see on packaging, so that seems less confusing?
Have learnt a lot about barcodes these past 2 days!

@slorek as I understand it, GTIN refers to the whole system, and the numbers can be 8, 12, 13 or 14 digits long! 😱 Perhaps we should call the attribute gtin13 to be super explicit though?
I did consider standardising on the full 14 digits, but it seems that the only use case for the 14 digit version is to be able to also encompass various types of containers of products (eg crates or shipping containers), which I don't think we need to support – and 13 digits is what you'd normally see on packaging, so that seems less confusing?
Have learnt a lot about barcodes these past 2 days!

gtin13 would be better I think. If you Google gtin the first summaries result says "The GTIN is a globally unique 14-digit number" so this is where the confusion could arise.

It would be worth adding this feature to the change log.


How the cdn configs can be deployed

Update README to give a hint as to how the configs can be deployed.

Merge when ready.


What is the new or updated feature that you are suggesting?
Hey, I found that when building a form with an array of text inputs (where the user can add new inputs as needed), I needed to filter out any empty inputs from the array.
I ended up creating a new function, but this might be nice to include in zfd:
const zodArrayOfStringsWithoutBlanks: InputType<ZodArray<any>> = (
  schema = z.array(zfd.text())
) => {
  return z.preprocess((val) => {
    if (Array.isArray(val)) return val.filter(v => !!v);
    if (!val) return [];
    return [val];
  }, schema) as any;
};

Why should this feature be included?
So we can support multi text input form arrays easily.

I think doing it this way is going to mess with validation errors. If you do something like this for example:
// validation
items: zodArrayOfStringsWithoutBlanks(z.array(z.string().max(5)))

// example field values
'hi'
''
'bye'
'asdfadsfasdfasdfasdf'

Then the error returned by zod would end up on index 2 instead of index 3, because the preprocess is removing one item from the array.
A better approach (IMO) is to do the filtering in a transform rather than a preprocess.
items: zfd.repeatable(
  z.array(
    z.string().max(5)
  ).transform(arr => arr.filter(val => !!val))
)

For that reason, I think I'll pass on adding this into ZFD, but certainly feel free to continue using it if it works with your use case. :)


Prerelease channel updates across releases

I'm hoping to start using nuts and I ran into a small problem.  I want nuts to manage updates for two private prerelease channels (alpha and beta) in addition to public stable production channel.  I want the alpha and beta clients to always get the latest available prerelease on their channel, even if it is for a different stable release.  In other words, if an alpha client is currently at version 1.1.1-alpha.2 and 1.1.2-alpha.1 is available I want nuts to respond to the client's request to /updates/osx/1.1.1-alpha.2 with information about 1.1.2-alpha.1, and not just the latest stable release, 1.1.2.
I understand that the existing behavior is driven by the semver module that nuts uses.  And the semver authors explicitly state that they do not support the functionality that I'm looking for.  The semver-extra module offers more flexibility for working with prereleases, and it seems to have been created largely out of frustration with semver's limitations in this area.
Is there an easy way to solve this problem with nuts?  (Maybe there's something I'm missing.)   Or, if not, would you be open to a PR with changes to support this kind of prerelease update?

I agree, this is something that we also wanted for our desktop application.
I think it should be available as an option of the update endpoint, a type  query parameter that can be alpha or beta or stable (default value).
Basically, if we have these versions: 1.0.0-alpha.1, 1.0.0-beta.1, 1.0.1, 2.0.0-alpha.1:

Current version
Prerelease parameter
Proposed version

1.0.0-alpha.1
nothing or beta
1.0.0-beta.1

1.0.0-alpha.1
alpha
2.0.0-alpha.1

1.0.1
alpha
2.0.0-alpha.1

1.0.1
beta
nothing

1.0.1
nothing (aka stable)
nothing

You'll need to store in your application a settings value for the type parameter, if the user installed an alpha or beta version, you store the type.
I'm open for a PR about this, if you can't make one, I'll try to find time to proposed one (probably not before 2016).

That sounds great!  Glad to hear this has been on your radar.
Hopefully I'll have time to work on a PR before too long.

I'm guessing that this can be closed now?

Actually I'd still like to see this


Correct App Service Plan Windows vs Linux

Contains copy and paste error.  Windows section copied from Linux, states creation of Linux, but should say Windows.

@ruandersMSFT : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

@juliakm for review. Thanks!

Thank you @ruandersMSFT!
#sign-off


SAK-46617 Tests & Quizzes: Exceptions have restrictions not present for non-excepted students

https://sakaiproject.atlassian.net/browse/SAK-46617
I've deleted the validation for the due date being greater or equal to the current date and all properties refered to this restriction.

Please rebase it @ropemar

I'd like to hear from @bjones86 on this

I'm in favour of removing this outright prevention. However, I think it would be better to provide a warning in this scenario, just to avoid any unintentional mistakes.

Changed the PR to convert this validation to a warning instead of a mandatory requisite. In order to make this possible, I had to implement a separate visualization of warnings and error messages, since the settings form only showed error message boxes.

Thanks, @ropemar. Can you add a screenshot of this new functionality to the JIRA ticket?

Yes, of course. You have it right now on the JIRA.

Thanks, @ropemar! I'd just like to wait for @fostersdesign to review the message language.

The wording looks okay to me.
The Teaching & Learning group and the Sakai UX group were just talking last week about this convention of warning people of dates in the past and having them click the button again to proceed in Assignments. We felt it was a clunky way to confirm a warning and so we proposed some changes on SAK-46356. That shouldn't block this work from getting in. In the future, the replacement for this convention should probably be standardized across tools though.


Create rule DDF00038: The parameterMap attribute of SyntaxTemplateDictionary must be in the correct format.

Create rule defined for #149

The rule is created with regular expressions. For the ID value I have now allowed any non-whitespace character with no restrictions to length.
The test positive test data includes ids with special characters.
The negative test data includes different cases of missingness:

not aligning to format at all
no klass defined
no attribute defined
" characters not masked by /
no " and / at all

The test data ran as expected, but I am having trouble matching up the parameterMap values to the examples given in the USDM IG https://wiki.cdisc.org/display/USDMIGv3/Syntax+Templates

@DianeWold : please check against the power point I send you (second slide). I will update the IG this week accordingly.

From the power point, slide 3, it appears that the text of a reference

starts with "<usdm:tag
ends with ></usdtm:ref>"
includes a piece that specifies the class, i.e., klass="class name"
includes a piece that specifies the class id, i.e., id="id value"
includes a piece that specifies the class attribute, i.e., attribute="attribute name"

The USDM IG appears to allow an alternative where a reference can be to a fixed value.  Has that been eliminated? Or does the rule need to allow for that alternative?

@BSnoeijerCD Is this review on hold until we have determined whether fixed values need to be accommodated?

@ASL-rmarshall : I have updated the IG according to the new presentation on Friday. Based on that the code needs to be updated. Both to include fixed values and to include the whole string.

The rule worked but was not completely accurate. For v3.0 it should be updated and/or XML checked should be used. To be discussed with team.

Saving POC rule definition before overwriting for DDF4:
Authorities:
  - Organization: 'CDISC'
    Standards:
      - Name: USDM
        References:
          - Citations:
              - Cited Guidance: 'USDM'
                Document: 'USDM v2.6'
            Origin: USDM Conformance Rules
            Release Notes: ''
            Rule Identifier:
              Id: 'DDF00038'
              Version: '1'
            Validator Rule Message: ''
            Version: '1.0'
        Version: '3.0'
Check:
  all:
    - any:
        - name: parameterMap
          operator: matches_regex
          value: <usdm:ref.*
        - name: parameterMap
          operator: matches_regex
          value: .*ref>
    - all:
        - name: parameterMap
          operator: not_matches_regex
          value: <usdm:ref klass=\\"[a-zA-Z]+\\" id=\\"\S+\\"
            attribute=\\"[a-zA-Z]+\\"></usdm:ref>
Core:
  Status: Draft
  Version: '1'
Description: 'The parameterMap attribute of SyntaxTemplateDictionary must be in
  the correct format.'
Executability: Fully Executable
Outcome:
  Message: 'The paramterMap attribute of SyntaxTemplateDictionary is not in the
    correct format: "<usdm:ref klass=\"...\" id=\"...\"
    attribute=\"....\"></usdm:ref>".'
  Output Variables:
    - id
    - name
    - parameterMap
Rule Type: Record Data
Scope:
  Entities:
    Include:
      - SyntaxTemplateDictionary
Sensitivity: Record


Add Speaker Decks/Resources

For every MeetUp, we should add links to speaker decks or any other resources that the speakers want to share, if available.
Adding links below the speaker's topic in the 'Event' column of the schedule table would be one place to add the links IMO.

@tusharnankani can you please add links to speaker decks/resource sites for MeetUp no. 2?

@tusharnankani any updates on this?

Darshan Rander: https://1drv.ms/p/s!Ai1OliGaJWO-4AUoNI29WYkqev8O?e=04LUD0
Tushar Nankani: https://docs.google.com/presentation/d/1-a0FCI-z8pTrmHRq363KG9bxhkuf4zDDr_suuTQe2gg/edit?usp=sharing

fixed in #7
Sorry I forgot to make PR😅


Upgrade Wagtail from version 4.1 to version 4.2.4

This PR upgrades the website from Wagtail 4.1 to Wagtail 4.2.4
Release notes:

https://docs.wagtail.org/en/stable/releases/4.2.html
https://docs.wagtail.org/en/stable/releases/4.2.1.html
https://docs.wagtail.org/en/stable/releases/4.2.2.html
https://docs.wagtail.org/en/stable/releases/4.2.3.html
https://docs.wagtail.org/en/stable/releases/4.2.4.html

How to test this PR
TBD
Screenshots
TBD
Notes and todos
TBD
Checklist

[ ] PR has an informative and human-readable title

PR titles are used to generate the change log in releases; good ones make that easier to scan.
Consider prefixing, e.g., "Mega Menu: fix layout bug", or "Docs: Update Docker installation instructions".

[ ] Changes are limited to a single goal (no scope creep)
[ ] Code follows the standards laid out in the CFPB development guidelines
[ ] Future todos are captured in comments and/or tickets
[ ] Project documentation has been updated, potentially one or more of:

This repo’s docs (edit the files in the /docs folder) – for basic, close-to-the-code docs on working with this repo
CFGOV/platform wiki on GHE – for internal CFPB developer guidance
CFPB/hubcap wiki on GHE – for internal CFPB design and content guidance

Front-end testing

Browser testing
Visually tested in the following supported browsers:

[ ] Firefox
[ ] Chrome
[ ] Safari
[ ] Edge 18 (the last Edge prior to it switching to Chromium)
[ ] Internet Explorer 11 and 8 (via emulation in 11's dev tools)
[ ] Safari on iOS
[ ] Chrome on Android

Accessibility

[ ] Keyboard friendly (navigable with tab, space, enter, arrow keys, etc.)
[ ] Screen reader friendly
[ ] Does not introduce new errors or warnings in WAVE

Other

[ ] Is useable without CSS
[ ] Is useable without JS
[ ] Does not introduce new lint warnings
[ ] Flexible from small to large screens

This'll fix the snyk failure currently happening on PRs because of Pillow


Mistake in function arm_split_rfft_q31(in file arm_rfft_q31.c) ?

Codes in line 278 and line 288 are inconsistent with there comments.
Comment: pBTable  Code: CoefA2
Would you please tell me the whether it's a mistake with the code or the comment.

@JoleenSun It is a documentation issue

OK  thanks for reply. With all due respect, it seems like an algorithm issue more for only real part of coefB has been related in the current calculation which both the image and real part of the coefB are related in arm_split_rfft_q15.
Maybe I don't  understand the lgorithm well enough for the above words. Looking forward to your reply.
Thanks.

It is confusing but I think the code is right.
In Q31 version you have multSub_32x32_keep32_R (outR, *pIn2, CoefA2) and it is a sub
But Q15 version is using outR = (outR + (*(pSrc2 + 1) * *(pCoefB + 1))) >> 16; and it is a add
But now if you look at the definition on the tables, you see that:
pATable[2 * i + 1] = 0.5 * (-1.0 * cos (2 * PI / (double) (2 * n) * (double) i));
and
pBTable[2 * i + 1] = 0.5 * ( 1.0 * cos (2 * PI / (double) (2 * n) * (double) i));
They are opposite values.
Q31 code looks correct : it has replaced an add with a sub and at same time used a value of the B table instead of the A table.
Note that it only works for odd values of the table.
pBTable[2*i] is not opposite to pATable[2*i]

Wow,  I rederived  the codes related according to your explain. The codes are really  no problem. Thank you so much.


feat!: changed to esm, updated dependencies, code cleanup

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@0c1a455). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             master       #11   +/-   ##
==========================================
  Coverage          ?   100.00%
==========================================
  Files             ?         2
  Lines             ?        33
  Branches          ?         0
==========================================
  Hits              ?        33
  Misses            ?         0
  Partials          ?         0

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

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


Update the troubleshooting section

What does this PR do?

Update the troubleshooting section.
Motivation

We introduced the automatic exposition format detection in this PR which cause some check to fail because the endpoint now return an openmetrics content type with a payload that does not always strictly follows the specifications. They are several options there:

Fix the problem upstream to return a valid payload, if that's the reason of this error.
Contact us if our scraper is incorrect

One quick workaround that has been confirmed a few times on our side is to override the Accept header we send to go back to the previous implementation in most of the cases.
Additional Notes

I would like to add a note saying that if the problem is upstream, they should also reach out to them to fix the issue but I'm not really sure how to say that. I hope our amazing Documentation team will be able to help there. Thank you 🙇
Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] PR title must be written as a CHANGELOG entry (see why)
[ ] Files changes must correspond to the primary purpose of the PR as described in the title (small unrelated changes should have their own PR)
[ ] PR must have changelog/ and integration/ labels attached
[ ] If the PR doesn't need to be tested during QA, please add a qa/skip-qa label.

I can help you with creating wording for the additional note, but I need more information. When you say the problem may be upstream, what do you mean? I understand that some system is returning an invalid payload, but I'm confused about which system that is.

Exactly, in some cases the system we are monitoring with the openmetrics integration does not return a valid payload that corresponds to the Content-type header they send. In this case the "system" can be anything because the openmetrics integration is a generic integration that can monitor anything that is exposing an openmetrics endpoint.
The idea is to explain that what I describe in this section is a workaround to go back to the previous behaviour with the "old" scraper but this should not be considered as a long term solution. The problem should be investigated and fixed either in our version of the scraper (if we have a bug in our integration) or upstream. By upstream I mean that customers should reach out to the devs of the service they are monitoring with this integration to fix the issue on their side.

I can help you with creating wording for the additional note, but I need more information. When you say the problem may be upstream, what do you mean? I understand that some system is returning an invalid payload, but I'm confused about which system that is.

Exactly, in some cases the system we are monitoring with the openmetrics integration does not return a valid payload that corresponds to the Content-type header they send. In this case the "system" can be anything because the openmetrics integration is a generic integration that can monitor anything that is exposing an openmetrics endpoint.
The idea is to explain that what I describe in this section is a workaround to go back to the previous behaviour with the "old" scraper but this should not be considered as a long term solution. The problem should be investigated and fixed either in our version of the scraper (if we have a bug in our integration) or upstream. By upstream I mean that customers should reach out to the devs of the service they are monitoring with this integration to fix the issue on their side.

Got it. "The service we are monitoring with the openmetrics integration" is the answer I am looking for.

Here is my suggested wording for the note you would like to add. You can add it to the bottom of the new section.

The OpenMetrics integration reports an error parsing the payload when the system you are monitoring sends data that does not match their Content-type header. Setting the integration to accept text/plain content creates a workaround to address the problem in the short term.
To fix the root cause of the problem, reach out to the maintainers of the upstream system. Submit a bug report and ask them to fix the system so the payload and the Content-type set in the header match.


Manually set the size of a shape [ feature request ]

As per: https://github.com/zsviczian/obsidian-excalidraw-plugin/issues/367
I would like to be able to set the size of a shape in the text box, at the moment it seems like i can only change the size by dragging the handles. For example if i create a box, i'd like to set the PX size manually.
It would be nice to be able to edit the shape stats in the "stats for nerds" pane by clicking on them.
In the original issue - it was mentioned that this can be done using the script engine which is a great workaround!

closing in favor of https://github.com/excalidraw/excalidraw/issues/5932


Apex Icon

Hey,
thank you for your reply to my last Issue. The Icons are incredible!
Another Icon I'm currently missing is the Apex-Icon
Website: https://apex.chinapex.com/
CMC: https://coinmarketcap.com/currencies/apex/
Would love to see what your spin on their icon will be!
Thanks in advance

Added 😀

Thank you for your support. If you’d like to tip me for my time in maintaining and updating this project, it would be very much appreciated.

Thank you very much! Looks really good!
Would you mind changing the filename to the ticker/symbol (CPX) like you did with the other ones?
Much appreciated!


Connection close is causing premature exception: connection closed during response

Describe the bug
When Downstream service is sending the response header "connection" : "close", it is resulting in the below error. While the netflix zuul or non reactive spring boot applications - does not result in this. Need help in fixing this.
{"status":500, "error":"Internal Server Error","message":"Connection prematurely closed DURING response","exception":"reactor.netty.http.client.PrematureCloseException","trace":"reactor.netty.http.client.PrematureCloseException: Connection prematurely closed DURING response\r\n\tSuppressed: The stacktrace has been enhanced by Reactor, refer to additional information below: \r\nError has been observed at the following site(s):\r\n\t*__checkpoint â¢ org.springframework.web.filter.reactive.ServerHttpObservationFilter [DefaultWebFilterChain]\r\n\t*__checkpoint â
Sample

can someone check this ticket?

I also have the above issue.

not resolved. am waiting for an answer. thankfully - this is happening only under load and only for "GET" calls. the retry filter from spring cloud gateway does not work - since the downstream app is responding with 200 and our service is able to read it. May be some bad jackson conversion, which is causing this issue while reading the response.
For now, I have added custom retry logic in the filter which exists last and check the response is 500 and the error msg is premature close exception and the request is GET - we are trying it.
We will need a permanent fix for this.

thanks for your response. we are still looking for a solution.

Any update on this?

any update?

Please describe your versions, dependencies, configuration and how to reproduce the problem.
It would be worth taking the time to provide a complete, minimal, verifiable sample (something that we can unzip attached to this issue or git clone, build, and deploy) that reproduces the problem.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.

@she43 Did you found any solution as i am also facing the exact same issue.


fix event attendee section layout in browser

In browsers, the attendee list is squished to the bottom of the screen.

The event details and map belong to the same row, and the rsvp list to the next row. It looks like the first row with the map by default expands to fit the view width. Since it also expands vertically in proportion to its width, it takes up a lot of vertical space on wide screens. The second row with the RSVP list then takes up the remainder of the vertical space, which in a web browser is very little. This is the same browser, but adjusted dimensions that demonstrate this:

I'm happy to look for a solution to this. It seems like ideally when the screen is at a certain proportion, the RSVP list would take up the empty space just below the event details, to the left of the map.

@rsailor this would probably be a great first issue! I imagine you'd need to add a ConstrainedBox widget somewhere in the tree on the event details screen.


ReferenceError : "window is not defined"

i want to use 'echart.js' but when i render the page, ReferenceError : "window is not defined" , how to fixed it? and i console.log(process.BROWSER_BUILD) and it's undefind

Since 1.0.0-rc3 process.BROWSER_BUILD has been removed in flavour of process.browser

This happens with NUXT "SSR" option enabled, probably you are using a plugin or something that SSR (Server side rendering) cant resolve, there are two ways to solve this:
1- In you template use  for remove SSR template parts.
2- In your JS scripts inside .vue file, use if(process.browser){//your code here} to bypass SSR.
This is to bypass the SSR, if you need your functions keeping the SSR, just search for another plugin...


Doc: improve github/launch-ansible-job README

What do you want to improve?
github/launch-ansible-job
What is the current documentation?
N/A
What is the new documentation?
Add a basic README that includes the following information:

Description of the GPT
How to use the GPT with a description on each field input
How to test the GPT

replaced by https://github.com/janus-idp/software-templates/issues/193


Routes imported from compat package instead of react-router-dom

The readme mentions that the upgrade-switch-to-routes transform will import Router from react-router-dom.
But running the below command added all Routes import from the compat package.
npx<EMAIL_ADDRESS>src --transform=upgrade-switch-to-routes

Current behavior
- import { Switch, Route } from 'react-router-dom';
+ import { Route } from 'react-router-dom';
+ import { Routes } from 'react-router-dom-5-to-6-compat';

Expected behavior
- import { Switch, Route } from 'react-router-dom';
+ import { Routes, Route } from 'react-router-dom';

Routes do not support absolute paths in react-router-dom v6, so the codemod replaces it with compatible one. You should replace it to origin Routes before you replace all paths as relative paths.

Thanks! I'll check it out. Looks like the behaviour of the codemod is intended so closing this issue.

Thanks! I'll check it out. Looks like the behaviour of the codemod is intended so closing this issue.


Add double quotes for escaping cookie values with '=' inside

Example:
foo=0b946b55e588c4d.bar=(baz) will have it's cookie stored as foo=0b946b55e588c4d.bar, but instead if it's quoted with foo="0b946b55e588c4d.bar=(baz)" then this will split and remove the double quoted value and set it appropriately.

Added code to not fail on cookie values that contain = or are quoted in master. Let me know if that solves your issue.

Yeah, that works. Thanks!


Extract functionality of internal SQL execution

Codecov Report

Merging #5028 into master will decrease coverage by -0.06%.
The diff coverage is 100%.

@@             Coverage Diff              @@
##             master    #5028      +/-   ##
============================================
- Coverage     82.34%   82.29%   -0.06%
+ Complexity    10667    10664       -3
============================================
  Files          1291     1291
  Lines         44477    44484       +7
  Branches       5650     5650
============================================
- Hits          36624    36607      -17
- Misses         5195     5221      +26
+ Partials       2658     2656       -2

Impacted Files
Coverage Δ
Complexity Δ

.../crate/executor/transport/AlterTableOperation.java
86.95% <100%> (-0.17%)
32 <0> (ø)

.../main/java/io/crate/planner/TableStatsService.java
89.36% <100%> (-0.64%)
10 <0> (ø)

...c/main/java/io/crate/action/sql/SQLOperations.java
81.02% <100%> (+2.62%)
4 <1> (+1)
:white_check_mark:

.../main/java/io/crate/planner/PositionalOrderBy.java
41.02% <0%> (-41.03%)
9% <0%> (-4%)

...arch/indices/recovery/BlobStartPrefixResponse.java
66.66% <0%> (-33.34%)
3% <0%> (-2%)

...rc/main/java/io/crate/analyze/UnboundAnalyzer.java
90% <0%> (-10%)
2% <0%> (ø)

.../java/io/crate/analyze/symbol/ParameterSymbol.java
87.5% <0%> (-6.25%)
6% <0%> (-1%)

...ate/operation/projectors/SortingTopNProjector.java
95% <0%> (-5%)
14% <0%> (-1%)

.../java/io/crate/blob/TransportDeleteBlobAction.java
75% <0%> (-5%)
5% <0%> (-1%)

...rc/main/java/io/crate/blob/BlobTransferTarget.java
84.1% <0%> (-2.65%)
25% <0%> (ø)

... and 26 more

Continue to review full report at Codecov.

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


fix: open genart instead of image in new tab

Thank you for your contribution to the Koda - Generative Art Marketplace.
👇 __ Let's make a quick check before the contribution.
PR Type

[x] Bugfix

Context

[x] Open genart instead of static image in new tab on gallery item page. because some of genart have shortcuts. related: https://github.com/kodadot/nft-gallery/issues/9355

Did your issue had any of the "$" label on it?

[x] My DOT address: Payout

Screenshot 📸

[x] My fix has changed something on UI; a screenshot is best to understand changes for others.

https://deploy-preview-10087--koda-canary.netlify.app/ahp/gallery/115-2404121984

before
after

if you do it quick it still possible to open the static image, might want to disable the button if it's not ready

updated

works-for-me!

if you do it quick it still possible to open the static image, might want to disable the button if it's not ready

good one!


Insert "name" of reference when using a {{tag:id}} in a description.

See first bullet of https://github.com/pi-base/data/pull/863#issuecomment-2466465146

Please experiment first and see what makes the most sense with a variety of examples before blindly merging this.

This is an issue, not a PR, so I'm not sure what you're worried about merging. Would you like to review a future pull request that closes this issue?

Sorry, I was confused, thinking it was a PR.  I'll delete my comment above.
And unfortunately, I am not qualified to review anything no the web side.


elementwise hessian and jacobian

Hi, in my current work I need to evaluate the Jacobian and Hessian of the same function at many points. To avoid calling the function for many many times I'm using the following code,
def elementwise_hessian2(f, x):
    return np.stack([elementwise_grad(lambda xx: np.transpose(elementwise_grad(f)(xx))[j])(x) for j in range(np.shape(x)[1])], axis=1)

def elementwise_hessian(f):
    return (lambda xx: elementwise_hessian2(f, xx))

def elementwise_jacobian2(f, x):
    return np.stack([elementwise_grad(lambda xx: f(xx)[:, j])(x) for j in range(f(x).shape[-1])], axis=1)

def elementwise_jacobian(f):
    return (lambda xx: elementwise_jacobian2(f, xx))

which are analogies to elementwise_grad. Shall we add these into autograd?

I have the same problem. I'm trying to evaluate the jacobian of a function on many points efficiently.
I found using timeit that using a for loop is very slow, so I'm using the following trick:
from autograd import numpy as np, jacobian

def f(x):
    return x ** 2

J = jacobian(f)

many_x = np.array([[0, 0, 0], [1, 1, 1]]).astype(np.float64)
res = J(many_x)
index = np.arange(len(many_x))
res = res[index, :, index, :]

Is there a smarter way?


Improve sequencer/scheduler timing + ordering

Right now, there doesn't seem to be much effort put into matching the timing and order of script execution with Scratch. This may be the cause of a large number of compatibility issues.
We should go through the thread-scheduling logic here and compare it with Scratch's (or my refactoring of it) and try to make them match. We can likely reuse many scratch-vm execution tests.

Closing this; will create another issue with more detail

-> #212!


setting up the first user in docker-compose file

I just implemented my private registry in my automation server stack, I'm trying to create first user automatically without using UI because I'm already building CI/CD system and it doesn't make sense to set it using UI !
Is there any way to create first user and first registry within the initialisation using docker-compose file?
I'm using the latest portus version 2.4.3

Sorry if this is not the right place for such question

the following should work.
docker-compose exec portus bundle exec rake portus:create_user[username email password admin]

the following should work.
docker-compose exec portus bundle exec rake portus:create_user[username email password admin]

hi @salzig , I am currently working on that issue, and I have a short question, beforeI give full feddback here :
Did you mean executing that inside the portus , or the portus background container ?
I have executed that inside the portus contianers, and apparently bunble not present in the container, so I guess you build your own portus:development image, while I used opensuse/portus:2.5 container distributions. Am I right ?

Hi @shqear93 I have a solution here that I just sucessfully tested today, with portus version 2.4.3,  and here you go :
# The name of the portus container, but you could also use 'docker-compose exec'
export PORTUS_CONTAINER_NAME=${PORTUS_CONTAINER_NAME:-'portuscontainer'}
export FIRST_SUPER_ADMIN_USERNAME=superjbl
export FIRST_SUPER_ADMIN_PASSWORD=pokusportus
export<EMAIL_ADDRESS>export FIRST_SUPER_ADMIN_ROLE=admin

echo "Current working directory is [$(pwd)]. Creating Portus' first super admin [$FIRST_SUPER_ADMIN_USERNAME]... "
# docker-compose config && docker-compose exec portus bundle exec rake portus:create_user[$FIRST_SUPER_ADMIN_USERNAME $FIRST_SUPER_ADMIN_EMAIL $FIRST_SUPER_ADMIN_PASSWORD $FIRST_SUPER_ADMIN_ROLE]
# docker-compose config && docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && bundle exec rake portus:create_user[$FIRST_SUPER_ADMIN_USERNAME $FIRST_SUPER_ADMIN_EMAIL $FIRST_SUPER_ADMIN_PASSWORD $FIRST_SUPER_ADMIN_ROLE]"

docker-compose config || exit 1

docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && gem i bundler -v 1.17.3"
docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && ./bin/bundle install"
docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && ./bin/bundle update --bundler"

# installation de rake
docker-compose config && docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && gem i rake -v 12.3.2"

# Et creation du FIRST SUPER USER

docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && export RAILS_ENV=production && ./bin/bundle exec rake portus:create_user [$FIRST_SUPER_ADMIN_USERNAME $FIRST_SUPER_ADMIN_EMAIL $FIRST_SUPER_ADMIN_PASSWORD $FIRST_SUPER_ADMIN_ROLE]"

Will test 2.5 soon, if u have results before me on 2.5, and share, i'll read them with interest.
Honestly, I think distributed containers are either a little bit trashy, or they are automated flows used by the project team, not documented for the public audience yet.

@shqear93 Waiting for your feedback to close the issue with @mssola validation I think

Important Addendum for automation
I above explained how to silently (non-interactively) create users with admin role in portus. Never the less, what @shqear93 wasasking for,is how to create the first super admin user, non interactively.
Two important things :

to create users, you'll have (or you'll get an error) to first (silently) configure the OCI registry in portus, and that can be done using this :

export PORTUS_CONTAINER_NAME=${PORTUS_CONTAINER_NAME:-'portuscontainer'}
export REGISTRY_PORTUS_NAME=gracefulregistry
export REGISTRY_PORTUS_HOST=oci-registry.pegasusio.io:5000
export REGISTRY_PORTUS_USE_SSL=true
export REGISTRY_PORTUS_EXTERNAL_NAME=oci-registry.pegasusio.io

echo "Current working directory is [$(pwd)]. Configuring Portus' OCI image registry [$REGISTRY_PORTUS_HOST]... "
# docker-compose config && docker-compose exec portus bundle exec rake portus:create_user[$FIRST_SUPER_ADMIN_USERNAME $FIRST_SUPER_ADMIN_EMAIL $FIRST_SUPER_ADMIN_PASSWORD $FIRST_SUPER_ADMIN_ROLE]
# docker-compose config && docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && bundle exec rake portus:create_user[$FIRST_SUPER_ADMIN_USERNAME $FIRST_SUPER_ADMIN_EMAIL $FIRST_SUPER_ADMIN_PASSWORD $FIRST_SUPER_ADMIN_ROLE]"

docker-compose config || exit 1

docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && gem i bundler -v 1.17.3"
docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && ./bin/bundle install"
docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && ./bin/bundle update --bundler"

# installation de rake
docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && gem i annotate"
docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && gem i rake -v 12.3.2"

# Et configuration du registry docker dans portus

#
# Extremely important down there :
# NO SPACES BETWEEN RAKE ARGS, AND COMMA SEPARATED ARGS
#
docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && export RAILS_ENV=production && ./bin/bundle exec rake portus:create_registry['$REGISTRY_PORTUS_NAME','$REGISTRY_PORTUS_HOST','true','$REGISTRY_PORTUS_EXTERNAL_NAME']"

Second thing is that once created, with admin role, the portus user still isn't a super-admin : it doesn't have permissions to manage users and users' permissions. To do that, you have to execute the following, additionnaly to the above given script for creating a user :

# Enfin, on définit le nouveau user, comme super-admin.
#
docker exec $PORTUS_CONTAINER_NAME bash -c "cd /srv/Portus && export RAILS_ENV=production && ./bin/bundle exec rake portus:make_admin[$FIRST_SUPER_ADMIN_USERNAME]"

@shqear93 Now I think we can close this issue, can't we?
@mssola I'll read very carefully any remarks from you, do you think there are other aspects I missed here ?

@Jean-Baptiste-Lasselle Sorry for late, thank you very much, plz close the issue.

Last Most Important update
@shqear93 Hi again, I think we are going to keep this issue closed, but I have something that slowly builded up my mind, and I have to share with you, as it has great importance about production management  :

all in all, I investigated this issue, "as is".
Along my investigation,I understood that what @mssola suggested, involvedusing development tools.
And the first thing I noticed, is that someof those tools are not present, and I have to install themlive inside the portus container, in order to be able to perform live ops.
But something kept bugging me here : we are in production, we should not need to install any tool, to be able to operate on production.
So alright,n I today found what is, I have no doubt, the definitive way to do what you were trying to do :

using Portus API, we can create the first super admin user, and do everything we did with rake, connecting live into a container (which is not scalable).
and of course, this is the way it should be done :  In today's Cloud world, we operate systems through a REST API they expose.
Portus has a REST API, we should be able to use it to automate non-interactively all standards ops on Portus.

Ok, so my recomandation is to NOT use the rake-based solution, but instead use the Portus API, starting with :

# -- bootstrap (no one has opened the web ui and auto-registered as first super admin)
# - The [/bootstrap] Endpoints, POST, to crate users, and PUT to modify permissions
# http://port.us.org/docs/API.html#spec-method-post-api-v1-users-bootstrap

# => With this one,you retrieve in hte response the token you are going to use to
#     authenticate to the Portus REST API in all the next Portus API calls below

# -- Registry configuration in the portus instance
# - The [/users] Endpoints, POST, to crate users, and PUT to modify permissions
# http://port.us.org/docs/API.html#spec-method-post-api-v1-registries

# -- And even the teams, namespaces, repositories, tags,everything
# Teams : http://port.us.org/docs/API.html#spec-teams

# - The [/users] Endpoints, POST, to crate users, and PUT to modify permissions
# http://port.us.org/docs/API.html#spec-method-put-api-v1-registries-{id}

@Jean-Baptiste-Lasselle
Thank you for you support, it was really helpful.
about your last updates, I suggest to make it a part of the entrypoint!
example: provide options like USER_CREATE as environment variable to create a list of users with their passwords simply by passing this option to the docker container, inspired by DroneCI option DRONE_USER_CREATE :
https://docs.drone.io/server/reference/drone-user-create/
what do you think?

@Jean-Baptiste-Lasselle
Thank you for you support, it was really helpful.
about your last updates, I suggest to make it a part of the entrypoint!
example: provide options like USER_CREATE as environment variable to create a list of users with their passwords simply by passing this option to the docker container, inspired by DroneCI option DRONE_USER_CREATE :
https://docs.drone.io/server/reference/drone-user-create/
what do you think?

I updated several times yesterday, and now "it's stable" : at the time I write this sentence, I have tested everything, and the whole Portus REST API-based automation  works with portus 2.4.3 (latest stable release of portus).
So, to answer your question, if i had to use drone.io, my approach would be the following :

look up above the string And this one guy , $PORTUS_API_BOOT_TOKEN , it's your most critical portus secret
You are now in a script I wrote and tested, which shows you how to get a first Portus API token (and create first super admin user, with any value you choose for username password, email, is admin, etc...)
In this script with the And this one guy , $PORTUS_API_BOOT_TOKEN , it's your most critical portus secretcomment, Iexplain that immediately after you get that token, you should secure it in a Secret manager,like HashiCorp Vaultor ansible secret manager
So, is there a Drone.io secret manager ?
I also bet it is possible to configure drone.io to use an hashicorp vault instance as global or project-level secret manager  :  so then al you have to know, to use your secret in your pipelines, is how to use drone.io secrets (injection).
and every where outside drone.io, you will need to access that secret, you should use what Hashicorp Vault calls credential helpers, see for example the HashiCorp Vault Docker Credential helper . In other words, I will soon release a HashiCorp Vault Portus Credential helper, which will demonstrate that.

@shqear93
drone.io and secret managers   :

https://docs.drone.io/secret/external/vault/ : i'm almost sure this one talks about hashicorp vault, as an external service, that can be integrated with drone

https://docs.drone.io/runner/extensions/vault/ : I did not quite understand this one yet, I also found https://github.com/drone/drone-vault


How many caches can exist on a single pipeline?

We have a pipelines with lots of jobs. I've added a nuget cache task to all of these jobs. The cache key for these jobs are different, since every job requires different nuget packages. Are caches stores per job? How many different caches can a pipeline have? The docs don't mention anything about this

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

ID: 77c20289-dab2-7a6e-4f63-4b30eaff2c71
Version Independent ID: d75cc196-90c1-8291-9907-ff405bde4edf
Content: Pipeline caching - Azure Pipelines
Content Source: docs/pipelines/release/caching.md
Product: devops
Technology: devops-cicd-release
GitHub Login: @ramiMSFT
Microsoft Alias: rabououn

@PaulVrugt -- thank you for your questions. Here are a couple of options you might consider:

Azure DevOps Support Bot
Azure DevOps on Stack Overflow

@ramiMSFT -- please look into this issue.

Same question here. Porting a legacy project with two node projects that have their respective package locks. Seeing odd behaviour/errors when there are two caches being used.

@PaulVrugt Thank you for your feedback. Caches are scoped to a project, pipeline and a branch. Jobs in the same pipeline can have access and share the same cache. You can have one or more caching task(s) in your pipeline and there is no limit on the caching storage capacity at the moment.