memory svg

Make speedup SVG generation code more generic to enable future reuse
Remove unnecessary attr_reader
Remove unused method override and instance variable
Prepare SpeedDetails (single and multi) report classes for subclassing
Produce memory based graphs like we have for speed
Skip stddev bars when the stddev is zero
Include memory graphs after the speed graphs

I intend to refactor the classes out to their own files and abstract methods, etc, but I had already done a bunch of renames and I'd like to keep the refactor separate from any feature changes.
I added the corresponding memory graph below each place where we showed the speed graphs
Currently the description is below the graph but I think it might be better above
I'm also thinking about maybe adding a horizontal line between the graphs or something to separate them a little more visually.
What do you think?

The memory graph is harder to interpret than I expected (because the bars appear very random), but it looks very good 👍

Currently the description is below the graph but I think it might be better above I'm also thinking about maybe adding a horizontal line between the graphs or something to separate them a little more visually. What do you think?

I think it might be good to have a short title/heading above each graph and a longer description below the graphs like you suggested.
I would like to rename the first heading "Headlining Benchmarks" => "Performance on Headline Benchmarks"
And for the second graph we could have "Memory Usage on Headline Benchmarks".
In the description of the performance graphs, we should remove the mention of "iterations/second" because that doesn't correspond to the units shown on the graph. We could mention that every bar is normalized such that the CRuby 3.3.1 interpreter has value 1.0.

In the description of the performance graphs, we should remove the mention of "iterations/second" because that doesn't correspond to the units shown on the graph. We could mention that every bar is normalized such that the CRuby 3.3.1 interpreter has value 1.0.

Beautiful


Refactor Vault integration

Initial motivation for this PR was to introduce another authorization strategy for Vault: AppRole.
After the first step of refactoring I've found some minor inconsistencies in the source code and documentation:

I've updated default value for VAULT_PATH_FOR_DYNACONF.
Default value for VAULT_PATH_FOR_DYNACONF ("/secret/data/") led to "/v1/secret/data/secret/data/" path in Vault. But documentation stated that secrets will be read from "/secret/dynaconf". HVAC initializer, vault_loader.load

I've added all meaningful VAULT_*_FOR_DYNACONF configuration parameters to docs/guides/configuration.md. Sadly this led to a huge diff in the configuration.md.

I propose a removal of VAULT_SESSION_FOR_DYNACONF parameter due to the fact that this parameter is very hard to setup properly via default instruments (.toml, .env, etc), but it still can be accessed with the VAULT_FOR_DYNACONF parameter at a run time.

I've tried (and failed :) ) to minimize the impact of this PR, but I may try to split this PR into multiple, if this is required.
If you have any suggestions, comments, questions - feel free to contact me.
P.S. Thanks for this awesome project - looking forward to use it more effectively in my projects.

@psav @rsnyman can you help me reviewing this PR? I am asking because you were the latest who changed this area.

Hey @VaultVulp I'll wait for some input on this and will try to test myself by the weekend.
Thanks.

@rochacbruno thank you! Looking forward to any feedback.

Hi @rochacbruno @VaultVulp
Sorry, I've been away, I'll take a look in the next few days.


Material You: Broken volume menu

The volume menu coloring is a bit broken :3
It basically shows the transparent part over the non transparent.
I can send screenshots if needed
jh-devv

That would help, yes. Which theme is this issue for?

That would help, yes. Which theme is this issue for?

It's for the Material theme, sorry about not saying that :3

What's broken about this?

Weird, it seems to be an issue with my setup then!

Note i did commit some fixes to this repository that are unreleased, please re-test with the latest changes

Ok! Good


API docs outdated

update the links for API docs for sushirelay

closed by https://github.com/openmev/docs/pull/15


Change toolchain back to buildroot

As per @throwaway96 analysis, you should explicitly add -mfpu=neon to CFLAGS and/or -DLIBYUV_NEON (which is correctly handled only in the gyp build).
buildroot-nc4 doesn't do that by default because it targets a generic CPU by default (-mcpu and -mtune are not set). Therefore, setting either -mcpu/-mtune is also a viable alternative.

@smx-smx: I think I need some smart advise from you. I can't manage to probably add these flags. Can you please tell me where I have to put them?

I would suggest adding this to the cmake call and also in libyuv/CMakeLists.txt: -DCMAKE_C_FLAGS="-mcpu=cortex-a9 "

Adding those might also add some more optimization -march=armv7-a -mfpu=neon -mfloat-abi=softfp -mthumb -mtune=cortex-a9


yurt-app-manager support YurtAppDaemon CRD

What type of PR is this?

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:

/kind feature
What this PR does / why we need it:
In the edge scenario, compute nodes in different regions are assigned to the same node pool. We expect some workload to be created automatically with the creation of the node pool. No additional human intervention is required.
ref:  https://github.com/openyurtio/openyurt/issues/433
ref:  https://github.com/openyurtio/openyurt/pull/422
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

/assign @rambohe-ch @Fei-Guo
Please focus on the following files：
/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go
/yurtappmanager/webhook/yurtappdaemon/mutating/yurtappdaemon_create_update_handler.go
r/pkg/yurtappmanager/webhook/yurtappdaemon/validating/yurtappdaemon_create_update_handler.go
Does this PR introduce a user-facing change?

other Note

@rambohe-ch PTAL

/lgtm
/approve


"Select All" and "Unselect All" Change

I want change "select all" and "unselect all" text with own title, but I'm not found anything on docs.

It IS in the documentation, on page https://developer.snapappointments.com/bootstrap-select/options/
You have 2 options:

Setting defaults for all instances of bootstrap-select:
After loading the select-bootstrap JS file, place the following JS lines RIGHT AFTER, not on document ready event
Basically, you want the selectpicker library loaded, but before it starts initializing select elements. Which is not MY preferred way.

$.fn.selectpicker.Constructor.DEFAULTS.deselectAllText = 'Whatever You Want';
$.fn.selectpicker.Constructor.DEFAULTS.selectAllText = 'Whatever You Want';

then when selectpicker runs and initializes all elements that have "selectpicker" class, these will be the button captions
If you are initializing selectpicker manually and you want to apply the defaults globally, the above JS lines CAN go into your on document ready event.


2 traccar application in the same server.

Hi anton, is it possible to start 2 traccar in the same server and pass the specific ip where the application will be serving?? also configure 2 different linux configuration files... with 2 different database connectors...

Sorry for reopening this issue, is it possible to have 2 traccar instances running in the same linux box?
I will use different ports and interfaces but I need one traccar for development running and the other in production ENV hosted in the same server. is this possible?
Service is installed in /etc/init.d/traccar, can I change something here to run /opt/traccar2/bin/ instead of /opt/traccar/bin executable files?
thanks


Incorrect parsing of top-level function application under some circumstances

Hi Jake,
I have some code to parse:
s = "0\na(b)"
ts = Lexer.TokenStream(ts)

The second expression, a(b), parses correctly as a substring:
julia> Parser.parse(s[2:end])
:(a(b))

but the second expression doesn't get parsed correctly when I try to do the whole thing as a token stream:
julia> Parser.parse(ts)
0

julia> Parser.parse(ts)
:a

julia> Parser.parse(ts)
:b

Thanks!

@apatil thanks for the report, definitely looks like a bug.


x/exp/io/spi: SPI on mipsle uses wrong IOCTL

What version of Go are you using (go version)?
go version go1.10.3 darwin/amd64
Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
GOARCH="mipsle"
GOBIN=""
GOCACHE="/Users/sven/Library/Caches/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="linux"
GOPATH="/Users/sven/go"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.10.3/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.10.3/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
GOMIPS="softfloat"
CC="clang"
CXX="clang++"
CGO_ENABLED="0"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -mabi=32 -march=mips32 -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/_j/ly_hzzjx5vjd2qbzd8qd2bch0000gn/T/go-build245470376=/tmp/go-build -gno-record-gcc-switches"

What did you do?
I used golang.org/x/exp/io/spi to write to an SPI device on a MIPS (32 bit, little endian) target.
The IOCTL used for writing the data (in spi.(*devfsConn).Tx) is wrong. The returned error message is inappropriate ioctl for device. strace prints ioctl(3, _IOC(_IOC_READ, 0x6b, 0, 0x20), 0x8c33efc) = -1 ENOTTY (Not a tty) instead of ioctl(3, SPI_IOC_MESSAGE(32), 0x8933f20) = 2.
If I'm not mistaken, the IOCTLs are offset on MIPS targets. See https://github.com/torvalds/linux/blob/master/arch/mips/include/uapi/asm/ioctl.h and https://github.com/torvalds/linux/blob/master/include/uapi/asm-generic/ioctl.h#L32

CC @rakyll

Here is a proposal for a fix: https://github.com/svenschwermer/golang.org-x-exp/commit/8026287ed771db5931f67f4b748bc9a81dfdf223
This should also fix #16551.

/cc @maruel

Thanks. I filed https://github.com/google/periph/issues/263 to correctly handle this in periph.io.
We don't plan to modify exp/io anymore.

Since x/exp/io is no longer developed and essentially frozen, I'm closing this issue.


[FEA] Build RAPIDS JNI using it's dedicated pom.xml

Is your feature request related to a problem? Please describe.
Today, when we build spark-rapids-jni, it builds the libcudfjni but it bypasses the pom inside cudf/java. Which could result in a stale pom.xml inside cudf/java.
Describe the solution you'd like
I assume, it might be possible to build libcudfjni by using it's own pom.xml

I'm not sure this makes sense.  spark-rapids-jni wants to build the GPU code as a single shared library with the CUDA runtime only statically linked once.  If cudf/java builds libcudf.so, as it normally does, then we cannot build another libcudf.so based on that artifact.  We need cudf/java to build static libs, not shared libs.  If it builds static libs, cudf/java cannot run its Java tests since there's no .so to load.  That's why spark-rapids-jni pulls in the Java sources from cudf/java explicitly, since that's the first point where we can run tests on the "official" artifact for spark-rapids-jni.  It's important to ensure the cudf tests on the final artifact, not just some intermediate form).  Also if cudf/java builds in some sort of different way for use by spark-rapids-jni, it needs to use a classifier or some other mechanism to distinguish that artifact from the typical artifact for cudf.
I'm not convinced the difficulties of reorganizing the cudf/java pom and artifact naming is worth the benefit, especially since we want to run the cudf/Java tests on the final spark-rapids-jni artifact to ensure everything has been packaged properly.

