Cherry pick/57

https://github.com/fluxcd/webui/pull/57

@adberger that you for this PR. We decided to wait with the Go 1.17 upgrade until our upstream dependencies (controller-runtime, helm, kstatus, etc) are aligned. Please see: https://github.com/fluxcd/flux2/issues/2016

@stefanprodan Is there a reason to do this, even if it works for this project?
Just asking out of curiosity

Is there a reason to do this, even if it works for this project?

Yes we want to have an homogeneous build system, using Go 1.17 in webui that consumes various Flux packages that are pinned on Go 1.16 is not desirable.

Is there a reason to do this, even if it works for this project?

Yes we want to have an homogeneous build system, using Go 1.17 in webui that consumes various Flux packages that are pinned on Go 1.16 is not desirable.

Okay then, I removed the upgrade to go version 1.17

@kingdonb can you take a look at it?

@adberger LGTM. However, can you please update the PR to have a more detailed description of what it contains: fixes context names being replaced with cluster names in the context selector dropdown, refactors context selector changed event, etc.
@stefanprodan This works and should be merged

@juozasg Thanks for your comment. The context dropdown bug was already fixed and merged, see #59
But I changed the title & description of this PR, so I hope this is good now.

@adberger please rebase with upstream main and force push.

@stefanprodan Is this way (merge from main in to this branch) ok too?


Build on FreeBSD

This PR updates continuity to include https://github.com/containerd/continuity/pull/173 and updates containerd to compile for FreeBSD.  The built containerd and ctr binaries run, with some plugins not yet loading.
% sudo ctr plugin ls
TYPE                            ID                       PLATFORMS        STATUS
io.containerd.content.v1        content                  -                ok
io.containerd.snapshotter.v1    native                   freebsd/amd64    ok
io.containerd.metadata.v1       bolt                     -                ok
io.containerd.differ.v1         walking                  freebsd/amd64    ok
io.containerd.gc.v1             scheduler                -                ok
io.containerd.service.v1        introspection-service    -                ok
io.containerd.service.v1        containers-service       -                ok
io.containerd.service.v1        content-service          -                ok
io.containerd.service.v1        diff-service             -                ok
io.containerd.service.v1        images-service           -                ok
io.containerd.service.v1        leases-service           -                ok
io.containerd.service.v1        namespaces-service       -                ok
io.containerd.service.v1        snapshots-service        -                ok
io.containerd.runtime.v2        task                     freebsd/amd64    ok
io.containerd.service.v1        tasks-service            -                error
io.containerd.internal.v1       restart                  -                error
io.containerd.grpc.v1           containers               -                ok
io.containerd.grpc.v1           content                  -                ok
io.containerd.grpc.v1           diff                     -                ok
io.containerd.grpc.v1           events                   -                ok
io.containerd.grpc.v1           healthcheck              -                ok
io.containerd.grpc.v1           images                   -                ok
io.containerd.grpc.v1           leases                   -                ok
io.containerd.grpc.v1           namespaces               -                ok
io.containerd.internal.v1       opt                      -                ok
io.containerd.grpc.v1           snapshots                -                ok
io.containerd.grpc.v1           tasks                    -                error
io.containerd.grpc.v1           version                  -                ok

Are we going to get a shim implementation for jail(8)? 👀

Are we going to get a shim implementation for jail(8)? :eyes:

Maybe...depends on what my free time looks like :smile: (I'm exploring on my personal time not work time).  Though I suspect that we wouldn't want an in-tree shim implementation for jail(8) yet as it would imply a bit more about supported use-cases than I think y'all are ready to take on.  Fortunately, out-of-tree, out-of-process shim plugins are already a supported use-case, so I can implement something without having to imply that the containerd project officially supports FreeBSD jails.

Seems like if we accept this we should also add the cross-compile to some part of the GH Actions CI to keep this at least in compilable state? Similar to what was added to continuity

@estesp Done


.NET Core / .NET Standard Support

Does this library support .NET Core / .NET Standard?

It does now.
But please note that the library is Windows only since it relies on Windows Registry and Windows Task Scheduler. So no mac/linux compatibility.

Thanks!
I'm using it for a .NET Core Winforms Application, so not MacOS or Linux support necessary.


net, e2e: Rm VMI with custom PCI address

What this PR does
This scenario is already exercised in "VMI with an interface that has ACPI Index set".

Fixes #
Why we need it and why it was done in this way
The following tradeoffs were made:
The following alternatives were considered:
Links to places where the discussion took place:
Special notes for your reviewer

Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[ ] Design: A design document was considered and is present (link) or not required
[ ] PR: The PR description is expressive enough and will help future contributors
[ ] Code: Write code that humans can understand and Keep it simple
[ ] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
[ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[ ] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
[ ] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
[ ] Community: Announcement to kubevirt-dev was considered

Release note

None

@orelmisan can you please investigate the error on the network lane?
https://prow.ci.kubevirt.io/view/gs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/12569/pull-kubevirt-e2e-k8s-1.30-sig-network/1823034250354495488
even if it is not directly related to this specific change, we seem to encounter a degradation in our jobs.


Add signing with IAM roles

EC2 instances can sign requests if they are assigned an IAM role with Elasticsearch permissions

I just peeked at their source, looks like we could omit if c.Credentials.AccessKeyID != "" { and let it default to env vars, and remove the need for the UseIAMRole field

This doesn't seem to work because if you pass in empty credentials it will try to sign with the empty credentials rather than get them from the env vars or EC2 instance: https://github.com/smartystreets/go-aws-auth/blob/master/common.go#L101
I think we still need a field like UseIAMRole (renamed to something else) so it can get credentials from the env vars or EC2 instance. Also if a user doesn't want to sign the request, calling Sign4 (without any credentials passed) will generate empty credentials to sign the request with rather than skipping the signing. I think there needs to be a way to bypass signing completely if the user doesn't need it.


Add Pillow dependency

Resolves #48
Adds Pillow to the list of dependencies in setup.py.

Tested and works successfully.


set hsva values in onStart

This PR refactors the color logic out of onActive so it can also be applied in onStart. As a result, Android and iOS thumbs can have their position updated by tapping instead of having to tap and then drag before the values update.
https://user-images.githubusercontent.com/16565387/222799629-3c7255ac-893e-4cba-97dd-6f66caa5e049.mov

Ready to merge?

Yeah it's ready now.


Set up a CI job to measure the size of the library

With client-side NPM, it's easy to code yourself into a huge client-side bundle. We should at least be aware of the size of our dependencies. Should be easy to set up with some kind of CI job.

For example, I would like to know how much smaller it would be if we didn't depend on lodash.

@stubailo okay so I really hope I'm doing something wrong but these are the stats that I ran:
┌──────────┬──────────┬──────────┬───────────┬─────────┐
│ File     │ Original │  Gzipped │  Minified │ Gzipped │
├──────────┼──────────┼──────────┼───────────┼─────────┤
│ index.js │  1.01 MB │ 188.3 kB │ 266.77 kB │ 72.4 kB │
├──────────┼──────────┼──────────┼───────────┼─────────┤
│          │  1.01 MB │ 188.3 kB │ 266.77 kB │ 72.4 kB │
└──────────┴──────────┴──────────┴───────────┴─────────┘

changing to lodash.* for the things we need does help (saves around 30kb gzipped) but GraphQL is our biggest weight

Oh snap! Well it's a good thing we checked this out. I'll look into it in more detail today.

getting better with direct imports of what we need:
┌──────────┬───────────┬──────────┬──────────┬─────────┐
│ File     │  Original │  Gzipped │ Minified │ Gzipped │
├──────────┼───────────┼──────────┼──────────┼─────────┤
│ index.js │ 301.33 kB │ 56.81 kB │ 85.38 kB │ 24.2 kB │
└──────────┴───────────┴──────────┴──────────┴─────────┘

but we will need to add type definitions for those files. Should be an easy thing to do though

We don't have a target at the moment. How big is Riot? I'd like this library to feel lightweight, but we don't have to go overboard with code size hacks, especially this early in development.

@stubailo riot is tiny (one of its major draws) it weighs in at 8.61 kb gzipped and minified

Hmm. I think there are a few options to really really cut down the size:

Ship a "simple build" that has the same API but doesn't do any caching at all (so it's less efficient at fetching, but initial load is tiny)
Pre-compile queries at build time and get rid of the GraphQL parser dependencies

Probably something to consider later - is 24kB good enough for your needs right now?

Yep! We are going through our entire app to cut cost where we can and 24kb is :+1: compared to some other libs. I'd be interested in 1. for the embed project I was telling you about though! May have to hack that together soon to try it out!

This is done!


The Install Script is missed

The install script in the docs is missed. It disappeared in all languages.

Look at the Automatic CLI. The script disappeared. See it here.
I am going to fix it.

The install script is there, Can you explain your issue.

Sorry, my fault.
It is a little bit confusing😆. I thought that there must be a script (like shell or bash) under it, but now I found that it is actually for different ways to install it.


make deploy failing as ServiceAccount is created in default namespace and RoleBinding is missing the namespace.

target/kubernetes/kubernetes.yml file got generated from the quarkus extension. The ServiceAccount created does not have any namespace that's why it gets created in the default namespace. As RoleBinding does not have the namespace mentioned throws the below error if you try to apply the above file.
Error from server (Invalid): error when creating "target/kubernetes/kubernetes.yml": ClusterRoleBinding.rbac.authorization.k8s.io "memcachedreconciler-cluster-role-binding" is invalid: subjects[0].namespace: Required value

Error from server (Invalid): error when creating "target/kubernetes/kubernetes.yml": ClusterRoleBinding.rbac.authorization.k8s.io "memcachedreconciler-crd-validating-role-binding" is invalid: subjects[0].namespace: Required value

What did you do?
Create docker image of operator and tries to run using make deploy.
What did you expect to see?
The operator will run without any error.
What did you see instead? Under which circumstances?
Got below errors
Error from server (Invalid): error when creating "target/kubernetes/kubernetes.yml": ClusterRoleBinding.rbac.authorization.k8s.io "memcachedreconciler-cluster-role-binding" is invalid: subjects[0].namespace: Required value

Error from server (Invalid): error when creating "target/kubernetes/kubernetes.yml": ClusterRoleBinding.rbac.authorization.k8s.io "memcachedreconciler-crd-validating-role-binding" is invalid: subjects[0].namespace: Required value

Environment
Operator type:
quarkus-memached-operator
Kubernetes cluster type:
kind
$ operator-sdk version
operator-sdk version: "v1.22.0-23-g6084e6cf-dirty", commit: "6084e6cf1eb393c38d9ebce8f9acee5628b3a5c3", kubernetes version: "v1.24.1", go version: "go1.18.3", GOOS: "darwin", GOARCH: "amd64"
$ java -version (if language is Java)
openjdk version "16.0.2" 2021-07-20
OpenJDK Runtime Environment (build 16.0.2+7-67)
OpenJDK 64-Bit Server VM (build 16.0.2+7-67, mixed mode, sharing)
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.0", GitCommit:"2c6062082e8dbbf36936b35dcc27c6882d3a2f67", GitTreeState:"clean", BuildDate:"2022-01-11T19:37:02Z", GoVersion:"go1.15.14", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1", GitCommit:"5e58841cce77d4bc13713ad2b91fa0d961e69192", GitTreeState:"clean", BuildDate:"2021-05-21T23:01:33Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/amd64"}
Possible Solution
Need to discuss this with the Quarkus team.

July 28th java operators meeting, waiting on Need to discuss this with the Quarkus team.


Publisher cant see subscriber

I am working on mobile app where publisher and subscriber both are android apps.
publisher screen doesnt update/cant see when subscriber joins the session.
is there anything that would help to determine the issue ?

do you mean CrossVonage.Current.IsVideoPublishingEnabled = true;

Its at the time of creating session and token, below role for both users is "Publisher"
User 1 - initiating the session
var OpenTok = new OpenTok(ApiKey, ApiSecret);
string sessionId = OpenTok.CreateSession(mediaMode: MediaMode.ROUTED, archiveMode: ArchiveMode.ALWAYS).Id;
string token = OpenTok.GenerateToken(sessionId,Role.PUBLISHER); // token for user 1

User 2 - other user joining the session
var OpenTok = new OpenTok(ApiKey, ApiSecret);
string user2Token = OpenTok.GenerateToken(sessionId, Role.PUBLISHER); // token for user 2

Thanks @kberawala  let me code it and see if it works

@kberawala i tried your solution and i am still facing the same issue.

@kberawala i tried your solution and i am still facing the same issue.

Without looking at the code, I cant really help much. I followed everything as per the sample and documentation.

I think the issue is resolved, right @kberawala ?


Safe keyword alternative to "this"

Search Terms
this keyword
Suggestion
“this” keyword in Javascript is context dependent, which means its value depends on the calling function. And this is one of the culprits of most subtle and latent run-time errors in Javascript.
The first design goal stated by Typescript in its official documentation is:

Statically identify constructs that are likely to be errors.
https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals

When “this” is used in callback functions or in functions given to forEach as argument, IDE rightfully cannot raise any compile-time errors, giving us the false sense of security, but we get run-time errors because “this” is undefined.
There seem to be two work-arounds:

Using arrow functions
Using .bind(this) syntax

In accordance with the first and foremost design goal of Typescript, I propose a new keyword that will be the alternative of "this" and will always point to the instance of the class.
Examples
Here is a sample ts code:
class RequestManager{

    private successMessage = "Xhr successful.";

    makeRequest() {
        var oReq = new XMLHttpRequest();
        oReq.addEventListener("load", this.responseHandler);
        oReq.open("GET", "www.google.com");
        oReq.send();
    }

    private responseHandler() {
        window.alert(this.successMessage);
    }
}

var reqManager = new RequestManager();
reqManager.makeRequest();

This is what it transpiles to:
var RequestManager = /** @class */ (function () {
    function RequestManager() {
        this.successMessage = "Xhr successful.";
    }
    RequestManager.prototype.makeRequest = function () {
        var oReq = new XMLHttpRequest();
        oReq.addEventListener("load", this.responseHandler);
        oReq.open("GET", "www.google.com");
        oReq.send();
    };
    RequestManager.prototype.responseHandler = function () {
        window.alert(this.successMessage);
    };
    return RequestManager;
}());
var reqManager = new RequestManager();
reqManager.makeRequest();

And in the following piece of code, I added a "self" variable to always point to the class instance:
var RequestManager = /** @class */ (function () {
    var self;
    function RequestManager() {
    	self = this;
        self.successMessage = "Xhr successful.";
    }
    RequestManager.prototype.makeRequest = function () {
        var oReq = new XMLHttpRequest();
        oReq.addEventListener("load", self.responseHandler);
        oReq.open("GET", "www.google.com");
        oReq.send();
    };
    RequestManager.prototype.responseHandler = function () {
        window.alert(self.successMessage);
    };
    return RequestManager;
}());
var reqManager = new RequestManager();
reqManager.makeRequest();

The new keyword that will be alternative to "this" can create such a variable when transpiling.
Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

Adding new keyword in expressions would contradict this guideline:

This wouldn't change the runtime behavior of existing JavaScript code

Adding new syntax to JS expressions is not something the Typescript team does lightly as new developments in ECMAScript might end up conflicting with these.
There is also currently a perfectly decent workaround to this issue, use arrow functions:
class RequestManager{

    private successMessage = "Xhr successful.";

    makeRequest() {
        var oReq = new XMLHttpRequest();
        oReq.addEventListener("load", this.responseHandler);
        oReq.open("GET", "www.google.com");
        oReq.send();
    }

    private responseHandler = ()  => {
        window.alert(this.successMessage);
    }
}

var reqManager = new RequestManager();
reqManager.makeRequest();

Or use bind in the constructor, or when sending the function to  addEventListener

Your proposed code has a problem: only allows a single instance of the class RequestManager (I changed the code inside the class prototype methods to run it on node):
var count = 0;
var RequestManager = /** @class */ (function () {
    var self;
    function RequestManager() {
    	self = this;
        self.successMessage = "Xhr successful: " + count;
        count++;
    }
    RequestManager.prototype.makeRequest = function () {
        self.responseHandler();
    };
    RequestManager.prototype.responseHandler = function () {
        console.log(self.successMessage);
    };
    return RequestManager;
}());
var reqManager = new RequestManager();
var reqManager2 = new RequestManager();

reqManager.makeRequest();
reqManager2.makeRequest();

Will output:
Xhr successful: 1
Xhr successful: 1

Anyway, this will contradict the This wouldn't change the runtime behavior of existing JavaScript code guideline.

This issue seems the round two of your issue #30073.
@RyanCavanaugh answered you there: see #513.

@dragomirtitian I already mentioned the work-arounds in my original post but my point is, isn't it the goal of Typescript to write statically checked code so you will not face run-time errors for things that the compiler can check? And I think "this" is on top of that list. And we should not be resortring to work-arounds for such a fundamental constructs of the language. Just assume you forgot to use an arrow function or a .bind(). Compiler will not be able to raise an error and you will encounter the error in run-time. Isn't this the exact kind of problem Typescript is trying to solve?
@j-oliveras I would like to point out that in #30073, I was proposing that "this" inside a class should always reference the class instance but as @RyanCavanaugh mentioned, this would contradict the current behavior of "this" in current Javascript classes. That is why I proposed a new keyword in my new proposal.
And regarding the problem in my sample code, you are right. I am able to accomplish the desired behavior this way:
var count = 0;
var RequestManager = function () {
	var self = this;
	self.successMessage = "Xhr successful: " + count;
  count++;

  this.makeRequest = function () {
        responseHandler();
    };
  var responseHandler = function () {
        console.log(self.successMessage);
    };
};
var reqManager = new RequestManager();
var reqManager2 = new RequestManager();

reqManager.makeRequest();
reqManager2.makeRequest();

But using an iife as in the code that Typescript transpiles to, it fails as you mentioned. I would appreciate it if you could suggest a solution that will work with the code that Typescript transpiles to right now.

@john-larson you've proposed variants of https://github.com/Microsoft/TypeScript/wiki/FAQ#you-should-emit-classes-like-this-so-they-have-real-private-members and https://github.com/Microsoft/TypeScript/wiki/FAQ#you-should-emit-classes-like-this-so-they-dont-lose-this-in-callbacks


error in building gradle

I have imported the code  of collect from github but I am getting this error
http://stackoverflow.com/questions/37929898/im-trying-to-import-open-data-kit-sc-that-i-got-from-github-but-i-kept-getting/37976096#37976096

You should be using Android Studio 2.1.   Have you created an odk directory and cloned collect, google-play-services, and gradle-config into this directory?  Are you on the correct branches and tags for each repo?  If you have done all of these things, you could also try to just clone the master branch of collect in a directory by itself, then choose "Open an existing Android Studio project", and select the collect directory in Android Studio.  You will need an Internet connection for this option to work.  Does this show any errors?


Warmstart GJK fails

Make sure these boxes are checked before submitting your issue - thank you!

[ ] Ask for help on discord and/or reddit
[ ] Consider providing a dump file using b2World::Dump

Getmetric for 3 points may return a negative number which will make readcache reset simplex.
Suggest using sqr values which will speedup getmetric for 2 points.
Also, when resetting simplex -  keep first simplexvertex instead of picking new arbitrary points

Closing out v2 issues since it is no longer supported.


JfxTextField clear or setText("")  method and JFXComboBox getSelectionModel().clearselection and setValue(null) gives NullPointerException

Hello Thanks for amazing libriary.There is one problem in my project is that I can not clear jfxtextfield text and clear comboBox selection item.I tried both setText("") and clear method but It gives NullPointerException.Please help me to correct it

Hello,
can you provide a sample code demonstrating your issue, as we were not able to reproduce using the latest JFoenix jar.
Regards,


[In Fact Check - DO NOT MERGE] Updates to calculate-state-pension

Pivotal Tracker story.
It is not possible to give accurate estimations for people over the age of 55 so we provide them with only the date and age and then send them to a helpline for further assistance.
Url to test
/calculate-state-pension/y/amount/male/1958-01-02

Run regression tests and integration tests with simplecov and see if there are untested code branches or additional code to remove.
Also, consider using relative dates instead of stubbing time for the whole test (unless this is scheduled to be replaced by another tool, as you've mentioned).

It looks like you're missing the updated "calculate-state-pension-responses-and-expected-results.yml" file: It needs to be regenerated after making changes to the questions-and-responses.yml file. You can generate it with rails r script/generate-responses-and-expected-results-for-smart-answer.rb calculate-state-pension. You'll then need to update the checksum file and regression tests artefacts.

I'm not too keen on stubbing time for the whole test. I'd prefer for each test to set-up what it needs in order to make the assertions it's concerned with. You already seem to be doing (e.g. cd6860fb21b2ed6137fe503aa8ec15045cb3cd15) so I think that stubbing time for the whole test may be overkill.

Run regression tests and integration tests with simplecov and see if there are untested code branches or additional code to remove.

I agree with @tadast. You've removed a lot of tests but none of the corresponding code. It looks like there must be quite a lot we can get rid of as part of this commit.

@chrisroos this has come back from FC and is ready to go live. Is it ok if you handle merging this to master, as you've been working on it already?

@tadast: Sure thing. I'll get this merged to master.

OK, so this still needs more work. These changes to the Smart Answer have resulted in unreachable code that we should remove (found by using the generate-responses-and-expected-outcomes script with code coverage enabled).
I'm not going to be able to do this until Tuesday next week so if it's urgent (i.e. needs to go live before Tuesday) then I'd suggest either @floehopper or @tadast picking it up.

@chrisroos I've done some cleanup, but I didn't find much code to remove. I'll wait for you to double-check this when you're back.

Thanks @tadast. I'm going to take a look at this now.

This looks good to me. I can see that there a few lines that still aren't covered by code coverage but it looks like they may have been redundant before this change anyway - See the notes at the bottom of the commit note for 086a7ca0be520d0ef04e5a50f98465e29c01aa5e.
I think it'd be good to reorganise the last two commits a bit. I think I'd go for three commits:

Update questions-and-responses (currently in the last commit)
Update responses-and-expected-results (currently in the last commit)
Update rendered outcomes in test/artefacts (current in the last two commits)

Can I leave this with you @tadast, or would you still like me to merge it?

I can sort it out tomorrow morning. Feel free to do it today if you want to reduce the number of open PRs :)

@chrisroos is this what you meant? ^

Yup, that looks good to me @tadast :-)