We could add clarify this nuance  in the CONTRIBUTING.md

Thank you for the clarification @jlowe

We could add clarify this nuance in the CONTRIBUTING.md

Yeah, that might be helpful.


Usage of the interceptor

Hello Team,
I don't find a discussion channel, therefore I'd like to ask a couple of queries about this library; please advise.

Can we use this library in production as a replacement for Axios interceptors, or is it solely for unit tests?
I only see interceptor.on('request'), interceptor.on('response'). Is there a method to catch API request and response errors?

Thanks

Hey, @smo043.

Can we use this library in production as a replacement for Axios interceptors, or is it solely for unit tests?

This library is a low-level HTTP request interception library. You can use it anywhere in any way that employs request interception. It is a replacement for Axios interceptor, and it can intercept any requests from any request clients, not just Axios.
I'm a bit cautious why would you use request interceptor in production though. Maybe if you share your use case I can provide a more relevant answer here.

I only see interceptor.on('request'), interceptor.on('response'). Is there a method to catch API request and response errors?

There is no API to react to request errors (i.e. malformed requests).
Response errors are somewhat irrelevant in this context of request interception as it's the server that's aware of them. What you can react to is error responses, as those are still valid responses you receive in the "response" event.

I believe you should be able to use this library for this kind of logging. It may be future incomplete, however, to suit all the requirements.
For once, we don't forward any request errors to the consumer at the moment. I think this would be a good addition to our API. We control request modules so we know when request errors happen:
https://github.com/mswjs/interceptors/blob/ddf0389c0a0f2f98350f3857d1e301f806c66587/src/interceptors/ClientRequest/NodeClientRequest.ts#L185
Should be a matter of introducing a new event alongside "request" and "response". Maybe something like "requestError" or "requestException"? In either case, I'm for supporting this.

@kettanaito - Thank you, would it be possible to have a minor release by exposing the reqException and resException similar to what Axios interceptor has?

Yeah, sure.
I don't know about the resException though. I said above that response exceptions are unknown to the client, the same way you have no ways to know if an exception happened on the server unless it sends a 5xx response indicating that. I see little reason for something like resException, given you already have a response event which you can listen and react to error responses:
interceptor.on('response', (response) => {
  if (response.status === 500) {
    resException()
  }
})

Thank you, I was thinking about the same about the res exception. It would be very helpful if you could release a minor version for the request exceptions. Appreciate your assistance.

It's not on my priority list as I'm working on some major changes in MSW right now, and plan on focusing on those until the end of the year. I can look into this whenever I have time, otherwise it's a pretty good first issue for new contributors.

@smo043, hey. Thanks for reporting that. It does seem like an issue but it should be relatively easy to fix it. Could you please open a new issue for it? Thanks.

@smo043, hey. Thanks for reporting that. It does seem like an issue but it should be relatively easy to fix it. Could you please open a new issue for it? Thanks.

Sure


Added an example of having more than one Tag

Provides an example of having more than one Tag, to prevent confusions like this https://github.com/kelseyhightower/envconfig/issues/120

You could also add a line like
Multiple tags can be append separated by a space

yup good idea. thanks!


Rename references to influxdata

Same with #5288, but complete rename patch.
Github redirects influxdb to influxdata, so
github.com/influxdb/influxdb does work as far as we stick to
that URL.
Build will fail without rename in the following command:
   go get github.com/infuxdata/influxdb/...

There is also https://github.com/influxdata/influxdb/issues/5388. It seems to be either the same or similar.

:+1:

Fixed by https://github.com/influxdata/influxdb/pull/5617


Produce: Add support for message key

A request has arrived for a feature where you can set the key of the message in Kafka standard message.
Implementation proposal:

This value can be null or empty if it is not provided.

merged


No sampling utility is available for IBPNoisyOrSampler yet

A sampling utility is needed for easier use of the IBP Noisyor sampler.

Updated a long time ago. Closing this issue.


Update README.md

The original instructions were missing the _ in mix white_bread.run.

Whoops :-) Good spot :+1:


Don't re - draw, when update UiSchema

Prerequisites

[x] I have read the documentation;
[x] In the case of a bug report, I understand that providing a SSCCE example is tremendously useful to the maintainers.

Description
Don't update form from UiSchemas
Steps to Reproduce
When updating the 'hubsVariants' (from props), the form gets a new description, but does not change UiSchema. Why?
The re-rendering of the render occurs and the circuit is generated anew.
import Form from 'react-jsonschema-form'

const GeneralInfoUiSchema = {}; // default UiSchema (for example - empty)

class General extends React.PureComponent<IProps, {}> {
    render() {
        return this.form;
    }

    get form() {
        return Form<IGeneralInfo>(this.formProps);
    }

    get formProps() {
        const { formData } = this.props;

        return {
            uiSchema: this.uiSchema,
            // ... another properties
        };
    }

    get uiSchema(): UiSchema {
        const { hubsVariants } = this.props;
        const generalUiSchema = { ...GeneralInfoUiSchema };

        if (this.isHubs) {
            delete generalUiSchema.HubId['ui:field'];
            generalUiSchema.HubId['ui:options'] = {
                Hubs: this.treeHubs(hubsVariants),
            };
        } else {
            generalUiSchema.HubId['ui:field'] = Fields.WireFramingFieldTemplate;
        }
    }

    get isHubs(): boolean {
        return this.props.hubsVariants.length > 0;
    }
}

Expected behavior
replace template (ui:field) for generalUiSchema.HubId
Actual behavior
Nothing.
I tried to update the state of the component, but this did not solve the problem. I see that the new 'UiSchemas'  are applied in the form. But she does not react in any way. Why is that?
Version
1.0.2

Could you create a SSCCE on Codesandbox.io to reproduce this behaviour? That will help diagnose any bug.

I created an example (in a vacuum), and everything works there.
Therefore, the error is somewhere in my code.


PSA: Scrub PSA metadata for direction

Currently psa.p4 has psa_ingress_output_metadata_t as a direction 'out' parameter of the Ingress control block, and it also claims to specify initial values for some of the fields when the Ingress control block begins execution.
This is not possible in P4_16.
One fix: For all fields that we wish to define an initial value, and also let the user's Ingress control block code modify it, put them in a struct with direction 'inout'.
For all fields that we wish to have no defined initial value (i.e. they are initially undefined in the P4_16 spec sense of the word), put them in a separate struct with direction 'out'.
Obviously, if we end up defining initial values for all such fields, there would be no need for a struct with direction 'out'.

Fixed by #434


Configuring the Jar task's manifest gives an Incubating warning

When configuring the org.gradle.api.tasks.bundling.Jar task via Kotlin, IntelliJ highlights a call to manifest as a call to an Incubating feature:
val jar by tasks.getting(Jar::class) {
  manifest {} // manifest is highlighted as Incubating
}

It’s because it's a method on the supertype (org.gradle.jvm.tasks.Jar.manifest(Action<? super Manifest> configureAction)) which is not overridden on org.gradle.api.tasks.bundling.Jar, and the entire org.gradle.jvm.tasks package is Incubating.
The org.gradle.jvm.tasks package seems to have been incubating ever since it was extracted from org.gradle.api.tasks.bundling in 2014: https://github.com/gradle/gradle/commit/2ab01d0c99106a0f1bc2304c787f37ae2ce40ef6#diff-b72732e284c9c175dea297a8fedff67d
Incubating should either be removed from org.gradle.jvm.tasks or else the following should be added to org.gradle.api.tasks.bundling.Jar to export the overloaded manifest method:
    @Override
    public Jar manifest(Action<? super Manifest> configureAction) {
        super.manifest(configureAction);
        return this;
    }

Thanks @Mahoney for reporting this. We simply missed this one. Fixed in 6.4.


create another build

Hi,
could you create another build from the latest master? There is a fix, that should fix my problem, not sure if this is the correct way to ask that :)

Do you mean the latest master of the Superset repository? Usually I wait for them to tag a new version before I update this repo. I don't really want to get in the habit of running nightly builds or anything.

hmm yes, that's what I meant, then I have to wait for the next tag or build to image myself, no problem

I haven't testedt this myself, but I think if you created a Dockerfile with these contents:
FROM amancevice/superset
USER root
RUN apt-get install -y npm && \
    git clone https://github.com/airbnb/superset.git && \
    cd ~superset/superset/superset/assets && \
    npm install && \
    npm run build && \
    cd ~superset/superset && \
    python setup.py install
USER superset
WORKDIR /home/superset

And run docker build on this you should end up with an image with the latest code installed.


Rename "fragment" local variable because of variable shadowing.

Description:
The issue arises due to the use of a local variable named fragment within the getPreferenceScreen method, which shadows a class field also named fragment. This can lead to confusion and errors in the code because it's unclear which fragment variable is being referred to in different parts of the method or class. Maintaining unique names for local variables and class fields is important for code clarity and maintainability.
Category:
Maintainability

Location:
src/main/java/de/dennisguse/opentracks/settings/SettingsActivity.java

Issue Summary: A significant instance of technical debt concerning variable shadowing within the SettingsActivity class. The issue was pinpointed in the getPreferenceScreen method, where a local variable named fragment was overshadowing a class field also named fragment.
Action Taken: Refactored the code by renaming the local variable 'fragment' within the getPreferenceScreen method to 'localFragment'.
Commit Reference : https://github.com/Reva-B98/OpenTracks-Winter-SOEN-6431_2024/commit/ff46cfb02f906fba5cc0c29d57651221de485220


On a fresh install, running npm run package yields errors