while restoring from seed : Siad has exited unexpectedly. Please submit a bug report including the error log here.

Tried to restore from key 10 times alst night.

BUG REPORT
Stack Trace or error message
Siad has exited unexpectedly. Please submit a bug report including the error log here.
Expected Behavior
restore wallet from key successfully
How to reproduce it (as minimally and precisely as possible)
download sia coin, sync, hit restore from seed.
When i kill the process and open it again, it appears as it is not synced ( at 94.9 ) and then it jumps to 146578 block height directly.
Environment
linux, opensuse

Sia version:
1.3.2
OS:
opensuse 42.3

Do you have a stack trace?

When i kill the process and open it again, it appears as it is not synced ( at 94.9 ) and then it jumps to 146578 block height directly.

This is normal and is fine.

Use this document to find your logs and error message.  Once you've found them post the output here.
https://gist.github.com/tbenz9/8066d74853ab28c23bd7bc1d3c7cdeda


Test for sequence diagram

Hi!
There is another repo for plantuml grammar, which has a test for sequence diagram:
https://github.com/ahlinc/tree-sitter-plantuml/blob/demo/test/corpus/sequence_diagram.txt
It has MIT licence, so maybe it can be reused here and save some time for you :)
Thank you for working on the project.

Ok, I add it now.And you can make pr anytime by the way

Sure. I also packaged this grammar for guix.
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=fee5c15f11fdf243ffc04ce4d91679bab9877d4b
https://packages.guix.gnu.org/packages/tree-sitter-plantuml/1.0.0-0.bea443e


Dark mode now working for all pages

Fixed #216
What is the change?
The dark mode did not persist because the changes were not saved in cookies ie:
saveInCookies was set to false, corrected it, everything seems to work perfectly now! ✨🤩
Related issue?
issue: #216
Checklist:
Before you create this PR, confirm all the requirements listed below by checking the checkboxes [x]:

[x] Have you followed the Contribution Guidelines while contributing.
[x] Have you checked there aren't other open Pull Requests for the same update/change?
[] Have you made corresponding changes to the documentation?
[x] Your submission doesn't break any existing feature.
[x] Have you tested the code before submission?

Screenshots or Video:
Add a screenshot or demo video if appropriate.
Refer this video

Can you change the base branch to develop ?

Done!

@all-contributors please add @vismitap for code


Updated CONTRIBUTING.md with typo fix 😁

Changed "st thwe" to "so that we".

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Thank you @aneuhold for your contribution and congratulations on your first PR merge to this repo! 🎉

@ezioda004 thank you! :slightly_smiling:


Added Typescript support

Closes #2
This adds Typescript support to jest-mock-console.
To ensure that future work on this library does not break the typings file, all tests were converted to their Typescript equivalent.
Overview of changes:

Added a typings file
Converted all *.test.js to *.test.ts
Updated package.json to include:

A reference to the new typings file
Additional dev dependencies to support Typescript files (ts-jest, @types/jest, @types/jasmine, babel-jest, babel-core, typescript).
The addition of Jest as a peer dependency

Contributors additions

Codecov Report

Merging #3 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master     #3   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           2      2
  Lines          25     25
  Branches        3      3
=====================================
  Hits           25     25

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 87b44b4...f4ed089. Read the comment docs.


toJSON and toString