Just started working with this a few days ago, and it's been awesome.  Had no issues at first, but now, running npm run package per the readme, on a brand new fresh install is yielding some errors for me.
The first is:
ERROR in ./src/skill.js
Module build failed: TypeError: /Users/greg/projects/alexa-skills/chess/skill/src/skill.js: Duplicate declaration "Skill"
  4 |
  5 | @Skill
  6 | export default class Skill {
    |                      ^

The second is:
Error: Cannot find module "./skill"
    at /Users/greg/projects/alexa-skills/chess/skill/build/webpack:/src/index.js:1:1
    at Object.exports.handler.t.(anonymous function).Object.(anonymous function).writable (/Users/greg/projects/alexa-skills/chess/skill/build/webpack:/src/index.js:1:1)
    at n (/Users/greg/projects/alexa-skills/chess/skill/build/webpack:/webpack/bootstrap 34284e9e990cdad94ba8:19:1)
    at Object.<anonymous> (/Users/greg/projects/alexa-skills/chess/skill/build/webpack:/index.js:49:19)
    at n (/Users/greg/projects/alexa-skills/chess/skill/build/webpack:/webpack/bootstrap 34284e9e990cdad94ba8:19:1)
    at /Users/greg/projects/alexa-skills/chess/skill/build/webpack:/webpack/bootstrap 34284e9e990cdad94ba8:39:1
    at Object.<anonymous> (/Users/greg/projects/alexa-skills/chess/skill/build/webpack:/webpack/bootstrap 34284e9e990cdad94ba8:39:1)
    at Module._compile (module.js:413:34)
    at Module._extensions..js (module.js:422:10)
    at extensions.(anonymous function) (/Users/greg/projects/alexa-skills/chess/skill/node_modules/require-precompiled/index.js:16:3)
    at Object.require.extensions.(anonymous function) [as .js] (/Users/greg/projects/alexa-skills/chess/skill/node_modules/ava/lib/test-worker.js:89:3)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Module.require (module.js:367:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/greg/projects/alexa-skills/chess/skill/test/index-test.js:2:1)
    at Module._compile (module.js:413:34)
    at extensions.(anonymous function) (/Users/greg/projects/alexa-skills/chess/skill/node_modules/require-precompiled/index.js:13:11)
    at Object.require.extensions.(anonymous function) [as .js] (/Users/greg/projects/alexa-skills/chess/skill/node_modules/ava/lib/test-worker.js:89:3)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Module.require (module.js:367:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/greg/projects/alexa-skills/chess/skill/node_modules/ava/lib/test-worker.js:93:1)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Function.Module.runMain (module.js:447:10)
    at startup (node.js:148:18)
    at node.js:405:3

   1 exception

  ✖ test/index-test.js exited with a non-zero exit code: 1

Not sure if the issues are related.  The second issue seems to come after the ava build step.

I'm running:
➜  skill node -v
v5.12.0

➜  skill npm -v
3.8.6

➜  skill yo alexa-skill --version
1.8.4

For what it's worth, I don't see this. Here's what I'm running:
$ node -v
v6.5.0
$ npm -v
3.10.3
$ yo alexa-skill --version
1.8.5


Toolstation

This provides messages for all of the WorldPay direct services.

@nicksnellockts A pretty comprehensive rewrite, give me a few days to check through the code and test on a staging site. Thanks for all your work, looks good and a great improvement to my old code.


Add default non-root user to all dev containers

While on mac and Windows, developers can run as root inside the container without trouble, on Linux, local bind mounts use the same permissions as the user inside the container.  Since the docker daemon is typically running as root, this means all files that are created or modified are root.
To avoid this problem, you typically create a user with the same UID/GID in the container and pass in -u user-name-here to docker run or add user in docker-compose.yml.
If you are running Linux locally, the default user typically has a UID of 1000, so images like node provide a user in the container with this UID.  Unfortunately, this is the exception rather than the rule.
To work around this issue, each dev container Dockerfile should provide a default non-root user with a argument based UID/GID and add comments into devcontainer.json and/or docker-compose.yml on how to use it.
For example:
# Or your actual UID, GID on Linux if not the default 1000
ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=$USER_UID

# Configure apt and install packages
RUN apt-get update \
    && apt-get -y install --no-install-recommends apt-utils 2>&1 \
    #
    # Verify git, process tools, lsb-release (common in install instructions for CLIs) installed
    && apt-get -y install git procps lsb-release \
    #
    # Create a non-root user to use if preferred - see https://aka.ms/vscode-remote/containers/non-root-user.
    && groupadd --gid $USER_GID $USERNAME \
    && useradd -s /bin/bash --uid $USER_UID --gid $USER_GID -m $USERNAME \
    # [Optional] Uncomment the next three lines to add sudo support
    # && apt-get install -y sudo \
    # && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
    # && chmod 0440 /etc/sudoers.d/$USERNAME \
    #
    # Clean up
    && apt-get autoremove -y \
    && apt-get clean -y \
    && rm -rf /var/lib/apt/lists/*

devcontainer.json, then would have the following in it:
	// Uncomment the next line to use a non-root user. See https://aka.ms/vscode-remote/containers/non-root-user.
	// "runArgs": [ "-u", "1000"],

If we supported a "buildArgs" property, this could be:
	// "runArgs": [ "-u", "${env:UID}"],
	// "buildArgs": [ "--build-arg", "USER_UID=${env:UID}"],

Since UID/GID env vars are not always set, if we introduce https://github.com/microsoft/vscode-remote-release/issues/1050 we could then improve this to be:
// Uncomment the next line to use a non-root user. See https://aka.ms/vscode-remote/containers/non-root-user.
// "runArgs": [ "-u", "$(id -u):$(id -g)", "-e", "USER_UID=$(id -u)", "-e", "USER_GID=$(uid -g)"],
// "buildArgs": [ "--build-arg", "USER_UID=$(id -u)", "--build-arg", "USER_GID=$(uid -g)"],

Correction - We will need to support a "buildArg" property to make this work since the USER_UID portion of the above won't work. Text corrected above.

@aeschli @chrmarti I merged in changes to the templates to add a non-root user into all containers along with an comment on it in devcontainer.json.
Can we get an updated release of Remote - Containers with this and the other changes in the repo queued up for release?

/cc: @brettcannon @testforstephen


Delete Feed DropdownMenu Button

This branch adds the ability to delete a feed by long pressing on it and clicking "Delete". This will remove it from the database and feedList, so it will no longer show up in the application and will need to be re-added if the user would like to see it again.

Great documentation, perhaps try to remove commented code before committing.

Agreed. The part with "incorporated into feed card" can be removed. Good observation.


Started http server

Hi Prisma Team! My Prisma Client just crashed. This is the report:
Versions

Name
Version

Node
v10.16.3

OS
rhel-openssl-1.0.x

Prisma
2.1.3

Description
Started http server

Logs
nt+++++rentFinishedAt%0A++prisma-client+++%7D%0A++prisma-client+%7D%0A++prisma-client+++%2B0ms%0A++plusX+Execution+permissions+of+%2Fvar%2Fwww%2Fup-osmp%2Fnode_modules%2F.prisma%2Fclient%2Fquery-engine-rhel-openssl-1.0.x+are+fine++%2B481ms%0A++prisma-client+Client+Version+2.1.3++%2B140ms%0A++prisma-client+Engine+Version+e11114fa1ea826f9e7b4fa1ced34e78892fe8e0e++%2B0ms%0A%60%60%60%0A&title=Started+http+server&template=bug_report.md
  prisma-client
  prisma-client If you want the Prisma team to look into it, please open the link above 🙏
  prisma-client
  prisma-client     at NodeEngine.handleRequestError (/var/www/up-osmp/node_modules/@prisma/engine-core/dist/NodeEngine.js:151:1)
  prisma-client     at process._tickCallback (internal/process/next_tick.js:68:7)  +10ms
  prisma-client Prisma Client call:  +42ms
  prisma-client prisma.objects.findMany({
  prisma-client   orderBy: {
  prisma-client     created_at: 'desc'
  prisma-client   },
  prisma-client   where: {
  prisma-client     is_on_map: true
  prisma-client   },
  prisma-client   include: {
  prisma-client     access_products: {
  prisma-client       select: {
  prisma-client         rentFinishedAt: true
  prisma-client       },
  prisma-client       orderBy: {
  prisma-client         createdAt: 'desc'
  prisma-client       },
  prisma-client       where: {
  prisma-client         accessType: 'LONG',
  prisma-client         rentFinishedAt: {
  prisma-client           gt: new Date('2020-08-11T00:07:18.916Z')
  prisma-client         },
  prisma-client         users: {
  prisma-client           id: undefined
  prisma-client         }
  prisma-client       }
  prisma-client     },
  prisma-client     controllers: {
  prisma-client       where: {
  prisma-client         in: true
  prisma-client       }
  prisma-client     },
  prisma-client     pictures: true,
  prisma-client     reviews: true
  prisma-client   }
  prisma-client })  +1ms
  prisma-client Generated request:  +0ms
  prisma-client query {
  prisma-client   findManyobjects(
  prisma-client     orderBy: created_at_DESC
  prisma-client     where: {
  prisma-client       is_on_map: true
  prisma-client     }
  prisma-client   ) {
  prisma-client     id
  prisma-client     address_obj
  prisma-client     country
  prisma-client     city
  prisma-client     street
  prisma-client     places_count
  prisma-client     desc_obj
  prisma-client     roof_type
  prisma-client     is_secure
  prisma-client     is_video_on
  prisma-client     is_warm
  prisma-client     height
  prisma-client     pricing_obj
  prisma-client     price_hour
  prisma-client     price_day
  prisma-client     price_month
  prisma-client     rating
  prisma-client     created_at
  prisma-client     updated_at
  prisma-client     lat
  prisma-client     lng
  prisma-client     manager_id
  prisma-client     is_short_rent
  prisma-client     is_long_rent
  prisma-client     is_open_by_ble
  prisma-client     is_in
  prisma-client     icon_jsonb
  prisma-client     icon
  prisma-client     images
  prisma-client     title
  prisma-client     is_on_map
  prisma-client     images_json
  prisma-client     access_products(
  prisma-client       orderBy: createdAt_DESC
  prisma-client       where: {
  prisma-client         accessType: LONG
  prisma-client         rentFinishedAt_gt: "2020-08-11T00:07:18.916Z"
  prisma-client         users: {
  prisma-client
  prisma-client         }
  prisma-client       }
  prisma-client     ) {
  prisma-client       rentFinishedAt
  prisma-client     }
  prisma-client     controllers(where: {
  prisma-client       in: true
  prisma-client     }) {
  prisma-client       id
  prisma-client       data
  prisma-client       object_id
  prisma-client       createdat
  prisma-client       updatedat
  prisma-client       name
  prisma-client       secret
  prisma-client       in
  prisma-client       out
  prisma-client     }
  prisma-client     pictures {
  prisma-client       id
  prisma-client       url
  prisma-client       name
  prisma-client       object_id
  prisma-client       createdat
  prisma-client       updatedat
  prisma-client     }
  prisma-client     reviews {
  prisma-client       id
  prisma-client       user_id
  prisma-client       object_id
  prisma-client       rent_id
  prisma-client       message
  prisma-client       rate
  prisma-client       createdAt
  prisma-client       updatedAt
  prisma-client     }
  prisma-client   }
  prisma-client }
  prisma-client   +0ms
  plusX Execution permissions of /var/www/up-osmp/node_modules/.prisma/client/query-engine-rhel-openssl-1.0.x are fine  +188ms
  prisma-client Client Version 2.1.3  +91ms
  prisma-client Engine Version e11114fa1ea826f9e7b4fa1ced34e78892fe8e0e  +0ms

Hello! Can you please provide a minimal reproduction for the above crash? Unfortunately the automatically collected information in the issue does not give us much to go with here - we will need a bit more information. What were you doing? Can you share the code and schema that was active?

Closing due to inactivity


Animebook + Yomichan + Microsoft Edge

Hello,
Animebook is working great on Microsoft Edge, so I would like to use it in this browser. I've also set up Yomichan so I can use it in Animebook, but the problem is that, for whatever reason, I get no popups from Yomichan at all on https://animebook.github.io/. I've double checked, and I'm using the exact same Yomichan settings as on Chrome (it works on Chrome), and Yomichan works on all other websites on Edge, including https://video.fluentcards.com/. It makes it seem to me that the problem lies with Animebook.
Let me know if there's any other kind of information I can provide.

Probably not the case, but did you download the html file and use it locally? If so, then this setting should be enabled for Yomichan.

Otherwise, I'm not sure why it wouldn't work. I have had random issues where yomichan stops working if I leave the tab open for too long, but it's always resolved by refreshing the page and dropping my files back in. A screenshot/gif might help here. And I guess you could also upload your yomichan settings as json if you want. That might help me reproduce it if I use your exact settings.

I only tried to download the html file and use it locally as a way to fix the problem, but was unable to get it to play any files at all. When I try to move video and sub files over to the local html file in the browser, all that happens is that a new tab opens up. For sub files it looks like this:

I noticed that when I hover over the browser with the files, it says 'move' when it's on the web version, but 'copy' when it's on the local version. Maybe it has something to do with that. It would be nice to get the local html to work for different reasons (I don't always have access to the Internet), so if I'm doing wrong, let me know.
I enabled access to file URLs when I first set up Yomichan with Edge just in case, so it's always been ticked off. I also have identical Yomichan settings in Edge and Chrome, and everything works in Chrome. I would share the settings I use, but it looks like I can't upload .json files here.

If you right click on the page at animebook.github.io and click "Save As", it'll give you a broken version of the site. Use this instead (I should probably update the README with this) https://raw.githubusercontent.com/animebook/animebook.github.io/master/index.html
And yeah, might be best to just paste the json into github (this'll be big) e.g.
{
    "version": 0,
    "date": "2020-08-26 20:53:39",
    "url": "chrome-extension://ogmnaimimemjmbakcfefmnahgdfhfami/",
    "manifest": {
        "applications": {
            "gecko": {
                "id"<EMAIL_ADDRESS>                "strict_min_version": "55.0"
            }
        },
        "author": "Alex Yatskov",
        "background": {
            "page": "bg/background.html",
            "persistent": true
        },
        "browser_action": {
            "default_icon": {
                "16": "mixed/img/icon16.png",
                "19": "mixed/img/icon19.png",
                "32": "mixed/img/icon32.png",
                "38": "mixed/img/icon38.png",
                "48": "mixed/img/icon48.png",
                "64": "mixed/img/icon48.png",
                "128": "mixed/img/icon128.png"
            },
            "default_popup": "bg/context.html",
            "default_title": "Yomichan"
        },
        "commands": {
            "search": {
                "description": "Open search window",
                "suggested_key": {
                    "default": "Alt+Insert"
                }
            },
            "toggle": {
                "description": "Toggle text scanning",
                "suggested_key": {
                    "default": "Alt+Delete"
                }
            }
        },
        "content_scripts": [
            {
                "all_frames": true,
                "js": [
                    "mixed/js/core.js",
                    "mixed/js/yomichan.js",
                    "mixed/js/comm.js",
                    "mixed/js/dom.js",
                    "mixed/js/api.js",
                    "mixed/js/dynamic-loader.js",
                    "mixed/js/frame-client.js",
                    "mixed/js/text-scanner.js",
                    "fg/js/document.js",
                    "fg/js/dom-text-scanner.js",
                    "fg/js/popup.js",
                    "fg/js/source.js",
                    "fg/js/popup-factory.js",
                    "fg/js/frame-offset-forwarder.js",
                    "fg/js/popup-proxy.js",
                    "fg/js/frontend.js",
                    "fg/js/content-script-main.js"
                ],
                "match_about_blank": true,
                "matches": [
                    "http://*/*",
                    "https://*/*",
                    "file://*/*"
                ]
            }
        ],
        "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",
        "description": "Japanese dictionary with Anki integration",
        "differential_fingerprint": "1.b765d82456c44ad012f0e92e5b65dda054f60c8338138dcfde845c61878b8daa",
        "icons": {
            "16": "mixed/img/icon16.png",
            "19": "mixed/img/icon19.png",
            "32": "mixed/img/icon32.png",
            "38": "mixed/img/icon38.png",
            "48": "mixed/img/icon48.png",
            "64": "mixed/img/icon48.png",
            "128": "mixed/img/icon128.png"
        },
        "key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAug/0Wtc35jGyy+Jkf4Kt9DUAzvziCJbhwlwzdro0cPnN+2K6Y2rCBVgAJln7SffCKVWa0k6BM3D7m7yydAECgSo8VUn2zUgInXpfQAuI2dG+6OEi0SOu2SkXJFvvAMjM/JAXY0zQRofnxeDRqvT7EtHW9lLwtgLTBuJObuq5zCHAPFa3PZ5ZORvUEmQZ2HDxUxaUZzsFW4kZ/rxPaNXTWe+qM30wqvlk79DBUJVq9zlzsDGM6G5qWcCk3vT5MEGuZVK7IPi6w9dPfOA3myicuywhDxumteg6wFraarMMAR2Stc80Yb9pCZT5Jav9e7eG97DuBAh97IOKrfI6mU8CkwIDAQAB",
        "manifest_version": 2,
        "minimum_chrome_version": "<IP_ADDRESS>",
        "name": "Yomichan",
        "optional_permissions": [
            "clipboardRead"
        ],
        "options_page": "bg/settings.html",
        "options_ui": {
            "open_in_tab": true,
            "page": "bg/settings.html"
        },
        "permissions": [
            "<all_urls>",
            "storage",
            "clipboardWrite",
            "unlimitedStorage",
            "nativeMessaging",
            "webRequest",
            "webRequestBlocking"
        ],
        "update_url": "https://clients2.google.com/service/update2/crx",
        "version": "<IP_ADDRESS>",
        "web_accessible_resources": [
            "fg/float.html"
        ]
    },
    "environment": {
        "browser": "edge",
        "platform": {
            "os": "win"
        },
        "modifiers": {
            "keys": [
                {
                    "value": "alt",
                    "name": "Alt"
                },
                {
                    "value": "ctrl",
                    "name": "Ctrl"
                },
                {
                    "value": "shift",
                    "name": "Shift"
                },
                {
                    "value": "meta",
                    "name": "Windows"
                }
            ],
            "separator": " + "
        }
    },
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36 Edg/84.0.522.63",
    "options": {
        "profiles": [
            {
                "name": "Default",
                "options": {
                    "general": {
                        "enable": true,
                        "resultOutputMode": "group",
                        "debugInfo": false,
                        "maxResults": 32,
                        "showAdvanced": true,
                        "popupDisplayMode": "default",
                        "popupWidth": 450,
                        "popupHeight": 350,
                        "popupHorizontalOffset": 0,
                        "popupVerticalOffset": 10,
                        "popupHorizontalOffset2": 10,
                        "popupVerticalOffset2": 0,
                        "popupHorizontalTextPosition": "below",
                        "popupVerticalTextPosition": "before",
                        "showGuide": false,
                        "compactTags": true,
                        "compactGlossaries": false,
                        "mainDictionary": "三省堂　スーパー大辞林",
                        "popupTheme": "dark",
                        "popupOuterTheme": "default",
                        "customPopupCss": "body { background-color: #282424}\n",
                        "customPopupOuterCss": "",
                        "enableWanakana": true,
                        "enableClipboardMonitor": false,
                        "enableClipboardPopups": false,
                        "popupScalingFactor": 1,
                        "popupScaleRelativeToPageZoom": false,
                        "popupScaleRelativeToVisualViewport": false,
                        "showPitchAccentDownstepNotation": true,
                        "showPitchAccentPositionNotation": true,
                        "showPitchAccentGraph": false,
                        "showIframePopupsInRootFrame": false,
                        "useSecurePopupFrameUrl": true,
                        "usePopupShadowDom": true
                    },
                    "audio": {
                        "enabled": true,
                        "sources": [
                            "jpod101",
                            "jisho"
                        ],
                        "volume": 100,
                        "autoPlay": false,
                        "customSourceUrl": "",
                        "textToSpeechVoice": ""
                    },
                    "scanning": {
                        "middleMouse": false,
                        "touchInputEnabled": true,
                        "selectText": false,
                        "alphanumeric": true,
                        "autoHideResults": true,
                        "delay": 20,
                        "length": 10,
                        "modifier": "none",
                        "deepDomScan": false,
                        "popupNestingMaxDepth": 1,
                        "enablePopupSearch": false,
                        "enableOnPopupExpressions": true,
                        "enableOnSearchPage": true,
                        "enableSearchTags": false,
                        "layoutAwareScan": false
                    },
                    "dictionaries": {
                        "三省堂　スーパー大辞林": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "新明解国語辞典 第五版": {
                            "priority": 1,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "JMdict (English)": {
                            "priority": 2,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "KANJIDIC (English)": {
                            "priority": 3,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "Anime & Jdrama Freq:": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "Innocent Corpus": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        }
                    },
                    "parsing": {
                        "enableScanningParser": true,
                        "enableMecabParser": false,
                        "selectedParser": "scan",
                        "readingMode": "hiragana",
                        "termSpacing": true
                    },
                    "anki": {
                        "enable": true,
                        "server": "http://<IP_ADDRESS>:8765",
                        "tags": [
                            "yomichan"
                        ],
                        "sentenceExt": 200,
                        "screenshot": {
                            "format": "png",
                            "quality": 92
                        },
                        "terms": {
                            "deck": "日本語::Mining",
                            "model": "文章",
                            "fields": {
                                "Word": "{expression}",
                                "Meaning": "{glossary}",
                                "Reading": "{reading}",
                                "Expression": "{sentence}",
                                "Audio": "{audio}",
                                "SentenceAudio": "",
                                "Image": "",
                                "Hint": "",
                                "Lookalike": "",
                                "PreCloze": "",
                                "PostCloze": "",
                                "Pronunciation": ""
                            }
                        },
                        "kanji": {
                            "deck": "",
                            "model": "",
                            "fields": {}
                        },
                        "duplicateScope": "collection"
                    },
                    "version": 14,
                    "translation": {
                        "convertHalfWidthCharacters": "false",
                        "convertNumericCharacters": "false",
                        "convertAlphabeticCharacters": "false",
                        "convertHiraganaToKatakana": "false",
                        "convertKatakanaToHiragana": "variant",
                        "collapseEmphaticSequences": "true"
                    }
                },
                "conditionGroups": []
            },
            {
                "name": "Must hold shift",
                "options": {
                    "general": {
                        "enable": true,
                        "resultOutputMode": "group",
                        "debugInfo": false,
                        "maxResults": 32,
                        "showAdvanced": true,
                        "popupDisplayMode": "default",
                        "popupWidth": 450,
                        "popupHeight": 350,
                        "popupHorizontalOffset": 0,
                        "popupVerticalOffset": 14,
                        "popupHorizontalOffset2": 10,
                        "popupVerticalOffset2": 0,
                        "popupHorizontalTextPosition": "below",
                        "popupVerticalTextPosition": "before",
                        "showGuide": false,
                        "compactTags": true,
                        "compactGlossaries": false,
                        "mainDictionary": "三省堂　スーパー大辞林",
                        "popupTheme": "dark",
                        "popupOuterTheme": "default",
                        "customPopupCss": "body { background-color: #282424}\n",
                        "customPopupOuterCss": "",
                        "enableWanakana": true,
                        "enableClipboardMonitor": false,
                        "enableClipboardPopups": false,
                        "popupScalingFactor": 1,
                        "popupScaleRelativeToPageZoom": true,
                        "popupScaleRelativeToVisualViewport": true,
                        "showPitchAccentDownstepNotation": true,
                        "showPitchAccentPositionNotation": true,
                        "showPitchAccentGraph": false,
                        "showIframePopupsInRootFrame": false,
                        "useSecurePopupFrameUrl": true,
                        "usePopupShadowDom": true
                    },
                    "audio": {
                        "enabled": true,
                        "sources": [
                            "jpod101",
                            "jisho"
                        ],
                        "volume": 100,
                        "autoPlay": false,
                        "customSourceUrl": "",
                        "textToSpeechVoice": ""
                    },
                    "scanning": {
                        "middleMouse": false,
                        "touchInputEnabled": true,
                        "selectText": false,
                        "alphanumeric": true,
                        "autoHideResults": true,
                        "delay": 20,
                        "length": 10,
                        "modifier": "shift",
                        "deepDomScan": false,
                        "popupNestingMaxDepth": 1,
                        "enablePopupSearch": false,
                        "enableOnPopupExpressions": true,
                        "enableOnSearchPage": true,
                        "enableSearchTags": false,
                        "layoutAwareScan": false
                    },
                    "dictionaries": {
                        "三省堂　スーパー大辞林": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "Anime & Jdrama Freq:": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "KireiCake": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "新明解国語辞典 第五版": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "JMdict (English)": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "Kanjium Pitch Accents": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "Innocent Corpus": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "JMnedict": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        },
                        "KANJIDIC (English)": {
                            "priority": 0,
                            "enabled": true,
                            "allowSecondarySearches": false
                        }
                    },
                    "parsing": {
                        "enableScanningParser": true,
                        "enableMecabParser": false,
                        "selectedParser": "scan",
                        "readingMode": "hiragana",
                        "termSpacing": true
                    },
                    "anki": {
                        "enable": true,
                        "server": "http://<IP_ADDRESS>:8765",
                        "tags": [
                            "yomichan"
                        ],
                        "sentenceExt": 200,
                        "screenshot": {
                            "format": "png",
                            "quality": 92
                        },
                        "terms": {
                            "deck": "日本語::Mining",
                            "model": "文章",
                            "fields": {
                                "Word": "{expression}",
                                "Meaning": "{glossary}",
                                "Reading": "{reading}",
                                "Expression": "{sentence}",
                                "Audio": "{audio}",
                                "SentenceAudio": "",
                                "Image": "",
                                "Hint": "",
                                "Lookalike": "",
                                "PreCloze": "",
                                "PostCloze": "",
                                "Pronunciation": ""
                            }
                        },
                        "kanji": {
                            "deck": "",
                            "model": "",
                            "fields": {}
                        },
                        "duplicateScope": "collection"
                    },
                    "version": 14,
                    "translation": {
                        "convertHalfWidthCharacters": "false",
                        "convertNumericCharacters": "false",
                        "convertAlphabeticCharacters": "false",
                        "convertHiraganaToKatakana": "false",
                        "convertKatakanaToHiragana": "variant",
                        "collapseEmphaticSequences": "true"
                    }
                },
                "conditionGroups": [
                    {
                        "conditions": [
                            {
                                "type": "popupLevel",
                                "operator": "equal",
                                "value": 1
                            }
                        ]
                    }
                ]
            }
        ],
        "profileCurrent": 0,
        "version": 3,
        "global": {
            "database": {
                "prefixWildcardsSupported": false
            }
        }
    }
}