Implement these two methods for better stand alone formatting (see restify/node-restify#952).
Also fixes some inconsistencies in the stringified output with regards to having 'Error' at the end of the code.

code property now has a value of 'Error' for HttpError and RestError. Any subclass will have the name of the error, minus 'Error', i.e., GatewayTimeoutError has a code of GatewayTimeout. All code and restCode properties are now overridable.
If all looks good, let's get this merged.

LGTM :shipit:

Addressed comments - final pass and I'll get it merged. @yunong FYI

Gonna merge this sometime today, I think this will require a major rev due to changes in the code and restCode properties.


How to run demo sveltekit svelte-lexical ?

Hi @umaranis I want to try out svelte-lexical and try to run the demo, for sveltekit but I keep getting this error

Error: Failed to resolve entry for package "svelte-lexical". The package may have incorrect main/module/exports specified in its package.json.
What should I do here ? I made sure I ran npm i svelte-lexical, so what am i missing

Hi @ProtonBeamCannon ,
Have you build the ‘svelte-lexical’ package before running the demo project?
Please have a look at ‘getting started’ section in the ReadMe file. Do let me know if you still face any issues? Thanks.

I tried it again, i followed the read.me and i run the demo playground and demo sveltekit and still got the same error

Hi @ProtonBeamCannon ,
I have just tried on a fresh clone. The build process is broken with npm but works fine with 'pnpm`. It has also happened a few times in the past as well due to the ESM and CommonJS mess.
I will look into the recent package upgrades to find the culprit.

Hi @ProtonBeamCannon ,
I have pushed a fix on npm-build branch.
Could you confirm if it resolves the issue?

Did it resolve for you ?
I created a fresh clone, pick hte npm-build branch, go to the cd packages/svelte-lexical, npm i, npm run build,
I tried to go to the demos playground and sveltekit and npm run dev. but still get the same error, after that i tried run npm install and its the same,
I tried to npm run build on demos/sveltekit and i got this

Maybe this is a clue?
My node v20.6.1 if this matters, also this is the package.json

Hi @ProtonBeamCannon ,
yes, 'npm-build` branch resolves the issue for me.
My node version is 22.5.1.
Are you able to upgrade to this version and test?

Here is my output for the same command

I would appreciate it if you could upgrade your node to 22.5.1

Hi, sorry responding so late, i upgrade the node to v22.5.1

I tried both npm and pnpm in the folder svelte-lexical and svelte-lexical/demo/sveltekit , it didnt work

This is strange.
Could you share the full output of all the commands you are running? For instance, pnpm i, pnnpm build and pnpm dev from the packages/svelte-lexical directory. @ProtonBeamCannon

error during build: [commonjs--resolver] Failed to resolve entry for package "svelte-lexical". The package may have incorrect main/module/exports specified in its package.json.     at packageEntryFailure (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/vite@5.3.3_@types+node@20.12.8/node_modules/vite/dist/node/chunks/dep-CzJTQ5q7.js:47164:15)     at resolvePackageEntry (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/vite@5.3.3_@types+node@20.12.8/node_modules/vite/dist/node/chunks/dep-CzJTQ5q7.js:47161:3)     at tryNodeResolve (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/vite@5.3.3_@types+node@20.12.8/node_modules/vite/dist/node/chunks/dep-CzJTQ5q7.js:46977:16)     at Object.resolveId (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/vite@5.3.3_@types+node@20.12.8/node_modules/vite/dist/node/chunks/dep-CzJTQ5q7.js:46727:19)     at Object.handler (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/vite@5.3.3_@types+node@20.12.8/node_modules/vite/dist/node/chunks/dep-CzJTQ5q7.js:65948:15)     at file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:19778:40     at async PluginDriver.hookFirstAndGetPlugin (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:19678:28)     at async resolveId (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:18359:26)     at async ModuleLoader.resolveId (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/rollup@4.17.2/node_modules/rollup/dist/es/shared/node-entry.js:18762:15)     at async Object.resolveId (file:///C:/Users/user/Desktop/Prog/Lexical/svelte-lexical/node_modules/.pnpm/vite@5.3.3_@types+node@20.12.8/node_modules/vite/dist/node/chunks/dep-CzJTQ5q7.js:12701:10)  ELIFECYCLE  Command failed with exit code 1.

Hi @ProtonBeamCannon ,
As I requested, could you please run these commands from the packages/svelte-lexical folder (not demos/sveltekit)?

Hi sorry for the late  reply, yes what i meant was i tried everything but of course i tried to follow your instruction that i go to packages/svelte-lexical  and then npm install then npm run build after that  i got this error

after that i went to demos/playground and stated in your readme.md and try npm run dev but the i got the error.
Can you show me an example of it working in Stackblitz so that  we can debug this in the same environment together?

Hi @ProtonBeamCannon ,
Here is the StackBlitz for demos/playground:
https://stackblitz.com/~/github.com/umaranis/svelte-lexical/tree/stackblitz-playground?view=editor
Have a look at .stackblitzrc file for the start command (the branch is stackblitz-playground).

@ProtonBeamCannon hit the same issue - fixed by editing packages/svelte-lexical/package.json, change:
"build": "vite build && pnpm package",
to
"build": "vite build && npm run package",
package.json assumes that pnpm` is installed, so another option would be to install it.


Gradle and gradle plugin (launch4j) version upgrades (with some gradle refactoring)

details:

gradle:          6.8.2 -->> 7.4.2
'launch4j' plugin: 2.4.9 -->> 2.5.2
gradle 'shadow' plugin is introduced
gradle configurations are changed (this was a prerequisite for a gradle version 6 to 7 upgrade):
** 'compile' is replaced with 'implementation'
** 'testCompile' is replaced with 'testImplementation'

Closed in favor of #129


Secrets Manager now supports resource-based policies

See here for evidence. Yes, I'm excited 😄

Thank you, and I'm glad you're excited about Secrets Manager supporting resource-based policies. I shared your message with the writer of that service.


Removed scala code, moved python code to standard places

This is huge.  I would recommend just browsing the code corresponding to this commit, instead of looking through the "files changed".

The place to browse the code is here: https://github.com/matt-gardner/deep_qa/tree/remove_scala_code.  I'll worry about fixing the travis config soon.

looks like you need to update pytest.ini though

I don't see deep_qa/project or deep_qa/target - what do you mean?

maybe its just me but when i pull down the PR locally i see those two folders --- it doesnt show up on your branch so i wouldn't worry

oh duh those are gitignored files used by sbt


Folder restructuring

Restructuring the folders to align with categories. Each folder contains a small table of contents with links to each session.

Closing this PR on lieu of this one. #53


PATCH in 1.4.7?

Hello,
1.4.7-SNAPSHOT did not include the PATCH code merged in 305aa67b576d9418aa811acfa868492f33854f37. Will the 1.4.7 release include it? Are you basing the release on the current master HEAD or an older revision?
Thank you for the very useful library.

Hi, yes, PATCH was implemented after GIT TAG 1.3.6, thus will be released in TAG 1.3.7.
Snapshots are based on current master HEAD, releases on GIT tags.
I've just updated Snapshots, but to release we're missing few tickets to resolve.
https://oss.sonatype.org/content/repositories/snapshots/com/loopj/android/android-async-http/1.4.7-SNAPSHOT/


Listener OnImageEventListener actions are not called when view is invisible.

I want to show a progress view and hide subsampling scale image view while loading image. But the event listeners are not called when image view is invisible/hidden(that's interesting). Since I can't set image source to null, is there a way to clear image view as a workaround so I don't need to setVisibility of an image view?

The view does not load if it is hidden, because onDraw will not be called and it may have no dimensions. It needs to be visible on screen, but you can overlay another view with transparency.

I get it, but wouldn't a clear method would be nice?

Use recycle()

I already tried it but it doesn't clear the image. It is still visible. Nothing happened


TravisCI integration

Hey @andyone, why did you close this PR? Looks like there are nice changes in here..

Hi! Main reason - it was accident, PR should be to fork master branch. Second reason - this fork contains changes which breaks compatibility with previous versions.
Main idea of forking was changing name from go.linenoise to go-linenoise, for compatibility with pkg.re/gopkg.in services.


continue:true not matching after the first match

I have the following route configuration:
route:
  continue: true

  # default
  receiver: hipchat-test

  routes:
    - match:
        notify: hipchat-test
      receiver: hipchat-test
      continue: true

    - match:
        notify: hipchat
      receiver: hipchat
      continue: true

    - match:
        notify: hipchat-net
      receiver: hipchat-net
      continue: true

    - match:
        notify: hipchat-data
      receiver: hipchat-data
      continue: true

    - match:
        notify_team: hipchat-data
      receiver: hipchat-data
      continue: true

My alert has these labels: {notify_team="hipchat-data", notify="hipchat"}
But it is only getting routed to hipchat and not to hipchat-data. I want to route to both of these.
Not sure if I am doing something wrong or if continue is broken.

I tested using: https://prometheus.io/webtools/alerting/routing-tree-editor/

i took a brief look and I think there should be a bug in https://github.com/prometheus/alertmanager/blob/master/ui/lib/routing-tree.js#L59-L62. In the cases of multiple matches, we only take the first match.
Also specified in the doc:
A route block defines a node in a routing tree and its children. Its optional configuration parameters are inherited from its parent node if not set.

However continue is not inherited https://github.com/prometheus/alertmanager/blob/master/route.go#L97. I'm not sure if this is a bug in documentation or code.

Continue should not be inherited.

Stumbled across the same problem today. Is this a bug or what? How can I send an alert to multiple receivers??

Same problem. It's not working for me as well.

Gocha..
Continue works if specified for child routes. This attribute does not look like an inherited one.

@rohit01 if you don't mind can you please share route configuration . As it doesn't work for me .

Hopefully this helps:
route:
  group_by: ['cluster','alertname','host']
  group_wait: 30s
  group_interval: 2m
  repeat_interval: 10m
  receiver: slack_general
  routes:
  - match:
      severity: warning
    receiver: slack_general
    continue: true
  - match:
        severity: critical
    receiver: slack_general
    continue: true
  - match:
        severity: warning
    receiver: pagerduty
    continue: true
  - match:
        severity: critical
    receiver: pagerduty
    continue: true

continue true doesn't work for me . Can someone tell what is wrong here ?
global:
  smtp_smarthost: {{ getv "/alert/smtp/host" }}
  smtp_from: {{ getv "/alert/smtp/from" }}
route:
  receiver: slack_recs_alerts
  group_by: [alertname, cluster]
  group_wait: 30s
  group_interval: 5m
  repeat_interval: 3h
  routes:
  - match:
      severity: ^([a-bA-Z]*)$
    receiver: slack_recs_alerts
    continue: true
  - match:
      severity: ^([a-bA-Z]*)$
    receiver: team-recs-mails
    continue: true
inhibit_rules:
- source_match:
    severity: critical
  target_match:
    severity: warning
  # Apply inhibition if the alertname is the same.
  equal: [alertname]
receivers:
- name: team-recs-mails
  email_configs:
  - to: {{ getv "/alert/smtp/to" }}
    require_tls: false

- name: slack_recs_alerts
  slack_configs:
  - api_url: {{ getv "/slack/api/url" }}
    channel: #{{ getv "/slack/channel" }}

@ngu04 Configuration looks good.
Please try match_re instead of match. I think, that might help.

Did anyone have luck with this?
Both the tree page and the actual alertmanager divide up the alerts properly upon first match but never send a single alert to more than one receiver for me. :(

I've tested this using the latest release of Alertmanager using continue correctly as pointed out by @rohit01 and the issue appears to have been resolved.
However, this issue is still present on the routing tree editor on prometheus.io.

Closing here as @Conorbro reported this to be fixed and routing tree editor fixes have been merged. Please feel free to reopen in case I am wrong.


Bug in map_rect_concurrent(); depends on number of threads and number of shards

Description
This is the bug that's causing stan-dev/stan#2708.
This bug occurs when threading is turned on and the number of threads is 2 (and exactly 2, as far as I can tell).
It occurs in the map_rect_concurrent() function and this function returns an Eigen vector that is short one element. (Eigen::Matrix<T, -1, 1>, but the runtime size is off by one.)
Example
As we dig, we need a reproducible example in C++, but for now, please see the Stan program in the Stan bug report: stan-dev/stan#2708.
Additional Information
Thanks, @ermeel86, for uncovering this bug!
Current Math Version
v2.18.0

Are these correct
const int num_big_threads
    = (num_jobs - num_jobs_per_thread) % (num_threads - 1);

and
for (int i = 1, job_start = num_jobs_per_thread, job_size = 0;
            i < num_threads; ++i, job_start += job_size) {
     job_size = i >= first_big_thread ? num_jobs_per_thread + 1
                                   : num_jobs_per_thread;
    futures.emplace_back(
         std::async(std::launch::async, execute_chunk, job_start, job_size));
}

Should the first block be
const int num_big_threads
    = num_jobs - num_jobs_per_thread * num_threads;

And should the second loop start from 0? TBH not sure about what is going on here, but I think the job_size is off-by-one for some chunks if the num_big_threads is wrong.
Some tests with Python
num_threads = 6
for num_jobs in range(num_threads, 3*num_threads):
    num_jobs_per_thread = num_jobs // num_threads
    print(num_jobs - num_jobs_per_thread * num_threads, (num_jobs - num_jobs_per_thread) % (num_threads - 1))

0 0
1 1
2 2
3 3
4 4
5 0
0 0
1 1
2 2
3 3
4 4
5 0

num_threads = 2
for num_jobs in range(num_threads, 3*num_threads):
    num_jobs_per_thread = num_jobs // num_threads
    print(num_jobs - num_jobs_per_thread * num_threads, (num_jobs - num_jobs_per_thread) % (num_threads - 1))

0 0
1 0
0 0
1 0

So it might just be a play between  the num_jobs and num_threads which is easier to hit with lower number of threads.

Actually
const int num_big_threads
= num_jobs - num_jobs_per_thread * num_threads;

This is same as
const int num_big_threads
= num_jobs % num_threads;

@ahartikainen I reviewed this code for @wds15 when it was merged and I even remember going back and forth about how to code it.. if this is the bug no idea how it made it in there!  I recall the motivation was that the main thread should have fewer jobs than the rest of the threads (?) but I haven't reproduced your suggestion about the error yet.  I'll try to look at it tonight.

I tested this with the stan example ( https://github.com/stan-dev/stan/issues/2708 ) and after making the change to
const int num_big_threads = num_jobs % num_threads;

there are no errors anymore.

Thanks to everyone looking into this! We should check the mpi variant as well, just to make sure. I don’t Have time right now to work on this. Should someone file a pr Before i get to it, then I am happy to review.

I have a fix just making tests, I'll do a pr.

Can you close Stan issue 2708 if this is the fix for it?  Or does it need another fix in the stan-dev/stan repo?

Is there going to be a PR for Stan with appropriate tests that fail now and succeed after the fix?  If not, I'd close it.  But it's up to you either way.

I wasn't thinking about that, but I think that's the right thing to do. I
believe we already have tests for threading at the Stan level. If not, we
should have some.
So, yes, let's keep the issue on Stan open. I can think about what tests to
add there so we verify that this is fixed (and won't be broken again for
the exact same reason).
On Fri, Dec 7, 2018 at 9:39 AM Bob Carpenter<EMAIL_ADDRESS>wrote:

Is there going to be a PR for Stan with appropriate tests that fail now
and succeed after the fix? If not, I'd close it. But it's up to you either
way.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/stan-dev/math/issues/1075#issuecomment-445252016, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAZ_F-qIAaPbdUG0Djr2lkOIwp0ANcD6ks5u2n2TgaJpZM4ZBmDi
.


Updating Cohere model names and support

This PR points to Cohere's existing generation models (previously defined models are out of date).
It also tweak the behavior in predict.py that required the llm provider to have a parameter called n (that OpenAI has) which is called num_generations on the Cohere side. The previous behavior prevented the llm from running (it would throw an error due to the additional unknown parameter n).

Thank you Jay! Merged. Sorry for the delay, I had been traveling. Looks great, and it will be part of the next pypi release this week.

That's perfect! Thanks @okhat!


HTML Requests from Design

#BLOCKERS

[ ] All HTML elements are nested in the Header, so it cannot be styled separately.
[ ] Movie List Items get a dedicated container, currently each list is an item itself.

#REQUESTS

[ ] Movie Matchmaker (h1) and Search Bar (nav) share a container
[ ] Filter tags get a dedicated container
[ ] A section between .actors and .more-details-button for more-details' items

(In order to keep the details between it and the 'actors' line)

[ ] A copy of the more-details-button... for a less-details-button!
[ ] A section labeled user-details that will contain the user details we want to add

This will fill the space where the movie score currently sits
[ ] Watched-It button

JS - clicking it should prompt the user if they want to delete their notes
and score to start over or cancel

[ ] user-score: 1-5 stars

Pre Watched-It text: Anticipation Score(?)
Post Watched-It text: Opinion Score(?)
(Text might not even be necessary)

[ ] user-notes: text field for user notes, 3 lines min with line wrap

field title: Thoughts:
pre-filled pre-watch text: "I want to see this movie because..."
pre-filled post-watch text: "So this is what I thought about it..."

[ ] Replace Filter Button with "Filters:" text in nav-tabs
[ ] Change movie rating from text to ⭐⭐⭐⭐⭐
[ ] Add Movie button could be a sticky footer

hello can i help you with this issue


merging asher's notes into remote repo

My notetaking on learning what a neural network is and how it functions as a markdown file.

Hello Jacob. Hi. This is a bunch of my notes on the four main vids.


refactor(rn tester app): change appearence example to hooks

Summary
This pull request migrates the appearance example to using React Hooks.
Changelog
[General] [Changed] - RNTester: Migrate Appearence to hooks
Test Plan
The animation works exactly as it did as when it was a class component

Hi @Marcoo09, thanks for doing this.
There are several JS jobs that are failing. Can you have a look at them and fix them?
When the CI is green, we can import this.


Exercise 5 for RandomNumberGenerationTutorial - slightly cleaner solution

The current approach for the RandomNumberGenerationTutorial tries to generate random numbers from [0, max) until it finds a value in [min, max].  You could make it a bit more efficient this way:
operation RandomNumberInRange (min : Int, max : Int) : Int {
    let range = max - min;
    let N = BitSizeI(range + 1);
    mutable result = 0;
    repeat {
        set result = RandomNBits(N);
    }
    until result <= range;
    return min + result;
}

Also, because the original implementation calls BitSizeI(max), and RandomNBits(N) generates values between [0, 2^N-1], if max is a power of 2 (e.g. 2^N), then RandomNBits will generate values in the range [0, max).  Adding +1 to the range fixes this.  Incidentally, it looks like the tests don't detect this edge case, as I was able to pass with and without the +1

@abrassel , seems there are three things at play here: efficiency of current algorithm, correctness of existing solution and passing of your solution with and without +1.

Efficiency: I agree that your solution is slightly more efficient. I think it would be a good idea to have it as an alternative solution in workbook
Correctness of existing solution: The existing solution is correct because BitSizeI function returns the minimum number of bits required to represent a number. BitSizeI function reference. To validate this, you can create an operation Demo_BitSizeI() operation in the jupyter notebook as follows:

open Microsoft.Quantum.Math;
operation Demo_BitSizeI() : Unit {
  let nBits = BitSizeI(8);
  Message($"Bits required to represent 8 {nBits}");
  }

And you can run above operation in jupyter notebook by executing the following code in a separate code cell. This gives 4 as the result
%simulate Demo_BitSizeI

Solution passing with/without +1: As explained in second point, BitSizeI function returns the minimum bits required to represent a number. In your case, you are generating random numbers in range [0, max-min+1] both inclusive and then filtering out extra number max-min+1 in until condition by specifying  result<=max-min. Hence the test is passing.

For alternative solution, I have a minor suggestion to use let N= BitSizeI(range).
I hope this answers your query. @tcNickolas thoughts?

Thank you Manvi!

I'm sorry for not answering this back in summer! I'm not sure how I've missed it, possibly I've read it and nodded along but got distracted before I actually commented?
I agree that it makes sense to use the more efficient approach you're describing, both as the main reference solution in the ReferenceImplementation.qs and in the workbook. Would you be interested in sending the pull request with the change? (I understand if you're not, it's been a couple months, which I'm terribly sorry about...)

Hi Nickolas!  I don't have the time at the moment to submit the PR, but you are welcome to copy and paste this solution yourself!


Sass Depreciation warning introduced in v2.47.0

Package
Carbon for IBM Products
Description
After migrating to 2.47.0, the following error is now reported in our builds.
<w>
<w>     ($i % list.length($colors)) + 1
<w>
<w> but you may have intended it to mean:
<w>
<w>     ($i % list.length($colors)) (+1)
<w>
<w> Add a space after + to clarify that it's meant to be a binary operation, or wrap
<w> it in parentheses to make it a unary operation. This will be an error in future
<w> versions of Sass.
<w>
<w> More info and automated migrator: https://sass-lang.com/d/strict-unary
<w>
<w> null
<w> Deprecation This operation is parsed as:
<w>
<w>     (($item-index - 1) % $group-colors-length) + 1
<w>
<w> but you may have intended it to mean:
<w>
<w>     (($item-index - 1) % $group-colors-length) (+1)
<w>
<w> Add a space after + to clarify that it's meant to be a binary operation, or wrap
<w> it in parentheses to make it a unary operation. This will be an error in future
<w> versions of Sass.
<w>
<w> More info and automated migrator: https://sass-lang.com/d/strict-unary
<w>
<w> null

This is most likely caused by the modification to the ConditionBuild scss
https://github.com/carbon-design-system/ibm-products/pull/5762/files#diff-53f4d09c6fe30a389079ce97e44123ac8586efffe6a7ef2858556d2388200851
Component(s) impacted
ibm-products: 2.47.0
Browser
No response
@carbon/ibm-products (previously @carbon/ibm-cloud-cognitive) version
v2.47.0
Suggested Severity
None
Product/offering
MQ
CodeSandbox or Stackblitz example
N/A
Steps to reproduce the issue (if applicable)
No response
Release date (if applicable)
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate issues

closing as this is duplicate of #5835


Add 1.2.1 to the maven repo

Seems that I cant resolve the dependency when attempting to use 1.2.1. Can you compile / add the latest version to the repo?

@extendedclip sorry, will do this soon, have been caught up with my job. before i do this, i need to optimize the reflection used in #7 (which I agreed to do outside the PR, since the author was unsure how to do it)
will let you know as soon as i've done that and published 1.2.1 for use! :)

Sweet man, I Really appreciate it! I’m going to wait to push an update to papi until then. Definitely appreciate your work dude!

resolved by https://github.com/Rayzr522/maven-repo/commit/0cbbf3e0e541acdf2108cd76389a887b32605b19
let me know if you have any issues with it! should be significantly more optimized than the custom tweaked version that you guys were temporarily using in papi


Added custom validator and mail check during eperson registration

References
Add references/links to any related issues or PRs. These may include:

Fixes #1325

Description
Added a custom validator to the form that prevents the form from being submitted, as long as the email is not valid.
A valid email means:

Correct in the form<EMAIL_ADDRESS>Not already associated with other Epersons

The invalid email field is highlighted in red, and an error message next to the field must be shown.
Instructions for Reviewers
List of changes in this PR:

Added a new validator (EmailTaken)
This validator is registered and used in EpersonFormComponent to validate email input.
Labels for new error messages are provided

We are working to provide tests around this feature, we'll update this PR as soon as they are ready.
Include guidance for how to test or review your PR.
Register an eperson and try to register another one with same email address, using both main branch and this PR's code. In both cases no new person will be created, but in the second case, form submission will be inhibited. In this second case, form submission will be inhibited also if the email address does not follow standard email address pattern.
Checklist

[X] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & specs/tests), or I have provided reasons as to why that's not possible.
[X] My PR passes TSLint validation using yarn run lint
[X] My PR doesn't introduce circular dependencies
[X] My PR includes TypeDoc comments for all new (or modified) public methods and classes. It also includes TypeDoc for large or complex private methods.
[X] My PR passes all specs/tests and includes new/updated specs or tests based on the Code Testing Guide.
[ ] If my PR includes new, third-party dependencies (in package.json), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.

hi @tdonohue , thank you for your reminder. This change is WIP, as soon as we are ready with it we'll ask for a review. Thank you again

@tdonohue done


Incomplete Traditional Chinese translation(zh_HK)

probably can be used as zh_TW translation

Nice! How similar/different are zh_HK and zh_TW, and do you know if systems using a zh_TW locale would fallback to zh_HK automatically? In most projects where I work on translations it's typical to see both zh_CN and zh_TW, but I more rarely see zh_HK.

In terms of language, I think zh_HK and zh_TW are almost the same, maybe they have different preference of words for translation. I would verify this later. The main difference should be things like unit and currency, which will not appear in Godot. Maybe we can unify them into Traditional Chinese which is the common way in other software. We have no rush, for now, just separate it.

@ZX-WT I don't think these are too many differences in zh_HK, zh_TW and zh_CN.

@akien-mga Are we planning to add auto detection for the future? If so, this might be the reason to keep it separated. I just separate them because the doc stated that godot uses the Linux locale for handling translation. But, for the editor, do we have to follow that? I suggest we just use zh_TW, people know that is traditional Chinese. I need to wait for someone that will contributed to zh_TW for further discussion.

On Linux it detects the system locale automatically.


Saaras Kodali issue pt 2(check improvement)

Assignment
Points
Grade
Evidence

Pull Request (Integration)
2
1.7

Relevancy Checklist (Peer)
2
0.92
comments on here still working on it

Lesson (Group)
1
0.9

Homework, Popcorn Hacks
1 x 8
0.92(some are yet to be graded)

Individual Contribution
1
0.9
https://github.com/hanlunli/portfolio_2025/commits/main/?author=Saaras859

Personal Notebooks / Blogs
1
0.88
https://saaras859.github.io/Saaras_2025/

Total
12
10.81
definitely some good room to improve especially in regards to the hacks I need to focus like I will iterate later on going really far above and beyond and creating something special

Skill
Points
Grade
Evidence

Work Habits (Analytics)
1
0.9
https://nighthawkcoders.github.io/portfolio_2025/analytics

Team Planning (Issue)
1
0.83
https://docs.google.com/document/d/1HmLY5Y8AhCI-ywkJN--SPko2PLmuIy6ZeAN53ms-5Vw/edit#heading=h.qxshvcy5zn66

Presentation Memories
1
0.85

Grading and Feedback
1
0.9
https://docs.google.com/spreadsheets/d/1SLxMPSwAvMJ70X8zk0H9UwJXmyqYC2hpS6DJrjmEX2g/edit?gid=988447649#gid=988447649

Beyond Perfunctory
1
0.9
https://github.com/Saaras859/Saaras_2025/commits/main/ (62 commits) I mainly worked on blogging my experience and all the team teaches here and if I had anything cool like an about me for future reference. This is running cayman because I found that to be the most aesthetically pleasing one but commit 19 has a unique sass change in case you want to experiment with that later , https://github.com/hanlunli/portfolio_2025/commits/main/?author=Saaras859 wrote all of the nested iteration worked on other lessons as well established python versions and made sure that we used columns, rows in the form of i and j made sure lesson was fully standardized also had a bunch of commits dedicated to iteratively tweaking a little bit of code here and there

Total
5
4.43
I think I did all right especially compared to the first review but I still have a lot of room to improve my team teach contribution still was missing a special element unlike tanay's group who did the special presentation I just feel like I didn't really go above and beyond on everything its all just code made specifically just to meet the requirements. which I need to improve on especially for NATM to create a WOW factor. The normal stuff is too boring

I really like your trivia game. Its like a reward system for understanding topics and not understanding topics which helps you reflect.

Blog - in association with Units and Teaching
Memory - something to recall your individual presentation
Relevancy - something impactful you learned
Beyond Perfunctory - something that shows you want to learn
Discussed accomplishments primarly with stats.  Made a Java Trivia Game which looks lie a fun review.  Made a cheat sheet.  Great game and cheat sheet show interest.

I like the game you made I think that it is very nice and something that can be useful in reviewing.

Hi Saaras,
I thought your trivia game was a good way to retain the material and I liked how to pointed out areas for improvement.
Thanks
Dinesh Sahai

I liked your presentation and how your trivia game was unique for understanding topics you needed to study extra.

Did all of the table requirements and made a review of the units. Also made a trivia game to show his learning from these team teaches. It has different categories which I thought was pretty good.

Did all of the table requirements, and for the review of units to go back to, Saaras made a java trivia game, which can quiz him and test him on his knowledge. He did different point categories for each of the trivia games, which I thought was pretty good.
Blog- Seemed to be associated with unit review
Memory- I liked the memory he used to recollect
Relevancy- He showed what he learned through making the Cheat Sheet
Beyond Perfunctory- I liked the trivia game

Very interesting lesson with a lot of proof of work. Your trivia game was an awesome way for me to learn and retain the information that you had taught.

I think the way you planned out your review was super smooth, besides one little hiccup. I really liked how you incorporated your knowledge into the trivia game, and thought it was a great way to demonstrate that you know what you know.

This was a good presentation and it covered most topics needed. The trivia game was great and a good visualization of the things that we learned.

Blog - The Blog clearly showed review of all the topics and was neatly organized
Memory - I liked how you remembered key points of each team teach and were able to include in your game
Relevancy - Very relevent to all the team teaches and also highlights the key memories from each unit
Beyond Perfunctory - great use of the game

Hi Saaras,
I liked how you realized that you often forget to commit your code, so now you are actively trying to improve and commit more often. The trivia game is also very unique and memorable.

Very interesting presentation. I like how you have a game to help remember what you taught.

This was an outstanding issue. The trivia game was good and stood out to me because it will be very helpful in AP exams.

Great presentation as it covered various topics and had great organization
Your trivia game was extremely memorable and these topics will prove useful for you when the AP exam begins.

Showed high levels of commitment to CB materials, even creating a quiz-like game to ensure he maintains active recall.


Support for eslint 7.5+ in react-scripts

Is your proposal related to a problem?

We have quite a bit of optional chaining (?.) operators in my workplace. But it isn't supported by eslint version lower than 7.5.0. As react-scripts currently ships with eslint 6.6.0, and does not allow updating eslint. I am getting parse errors all over.
Describe the solution you'd like

I want to be able to use a newer version of eslint (7.5.0+) with CRA/react-scripts.
Describe alternatives you've considered

I tried updating the eslint manually, but that was rejected as soon as I use react-scripts start command. I had previously done the eslint configuration on a NextJS app, which worked well. In CRA I could also not disable it with eslint-disable-next-line
Additional context

It'd be great if we had updated eslint version shipped with react-scripts.

I got an optional chaining to work later. I just needed to add "parser": "babel-eslint" on eslintConfig in my package.json like so,
    "eslintConfig": {
        "extends": "react-app",
        "parser": "babel-eslint"
    },

Closing this issue for now.


fix(ingest/profiling): Add option to enable external table profiling

Checklist

[ ] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
[ ] For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

@treff7es looks like there's some CI issues


integration with Jira/XRAY doesnt work as it doesnt update result or attach report.

What happened?
I need to integrate my test execution run with JIRA/XRAY. At the moment, I am only able to link or tag the feature with JIRA but it what is required is to update the test execution run and attach a copy of test results.
I was not able to find solution to this in serenity however in pytest its fairly simple and achieved with the help of a annotation.
refer below link:
https://pypi.org/project/pytest-jira-xray/
Please let me know if we have already something like this, at the moment I am only aware of the below:
https://serenity-js.org/handbook/integration/jira-and-other-issue-trackers/
What did you expect to happen?
To update the test result and attach the copy of test results
Serenity/JS version
3.9.0

Node.js version
20
Execution environment
No response
How to reproduce the bug.
Use the link
https://serenity-js.org/handbook/integration/jira-and-other-issue-trackers/

This looks like a duplicate of #1951


Fix send validate code in Validation Form

Details

This PR fixes issue with sending email validation link. When a user triggers email validation from profile, the magic sign-in code isn't sent immediately till you have to trigger Didn't receive a magic code?
Fixed Issues

$: 41330
PROPOSAL: issuecomment
Tests

Make sure you are Logged out of both NewDot and OldDot
Navigate to OldDot https://staging.expensify.com/
In the login screen enter a new gmail account (make sure it's a gmail account as my work email didn't work)
Verify you're navigated to staging NewDot
Navigate to account Settings > profile > Contact methods
Click on the email
Verify you're prompted for the magic code to validate the account
Verify the account receives a magic code to their email inbox
Enter the magic code in the field
Click on Verify

Expectation: The validation link is sent first time, and user is not logged out when magic code is entered.

[x] Verify that no errors appear in the JS console

Offline tests

Make sure you are Logged out of both NewDot and OldDot
Navigate to OldDot https://staging.expensify.com/
In the login screen enter a new gmail account (make sure it's a gmail account as my work email didn't work)
Verify you're navigated to staging NewDot
Navigate to account Settings > profile > Contact methods
Click on the email
Verify you're prompted for the magic code to validate the account
Verify the account receives a magic code to their email inbox
Enter the magic code in the field
Click on Verify

Expectation: The validation link is sent first time, and user is not logged out when magic code is entered.
QA Steps

Make sure you are Logged out of both NewDot and OldDot
Navigate to OldDot https://staging.expensify.com/
In the login screen enter a new gmail account (make sure it's a gmail account as my work email didn't work)
Verify you're navigated to staging NewDot
Navigate to account Settings > profile > Contact methods
Click on the email
Verify you're prompted for the magic code to validate the account
Verify the account receives a magic code to their email inbox
Enter the magic code in the field
Click on Verify

Expectation: The validation link is sent first time, and user is not logged out when magic code is entered.

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/2cac2a68-6628-4531-8b76-03f6fd89f1b7

iOS: Native

Android: Native

Android: mWeb Chrome

iOS: mWeb Safari

MacOS: Desktop

Hi! I'm having trouble following why this bug is happening and how this fixes the issue.
Do you think you could include a proposal with our problem/solution format in the original issue explaining the changes you're making here and link that in the OP?

O yea, I'll start with updating the test steps even.

I am the C+ for the referred issue. I think adding the issue as issueNumber instead of simply using issueLink in the PR author template broke the automation and Puller Bear did not request my review. I can review this as C+.

Opening the page the first time itself shows that The link has been *re*-sent.

Opening the page the first time itself shows that `The link has been *re*-sent`.

Ayye! I'm already looking into it.

@teneeto any updates on this one?

@teneeto any updates on this one?

O sorry for late response, yes @jasperhuangg you can check again.

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native
https://github.com/user-attachments/assets/6eaf7cf8-eb17-45d9-8f7a-951f3b4ac2f8

Android: mWeb Chrome
https://github.com/user-attachments/assets/abdc9696-5c05-41f9-a75c-b75fa0b1c000

iOS: Native
https://github.com/user-attachments/assets/ebc3c6e0-6b6b-45e0-b803-545919852f01

iOS: mWeb Safari
https://github.com/user-attachments/assets/20f8f304-4acc-43d3-8b63-c867e3208649

MacOS: Chrome / Safari
https://github.com/user-attachments/assets/6d228b2b-ee56-4609-945f-23c61c006454

MacOS: Desktop
https://github.com/user-attachments/assets/6bcde735-d0e0-470f-bbe6-1ed3ef06d91c

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/jasperhuangg in version: 9.0.16-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/marcaaron in version: 9.0.16-8 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


refactor(web-client): improved mobile support, secured keys in .env and persistent user sessions

This is an improvement over the pull request #243, This Commit adds the following features:

Added support for signInWithRedirect in a manner that the internals can be replaced with other OAuth systems without changing the interface later on easily
Added the logic for determining if a user is on Mobile or on Desktop and choosing between signInWithPopUp and signInWithRedirect methods
Separated the configuration into environment variables and added the env keys to .env.Example
Added the logic for persisting users and logging in users if user has already logged in previously

Description
Motivation
Testing Guidelines
Release Checklist

[ ] This code has unit tests
[ ] I have a plan to verify that these changes are working as expected after deploy
[ ] I have a plan for how to revert, rollback, or disable these changes if things are not working as expected

Security Checklist
This PR creates, modifies, or deletes:

[ ] API routes: API routes, parameters, or user authorization
[ ] Authentication: Authentication mechanism
[ ] Credentials: Server side credentials, or secrets in configuration / source code
[ ] Cryptography: Encryption, hashing, certificates, signatures, random numbers, etc.
[ ] User data: personal information handling, logs, error messages, etc.

Additional Notes

@all-contributors please add @jpmarques66 for review.


Reduce import size (of SVG) with adapters

Reduce import size (of SVG) with adapters
This update (dramatically) improves the size of HSDS: React for apps like Beacon2 by making the svg based Icon and Illo sets opt-in.
This is done by importing the appropriate adapter (similar to how Enzyme 3 requires an adapter).
The adapter would be added to the entry point of your app, typically the index.js file:
import '@helpscout/hsds-react/adapters/embed'

This loads the icon set to global (window in the browser), which then can be loaded and consumed by Illo and Icon.
Results:
These are the webpack bundle analyzed results:
Before (2.17.0)
Parse Size: 98kb
GZipped: 29kb

After (2.18.0-0)
Parse Size: 20kb
GZipped: 6kb

That's a saving of almost 80kb! This is just for Icon. There are addition (minor) savings from Illo as well.
The Downsides
With this method, there are 2:

It requires the consuming app to add an adapter. It's not a huge deal. Just an extra step, but it's something. (Illo and Icon still work without the adapter. They just render blanks)

The svg strings populate within window. It feels messy, but shouldn't break anything.

Why adding icons to global?
This was the only thing that worked across many (many) things I've tried. Some of these failed attempts included:

Converting svg -> React components, then dynamically importing them
Requiring certain sets based on an process.env (great idea @Charca , but it didn't work 😭 )
Trying to create a compiler that could encode svg -> tiny strings, then decode during render (crazy, but I tried, lol)
Tried tree shaking with Webpack

I've also considered creating a custom babel plugin to handle the transformations during compiling.
:crylaughing:

Review

One way to test this out is to adjust the adapter .storybook/config.js brings in. By default, it'll use the src/adapters/app.js adapter. This can be swapped for embed.
Alternatively, you can install<EMAIL_ADDRESS>within beacon2 and give it a spin. Be sure to include the adapter in the main index.js!
(Note: v2.18.0-0 was missing the chat icon. That's been fixed after I manually tested it).
@knicklabs , @tinkertrain , @Charca , @plbabin , would love your opinion on this approach. If you guys have a better idea, I'm all 👂 !!!
This idea was inspired by the initializer/adapter-like patterned I 🍐 'ed with @knicklabs on. It isn't exactly like what we discussed... but spiritually similar :).
Resolves: https://github.com/helpscout/hsds-react/issues/528

Pull Request Test Coverage Report for Build 1857

18 of 18 (100.0%)  changed or added relevant lines in 8 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 1846:
0.0%

Covered Lines:
7255

Relevant Lines:
7255

💛  - Coveralls

What if we published the icon sets as separate modules on NPM? We could call them IconPacks and we could have hs-app-iconpack and hs-beacon-iconpack.
Why do this?
We could keep the bundle size of HSDS-React to a minimum and ship it without icons. We can add the icons that we need only if we need them. This could come in handy should we ever use HSDS-React in another project and we have no requirement for icons.
Here's what I'm thinking. We take advantage of the fact that ES6 modules are singletons and we use a private variable to hold the map of icons. We export a setter for that variable so that the icons can be set at run time. All you need to do is have an entry point early in the app that invokes the setter with an IconPack before the Icon component is used.
Here's a code sandbox with an example of how I'm imaging this to work.
https://codesandbox.io/s/lyzj9jmx7q?fontsize=14

@knicklabs This is it!!!!!!! 😍
I'll give this a shot when I can!!!

@knicklabs Updated my implementation! Thank you so much. Also updated tests + docs

@Charca With that update, icons in Beacon Embed are now:
8.31kb, 2.76kb gzipped!

Thanks @knicklabs + @Charca !!!!


Unable to load shared library 'libethhash'

I tried to setup eth pool but it gives an error, there was no such error with other coins.
[2022-11-13 21:59:32.2239] [I] [ETH1] ExtraNonceProvider using 4 bits for instance id, 12 bits for 4095 values, instance id = 0x9
[2022-11-13 21:59:32.2295] [E] [ETH1] System.DllNotFoundException: Unable to load shared library 'libethhash' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: liblibethhash: cannot open shared object file: No such file or directory System.DllNotFoundException: Unable to load shared library 'libethhash' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: liblibethhash: cannot open shared object file: No such file or directory
at Miningcore.Native.EthHash.ethash_get_default_dirname(Byte* data, Int32 length)
at Miningcore.Crypto.Hashing.Ethash.Dag.GetDefaultDagDirectory() in /root/miningcore_kriptokyng/src/Miningcore/Crypto/Hashing/Ethash/Dag.cs:line 35
at Miningcore.Blockchain.Ethereum.EthereumJobManager.Configure(PoolConfig pc, ClusterConfig cc) in /root/miningcore_kriptokyng/src/Miningcore/Blockchain/Ethereum/EthereumJobManager.cs:line 349
at Miningcore.Blockchain.Ethereum.EthereumPool.SetupJobManager(CancellationToken ct) in /root/miningcore_kriptokyng/src/Miningcore/Blockchain/Ethereum/EthereumPool.cs:line 373
at Miningcore.Mining.PoolBase.RunAsync(CancellationToken ct) in /root/miningcore_kriptokyng/src/Miningcore/Mining/PoolBase.cs:line 392    at Miningcore.Native.EthHash.ethash_get_default_dirname(Byte* data, Int32 length)
at Miningcore.Crypto.Hashing.Ethash.Dag.GetDefaultDagDirectory() in /root/miningcore_kriptokyng/src/Miningcore/Crypto/Hashing/Ethash/Dag.cs:line 35
at Miningcore.Blockchain.Ethereum.EthereumJobManager.Configure(PoolConfig pc, ClusterConfig cc) in /root/miningcore_kriptokyng/src/Miningcore/Blockchain/Ethereum/EthereumJobManager.cs:line 349
at Miningcore.Blockchain.Ethereum.EthereumPool.SetupJobManager(CancellationToken ct) in /root/miningcore_kriptokyng/src/Miningcore/Blockchain/Ethereum/EthereumPool.cs:line 373
at Miningcore.Mining.PoolBase.RunAsync(CancellationToken ct) in /root/miningcore_kriptokyng/src/Miningcore/Mining/PoolBase.cs:line 392
[2022-11-13 21:59:32.2736] [I] [Lifetime] Application is shutting down...
System.DllNotFoundException: Unable to load shared library 'libethhash' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: liblibethhash: cannot open shared object file: No such file or directory
at Miningcore.Program.<>c__DisplayClass17_0.b__1(Exception ex) in /root/miningcore_kriptokyng/src/Miningcore/Program.cs:line 384
at Miningcore.Util.ActionUtils.Guard(Func1 func, Action1 errorHandler) in /root/miningcore_kriptokyng/src/Miningcore/Util/ActionUtils.cs:line 14
at Miningcore.Program.ExecuteAsync(CancellationToken ct) in /root/miningcore_kriptokyng/src/Miningcore/Program.cs:line 368
at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
at Miningcore.Program.Main(String[] args) in /root/miningcore_kriptokyng/src/Miningcore/Program.cs:line 245
Cluster cannot start. Good Bye!

Looks like you're using the fork https://github.com/lurchinms/miningcore_kriptokyng which has some changes in the build system. Try to open an issue there.


Use cifmw_rhol_crc_version to 2.30.0 for crc reproducer

In CI, we are using crc version 2.30.0. By default the crc reproducer
job deploys latest crc which breaks while reproducing the job locally and in crc ci-reproducer job.
This pr sets the cifmw_rhol_crc_version to 2.30.0 so that crc ci-reproducer reproduces the job without any issue.
As a pull request owner and reviewers, I checked that:

[x] Appropriate testing is done and actually running

Closes in favor of https://github.com/openstack-k8s-operators/ci-framework/pull/1562


JavaScript not working and page not running

Environment (please complete the following information):

OS (e.g., Windows 10):
Extension version (e.g., 1.2.3):

Describe the bug:
 So my Javascript isn't working, and when I try to run it the problems in the terminal say there's nothing wrong, AI says that there's nothing wrong, and I don't know whether it's because of my own computer. I  don't know if I have any reasons to be suspicious of my own computer but I do know that my page isn't running anymore and my JavaScript is not running as well. Any tips?
Repro steps:

Expected behavior:

Additional context:

Hi @CYB33,
Could you please provide more details on the issue you are facing?

Extension version, OS version and some repro steps?
Are you having issues with headless or non-headless mode?
Is this report for Edge browser or for the Edge Devtools VSCode extension?

Feel free to reopen once more details are added.


How to convert from activequery to json query

What steps will reproduce the problem?
$book = Book::find()->where(['=', 'status'. 'publish')->rawQuery();

What's expected?
db.getCollection("book").find({
    "status": "publish"
});

What do you get instead?
Additional info

Q
A

Yii version
2.0.14

Yii MongoDB version
2.1

MongoDB server version
5.0.6-5

PHP version
7.4

Operating system
windows

Hi
$book = Book::find()->where(['status' => 'publish'])->one();

Please see https://www.yiiframework.com/doc/api/2.0/yii-db-queryinterface#where()-detail

I will be appreciate you to add this feature
Sometimes it is great to check native query in db client and make sure that your query is correct
Thanks :+1:

Another alternative is to use MongoDB Debug Panel which will show us additional information for each command / query.
In OP's case, it will show the query like so:
    log.command({"count":"book","query":{"$and":[{"$and":[{"status",.....


Gradle scans are not working with Latest ort docker image

Gradle scans are not working with latest ort docker image,
Ort image uses gradle is 8.2 and gradle packages are not fetched by analyzer module

Same project, when scanned with older image of ort using gradle version 8.0.1, analyzer executes successfully and shows 7 packages in result

What is the reason for this/ how to resolve the same

Thank you @AnishaM7  for reporting your issue. Could you provide reproduce your issue with a publicly available repository?

@tsteenbe, even this very simple test project using Gradle 8.2: https://github.com/MarcelBochtler/gradle82test
When running the analyzer on this project, no depenencies are being detected (tested with latest ort main).
Using Gradle 8.1 fixes this issue.
This only happens when using the default / legacy Gradle analyzer. Switching to the GradleInspector fixes the issue with the project above.
@AnishaM7 please try to use the GradleInspector by activating it in your config.yml:
analyzer:
    enabledPackageManagers:
    - GradleInspector

Any update @AnishaM7?

Closing due to a lack of feedback from the OP. In any case, recently several Gradle issues were fixed (also see https://github.com/oss-review-toolkit/ort/issues/8027), so there is a good chance that this issue got fixed as well.