Thanks, using the html file you linked locally worked perfectly. And this also made me realise what is causing the issue, because Yomichan worked locally with the html file. I'm using an extension called Zoom, which provides much more accuracy when zooming in on web pages. The default one only allows 100% -> 110% -> 125% -> 150%, etc., whereas the extension allows zooming in and out in increments of 1%. However, when using the extension to zoom in, it messes with Yomichan. It looks like it displaces the text in a way that Yomichan can no longer see it, or something along those lines.

Oh, nice! Thought it was weird that the buttons in the bottom corner of your screenshot were massive (usually they don't zoom in with the rest of the page).

Sorry for the trouble.


Fixed duplicate text

Fixes #2204
I removed a duplicate word.

Great PR ;) I'm guessing this was for a demo :D


chore/Version change to v0.5.0

Coverage remained the same at 86.258% when pulling 6dfc756d27164fc14f950b6e2dc501bf990c87ab on bochaco:master into 65cc45c982d6bb4c8118e00cd5cd38f6a5545f59 on maidsafe:master.


Remove ANTLR4 dependencies from ballerina

Description:
Currently ANTLR4 has incoming  dependencies from:

Language server
Document analyser

Need to decouple them and remove ANLT4 completely from the repo.

ANTL4 dependency is removed from the Document Analyser with this pr: https://github.com/ballerina-platform/ballerina-lang/pull/24838


Fix build

The current build fails because the docker image used for integration tests
has an old version of node. The base image we were using appears not to be
maintained anymore. There is no version with a newer node installation.
This change uses the ready-made docker image rocketchat/rocket.chat:latest  for
the rocket chat server and moves all necessary configuration from the Dockerfile
to the pom.
Fixes #63

I might find the time to take a look this week!

Looks good, after identifying another problem (see https://github.com/RocketChat/Docker.Official.Image/issues/144) I managed to even run the tests with 3.15! I will accept this PR and later on update to rocketchat 3.15!


Use #to_formatted_s instead #to_s

Support Rails 7 #to_s Date Time DateTime deprecation.
https://guides.rubyonrails.org/7_0_release_notes.html#active-support-deprecations

I'm trying to set up this gem right now and I believe the issue this fixes is preventing it from working.
Getting this error running rake db:seed:dump:
ActiveSupport::DeprecationException: DEPRECATION WARNING: TimeWithZone#to_s(:db) is deprecated. Please use TimeWithZone#to_fs(:db) instead.


New install fails when getting sample data

I have a Conda 3.6 env on Ubuntu 16.04 I got DS installed using PIP (having previously installed all prerequisites and tested out holoviews..)
I went to install the sample data using the download_sample_data.py file in the created datashader-examples directory (after I finally located and installed pylzma)
I got a bunch of files but then it failed as follows..
Downloading Mobile, AL Landsat8 Data 1 of 1
[################################] 835670/835670 - 00:06:52
Downloading Puget Sound Lidar 1 of 25
[################################] 1/1 - 00:00:00
FAILED ON 7Z /home/tom/datashader-examples/data/q47122d2101.7z
Traceback (most recent call last):
  File "download_sample_data.py", line 307, in <module>
    main()
  File "download_sample_data.py", line 304, in main
    _process_dataset(d, output_dir, here)
  File "download_sample_data.py", line 292, in _process_dataset
    _extract_downloaded_archive(output_path)
  File "download_sample_data.py", line 239, in _extract_downloaded_archive
    _unzip_7z(output_path)
  File "download_sample_data.py", line 204, in _unzip_7z
    arc = Archive7z(open(fname, 'rb'))
  File "/home/tom/anaconda3/envs/py36n/lib/python3.6/site-packages/py7zlib.py", line 746, in __init__
    raise FormatError('not a 7z file')
py7zlib.FormatError: not a 7z file

looks like it failed on the 1st section of the Puget Sound Lidar data>>> q47122d2101.7z
What do I need to do? looks like all I have is the NYC Taxi and NYC Crime...

I'm not sure what you mean about installing datashader using pip, because we only provide it on conda, but in any case you should be able to fix it by installing the latest development release:
conda install -c bokeh/label/dev datashader

We're working on a full new 0.6 release, but in the meantime this should address the fact that the lidar examples were moved on their external site.

I have a Conda 3.6 env on Ubuntu 16.04 I got DS installed using PIP (having previously installed all prerequisites and tested out holoviews..)

Just to be clear, do you mean you installed all the prerequisites using conda, and then you did pip install -e . inside a git clone of datashader? Or did you mean something else?


chore(release): Automated agent plugin release notes (v0.12.3)

Automated PR

Merged on https://github.com/armory/docs/pull/2014


if use long project name autogenerated resource names might be longer than 63 characters

Bug Report
What did you do?
generate project with command:
operator-sdk init --plugins helm --domain $(DOMAIN) --group $(GROUP) --version $(APIVERSION) --kind $(KIND) --helm-chart=../charts/$@/ --project-name my-random-long-project-name-1

This will initiate project and as an example one of the service name would be longer than 63 characters allowed by k8s and this will  cause problem with deployment of operator. Please see below for the error message from OLM (got it from subscription details):
error updating service: my-random-long-project-name-1-controller-manager-metrics-service: Service "my-random-long-project-name-1-controller-manager-metrics-service" is invalid: metadata.name: Invalid value: "my-random-long-project-name-1-controller-manager-metrics-service": must be no more than 63 characters

What did you expect to see?
I would expect warning or failure of operator-sdk init, or some kind of truncation of the name to be within the limits.
What did you see instead? Under which circumstances?
operator sdk created operator and I could identify the problem only on the testing phase.
Environment
Operator type:
Operator type:
/language helm
Kubernetes cluster type:
OpenShift
$ operator-sdk version
operator-sdk version: "v1.22.2", commit: "da3346113a8a75e11225f586482934000504a60f", kubernetes version: "1.24.1", go version: "go1.18.4", GOOS: "darwin", GOARCH: "amd64"
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"20+", GitVersion:"v1.20.8-dispatcher", GitCommit:"283881f025da4f5b3cefb6cd4c35f2ee4c2a79b8", GitTreeState:"clean", BuildDate:"2021-09-14T05:14:54Z", GoVersion:"go1.15.13", Compiler:"gc", Platform:"darwin/amd64"}
Possible Solution
I would expect warning or failure of operator-sdk init, or some kind of truncation of the name to be within the limits.
Additional context
N/A

That is not a bug it is a validation. The name is used to create the namespace. Therefore, k8s has a limit of size which needs to be respected.

That is not a bug it is a validation. The name is used to create the namespace. Therefore, k8s has a limit of size which needs to be respected.

in this particular case the problem no with the namespace name, but service name for the metrics service my-random-long-project-name-1-controller-manager-metrics-service.
I felt that operator sdk should not be generating manifests that are not deployable on k8s, i.e. either provide warning or fail init command, or have some prerequisites on project name length.

Hi @maratsal,
I understand the problem. We check the name of the project here: https://github.com/kubernetes-sigs/kubebuilder/blob/master/pkg/plugins/common/kustomize/v1/init.go#L95-L97 (SDK uses Kubebuilder as lib)
So, we need to figure out:

a) Do we need to reduce the size allowed for the project name? If so the solution is in the Kubebuilder
OR
b) No matter the size it will never fail?

Could you test it out with a bigger name and let us know if it will be allowed or not?

hi @camilamacedo86,
Let me post commands here to reproduce the issue. You can run following and you will get service name that is longer than 63 characters:
$ operator-sdk init --plugins helm --domain mydomain.com --group mygroup --version v1alpha1 --kind Nginx --helm-chart=bitnami/nginx --project-name my-random-long-project-name-nginx
Writing kustomize manifests for you to edit...
Creating the API:
$ operator-sdk create api --group mygroup --version v1alpha1 --kind Nginx --helm-chart bitnami/nginx
Writing kustomize manifests for you to edit...
Created helm-charts/nginx
W0816 08:10:42.188974   70636 gcp.go:120] WARNING: the gcp auth plugin is deprecated in v1.22+, unavailable in v1.25+; use gcloud instead.
To learn more, consult https://cloud.google.com/blog/products/containers-kubernetes/kubectl-auth-changes-in-gke
Generating RBAC rules
WARN[0009] The RBAC rules generated in config/rbac/role.yaml are based on the chart's default manifest. Some rules may be missing for resources that are only enabled with custom values, and some existing rules may be overly broad. Double check the rules generated in config/rbac/role.yaml to ensure they meet the operator's permission requirements.
$
$
$
$ make bundle
operator-sdk generate kustomize manifests -q

Display name for the operator (required):
> nginx operator

Description for the operator (required):
> nginx operator

Provider's name for the operator (required):
> nginx operator

Any relevant URL for the provider name (optional):
>

Comma-separated list of keywords for your operator (required):
> nginx

Comma-separated list of maintainers and their emails (e.g. 'name1:email1, name2:email2') (required):
><EMAIL_ADDRESS>cd config/manager && /usr/local/bin/kustomize edit set image controller=controller:latest
/usr/local/bin/kustomize build config/manifests | operator-sdk generate bundle -q --overwrite --version 0.0.1
INFO[0000] Creating bundle.Dockerfile
INFO[0000] Creating bundle/metadata/annotations.yaml
INFO[0000] Bundle metadata generated suceessfully
operator-sdk bundle validate ./bundle
INFO[0000] All validation tests have completed successfully
$ ag controller-manager-metrics-service
config/rbac/auth_proxy_service.yaml
6:  name: controller-manager-metrics-service

bundle/manifests/my-random-long-project-name-nginx-controller-manager-metrics-service_v1_service.yaml
7:  name: my-random-long-project-name-nginx-controller-manager-metrics-service
$ echo my-random-long-project-name-nginx-controller-manager-metrics-service | wc -c
      69
$

So basically this manifest's service name gets longer than 63 characters: bundle/manifests/my-random-long-project-name-nginx-controller-manager-metrics-service_v1_service.yaml
I think operator-sdk should be catching the problem either when we are running operator-sdk generate kustomize manifests -q or on the operator-sdk bundle validate ./bundle but in fact it is not happening.


added chalk to dependencies

Application would fail to load with
npm ERR! Darwin 15.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
npm ERR! node v5.1.0
npm ERR! npm  v3.3.12
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>start: `electron main.js`
npm ERR! Exit status 7
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>start script 'electron main.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the betwixt package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     electron main.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls betwixt
npm ERR! There is likely additional logging output above.

Due to missing the chalk dependency.

:+1: LGTM

:+1:

Thank you!


cbi.js / cbi_d_update() always gives error

Reported by reporter on 24 Jun 2010 07:53 UTC
var entry is defined inside the loop, and accessed after loop is over (if (entry.parent)...), which breaks execution.
Needs to declare the var before the loop & check for non-null value.

With no reporter an no context, and ancient, this isn't a useful report.


peer review feedback

put the labels of radio buttons all in one line
explain the terminologies like seat kilometers
maybe you can change the order of the first bar chart from ASC to DESC, because people may be more interested in the more dangerous airlines.
in the second tab, specify dropdown labels terminologies. For example, change incidents to incidents (fatal & non-fatal).
swap the order of the boxplot on the x-axis and change the name of x-axis names to make them more readable.

issues have been created as per feedback given.


any prognosis on how long until update for D&D5e v3.3.1 ?

title says it all - are there any approximations?
if this is not issue-worthy, I apologize in advance

There is not official ETA. It's a work in progress.


Docs generic default examples

Codecov Report

Merging #116 (160f61d) into main (0ae7604) will decrease coverage by 0.33%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #116      +/-   ##
==========================================
- Coverage   97.22%   96.89%   -0.34%
==========================================
  Files          12       12
  Lines         902      902
==========================================
- Hits          877      874       -3
- Misses         25       28       +3

Impacted Files
Coverage Δ

.../autodoc_pydantic/directives/options/validators.py
77.14% <0.00%> (-5.72%)
:arrow_down:

.../autodoc_pydantic/directives/options/composites.py
97.40% <0.00%> (-1.30%)
:arrow_down:

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 0ae7604...160f61d. Read the comment docs.


Question: sealos build cloud image raise argument list too long exception when running as a non root user.

Which command or component
sealos build -f Dockerfile -t cloudimages/es:7.4.2-r19 .
The Description of the bug
When trying to build a cloud image (e.g. elasticsearch) from bitnami chart repository https://charts.bitnami.com/bitnami using a normal user (non-root), the following exception raises:
ERRO[0000] fork/exec /proc/self/exe: argument list too long
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)

I have found that buildah created many processes during building images,  (My computer have 28 cores and 56 threads).
How to reproduce（pictures can be attached if necessary）

Add a  bitnami (e.g. elasticsearch) helm chart to build a cloud image

mkdir es && cd es
helm repo add https://charts.bitnami.com/bitnami
helm pull bitnami/elasticsearch
echo << Dockerfile
FROM scratch
COPY . .
CMD ["helm install es elasticsearch-19.2.2.tgz --namespace default --create-namespace"]
<<EOF

Add image to images/shim directory

mkdir -p images/shim
echo "bitnami/elasticsearch:7.4.2-r19" > images/shim/images

build the image

sealos build -f Dockerfile -t cloudimages/es:7.4.2-r19 .

Test Result
sealos build -f Dockerfile -t cjbdi/cloudimages/es:7.4.2-r19 .
2022-09-02T08:23:49 info lookup in path charts
2022-09-02 08:23:49.140291712 +0800 CST m=+0.035297888 write error: can't open new logfile: open /var/lib/sealos/logs/sealos.log: permission denied
2022-09-02T08:23:49 info path charts is not exists, skip
2022-09-02 08:23:49.15285393 +0800 CST m=+0.047860070 write error: can't open new logfile: open /var/lib/sealos/logs/sealos.log: permission denied
2022-09-02T08:23:49 warn if you access private registry,you must be 'sealos login' or 'buildah login'
2022-09-02 08:23:49.250994917 +0800 CST m=+0.146001087 write error: can't open new logfile: open /var/lib/sealos/logs/sealos.log: permission denied
2022-09-02T08:23:49 info pull images [bitnami/elasticsearch:7.4.2-r19] for platform is linux/amd64
2022-09-02 08:23:49.251189271 +0800 CST m=+0.146195488 write error: can't open new logfile: open /var/lib/sealos/logs/sealos.log: permission denied
Pulling image: docker.io/bitnami/elasticsearch:7.4.2-r19
105084d36011: already exists
4dc17218983d: already exists
3c9020349340: already exists
1d0b6cb2895e: already exists
232cf6aa27ba: already exists
ed9e935092ee: already exists
b4867cdaa73c: already exists
2066b2916731: already exists
955d1fae9e60: already exists
f1601cb005fd: already exists
Status: images save success
2022-09-02T08:23:54 info output images [docker.io/bitnami/elasticsearch:7.4.2-r19] for platform is linux/amd64
2022-09-02 08:23:54.399583655 +0800 CST m=+5.294589821 write error: can't open new logfile: open /var/lib/sealos/logs/sealos.log: permission denied
ERRO[0000] fork/exec /proc/self/exe: argument list too long
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)
ERRO[0000] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0000] (Unable to determine exit status)
.......... ( repeated many times)
ERRO[0182] error parsing PID "": strconv.Atoi: parsing "": invalid syntax
ERRO[0182] (Unable to determine exit status)
Error: exit status 1
Usage:
  sealos build [flags] PATH

Examples:
sealos build -t labring/kubernetes:v1.24.0 .

Flags:
      --basic-auth           pull image auth policy,default is token auth
  -h, --help                 help for build
  -f, --kubefile string      kubefile filepath (default "Kubefile")
  -m, --max-pull-procs int   maximum number of goroutines for pulling (default 5)
      --platform string      set the OS/ARCH/VARIANT of the image to the provided value instead of the current operating system and architecture of the host (for example linux/arm) (default "linux/amd64")
  -t, --tag string           tagged name to apply to the built image

Global Flags:
      --cluster-root string   cluster root directory (default "/var/lib/sealos")
      --debug                 enable debug logger

exit status 1

What you expected to happen
Expected to successfuly build the cloud image
Operating environment

Docker version:   eg. 20.10.7

Kubernetes version: eg.kube1.18.8.tar.gz

Sealos version: 4.1.0

Operating system: eg. ubuntu 20.04

Runtime environment:  physical machine (Intel(R) Xeon(R) CPU E5-2680 v4 @ 2.40GHz x2,  28cores, 94GB MEM, 2 TB HDD)

Cluster size: single node

Additional information:

buildah version: buildah version 1.25.0-dev

containerd version: 1.5.9-0ubuntu1~20.04.4

user is root ?

Non-ROOT has not been supported yet.


Can't disable global media keys.

CPod version:
v1.27.1
Platform:
Windows 8.1
Unchecking the box for "Use global media keys" doesn't save on exit. Which is required for the setting to take effect. Therefore it's always enabled and I don't want that. I only just started using CPod so I don't know if this is an issue caused by the last update or not.

Thank you for the bug report. The fix will be present in the next release.


fix: #777 - Add support for FIFO headers for SNS FIFO topics.

:loudspeaker: Type of change

[ ] Bugfix
[ ] New feature
[ x] Enhancement
[ ] Refactoring

:scroll: Description

Added support of message-group-id and message-deduplication-id. They will be set to the appropriate fields of PublishRequest. This will make it possible to post to a FIFO SNS topic.
:bulb: Motivation and Context
Fixes https://github.com/spring-cloud/spring-cloud-aws/issues/777.
:green_heart: How did you test it?
Tested with a real FIFO queue on AWS. Also works with Localstack.
:pencil: Checklist

[ ] I reviewed submitted code
[ ] I added tests to verify changes
[ ] I updated reference documentation to reflect the change
[ ] All tests passing
[x ] No breaking changes

:crystal_ball: Next steps

@dmitry-weirdo Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@dmitry-weirdo Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@dmitry-weirdo Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@dmitry-weirdo Thank you for signing the Contributor License Agreement!

Thanks for the PR, this feature has been already implemented in https://github.com/awspring/spring-cloud-aws/pull/130
https://github.com/spring-cloud/spring-cloud-aws is a maintenance only repository, development moved to https://github.com/awspring/spring-cloud-aws


Possible to use with PDQ Deploy?

Have someone experience to use this with PDQ Deploy / Inventory to edit GPOs for local machines on network or domain ?

I did a little reading on PDQ Deploy (since I was previously unfamiliar with it) and it looks like you could use it to replace local GPOs by creating a custom package with a file copy followed by a bit of PowerShell to invoke policy refresh. Unfortunately, per this documentation page it appears that a paid version of PDQ Deploy is necessary for those step types. I'm therefore unable to test any methods, but if you have a fancy version, I'd be happy to work with you to figure out a solution.

https://www.pdq.com/try/
14 days trial is possible?

Sorry for the long wait! I finally got an environment set up where I can test this, and I managed to get something working. To create the policy settings you want to deploy, use File | Open Policy Resources to create a POL file for both the computer and user sources. I called them comp.pol and user.pol respectively. Once you have those opened, set your policy settings as normal. After you've saved, copy the POL files and Policy Plus.exe to a new folder.
In PDQ Deploy, create a new package. Set its "run as" option to Local System. Add a File Copy step, with the POL-and-EXE-containing folder as the source and $(Repository) as the destination. In the File Patterns box, put *.pol and *.exe. (This will keep any loose CMTX files out of the way if you ever want to edit the POLs right from the deployment folder.) Add a PowerShell step with this script:
$repo = [System.Environment]::ExpandEnvironmentVariables("$(Repository)")
[System.Reflection.Assembly]::LoadFile("$repo\Policy Plus.exe")
$compLoader = New-Object PolicyPlus.PolicyLoader ('LocalGpo', '', $false)
$compSrc = $compLoader.OpenSource()
$compPol = [PolicyPlus.PolFile]::Load("$repo\comp.pol")
$compPol.Apply($compSrc)
$compLoader.Save()
$compLoader.Close()
$userLoader = New-Object PolicyPlus.PolicyLoader ('LocalGpo', '', $true)
$userSrc = $userLoader.OpenSource()
$userPol = [PolicyPlus.PolFile]::Load("$repo\user.pol")
$userPol.Apply($userSrc)
$userLoader.Save()
$userLoader.Close()
gpupdate

This script applies the deployed POL files onto the computer's local GPO. If you're only interested in one section, remove the code specific to the other. There is then no need to deploy the POL for the section you don't want.
Note that if you configure a policy, deploy, then unconfigure the policy, the configuration will probably stick. If that's a problem, or if this setup doesn't do what you're after, please let me know.


Enhancements and Fixes for Documentation

Summary:
This pull request introduces a series of refinements and corrections to the documentation, ensuring clearer instructions and better readability for the end users.
Details:

General: Improved grammar, fixed typos, and reformatted content for consistency.
Introduction: Refined configuration instructions and added clarity to the setup process.
Features: Enhanced descriptions for the various modes and provided clear use-cases.
App Configs: Clarified configuration settings, added type details, and fixed format for code snippets.
Figma Configs: Detailed instructions on Figma settings for better integration with Figus.
CLI: Improved command descriptions, provided clear differentiation between commands, and formatted command snippets.
Index: Adjusted content structure for a better landing page experience.

Rationale:
Documentation is the gateway for developers and users to understand and use the Figus CLI effectively. Ensuring its clarity and accuracy is essential for smooth onboarding and efficient usage.
I'd appreciate a thorough review to ensure that the changes align with the project's standards and expectations. Feedback is welcome!
Thank you!

@eyallampel1
Beautiful man, thank you!!


Cannot SendRevocationRegistryEntryAsync

Describe the bug
"Ledger operation rejected" when call "_credentialService.RevokeCredentialAsync(agentContext, credentialRecord.Id)"
To Reproduce
Steps to reproduce the behavior:

Created credential definition for a schema (EnableRevocation = true).
Ensured RevocationRegistryRecord and the tail file was created in "/tails" folder.
Successfully issued a document. The receiver has accepted it and the credential status became "Issued"
Called "_credentialService.RevokeCredentialAsync(agentContext, credentialRecord.Id) --> Ledger operation rejected.

Expected behavior
Expected to successfully write the delta state on the ledger as all previous ledger operations passed.
Screenshots
Credential record:

The revocRegistryDeltaJson:

**Desktop **

OS: Windows
.NET 5.0
genesis file: pool_transactions_bcovrin_test_genesis

Additional context
The ledger rejects the SendRevocationRegistryEntryAsync action with the error message "Ledger operation rejected".
Thanks.

The problem was that the credential definition was created with Endpoint.DID, not with IssuerDid:


E2E test "test_unhide_a_plant_by_changing_the_map_date" fails randomly.

Describe the Bug
There seems to be a timing issue because rendering PlantsLayerLeftToolbar takes too long.
This might also be an indication of a performance issue with the mentioned component.
Steps to Reproduce the Problem
Run E2E tests in the CI Pipeline.
Expected Result
"test_unhide_a_plant_by_changing_the_map_date" completes successfully when the underlying functionality works correctly or fails otherwise.
Actual Result
"test_unhide_a_plant_by_changing_the_map_date" fails randomly even though the functionality underlying functionality seems to work correctly.
After CI reruns using "jenkins build please" the E2E-Test may complete without issue even though the code has not changed.

Yes, hopefully, reopen if u see this happen again.


Export template installation allows installing files outside the templates folder (regression from #26283)

Open Windows startup folder to witness the fun - Start->Run->shell:startup
Download and install attached "export templates" (.tpz inside .zip cause GitHub doesn't like files with unknown extensions)
...
Profit!

completely_legit_export_templates_for_windows.tpz.zip
Obviously using export templates from unknown sources is not the right thing to do, but maybe we should sanitize filenames a bit before extracting (at least remove nasty stuff like ..).
Originally posted by @bruvzg in https://github.com/godotengine/godot/pull/26283#issuecomment-467386288

For the reference, unzip properly skips ../ and we should do the same:
$ cd /home/akien/tmp/godot/bug
$ mkdir -p a/b/c/d/e
$ cd a/b/c/d/e
$ unzip ../../../../../completely_legit_export_templates_for_windows.tpz
Archive:  ../../../../../completely_legit_export_templates_for_windows.tpz
   creating: templates/
  inflating: templates/version.txt
warning:  skipped "../" path component(s) in templates/../../../Microsoft/Windows/Start Menu/Programs/Startup/godot_locker.exe
  inflating: templates/Microsoft/Windows/Start Menu/Programs/Startup/godot_locker.exe
$ find
.
./templates
./templates/version.txt
./templates/Microsoft
./templates/Microsoft/Windows
./templates/Microsoft/Windows/Start Menu
./templates/Microsoft/Windows/Start Menu/Programs
./templates/Microsoft/Windows/Start Menu/Programs/Startup
./templates/Microsoft/Windows/Start Menu/Programs/Startup/godot_locker.exe

Similar issue happens with the asset library.
In this case it requires either fill set of .. directory entries in addition to malformed filename or windows path separators in the filename part with ...
Even worse, in the second case (windows path separators) UI is NOT displaying .. in the asset install dialog (filename is displayed) but still extracting files outside the project folder.
Test file:
addons.zip
UI:

Actual file content:
unzip -v ./addon.zip
Archive:  ./addon.zip
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
       0  Stored        0   0% 02-26-2019 13:45 00000000  addons/
      12  Defl:N       14 -17% 02-26-2019 11:51 945935bd  addons/..\..\..\..\..\virus.exe
--------          -------  ---                            -------
      12               14 -17%                            2 files

Issue is also present on OS X with 3.1 beta 7

Is there anything else we should be careful of apart from ..?

The issue with the export templates manager is fixed.

Similar issue happens with the asset library.

This likely still needs a similar fix.


Displays real name regardless of if Google authentication is cut or not

This is, to put it lightly, a very bothersome issue that's resulted in us wasting quite a bit of time that we otherwise would've been able to dedicate towards working on our project, especially since I, the host, care so much about preventing anyone but personally related people from knowing my real name.
One of our members even outright accused it of storing usernames in a hidden location.
This issue arose when I resorted to a Google login since GitHub login was failing out.

Hey @juujuujj,
are you using our public server instance to host the session? You should be able to use the anonymous login on our website if you don't want to spread your real name:

Note that only the Username field is required. You can leave the email empty.
If you're using your own server instance, you can set the OCT_ACTIVATE_SIMPLE_LOGIN environment variable to true to enable the anonymous login for any self-hosted server.

One of our members even outright accused it of storing usernames in a hidden location.

Are you using the collaboration service via VS Code? We store the JWT returned by the server in the secret storage of VS Code. So I guess one could argue that we store it in a hidden location?
https://github.com/eclipse-oct/open-collaboration-tools/blob/596ca0cbee6d26ec83042d4e199fcd50c963e68d/packages/open-collaboration-vscode/src/collaboration-connection-provider.ts#L28
However, you can clear all stored data by running the Open Collaboration Tools: Sign Out command. That will force you to login again before joining a session.


DOC: stats: alternative loc-scale handling in levy_stable

Describe your issue.
This problem was reported as a question on stackoverflow.
With the default parametrization S1, levy_stable does not handle loc and scale correctly.  We say

Specifically, levy_stable.pdf(x, alpha, beta, loc, scale) is identically equivalent to levy_stable.pdf(y, alpha, beta) / scale with y = (x - loc) / scale.

(We say the same for all the continuous univariate distributions.)
But this property fails for levy_stable.  For example, the graphs in the following plot (generated by the script below) should coincide, but they do not.

Reproducing Code Example
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import levy_stable

alpha = 1
beta = 1
loc = 1
scale = 3

# Uncomment the following to see the correct behavior.
# levy_stable.parameterization = 'S0'

x = np.linspace(-5, 10, 1000)
y1 = levy_stable.pdf(x, alpha, beta, loc=loc, scale=scale)
y2 = levy_stable.pdf((x-loc)/scale, alpha, beta)/scale

plt.plot(x, y1, '--', linewidth=1,
         label='pdf(x, alpha, beta, loc=loc, scale=scale)')
plt.plot(x, y2, alpha=0.4, linewidth=3,
         label='pdf((x-loc)/scale, alpha, beta)/scale')

plt.legend(shadow=True, framealpha=1)
plt.grid(alpha=0.25)
plt.savefig('levy_stable_plot.png')

Error message
No error message.

SciPy/NumPy/Python version and system information
1.11.2 1.25.2 sys.version_info(major=3, minor=11, micro=1, releaselevel='final', serial=0)
Build Dependencies:
  blas:
    detection method: pkgconfig
    found: true
    include directory: /opt/arm64-builds/include
    lib directory: /opt/arm64-builds/lib
    name: openblas
    openblas configuration: USE_64BITINT= DYNAMIC_ARCH=1 DYNAMIC_OLDER= NO_CBLAS=
      NO_LAPACK= NO_LAPACKE= NO_AFFINITY=1 USE_OPENMP= SANDYBRIDGE MAX_THREADS=3
    pc file directory: /opt/arm64-builds/lib/pkgconfig
    version: 0.3.21.dev
  lapack:
    detection method: pkgconfig
    found: true
    include directory: /opt/arm64-builds/include
    lib directory: /opt/arm64-builds/lib
    name: openblas
    openblas configuration: USE_64BITINT= DYNAMIC_ARCH=1 DYNAMIC_OLDER= NO_CBLAS=
      NO_LAPACK= NO_LAPACKE= NO_AFFINITY=1 USE_OPENMP= SANDYBRIDGE MAX_THREADS=3
    pc file directory: /opt/arm64-builds/lib/pkgconfig
    version: 0.3.21.dev
  pybind11:
    detection method: config-tool
    include directory: unknown
    name: pybind11
    version: 2.10.4
Compilers:
  c:
    commands: cc
    linker: ld64
    name: clang
    version: 14.0.0
  c++:
    commands: c++
    linker: ld64
    name: clang
    version: 14.0.0
  cython:
    commands: cython
    linker: cython
    name: cython
    version: 0.29.36
  fortran:
    commands: gfortran
    linker: ld64
    name: gcc
    version: 12.1.0
  pythran:
    include directory: ../../pip-build-env-pynhp79a/overlay/lib/python3.11/site-packages/pythran
    version: 0.13.1
Machine Information:
  build:
    cpu: aarch64
    endian: little
    family: aarch64
    system: darwin
  cross-compiled: false
  host:
    cpu: aarch64
    endian: little
    family: aarch64
    system: darwin
Python Information:
  path: /private/var/folders/76/zy5ktkns50v6gt5g8r0sf6sc0000gn/T/cibw-run-b55l7izd/cp311-macosx_arm64/build/venv/bin/python
  version: '3.11'

Somehow levy_stable_gen deliberately overrides the pdf method ? This is ...unorthodox
    @inherit_docstring_from(rv_continuous)
    def pdf(self, x, *args, **kwds):
        # override base class version to correct
        # location for S1 parameterization
        if self._parameterization() == "S0":
            return super().pdf(x, *args, **kwds)
        elif self._parameterization() == "S1":

Changing to _pdf as usually fixes the issue reported here but leads to a test failure somewhere else: https://github.com/scipy/scipy/blob/2d27cf72806113e64f3eb4f3831dfd46bda1646c/scipy/stats/tests/test_distributions.py#L5384

I think the problem is not with loc-scale handling, but with the claim that

Specifically, levy_stable.pdf(x, alpha, beta, loc, scale) is identically equivalent to levy_stable.pdf(y, alpha, beta) / scale with y = (x - loc) / scale.

This relationship does not hold for the S1 parameterization.  In the S1 parameterisation, when alpha = 1, the relationship of a rescaled distribution X to the original Z is X = scale * Z + loc + beta * 2 / pi * scale * log(scale).  See Definition 1.8 in Stable Distributions.
We can produce overlapping density curves using the default (S1) parameterization if we account for the relationship between loc and scale parameters in this parameterization.

This chart is obtained by inserting the following into the original reproducing code above:
loc_S1 = loc + beta*2/np.pi*scale*np.log(scale)
y3 = levy_stable.pdf((x - loc_S1)/scale, alpha, beta)/scale
plt.plot(x, y3, alpha=0.4, linewidth=3,
         label='pdf((x-loc_S1)/scale, alpha, beta)/scale')

Thanks @lutefisk. I expected this was due to the alternative parameterization but wasn't sure. Would you be willing to adjust the documentation to make this more clear?

@mdhaber I'm happy to look at the documentation, though if anybody else actually knows what they're doing they needn't hold back on my account.

At https://github.com/scipy/scipy/blob/686422c4f0a71be1b4258309590fd3e9de102e18/scipy/stats/_levy_stable/init.py#L634-L1121, the standard bit about loc/scale is injected by  %(after_notes)s. I think that needs to be replaced.

Hmm.

This relationship does not hold for the S1 parameterization. In the S1 parameterisation, when alpha = 1, the relationship of a rescaled distribution X to the original Z is X = scale * Z + loc + beta * 2 / pi * scale * log(scale). See Definition 1.8 in Stable Distributions.

If that line of reasoning is right, then I would expect to see a deviation from simple rescaling in the S0 parameterization when alpha is not 1, based on Definition 1.7.  But rescaling seems to work fine in the S0 parameterization, for a variety of alpha and beta values.  So there is something I don't yet understand about the parameterization.

You won't need to build SciPy locally for that. Just be sure to include [skip actions] [skip cirrus] in your commit message so that only the docs CI service runs.


I'm sorry. I recognized my words and actions were wrong, so I grew up and learned from them. Not a little kid anymore. If you don't care, close my pr.


Adapt to multiple class segmentation

Hi,
the original code is really a nice implementation of u-net architecture for binary class segmentation.
May you consider to adapt this code for multiple class segmentation?
Thanks!

Hi @panovr,
I am sorry but I don't have the time and resources to adapt the code for multiple class segmentation. If you feel like working on this you are free to fork the project and work on this.