[Static website] Build websites with environment variables

Use case:
I want to build my static website (e.g. npm run build) and pass the serverless API URL to the static website as an environment variable.
Possible solution:
constructs:
  landing:
    type: static-website
    path: dist
    build:
      script: 'npm run build'
      environment:
        VUE_APP_API_URL: !GetAtt HttpApi.ApiEndpoint

The build option is optional:

if undefined, the user has to build the website before serverless deploy
if set, the script will be run during serverless deploy (after the CloudFormation deployment, before uploading the static website to S3)

Challenge: the !GetAtt HttpApi.ApiEndpoint would probably not be resolved by Serverless/Lift since this isn't a variable. So my example above isn't really working, yet this is probably the most common use case. How can we solve this?

As far as I can see this would work. I am basing it off the example I have for achieving this away from Lift: https://github.com/M1ke/serverless-payments/blob/master/bin/deploy-dev-front
So in this script I:

Source the required .env.* file (which sls can do for me with useDotEnv declared)
Pull the API url out of the serverless outputs (which this example is doing using GetAtt)
Pass my REACT_ variables to the build (which this does by repeating them in environment:)

Only question is, what's the correct pattern for the API URL of
functions:
  something:
    ... stuff ...
    events:
      - httpApi: '*'

the script will be run during serverless deploy (after the CloudFormation deployment, before uploading the static website to S3)

This means Cloudformation intrinsic functions (GetAtt, Ref, etc) won't be available. But maybe using Cloudformation outputs could be possible at this point as Serverless framework is making the HttpApiUrl available as an output of the stack.

@mnapoli Have you put any time yet into implementing this? I'd be happy to hack on it but might not make sense if you're already nearly there with a branch somewhere else. If there's no work on it yet, may you point me to the file where I'd want to start digging? Guess it's some part of how serverless executes the build step and a binding to some part of that after the resources have been created

@M1ke not yet, I think there might be a few challenges:

the main one is the resolution of CloudFormation functions (e.g. GetAtt), without that we cannot actually populate the variables
then, there's the question of when to build the website (probably in a "pre-deploy" step)

I think this requires a bit more thinking to be honest.
In the meantime, I would encourage to hardcode the API URL in the build script.
In your specific case (the URL will change every time) I think you should stick with the existing behavior (fetch the API URL from the outputs).

@mnapoli so in https://github.com/M1ke/serverless-payments/blob/f0bf3fd96c9fcbad403128d908bd4e1068ffa172/serverless.yml#L242 I output a set of JSON config. This leverages an additional plugin but possibly Lift could bundle that? So the run order internally would look like:

Serverless runs
Interperets Lift code and builds CFN
Also sets up output plugin to output a range of available values (possibly each value that each component exposes) [new feature]
CFN executes
Output plugin writes file
Lift runs static build [new feature]
Lift deploys static code
(Optional) Lift deletes output json file [new feature]

As far as I can see that would be achievable without any complex heavy lifting, just rewiring and accepting a (short term) dependency on the output plugin. As long as CDK can generate CFN code that includes the custom Outputs block?

It seems to me like everything can work using serverless-export-outputs and the existing features in Lift, or am I missing something?
At the moment there are no plans to add "output exporting" features like what the serverless-export-outputs plugin does.


Adds time to DDPG Tests

Several DDPG tests seem to be failing due to timeouts on the ddpg tests. This PR adds time to the DDPG.
E.g. : https://ci.preferred.jp/chainerrl.py3.gpu.slow/49475/
https://ci.preferred.jp/chainerrl.py3.cpu.slow/49125/

/test


Install REANA in the cern-vre cluster via tf helm provider

[x] Lable nodes for HA installation
[x] Configure values to use the correct storage
[ ] Configure HPC backend
[ ] Configure domain and ingress for access
[ ] Test workflow run

REANA is installed with the values added in PR #35 and accessible under: https://<IP_ADDRESS>:30443/signin
Nodes were labeled for HA as described here: https://docs.reana.io/administration/deployment/deploying-at-scale/#high-availability
Reana uses a thorough terraform created share, check the details via openstack share show cvre-reana and get the access id via openstack share access list cvre-reana.
The configuration is still pending, so it won't work yet.
Problems/open topics:

Installation was done manually (helm install --devel reana-cvre reanahub/reana --wait --version 0.9.0 --values reana/values.yaml -n reana), due to the following unresolved error thrown by terraform: Error: could not download chart: Chart.yaml file is missing
Create and connect postgres db

Reana cluster is accessible on: https://reana-vre.cern.ch/signin with IAM log in. The only thing still needed to do is the HPC connection.


Ensure firstResponseLatency metric is a positive number (issue #740)

Is it all right if I skip testing it?
Rationale:

The unit tests don't appear to directly address decode() or recordLatency()
my Mockito skills are very weak
this is such a quick change :)

There's little excuse to skip testing. If there were proper tests in the first place, we'd had caught the bug earlier. I' going to add tests this time.

That's merged and backported now.


Option to disable formatter

I'm using Unibeautify to format my code. Please add an option to disable your formatter integration. 😁

Hey @muuvmuuv, I've added the ability to turn off the Twig Language formatting in settings. If you search it in the VSCode settings, you can find it under "Twig-Language-2: Formatting" and just uncheck the checkbox. Thanks 😄


Count number of dependencies in a type.

It would be useful to know how "dependent" a type is. The reason is that one can expect that a type with more dependencies is more constrained than a type without. If a type is more constrained then it's more challenging and interesting to do lemma guessing for it. Some examples:
| type                                     | dep. level | why                                |
|------------------------------------------|------------|------------------------------------|
| Nat -> Nat -> Nat                        | 0          | no occurence of free variable      |
| (A : Set) -> A -> A                      | 2          | A occurs 2 times                   |
| (n : Nat) -> Fin n -> Fin n -> Fin (2*n) | 3          | n occurs 3 times                   |
| (n : Nat) -> Fin n -> Fin n -> Fin (n+n) | 4          | n occurs 4 times                   |
| (A B : Set) -> (A -> B) -> A -> B        | 4          | A occurs 2 times, B occurs 2 times |
| (a : Level) -> (A : Set a) -> A -> A     | 2          | level quantifications don't count  |

@jyp Could you take a look at the new golden JSONs, in particular Test.DependencyLevels to make sure this is implemented as expected?


Multi-person-default-hover-cards

Q
A

Bug fix?
no

New sample?
yes

What's in this Pull Request?
Sample combining the default hover card and a multi-person column
May not render very well for large selections of people

@techienickb thanks for the sample!
However, I'm not seeing how this sample differs from the out of the box experience. It's taken me quite a while to get back to all these pull requests, so perhaps something has changed since you first submitted (sorry!). Could you let me know (just leave comments here) what the difference between your sample and using the standard person field (showing the picture with multiple selection) is?
Thanks!

Out of the box doesn't have the user icons showing, it's just text when it's multiple users, this is multiple usercard, kind of a mix of the default experience with the user pill layout

I see this has been implemented in native sharepoint so it can be ignored now

Thank you for taking the time to put this together and share with the rest of us. Your work is greatly appreciated!
However, as you state, this is now an out of the box rendering experience so we won't add it to the samples repository to prevent confusion. (Definitely shows how good an idea it was!)
We would love to see additional samples from you and I hope this doesn't discourage you. Thanks again!


[REQ] Add links to the product blogs

Is your feature request related to a problem? Please describe.
We mention blogs but don't have links to the specific blogs CAT contributes to.
Describe the solution you'd like
Provide an individual link to each blog site, e.g., PVA blog, Power Platform blog

PVA is at https://aka.ms/PVABlog

Done in v2.


Link should be over REST API

In the third line, see at the link of  REST API
It should be over REST API whereas it is over the preceding word and REST.

@sneridagh How can this can be rectified ?

@aryamanpuri I think this was already fixed!. Someone changed the text and didn't update the offset of the link in the source JSON for this block. It lives here:
https://github.com/kitconcept/kitconcept.voltodemo/blob/master/src/kitconcept/voltodemo/setuphandlers.py#L97


s3fs.readthedocs.io is stale

What's the process for updating the contents of https://s3fs.readthedocs.io/en/latest/?  Looking at the changelog, it looks like the docs site hasn't been updated in about six months. The most recent version listed there is 2023.12.2 while the most recent tag is 2024.6.1.  Would it be possible to automatically update the site via CI when a new release is tagged?

Sorry about that. The page is updated and I'll have to look into what happened to the hook.
There were not actually that many changes :)


Accessibility: marking component as header has no effect

The header() function as defined in Jetpack Compose has no effect on macOs with VoiceOver (Ctrl+Opt+Cmd+H just tells "Header not found").

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Loading of parts overrides previously loaded parts

Subject of the issue
I have 2 translation parts. One is for dashboard page, one is for wizard page.
They both have values for the header of the page which is a common component.
dashboard.json
{
"header": {
"title": "Dashboard Title"
}
}
wizard.json
{
"header": {
"title": "Wizard Title"
}
}
In both controllers I run $translatePartialLoader.addPart(part) (either wizard or dashboard)
Problem is if I go from Dashboard page to Wizard page and back again, the Dashboard page now has the wizard page's translations.
It seems Angular Translate takes the last one loaded, whereas I'd like to only use the part my controller has loaded and none others. Is there a way round this?

You cannot reuse an unique translation id. Given the use case, I would suggest wizard.title and dashboard.title.

That doesn't work for me as the header is a shared component so can only have one key in the directive.
I'm using angular ui-router so have got it working by deleting all the parts currently loaded upon a $stateChangeSuccess event, but it would be nice to have the option within angular-translate to enforce 1 part at a time when calling addPart

That doesn't work for me as the header is a shared component so can only have one key in the directive.

Well, that's an implementation detail up to you.
angular-translate is treating translation keys globally and "parts" are only sub trees of this complete one. You can hack a way resetting the already loaded translations and change the parts.. but it is still a hack an not intended by design.


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/112230

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/112972

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/115150

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114649

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/121443


Rendering problem with nested attributes

The nested attributes in the following OpenAPI spec renders incorrectly in the HTML.
Command used was api2html -o index.html .\api.yaml
In the TestNOK the attribute bar is renders » bar indicating that it would be nested although it is on the top level. I assume that this is because the "previous" attribute is nested two levels.
In the example TestOK an additional property is added with nesting at level 1. This fixes the rendering of the top level attribute bar.
It should be noted that the JSON examples are rendered correctly and this only affects the description if the schema.
 This looks to be related to https://github.com/Mermade/widdershins/pull/154

I'm having the same issue. I've been looking through common.js trying to better understand the schemaToArray function.
Do you have any idea why the widdershins#154 didn't also fix this issue?
I'd love to help if possible.

Hi, I could be way off base, but I ended up just deleting this code block (in common.js):
`        if (entry.name) {
if (state.depth > iDepth) {
oDepth++;
}
if (state.depth < iDepth) {
oDepth--;
if (oDepth<0) oDepth=0;
}
iDepth = state.depth;
}
    entry.depth = Math.max(oDepth+offset,0);`

And replaced it with just this:
        entry.depth = Math.max(state.depth+offset,0);
And it's solved my problem.

This is a bug in Widdershins, not Shins. Please subscribe to https://github.com/Mermade/widdershins/pull/154 for further information and release details.


Modified return function call in fake_llm.py

@AmitSinghShorthillsAI,
Please follow these guidelines before submitting a pull request:

Resolve conflicts before creating the PR.
Always sync your repository, make the necessary changes, and then raise the PR.
Avoid including multiple types of changes in a single PR.
If you have different types of changes (e.g., documentation and code), submit separate PRs for each type of change.

Closing this PR for now.
Thank you!


Allow user to add custom layers

This would solve #73 but also my issue, eg. a French (super)great TMS which is for "single user" access only, so we cannot add it to Brouter but as a user I can :).

Nice feature, thanks!
The use of strava heatmap overlay may be very useful (according to me) for hike or ride routing.
https://wiki.openstreetmap.org/wiki/Strava
I can't wait to test :)

@krisanselmo you can give it a shot on http://brouter.damsy.net
Any feedback appreciated!

Very nice addition! Indeed useful for regional, personal-use-only (German agencies also have these) and other not included maps.
Not relevant for merging, but what do you think about adding the button inside the layer switcher (e.g. just a quick hack)? I feel we should rather reduce the number of buttons on the map if not needed in daily use.
If you wanted, I guess it might even make sense to turn this into a Leaflet plugin.

@krisanselmo I added the Strava heatmap to my todo list of potential layers to add. Would need to check the terms of use. I'm generally open for map suggestions, but would want to avoid having too many layers in the list.

Not relevant for merging, but what do you think about adding the button inside the layer switcher (e.g. just a quick hack)? I feel we should rather reduce the number of buttons on the map if not needed in daily use.
Yeah sure it sounds good. Small fix first, the button should have type=button to avoid submitting POST on click. But besides that, the proposed hack cannot work as is because leaflet is iterating over input children. Do you know how to workaround this too @nrenner?

Small fix first, the button should have type=button to avoid submitting POST on click.

Thanks for the hint.

But besides that, the proposed hack cannot work as is because leaflet is iterating over input children.

Good catch, but would it matter if it stays button type=button, instead of input type=button? Or maybe using a styled link (a href="#", with preventDefault or stop), see Bootstrap Button tags.
Generally the hack was really just that, and more for me to see if adding a button would work at all and to show what I meant, not how to do it. There probably are better ways, perhaps none of them ideal. I haven't looked deeper, just saw that layerSwitcher.getContainer().innerHTML += '...' (or better appendChild) didn't work right away, because the button would still be shown when collapsed.

Merged this now and created a separate issue for moving the button into the layer switcher: #89


Add Parsing for Array Bracket Tokens

Update the parser to handle the LBRACKET and RBRACKET tokens, allowing it to correctly parse array indexing operations.

@Proxihox working on this

Hi @samthakur587  Can u assign this issue to me?

Hey @samthakur587  What happened to this in PR?

Hi, @samthakur587 I'd like to work on this issue. Please assign it to me.

Hey I think I have finished this issue and made a pr Please check it : Fix: For issue #88 #165


SPONSOR:BUG - Submit without attachment

I should not be able to submit without adding a  consent attachemnt

the same when adding the site consent

Completed


excluded packages should not be reported as missing

When vendoring any library that supports appengine, the recommened setup is
{
  "ignore": "test appengine/ appengine_internal/",
}

but this leads to govendor list +outside complaining that we didn't vendor these packages.
$ govendor list '+outside'
  m appengine
  m appengine_internal
  m appengine_internal/base

also govendor list '+outside,^excluded' won't change the output here, since govendor status missing trumps status excluded, which is the actual bug.
I fixed it for me be simply ignoring the fact that the packages are missing for any ignored package.
diff --git a/context/resolve.go b/context/resolve.go
index f95d3c5..9e693ce 100644
--- a/context/resolve.go
+++ b/context/resolve.go
@@ -367,10 +367,17 @@ func (ctx *Context) addSingleImport(pkgInDir, imp string, tree bool) (*Package,
        dir, gopath, err := ctx.findImportDir(pkgInDir, imp)
        if err != nil {
                if _, is := err.(ErrNotInGOPATH); is {
+                       presence := PresenceMissing
+                       // excluded packages, don't need to be present
+                       for _, exclude := range ctx.excludePackage {
+                               if imp == exclude || strings.HasPrefix(imp, exclude+"/") {
+                                       presence = PresenceExcluded
+                               }
+                       }
                        return ctx.setPackage("", imp, imp, "", Status{
                                Type:     TypePackage,
                                Location: LocationNotFound,
-                               Presence: PresenceMissing,
+                               Presence: presence,
                        }), nil
                }
                return nil, err

Now exclusion works as expected:
$ govendor list '+excluded'
  x appengine
  x appengine_internal
  x appengine_internal/base

and govendor list '+outside' finally reports my repository as correctly vendored (which it is as proven by tests already).
@kardianos This finally makes the important appengine use case work :tada:

Why don't you exclude appengine by tag?
The problem here is if you exclude some package and it's not in your GOPATH, then go build will exit with error, but govendor list will say that everything is in place.

@kaey because I need to support both: Compiling these packages with appengine and without appengine. When I exclude it by appengine tag, I need to manually all everything that this excluded.
Everything not excluded is still in place. But exclusion is for things we don't want to vendor.
If that fix is not acceptable, there needs to be another way to specify that behavior of packages being intentionally missing. But this would be more involved, so please specify more clearly, why the above fix won't work for you.


Apache HttpClient interception setup failed

Hi Tim, I've worked a bit with HTTP Toolkit a while back, and now trying to use it in a different context.
The issue I am seeing is that, after attaching to a running JVM process, I am able to see some HTTP traffic being intercepted, but HTTPS traffic fails with the error below. This Apache HttpClient is being used by the AWS SDK.
I thought this had something to do with the root CA so I imported the HTTP Toolkit cert, but this did not seem to change anything. Not sure this is even needed since from my understanding HTTP Toolkit is doing this part automatically when setting up the interception.
Here is my java version:
openjdk version "11.0.11" 2021-04-20 LTS
OpenJDK Runtime Environment Corretto-<IP_ADDRESS>.1 (build 11.0.11+9-LTS)
OpenJDK 64-Bit Server VM Corretto-<IP_ADDRESS>.1 (build 11.0.11+9-LTS, mixed mode)

And full log with stack trace:
HTTP Toolkit interception active
java.lang.IllegalStateException: Apache HttpClient interception setup failed
	at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:393) ~[httpclient-4.5.13.jar:4.5.13]
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.upgrade(DefaultHttpClientConnectionOperator.java:191) ~[httpclient-4.5.13.jar:4.5.13]
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.upgrade(PoolingHttpClientConnectionManager.java:392) ~[httpclient-4.5.13.jar:4.5.13]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
	at com.amazonaws.http.conn.ClientConnectionManagerFactory$Handler.invoke(ClientConnectionManagerFactory.java:76) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.conn.$Proxy33.upgrade(Unknown Source) ~[?:?]
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:428) ~[httpclient-4.5.13.jar:4.5.13]
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236) ~[httpclient-4.5.13.jar:4.5.13]
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186) ~[httpclient-4.5.13.jar:4.5.13]
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185) ~[httpclient-4.5.13.jar:4.5.13]
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83) ~[httpclient-4.5.13.jar:4.5.13]
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56) ~[httpclient-4.5.13.jar:4.5.13]
	at com.amazonaws.http.apache.client.impl.SdkHttpClient.execute(SdkHttpClient.java:72) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeOneRequest(AmazonHttpClient.java:1331) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1145) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:802) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530) ~[aws-java-sdk-core-1.11.1034.jar:?]
	at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.doInvoke(AmazonDynamoDBClient.java:4243) ~[aws-java-sdk-dynamodb-1.11.550.jar:?]
	at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.invoke(AmazonDynamoDBClient.java:4210) ~[aws-java-sdk-dynamodb-1.11.550.jar:?]
	at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.executeQuery(AmazonDynamoDBClient.java:2626) ~[aws-java-sdk-dynamodb-1.11.550.jar:?]
	at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.query(AmazonDynamoDBClient.java:2593) ~[aws-java-sdk-dynamodb-1.11.550.jar:?]
	at com.amazonaws.services.dynamodbv2.document.internal.QueryCollection.firstPage(QueryCollection.java:53) ~[aws-java-sdk-dynamodb-1.11.550.jar:?]
	at com.amazonaws.services.dynamodbv2.document.internal.PageIterator.next(PageIterator.java:45) ~[aws-java-sdk-dynamodb-1.11.550.jar:?]
	at com.amazonaws.services.dynamodbv2.document.internal.IteratorSupport.nextResource(IteratorSupport.java:87) ~[aws-java-sdk-dynamodb-1.11.550.jar:?]
	at com.amazonaws.services.dynamodbv2.document.internal.IteratorSupport.hasNext(IteratorSupport.java:55) ~[aws-java-sdk-dynamodb-1.11.550.jar:?]
	[application code]

I'm using HTTP Toolkit Version 1.4.4 (1.4.4) on macos.

Hi @mivanov. Thanks for reporting this, that's one I haven't seen before. Is there a demo somewhere you can share that I could use to reproduce this? Which version of the AWS SDK & Apache HttpClient are being used here? If you launch the process from an intercepted terminal, instead of attaching to it when it's already running, do you see the same error?
You are right that you shouldn't need to import the certificate, and this should work automatically. It looks like something unexpected is happening in some of the low-level APIs that HTTP Toolkit is hooking into, but it's hard to debug further without reproducing it myself.

I haven't had success reproducing this in isolation yet. Trying to use this version of Apache HttpClient directly it seems to work for simple use cases. So I suspect it may have something to do with the ConnectionManager used by the AWS SDK.
I will attempt to reproduce this with minimal code and report back.
You can see the versions of the libs in the stacktrace above:
aws-java-sdk-core-1.11.1034
httpclient-4.5.13

Ok, thanks, that's useful. Unfortunately I think without reproducing the issue locally it's going to be very difficult for me to fix this... If you do manage to find any kind of setup that I could use to reproduce this and debug it myself though, I'm very happy to investigate further! Let me know how it goes.

I'm having the same issue but for a different environment (JAX-RS + apache httpclient). For what I saw, the Object thisFactory in ApacheSetSslSocketFactoryAdvice in not what the code expect. It's a anonymous class, and thus the getDeclaredField don't work.
I would suggest to change ApacheSetSslSocketFactoryAdvice to
package tech.httptoolkit.javaagent.advice.apacheclient;

import net.bytebuddy.asm.Advice;

import javax.net.ssl.SSLContext;
import java.lang.reflect.Field;
import java.util.Arrays;

public class ApacheSetSslSocketFactoryAdvice {

    @Advice.OnMethodEnter
    public static void<EMAIL_ADDRESS>Object thisFactory) throws Exception {
        // Before creating the socket - replace the SSL context so the new socket trusts us.

        boolean intercepted = false;
        for (String factoryFieldName : Arrays.asList("socketfactory", "socketFactory")) {
            try {
                // Detect which field(s) are present on this class
                Field field = getDeclaredFieldInClassTree(thisFactory.getClass(), factoryFieldName);

                // Allow ourselves to change the socket factory value
                field.setAccessible(true);

                // Overwrite the socket factory with our own:
                field.set(thisFactory, SSLContext.getDefault().getSocketFactory());
                intercepted = true;
            } catch (NoSuchFieldException ignored) { }
        }

        if (!intercepted) {
            throw new IllegalStateException("Apache HttpClient interception setup failed");
        }
    }

    public static Field getDeclaredFieldInClassTree(Class<?> type, String fieldName) throws NoSuchFieldException {
        for (Class<?> clazz = type; clazz != null; clazz = clazz.getSuperclass()) {
            try {
                return clazz.getDeclaredField(fieldName);
            } catch (NoSuchFieldException ignored) { }
        }
        throw new NoSuchFieldException();
    }

}

The code that is triggering the issue:
Invocation.Builder webTarget = ClientBuilder.newClient().target(this.parametroCaptchaServico.getCaptchaUrl())
                .request(MediaType.APPLICATION_JSON_TYPE);
        return webTarget.buildPost(construirEntityFormUrlEncoded(requisicao)).invoke();
        ```

Hi @davidhsv

I'm having unresolved references import com.sun.tools.attach.*

This usually means you're using a JVM that isn't fully supported, e.g. Java 8. The agent can run in Java 8 when attaching at startup with -javaagent but attaching externally at runtime requires Java 11+, as the APIs aren't available in older JVMs. That's for OpenJDK & the Oracle JVM, but I suspect other runtimes will be similar.

I could not build the project, nor I found instructions to build it

If you're using a recent JVM, the setup steps should be pretty standard - you can look at the GitHub CI job as an example: https://github.com/httptoolkit/jvm-http-proxy-agent/blob/main/.github/workflows/ci.yml. It should just be a matter of cloning the repo and running ./gradlew quickTest with a recent JVM. Or if you use an IDE like Intellij it should detect the Gradle tasks available automatically.
Does that work for you?
Thanks for pointing this out btw, I'll add some notes to the README about this now.

I would suggest to change ApacheSetSslSocketFactoryAdvice to...

At a glance, this looks sensible to me, but I don't have time in the very short term to set this up and fully test it myself. If you're interested in this, could you create a new test case in https://github.com/httptoolkit/jvm-http-proxy-agent/tree/main/test-app/src/main/java/tech/httptoolkit/testapp/cases, reference it here, check that fails with the current code, and then test that your change fixes it?
If you can open a PR that fixes this issue without breaking the existing cases, I'm very happy to review & ship it. By the way, in case you're not aware, HTTP Toolkit Pro is totally free for all contributors - I'd be happy to set you up with a free account if you can help fix this issue.

Thanks for the explanation, I will get back to it Monday and I send you a PR them. Have a nice weekend!

OK, great! You too 👍

I added the test case and the fix. I was not able to get the file generated from github action, put in /Applications/HTTP Toolkit.app/Contents/Resources/httptoolkit-server/overrides/java-agent.jar and make it work. I always get
Caused by: java.lang.ClassNotFoundException: tech.httptoolkit.javaagent.advice.apacheclient.ApacheSetSslSocketFactoryAdvice from [Module "org.apache.httpcomponents.core" from local module loader @5c42d2b7 (finder: local module finder @625abb97 (roots: /usr/local/pje/wildfly-26.0.1.Final/modules,/usr/local/pje/wildfly-26.0.1.Final/modules/system/layers/base))]
	at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:200)

Any tips how to make it work? I'm using the file generated here https://github.com/davidhsv/jvm-http-proxy-agent/actions/runs/2771461785
Thanks!

Hi @davidhsv - that change looks good, so I'm not sure what could cause the error you're seeing there. Just copying the agent JAR into place should be all the setup that's required.
I've just given this a quick test myself, and it all seems fine AFAICT. How exactly are you testing this? That class is indeed present in your JAR, so there must be something unusual happening in the classloader in your specific setup to stop it being loaded.

I tried the .jar with my change on a demo project using Spring Boot and everything worked fine. After, I tried the same project in .war + Wildfly 26.0.1.Final and I was able to replicate the ClassNotFoundException bug. Same JDK.
So I searched and I found that you should start Wildfly with -Djboss.modules.system.pkgs=tech.httptoolkit to be able to attach the agent in a running Wildfly... Not sure if we can bypass it in HTTP Toolkit.

So yes, everything is working fine after my fix + -Djboss.modules.system.pkgs=tech.httptoolkit. Thanks for your help 🙇

Ideally, we would crash and print in the console that we need to use this configuration above when attaching to a non-configured Wildfly. What do you think?

Agreed, it'd be great to fix that, but let's split it out into a separate issue. I'm happy that that PR appears to fix this Apache issue, so I've merged it as-is for now and we can investigate WildFly workarounds separately.

Nice. Thank you again. I already have a payed license, next year I want the free one :P
Keep the great work, I love HTTP Toolkit
❤ from Brazil

I already have a payed license, next year I want the free one :P

No worries, I've just refunded your annual payment, so this year is retrospectively free :smile:. Should arrive back in your account within a couple of days. Thanks for contributing!


Reconnection attempt before to exit thread on Exception caught

https://github.com/b23prodtm/MFIGamepadFeeder/blob/e6b17b086e07673940d3695dcb6a43d6367a55c1/MFIGamepadShared/Gamepad.cs#L164
Rather we attempt to re-plug the hid-device in instead of breaking the thread, unless the user pushed stop().

MFIGamepadFeederInstaller_x64-îssue7.zip


CLI backmerge

Description
I'm going to start with inherited functions for Foundry and wanted to have the UI merged from main first.
First try here: #601
Additional Information

[x] I have read the contributing docs (if this is your first contribution)
[x] This is not a duplicate of any existing pull request

Related Issues
Your ENS/address: harmont.eth

@carletex I think I got it right this time.


Module not found: Can't resolve 'RequestHandler'

I'm tried to create a basic piechart using static data in the component and I receive these compile errors:
./node_modules/dataminr-react-components/dist/lib/StoreBase.js
Module not found: Can't resolve 'RequestHandler' in '.../node_modules/dataminr-react-components/dist/lib'

full code: http://dpaste.com/17JP2Y4

You'd need to define a RequestHandler within your project. Here's an example

Why was it designed that way instead of having the piechart component consume the data as props?


[BUG] An error occurred using thread isolation mode in Hystrix Plugin

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
Use Shenyu V2.6.1 to enable Hystrix. When the isolation mode is semaphore, it is normal. When the isolation mode is thread, similar to this case: https://github.com/apache/shenyu/issues/2893,the error is as follows:
2024-05-31 15:27:40 [parallel-8] ERROR org.apache.shenyu.plugin.httpclient.AbstractHttpClientPlugin - Response took longer than timeout: PT3S
java.util.concurrent.TimeoutException: Response took longer than timeout: PT3S
	at org.apache.shenyu.plugin.httpclient.AbstractHttpClientPlugin.lambda$execute$1(AbstractHttpClientPlugin.java:86)
	at reactor.core.publisher.MonoErrorSupplied.subscribe(MonoErrorSupplied.java:55)
	at reactor.core.publisher.Mono.subscribe(Mono.java:4490)
	at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.handleTimeout(FluxTimeout.java:301)
	at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.doTimeout(FluxTimeout.java:280)
	at reactor.core.publisher.FluxTimeout$TimeoutTimeoutSubscriber.onNext(FluxTimeout.java:419)
	at reactor.core.publisher.FluxOnErrorReturn$ReturnSubscriber.onNext(FluxOnErrorReturn.java:162)
	at reactor.core.publisher.MonoDelay$MonoDelayRunnable.propagateDelay(MonoDelay.java:271)
	at reactor.core.publisher.MonoDelay$MonoDelayRunnable.run(MonoDelay.java:286)
	at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
	at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
	at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266)
	at java.util.concurrent.FutureTask.run(FutureTask.java)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
2024-05-31 15:27:40 [hystrix-user2-4] ERROR org.apache.shenyu.plugin.hystrix.command.HystrixCommandOnThread - hystrix execute have error:
org.springframework.web.server.ResponseStatusException: 408 REQUEST_TIMEOUT "Request timeout, the maximum number of retry times has been exceeded"; nested exception is org.apache.shenyu.plugin.httpclient.exception.ShenyuTimeoutException: Request timeout, the maximum number of retry times has been exceeded
	at org.apache.shenyu.plugin.httpclient.AbstractHttpClientPlugin.lambda$execute$5(AbstractHttpClientPlugin.java:100)
	at reactor.core.publisher.Mono.lambda$onErrorMap$30(Mono.java:3797)
	at reactor.core.publisher.Mono.lambda$onErrorResume$32(Mono.java:3887)
	at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94)
	at reactor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)
	at reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.whenError(FluxRetryWhen.java:225)
	at reactor.core.publisher.FluxRetryWhen$RetryWhenOtherSubscriber.onError(FluxRetryWhen.java:274)
	at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.onError(FluxContextWrite.java:121)
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:383)
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:251)
	at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.onNext(FluxContextWrite.java:107)
	at reactor.core.publisher.EmitterProcessor.drain(EmitterProcessor.java:537)
	at reactor.core.publisher.EmitterProcessor.tryEmitNext(EmitterProcessor.java:343)
	at reactor.core.publisher.SinkManySerialized.tryEmitNext(SinkManySerialized.java:100)
	at reactor.core.publisher.InternalManySink.emitNext(InternalManySink.java:27)
	at reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.onError(FluxRetryWhen.java:190)
	at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onError(MonoPeekTerminal.java:258)
	at reactor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)
	at reactor.core.publisher.FluxTimeout$TimeoutOtherSubscriber.onError(FluxTimeout.java:341)
	at reactor.core.publisher.Operators.error(Operators.java:198)
	at reactor.core.publisher.MonoErrorSupplied.subscribe(MonoErrorSupplied.java:56)
	at reactor.core.publisher.Mono.subscribe(Mono.java:4490)
	at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.handleTimeout(FluxTimeout.java:301)
	at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.doTimeout(FluxTimeout.java:280)
	at reactor.core.publisher.FluxTimeout$TimeoutTimeoutSubscriber.onNext(FluxTimeout.java:419)
	at reactor.core.publisher.FluxOnErrorReturn$ReturnSubscriber.onNext(FluxOnErrorReturn.java:162)
	at reactor.core.publisher.MonoDelay$MonoDelayRunnable.propagateDelay(MonoDelay.java:271)
	at reactor.core.publisher.MonoDelay$MonoDelayRunnable.run(MonoDelay.java:286)
	at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
	at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
	at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266)
	at java.util.concurrent.FutureTask.run(FutureTask.java)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.shenyu.plugin.httpclient.exception.ShenyuTimeoutException: Request timeout, the maximum number of retry times has been exceeded
	at org.apache.shenyu.plugin.httpclient.AbstractHttpClientPlugin.lambda$execute$4(AbstractHttpClientPlugin.java:97)
	at reactor.util.retry.RetryBackoffSpec.lambda$null$4(RetryBackoffSpec.java:560)
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:376)
	... 28 common frames omitted

The configuration of semaphore is as follows:

The thread configuration is as follows:

Expected Behavior
Thread isolation mode should be normal
Steps To Reproduce

OS:CentOS Linux 7 (Core)，JDK:openjdk version "1.8.0_412"
The thread configuration is as follows

Using Postman to initiate request calls
An error occurred

Environment
ShenYu version(s):v2.6.1

Debug logs
No response
Anything else?
No response

Have you solved it?


OAuth 2.0 support

Are there any plans to support OAuth 2.0? That would help adding gmail support

There is no concrete plan for this feature, let's keep this issue as a reminder. But OAuth is not required for adding gmail account, isn't it? Check https://github.com/soywod/himalaya/issues/368 and https://github.com/soywod/himalaya/wiki/Troubleshooting:gmail-credentials.

No, it is not, but using OAuth 2.0 is really nice, especially if you already have oauth setup on your machine

Would also be great to be able to use oauth with o365 as basic-auth support is being deprecated

Oauth is needed for enterpries accounts as far as i can tell

I gather all Himalaya issues to the same bug tracker, so I transfer your issue here.


Scanning the folders of the default openfl libraries.

The game can now scan files and directories from the built-in asset libraries.


Fix to #942 - adding note about default command timeout

i.e. that it is determined by provider. Also added links to provider specific documentation where the actual timeout values are specified.

@maumar was this fixed in the EF Core source code?

Apparently the EF Core codebase doesn't contain the change at https://github.com/aspnet/EntityFrameworkCore/blob/master/src/EFCore.Relational/RelationalDatabaseFacadeExtensions.cs#L801, so this will be overwritten.

Tracked at https://github.com/aspnet/EntityFrameworkCore/issues/17503 in source.

I'd also suggest that the API docs for this don't add this much info as a summary. Usually, summary is a short sentence and additional info should go into remarks. More on this at https://github.com/dotnet/dotnet-api-docs/wiki.

@mairaw - Thanks.


Request Limits from the CRs need to be updated in the operator

Request limits from the CRs aren't reflected in the daemon sets that are created.
We need to make sure any values that are updated in the CR are actually ported over to our kube resources and the change is reflected.

i approve


[PokemonTV] Create new Bridge (only German)

A Bridge that gives out only German Episodes of a given Season.
Changing language isn't easy due to Pokémon bad Link structure. The Link gets translated too. That would destroy the nice looking Link from the Bridge. (At least with the way BlizzardNewsBridge deals with it.)
Feel free to give advice on how to fix that.

The Code for Languages would look like this:
        const PARAMETERS = array(
                '' => array(
                        'locale' => array(
                                'name' => 'Language',
                                'type' => 'list',
                                'values' => array(
                                        'Deutsch' => 'de/pokemon-folgen/pokemon-tv-staffeln/staffeln',
                                        'English (EU)' => 'uk/pokemon-episodes/pokemon-tv-seasons/season',
                                        'English (US)' => 'us/pokemon-episodes/pokemon-tv-seasons/season',

That would mean, that the translation of the Link would be in the Link of the Bridge, which I clearly don't like.
Any Idea on how to change that?

Hi,
pokemon.com has an api
US series updates and names:
https://www.pokemon.com/api/pokemontv/v2/channels/us
German series updates and names
https://www.pokemon.com/api/pokemontv/v2/channels/de/
South america:
https://www.pokemon.com/api/pokemontv/v2/channels/el/
You can see all the country codes from the region selector on the main page. You can also check how the XBMC addon does it:
https://github.com/SyrupThinker/plugin.video.pokemon-tv/blob/master/addon.py

Oh, thank you very much

I converted it to draft, as it seems to be not ready. If I am wrong - feel free to convert it back to "Ready for review"

I converted it to draft, as it seems to be not ready. If I am wrong - feel free to convert it back to "Ready for review"

Yea, but I have honestly no Idea on how to use other things than XPath, I am very new to coding...

I will change it back, when it got added I can still make a new PR, if I know it then...
But that could take it's time, maybe in a year or two...

Hi @dhuschde . Check #2219 and tell me if that was what you were looking for.

Hi @dhuschde . Check #2219 and tell me if that was what you were looking for.

Yes, that is a Bridge I was looking for. Thank you very much.
I'm closing this PR then…


Returning 200 Instead of 422 for Requests with Domains Containing Spaces in the Body When Issuing TLS Server Certificates

The system is returning a 200 OK HTTP status code instead of the expected 422 Unprocessable Entity when requests with domains containing spaces in the body are submitted for issuing TLS certificates. This inconsistency affects all requests with such bodies, leading to potential security vulnerabilities or unexpected behavior.
Details:

Observed Behavior:

When requests with bodies containing domains with spaces are submitted for issuing TLS certificates, the system consistently responds with a 200 OK status code.
This response occurs regardless of the specific request or issuer used, indicating a systemic issue with handling domains containing spaces in TLS certificate requests in the request body.
The issuance of TLS certificates with domains containing spaces may introduce security risks or compatibility issues with certain systems or browsers.

Expected Behavior:

According to RESTful API conventions, requests with invalid or unprocessable entity data, such as domains containing spaces, should result in a 422 Unprocessable Entity status code.
The response should accurately convey that the issue stems from the request's body containing invalid data, prompting the client to correct the input before resubmitting the request.

Impact:

Security Vulnerabilities:

Allowing TLS certificates to be issued with domains containing spaces may create security vulnerabilities, as such certificates may not be correctly interpreted or validated by clients or servers.
Attackers could potentially exploit this vulnerability to deceive users or gain unauthorized access to sensitive information.

Data Integrity Concerns:

Inconsistent handling of requests with bodies containing domains containing spaces compromises the integrity of the data exchanged between clients and servers, leading to potential data corruption or loss.

TEST DATA:
{
  "validity": {
    "from": "2024-03-09",
    "until": "2024-09-25"
  },
  "key_strength": "VERY_HIGH",
  "address": {
    "country": "PT",
    "state": "Maputo",
    "locality": "Constantia",
    "street_address": "R. Elias Garcia 50"
  },
  "name": "yzuoeupofr",
  "domains": ["example domain com"],
  "organization": "xcefcbvcoo"
}

Resolved


Add cache

The Laravel51Provider class can do cache by generation a key with the $mapping array or with the new Mapper instance.
Operations such as Reflection should be cached, so it MUST be done before actually parsing routes.

https://github.com/nilportugues/laravel5-jsonapi/commit/ef47a50cf2c409d7413acfb40a27bf955f6d52e2


[ASCII-1219] Create a trace log component

What does this PR do?

Move the trace logger component from comp/core/log to its own package in comp/core/log/tracelogimpl.
Motivation

Decouple trace-agent from core-agent. The end goal would be able to be able to build the serverless agent without the trace agent.
It also removes a lot of dependencies from some modules (which don't otherwise depend on pkg/trace), and in turn from some agents (see https://github.com/DataDog/datadog-agent/pull/23004#issuecomment-1954501638): 35~38 packages removed from cluster-agent, dogstatsd, process-agent, heroku agent, security-agent, and system-probe.
Additional Notes

There shouldn't be any functional change.
Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Check that the trace-agent can still start and log properly.

/merge


Fix name of the actor service project in samples/Actor/Readme.md

Description
Fixed the actor service project name in the Readme.md. Also updated the description to delete what it seemed a legacy project name.
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[ ] Code compiles correctly
[ ] Created/updated tests
[x] Extended the documentation

@pacodelacruz Coudl you please resolve the conflicts or if its fixed by https://github.com/dapr/dotnet-sdk/pull/212, you can close this.

Thanks @amanbha . Will close this off. As these changes are included in #212


Doesn't always start a right elevation

seems to often start too-high off the ground.
usually takes a reload or two.
(Samsung Odyssey on Win MR)

This seems to be in with Windows MR only.   It looks like the origin when starting VR is the current headset position/orientation.   In Firefox using Steam VR in Windows MR, it works fine.


add a script to compute the perplexity of test data

The eval.py script can be used to compute perplexity of test data.

@ajaech This PR has merge conflicts.


Unable to exec swc_cli from golang

Describe the bug
Currently swc_cli (as installed from https://unpkg.com/<EMAIL_ADDRESS>does not allow running with both inputs from files and stdin reading from /dev/null at the same time.
For example:
$ swc compile --out-file /tmp/foo.js input.ts < /dev/null
Error: Cannot specify inputs from stdin and files at the same time

This causes issues when attempting to run swc from frameworks (such as go) which read stdin from /dev/null by default exec'ing processes.
https://pkg.go.dev/os/exec#Cmd

If Stdin is nil, the process reads from the null device (os.DevNull).

Input code
No response
Config
No response
Playground link
No response
Expected behavior
Do not exit with an error when compiling files while stdin is reading from /dev/null.
Actual behavior
No response
Version
0.51.0
Additional context
No response

@kwonoj Do you think this is a bug?

No, I wouldn't consider this as a bug, as error message clearly indicate we do not support this. This was implicit undefined behavior in previous cli. Maybe considered as an enhancement but in my honest opinion caller should specify single input. Not sure why golang tries those behavior though.

Thanks for the fast reply.
Can you comment a bit more on the requirement for stdin when specifying an input file list? Must it be a TTY?


Update MarketProfile.cs (No functional changes)

Added Comments and docstrings to some parts of the code for future maintainability and ease of understanding

Hello! Did you try compiling that code?
Also, what is Price of Consciousness?


Update README.md - minor edits

Made some tweaks to wording for readability and house style.
PR Checklist

[ ] If you are proposing a new decision record document, used the right template for that
- (ADR, decision-record, engagement, research)
[ ] Set yourself as the Assignee
[ ] Tag anyone you would like to review, or @forms-design or @forms-devs
[ ] Fill in the template below

What
Describe what you have changed and why.
How to review
Describe the steps required to test the changes.
For example:

Semantic: Do you agree with the changes?
Syntactic: Spelling, grammar, etc.

Who can review
Describe who can review the changes. Or more importantly, list the people
that can't review, because they worked on it.

Ok, cool. So how do we 'action' this? Can you just merge it now? Or do I
need to create a new PR or something?
On Mon, 26 Jun 2023 at 11:13, Christopher Cameron @.***>
wrote:

@.**** commented on this pull request.
In design/features/routing/README.md
https://github.com/alphagov/forms/pull/88#discussion_r1241953924:

-Without skip functionality being part of an HTML form users are forced to go through all the questions even when they are not relevant to their submissions success. We originally implemented a feature to allow form creators to make questions “optional”, meaning the person completing a form can pass over questions they do not need to complete. However, this means form creators need to give questions context within the “hint text” to help form completers decide if they need to complete a question or not.
+Without skip functionality in an HTML form users are forced to go through all the questions even when they’re not relevant to their submission. We originally implemented a feature to allow form creators to make questions ‘optional’, meaning the person completing a form can pass over questions they do not need to complete. However, this means form creators need to add context to questions within the ‘hint text’ to help form fillers decide if they need to complete a question or not.
This is fine. I think we found out last week that if we merge your PRs
then it brings in and closes the previous ones, so do the changes here is
fine
—
Reply to this email directly, view it on GitHub
https://github.com/alphagov/forms/pull/88#discussion_r1241953924, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A5GFYCIAXV5Z5A2GHAXRXX3XNFOFBANCNFSM6AAAAAAZGHII2A
.
You are receiving this because you were assigned.Message ID:
@.***>

Yeah just merge it


bfdriver double-compile bug

Partial fix for [BUG] #553 Double/Infinite Compile. This commit removes
double compilation for the bfdriver component only.
Signed-off-by: JaredWright<EMAIL_ADDRESS>

Merging regardless of Travis as this is a simple one


change Lister to DynamicClient for subscription clean up in Teardown

Signed-off-by: akihikokuroda<EMAIL_ADDRESS>
Description of the change:
This line https://github.com/operator-framework/operator-lifecycle-manager/blob/ac4de75fd3972ca12bdc12639bd8f79ff75e64fd/test/e2e/util.go#L403 in the Teardown should delete all subscriptions in the namespace but it sometime doesn't (I don't know why so far, I 'll investigate, later).
This line https://github.com/operator-framework/operator-lifecycle-manager/blob/ac4de75fd3972ca12bdc12639bd8f79ff75e64fd/test/e2e/util.go#L408 is used to wait until the all subscriptions are deleted but it always gets no instance because the DeleteAllOf function deletes the subscriptions in the cache and the LIst function gets the instance from the cache.
This PR changes the way to get the subscriptions from the API server directly instead of the cache.
Motivation for the change:
Closes #2615
Reviewer Checklist

[ ] Implementation matches the proposed design, or proposal is updated to match implementation
[ ] Sufficient unit test coverage
[ ] Sufficient end-to-end test coverage
[ ] Docs updated or added to /doc
[ ] Commit messages sensible and descriptive

/lgtm


add analytics handler (mixpanel)

A/B testing is great, but you need to record that with you analytics suite.
this adds a simple config option to hook into the event where the slot is selected, then flag the user for the cohort.
Mixpanel is the only internal analytics feature that I added, since it's the one I'm most familiar with.

vue-a2b is about a/b testing or picking what to render and not about a/b testing && analytics. It's rather a single problem solution than suite that tries to solve couple issues simultaneously. Keeping it decoupled from analytics means smaller bundle size and complete freedom when it comes to tracking implementation

Certainly there is no conflict here with that.  Just don't configure analytics.
But in most cases A/B testing means cohort analysis.  That's what I'm getting at with this anyway.
It's a simple addition, and adds about 500B in weight to the package.

@softbeehive I understand that you want the package to be small and flexible. However, right now, vue-a2b is not really split testing as you say, since you are only split-serving different variants without the opportunity to actually test the impact they have.

@softbeehive I understand that you want the package to be small and flexible. However, right now, vue-a2b is not really split testing as you say, since you are only split-serving different variants without the opportunity to actually test the impact they have.

@larsschellhas I guess you're right to expect it to be a complete solution. But it's rather a helper that solves a single problem. It's quite old and outdated by now, I wouldn't use it. @AMekss, maybe consider archiving this repo.

@larsschellhas I guess you're right to expect it to be a complete solution. But it's rather a helper that solves a single problem. It's quite old and outdated by now, I wouldn't use it. @AMekss, maybe consider archiving this repo.

@softbeehive @AMekss yes, you are right! However, it was still the first option that came up in my search for an A/B- / Split-Testing solution for Vue.js.
Can you recommend another one? I'm currently using Google Optimize on other website, but I'm a bit hesitant regarding its use inside my Vue app.

@softbeehive @AMekss yes, you are right! However, it was still the first option that came up in my search for an A/B- / Split-Testing solution for Vue.js.
Can you recommend another one? I'm currently using Google Optimize on other website, but I'm a bit hesitant regarding its use inside my Vue app.


JSDoc @type is broken

Repro:

Clone https://github.com/Microsoft/vscode-extension-samples
cd webpack-sample && npm install
Open the webpack-sample folder in code (TS 3.3.1) and insiders (TS 3.3.3)

Insiders:

Stable:

We are shipping the webpack bundling guide so this should be fixed. FYI @jrieken
Also many people who haven't switched to TS rely on JSDocs types for IntelliSense.

Seems to be working fine for me:

What happens if you f12 on webpack in import('webpack')

This looks like an automatic types issue. I can repo if I clear the typings cache and then open the webpack.config file. However we then install the typings in the background. Once that completes any edits to the file refresh the diagnostics (we should probably auto refresh them here but this is not a regression)

For some reason this doesn't repro after I reopen VS Code. Let me dig a bit to see what went wrong.

I cannot find reliable repro. If I run into this again I'll reopen.


Fix package issues

@kygoffe - major and minor changes:

Update the NHS front-end toolkit to the latest version (v7)
Add documentation and tidy/streamline imports
Reorganise www folder into subfolders to collect similar files together
Fixed all R CMD check issues
Addressed all accessibility issues identified in Wave and Axe
Updated and expanded README
Added a GHA for gitleaks and R CMD check
Improved functionality in some places
Some small formatting/styling changes

Don't be put off by there being 63 files changed, 2/3rds of these will not need looked at as they are auto-generated :)
Feel free to call me if anything I have changed is not clear why I did it.

@MarkMc1089, I left comments. Thanks

💯 👍🏼 🥇 good to go! thanks @MarkMc1089


How to get annotations into json file

Hey,
sorry if I am missing something in the documentation, but I would like to know how can I convert the annotation results for images into json file with coordinates (something like coco file) so that I can work with the annotations further?
Thanks a lot!

So you can use these masks that it outputs (Numpy array) and turn them into an image using PIL. Here is a quick example i made
def save_mask_with_original_name(maskimage, original_filename, save_directory):
# Ensure the maskimage has the correct shape and type
if maskimage.dtype != np.uint8:
maskimage = (maskimage * 255).astype(np.uint8)  # Convert to 8-bit grayscale if necessary
# Convert maskimage to RGB
masksss = Image.fromarray(maskimage).convert('RGB')
masksss = masksss.resize(mask_size, Image.Resampling.LANCZOS)
# Extract the base filename without extension
base_filename = os.path.splitext(original_filename)[0]

# Save the mask image with the same base filename
save_path = os.path.join(save_directory, f"{base_filename}_mask.jpg")
masksss.save(save_path, format='JPEG')

@Dashenboy thanks for your reply. Sorry if I was not clear, I don't need an image of the mask. I need the mask to save in COCO formant, ie, with coordinates such that I am able to open it with Image Annotator, or further use in training an object/subject recognition model. I see that the output of SAM has vectors of True,False; and am not sure how to get rather the coordinates

did you manage to find anything on this?


Export from Query not working, giving Task Execution Failed w/ no reason

System information:

Operating system (distribution) and version: Windows 10 Enterprise Edition 64-bit OS Build 18362.592
DBeaver version: <IP_ADDRESS>001191557
Additional extensions: None

Connection specification:

Database name and version: IBM Informix Dynamic Server and Netezza
Driver name : ifxjdbc.jar and nzjdbc.jar
Do you use tunnels or proxies (SSH, SOCKS, etc)?: No

Describe the problem you're observing:
Export from Query not working, giving Task Execution Failed w/ no reason
Steps to reproduce, if exist:
Right Click SQL statement > Execute Menu > Execute From Query
Target is CSV,

Choose default output options

Confirmation screen

Include any warning/errors/backtraces from the logs
from .log file
!ENTRY org.jkiss.dbeaver.model 4 0 2020-01-23 14:09:54.354
!MESSAGE Error transfering data from SELECT * FROM store_inventory
where inventory_date = '2020-01-20'
and store_nbr = 3328 to store_inventory_202001231409.csv
!SUBENTRY 1 org.jkiss.dbeaver.model 4 0 2020-01-23 14:09:54.354
!MESSAGE
!STACK 0
java.lang.IllegalArgumentException:
at org.eclipse.core.runtime.Assert.isLegal(Assert.java:66)
at org.eclipse.core.runtime.Assert.isLegal(Assert.java:50)
at org.jkiss.dbeaver.model.text.parser.TPRuleBasedScanner.checkRange(TPRuleBasedScanner.java:116)
at org.jkiss.dbeaver.model.text.parser.TPRuleBasedScanner.setRange(TPRuleBasedScanner.java:88)
at org.jkiss.dbeaver.model.sql.parser.SQLScriptParser.parseParameters(SQLScriptParser.java:524)
at org.jkiss.dbeaver.model.sql.data.SQLQueryDataContainer.readData(SQLQueryDataContainer.java:93)
at org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferProducer.lambda$0(DatabaseTransferProducer.java:214)
at org.jkiss.dbeaver.model.exec.DBExecUtils.tryExecuteRecover(DBExecUtils.java:159)
at org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferProducer.transferData(DatabaseTransferProducer.java:138)
at org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferProducer.transferData(DatabaseTransferProducer.java:1)
at org.jkiss.dbeaver.tools.transfer.DataTransferJob.transferData(DataTransferJob.java:109)
at org.jkiss.dbeaver.tools.transfer.DataTransferJob.run(DataTransferJob.java:80)
at org.jkiss.dbeaver.runtime.RunnableContextDelegate.lambda$0(RunnableContextDelegate.java:39)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
!ENTRY org.jkiss.dbeaver.model 4 0 2020-01-23 14:09:54.423
!MESSAGE
!STACK 0
java.lang.IllegalArgumentException:
at org.eclipse.core.runtime.Assert.isLegal(Assert.java:66)
at org.eclipse.core.runtime.Assert.isLegal(Assert.java:50)
at org.jkiss.dbeaver.model.text.parser.TPRuleBasedScanner.checkRange(TPRuleBasedScanner.java:116)
at org.jkiss.dbeaver.model.text.parser.TPRuleBasedScanner.setRange(TPRuleBasedScanner.java:88)
at org.jkiss.dbeaver.model.sql.parser.SQLScriptParser.parseParameters(SQLScriptParser.java:524)
at org.jkiss.dbeaver.model.sql.data.SQLQueryDataContainer.readData(SQLQueryDataContainer.java:93)
at org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferProducer.lambda$0(DatabaseTransferProducer.java:214)
at org.jkiss.dbeaver.model.exec.DBExecUtils.tryExecuteRecover(DBExecUtils.java:159)
at org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferProducer.transferData(DatabaseTransferProducer.java:138)
at org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferProducer.transferData(DatabaseTransferProducer.java:1)
at org.jkiss.dbeaver.tools.transfer.DataTransferJob.transferData(DataTransferJob.java:109)
at org.jkiss.dbeaver.tools.transfer.DataTransferJob.run(DataTransferJob.java:80)
at org.jkiss.dbeaver.runtime.RunnableContextDelegate.lambda$0(RunnableContextDelegate.java:39)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
Screenshot of error

Same problem. MySQL...

Possibly fixed in 6.3.4 if anyone else can also confirm.

Possibly fixed in 6.3.4 if anyone else can also confirm.

It still did not work for me on 6.3.4

This is working inconsistently for me.
Some queries no problem.
Seems to be consistent, query to query though. Let me know if there's anything I can forward you to assist.

Same issue for me.

There were a few fixes in SQL parser and in XLSX exporter. I can't reproduce these errors anymore.
Please check in Early Access version (https://dbeaver.io/files/ea).

There were a few fixes in SQL parser and in XLSX exporter. I can't reproduce these errors anymore.
Please check in Early Access version (https://dbeaver.io/files/ea).

I just installed dbeaver-ce-6.3.5-x86_64-setup.exe  a short time ago on windows 10 and it worked perfectly. Thanks

It worked for one query - and failed for two others. no real difference between the three apart from date ranges, but it doesn't even attempt to execute the query for me.
Across both DB2 and MYSQL - first time seemed to work and then failed all subsequent attempts.

This is dbeaver-ce-6.3.5-macosx.cocoa.x86_64

@alexsah please try EA version (see above), this bug has to be fixed there.

@alexsah please try EA version (see above), this bug has to be fixed there.

I did.
Downloaded again just to confirm - still failing on subsequent attempts.

@alexsah Please post error/debug log (https://github.com/dbeaver/dbeaver/wiki/Log-files)
I can't reproduce this.

@alexsah Also, it is possible that job fails because it has old configuration format. If nothing helps try to recreate task.

Reproduced + one more fix committed.

verified


Consider allowing to use .yaml instead of .yml as file extension

According to Wikipedia, the

... official recommended filename extension for YAML files has been .yaml since 2006.

Last time I checked, it was not possible to use .yml as file extension for the configuration file.
GitHub Actions allows to use .yaml files.
I'm aware that this is probably not a very important issue, and I'm aware that this might cause issues, such as

what should be done when people provide both .github/settings.yml and .github/settings.yaml

but I'm a bit curious - have you considered allowing users to use .yaml as file extension?

This is valid, I just encountered this issue when testing probot/settings out, I thought it was not working, when it was just my extension was wrong.

since settings simply uses probot's context.config, it would probably be more appropriate to open the issue against probot itself.
both are common extensions, and i don't personally have a strong opinion on this. i think it can be acceptable to document the expected filename, like we have, and follow the convention that is common to many other probot apps, but i can see the value of falling back to the alternative.
i think it would be more beneficial to make the decision consistently across probot apps if a change were to be made, though.

This makes sense thank you!

thanks. i'll close this one for now, but feel free to reference a probot issue here, if you end up opening one

Thank you, @JoseThen and @travi!
I have opened a corresponding issue at https://github.com/probot/probot/issues/1162.

I think this is really just a couple-liner change in this repo, the context.config method takes the filename as an argument, so it could look for the .yml extension and if it doesn't exist then look for the .yaml one.
The changes would likely take place here:
  async function syncSettings (context, repo = context.repo()) {
    const config = await context.config('settings.yml', {}, { arrayMerge: mergeArrayByName })
    return Settings.sync(context.octokit, repo, config)
  }


game too easy

I got 18010 in one go not touching the computer

Only 18010?? Those are rookie numbers :P


get_min_times() fails with TypeError: '<' not supported between instances of 'list' and 'collections.OrderedDict'

Hi Mark,
Thanks for creating this module but I'm having a bit of trouble trying to use get_min_times()
The readme says:
"Requirements a list of dicts with details of particular times that must be includes in the returned date_rate dict."
But when I try that I get an error:
File "/Users/x/Library/Python/3.7/lib/python/site-packages/OctopusAgile/Agile.py", line 39, in get_min_times
min_key = min(d, key=d.get)
TypeError: '<' not supported between instances of 'list' and 'collections.OrderedDict'
Below is the example code I am using
`
from OctopusAgile import Agile
from pprint import pprint
from datetime import datetime, timedelta
from collections import OrderedDict
EAST_ENGLAND='A'
agile = Agile(EAST_ENGLAND)
time_from = datetime.utcnow().strftime("%Y-%m-%dT%H:%M:%SZ")
time_to = (datetime.utcnow() + timedelta(hours = 24)).strftime("%Y-%m-%dT%H:%M:%SZ")
print(time_from, time_to)
rates = agile.get_rates(time_from,  time_to)
reqs = [{"slots": 10, "time_from": time_from, "time_to": time_to}]
res = agile.get_min_times(1, rates, reqs)
Can you give me a pointer as to what I am doing wrong or if this is a bug?

Sorry bit of an id10t error. If I pass the correct date_rates
res = agile.get_min_times(2, rates['date_rates'], reqs)
I now get:
Traceback (most recent call last):
File "examples/octopus_agile_set_program.py", line 19, in
res = agile.get_min_times(2, rates['date_rates'], reqs)
File "/Users/x/Library/Python/3.7/lib/python/site-packages/OctopusAgile/Agile.py", line 57, in get_min_times
remove_list = self.get_max_times(min_slots - len(slots_filled), ret_d)
File "/Users/x/Library/Python/3.7/lib/python/site-packages/OctopusAgile/Agile.py", line 69, in get_max_times
min_key = max(d, key=d.get)
ValueError: max() arg is an empty sequence

Resolved it myself.
After re-reading the documentation i worked it out.
It's hard to mentally distinguish number of time periods in in_d and number of slots in time period


The video player has sound but no image on my android

The issue #48 has occurred on my android devices with follow instruction appear continuously on terminal
E/MALI    (16638): _essl_run_frontend:218: [MALI] Parse translation unit failed (1, 0)

Is there anyone here? How about my issue?

Post the result of flutter doctor and maybe some of the widget tree around Chewie.

Also, what device are you using?

The doctor result as follow
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, v0.4.4, on Microsoft Windows [Version 10.0.17134.285], locale en-US)
[√] Android toolchain - develop for Android devices (Android SDK 28.0.1)
[√] Android Studio (version 3.1)
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
[√] Connected devices (1 available)
• No issues found!

And I run it on Meizu M3 Note (Android 5.1, Flyme <IP_ADDRESS>G)
Thanks for your responses!

The issue occur on my device when I run chewie example and the same with video_player example.

This sounds like an issue with video_player rather than chewie then. What video_player version are you using?

Yep, I just find out the origin issue on https://github.com/flutter/flutter/issues/16178.
So it's not chewie issue.
I using v0.6.4 of video_player


I am using gym 0.18.0 but still there is no get_dataset()

I am using gym 0.18.0 but still there is no get_dataset()
Originally posted by @HYDesmondLiu in https://github.com/rail-berkeley/d4rl/issues/87#issuecomment-898050781

Are you sure the d4RL has been installed successfully?

I have already solved this.


mongomock 3.1.0 files published to pypi have strange extensions and will not download via pip

Are the "py3-none-any.whl" file extensions intentional?
https://pypi.python.org/simple/mongomock/

This is the usual filename nomenclature for wheels https://www.python.org/dev/peps/pep-0427/#file-name-convention.

The env I was trying to install 3.1.0 on was using pip 1.2.1.
Upgrading to pip 1.5.4 solved the issue.
Thx.

Older pip versions do not support wheels. You're probably aware that the
current version of pip is 8.1.2, right?
declanshanaghy<EMAIL_ADDRESS>schrieb am Mi., 25. Mai 2016 um
18:33:

The env I was trying to install 3.1.0 on was using pip 1.2.1.
Upgrading to pip 1.5.4 solved the issue.
Thx.
—
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub
https://github.com/vmalloc/mongomock/issues/226#issuecomment-221628317


Swipe to Delete an OdometerReading

Describe the feature you want the app to have that it currently doesn't

Add a swipe action to swipe left to delete a reading from the OdometerView

Describe alternatives you've considered

See how the swipe to delete functionality works for a MaintenanceEvent on the DashboardView and this should function the same way

Additional context

Add any other context or screenshots about the feature request here.

May I take this as a second issue?

I labeled this one first-timers-only so it's only for people who are new to the repo, and haven't yet contributed! Thanks!

@horaciomota thanks for the offer! Right now I'm leaving it open to anyone who hasn't contributed yet, for the rest of Hacktoberfest.
Later afterwards, I may open this up to anyone who wants to continue contributing after October

Hey Mikaela, I just joined the community a couple of months back and would love to give it a shot on this one. Will follow the instructions, fork, use the dev branch, etc. Just want to be sure that my branch for this issue would be 212-swipe-to-delete-an-odometerreading based on your guide, name a little long just want to be sure.

212-swipe-to-delete-an-odometerreading

The branch name isn't super important! Because in the end it won't matter, but following common conventions that name works or you could do 212-swipe-to-delete which is fine
Assigned to you 👍

@mikaelacaron I'm pretty much done, you've already put the code in another place so thanks, I was just wondering about tests, is there a need for me to add any tests for my implementation or this is something that is not part of the contribution part. Thanks, after this I'll submit my PR.

nah no need to add any tests! (how it's coded right now it's not super testable), that's something I'm looking at changing after Hacktoberfest @Wilsonilo


Add Support For "Replace Each"

There should be a "Replace Each" replacement mode which performs the replacement and sends the request for each instance of a match within a request. This would make is much easier to generate new requests with every string match, cookie, header, param, etc value changed one-at-a-time.

Is anyone working on this? Otherwise I might pick it up.


Create login page

Motivation
Create the login page to support user logins via OIDC, x509 certificates, and user/pass authentication schemes via the rucio auth server.
UI Mockups
Not available yet, but please refer the existing UI's login page

I think this issue can be closed! @maany

Closing this as #54 stands merged.


Fixed #194. Added Samples from BeBook

Are these really from the Be Book? If so, they are under a non-derivative CC license, so I doubt they can be included there. The license is clearly mentionned at the bottom of every page of the book:
https://www.haiku-os.org/legacy-docs/bebook/TheBeBook_Introduction.html

No it was me not having enough sleep. They were from the URL you provided, which in turn is code from DarkWyrm's haiku tutorial, not the Be Book.


Setting % based width, not working

I am unable to set the width if it is a percentage based width, using getRootProps(). Looking at the code, the popper Manager seems to be the actual root of the component.

Hmm, currently the Input is set to fullWidth (sets width=100% via Material-UI styling) and I just put the component into a parent with the styling set to the desired width (for example, within a Grid component)
Could this work in your case?


Error in actions

The following error is thrown while cylcing through states:
No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://game.hackdfw.com' is therefore not allowed access. The response had HTTP status code 503. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

hopefully fixed! xd


Utilities Page - Page size can be shrunk to hide launch buttons

Dev Home version
0.1401.495
Windows build number
10.0.22621.3527
Other software
No response
Steps to reproduce the bug
Navigate to the Utilities node, shrink the window to the point where launch buttons are obscured
Expected result
Expect the page to reflow. If I make it smaller, it does reflow properly, just not at this size.
Actual result

Included System Information
No response
Included Extensions Information
No response

Suggest putting description and Learn More link in ScrollViewer, the way we do for What's New cards. Also, should be "Learn more" (sentence case).


Fix failing grunt-saucelabs CI tests

Continuous integration seems to be failing for grunt-saucelabs:

Yeah, I think there's a single failing test. I'll take a look at it.

There we go.
Basically I removed support for YUI Test, so I removed the troublesome test (there was a race condition with the frameworks reporting code).
Updated dependencies.
Dev dependencies still out of date. Waiting on updates to grunt-sauce-tunnel.
The sauce badge is still red. Due to a bug in saucelabs' api I think? Can look into it a bit more.

Published as 9.0.0

Thank you.


Get branchname from Prow env var instead of hardcoding to main

Hardcoding to main fails when trying to get artifacts.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/hold

/hold

/override eks-anywhere-attribution-files-presubmit
/override eks-anywhere-mocks-presubmits
/override eks-anywhere-presubmit
/override eks-anywhere-release-tooling-presubmit

/unhold

/cherrypick main


[LocalExecution] Remove local execution loop from FN

Description
We are about to deprecate local execution. This PR gets rid of the loop that subscribes effects from quorum driver and execute them locally. This was an optimization and it should be safe to remove at this point. Removing this also allows us to see clear metrics on the number of local execution requests received from the network.
Test plan
How did you test the new or updated feature?

Release notes
Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[ ] Indexer:
[ ] JSON-RPC:
[ ] GraphQL:
[ ] CLI:
[ ] Rust SDK:
[ ] REST API:

Yes!


spanner-jdbc-cleanup - Step 05 - Add missing test cases

Adds miscellaneous unit tests that had not yet been merged in.
Two test cases in the JdbcAbortedTransactionTest will fail until #5952 has been merged.

Will review after rebase :)

Will review after rebase :)

Done rebasing, and I cherry-picked the fix for #5951 into this PR in order to prevent the JdbcAbortedTransactionTest to fail.

Removed stress tests and updated copyright years.
Note that the stress tests were not executed alongside with the unit tests, as they were added to a test group that was excluded from normal test execution. If we want to add these back to the library, we should also add this exclusion again to prevent test execution from taking too much time.


Support multi-root workspaces in LSP server

Adopting multi-root workspaces has been on our radar since 2019. The feature was introduced in 2017.  This is a nonstarter for many users who rely on this vscode feature for work!  At this point it's been so long, I would consider the lack of the feature a bug, even though it would have been a feature originally.
The implementation will not be simple.
It will require keeping multiple graphql config instances in memory in GraphQLLanguageService!! And combining settings very carefully
https://github.com/microsoft/vscode/wiki/Adopting-Multi-Root-Workspace-APIs

Confirmed, vscode is one of many LSP implementations that support this feature:
https://github.com/emacs-lsp/lsp-mode/discussions/3095

Here is a high-level diagram to explain the major architectural changes we would need to make.
Perhaps we can keep a GraphQLCache instance and language service instance for each workspace?


Getting weird error: "Failed to get test status: INVALID(DETAILS_UNAVAILABLE)"

Hi,
I am trying to get UI test running on Bitrise but I am getting this weird error right after succesful upload of test APK file to virtual devices. I check if the test works when I run them locally on my PC and it  runs without problem.
Here is the part of the log:
Configs:

ApkPath: /bitrise/deploy/app-debug-androidTest20190323213124.apk
TestTimeout: 900
DirectoriesToPull: /storage/emulated/Pictures/screenshots
EnvironmentVariables:
TestDevices:

Model     API Level   Locale     Orientation
Nexus5X   24          portrait   en

AppPackageID: app
TestType: instrumentation
TestApkPath: /bitrise/deploy/app-debug-androidTest20190323213124.apk
InstTestPackageID: androidTest
InstTestRunnerClass: androidx.test.runner.AndroidJUnitRunner
InstTestTargets: class io.hruska.pocketplay.OnboardingTest
UseOrchestrator: false
Upload APKs
=> APKs uploaded
Start test
=> Test started
Waiting for test results
Validating
Failed to get test status, error: Failed to get test status: INVALID(DETAILS_UNAVAILABLE)
|                                                                              |
+---+---------------------------------------------------------------+----------+
| x | virtual-device-testing-for-android (exit code: 1)             | 12 sec   |
+---+---------------------------------------------------------------+----------+
| Issue tracker: ...se-steplib/steps-virtual-device-testing-for-android/issues |
| Source: ...thub.com/bitrise-steplib/steps-virtual-device-testing-for-android |
+---+---------------------------------------------------------------+----------+

I also tried to let InstTestPackageID, InstTestRunnerClass and InstTestTargets empty but with no effect.
Here is the link to the build: https://app.bitrise.io/build/60b9c6891b299178
Do you have any idea what should I do?

Hello @JosefHruska!
this error means that the response's status code is not 200 🤔
Could you please enable support user on the app's settings tab so I could check out the setups, and maybe run a few test builds as well?

@fehersanyi-bitrise
Thanks for fast reaction.
I just enabled access for you - if you would need any further details just let me know.

@fehersanyi-bitrise Do we have any update?

@JosefHruska Hy, sorry for the late reply, could you try this?
https://github.com/bitrise-steplib/steps-virtual-device-testing-for-android/issues/17

Hey Guys, was this ever resolved? I am getting exactly same error. Seems to be caused by providing "DirectoriesToPull". I have tried lots of different paths - always failing on same error.
In case I keep "DirectoriesToPull" empty everything is working like a charm. However, I need to access test output data
https://app.bitrise.io/build/c6c94a3bdfe7af87

Failed to get test status, error: Failed to get test status: INVALID(NO_TEST_RUNNER_CLASS)

Hi @hafsalrahman!
Could you try going to your build's workflow and delete the field for 'Test runner class', inside the [Beta] Virtual Device Testing step?
Android Build for UI Testing should take care of this for you, rebuilding with the 'Test runner class' as empty might just do the trick 😉

Yea it worked. Thanks @Roland-Bak

Closing as we did not receive a reply - @JosefHruska please let us know if we can help with anything by opening a new issue!


docs(design): corrected sentences which are difficult to understand

Signed-off-by: Takayuki AKAMINE<EMAIL_ADDRESS>

I'll merge this PR


Tmp rules test branch

Related issue
Closes: #ISSUE_NUMBER_HERE
Description

Describe the changes in this pull request

Supplemental testing
Describe any testing done in addition to existing unit tests
Additional context
Please provide any additional information related to this PR

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

All rule files had been uploaded to S3. Close this PR.


How to enable on-screen keyboard on Raspberry Pi 3 B+

I've installed Windows 10 IoT Core image 17661 to RPi 3B+, and deployed UWP app to it. But when we want to input something, the TextBox can't invoke the on-screen keyboard automatically, we configured the setting according to on-screen keyboard configuration, but the issue exists as well.

And we just validated on Windows 10 PC, also can't show the on-screen keyboard even this device is in tablet mode.

Resolved.

We could find the checkbox "Show the on-screen keyboard when text input controls have focus" in "Device Setting" part of Windows 10 Iot Core management portal.

We could find the checkbox "Show the on-screen keyboard when text input controls have focus" in "Device Setting" part of Windows 10 Iot Core management portal.

Exactly


Clean up leaks in a test.

Introduced by https://github.com/flutter/flutter/pull/140962

CC @Mairramer


Fixes to create edges

These bugs were discovered when debugging ROI-less clock routing (e.g. #1060).
Changes:

Do not emit pip_pkey on site pin CHAN to IPIN/OPIN.
Handle case of dead tracks with bidirection pips.
Handle walking down nodes that span multiple tiles.

add documentation regarding all the graph/channel generation scripts in xc7

You mean https://docs.google.com/document/d/1Tkb_Z-_xiEwW_dn5nrAuzSWYjmF9yTBBSB7BZd1q9g4/edit#heading=h.4z4zsjqbb6d9 ?


fix(temporal-set): Code did not match spec

Updating temporal-set methods to match the spec, e.g.:
interface VolumeProcess {
    stop(): void // Stops updating this temporal set with Volume objects
}

// Live-updated list
function volumes(query: Volume, add: (volume: Volume) => void, remove: (volume: Volume) => void ): VolumeProcess

// First match
function volumes(query: Volume, timeout: number): Promise<Volume>

// Last known list
function volumes(query: Volume): Promise<Volume[]>

:tada: This PR is included in version 2.0.0-next.3 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.0.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Google TTS fails randomly

Home Assistant release with the issue:
<=0.78.1

Last working Home Assistant release (if known):
Not known.  I tested on versions going back to 0.75.x

Operating environment (Hass.io/Docker/Windows/etc.):
Docker

Component/platform:
TTS (tts.google_say)
gTTS-token==1.1.1

Description of problem:
Executing a TTS to a cast device fails.  It is random failures.  A few will work, then a few will fail.  It is not consistent!

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
tts:
  - platform: google

Traceback (if applicable):
2018-09-20 11:13:47 ERROR (MainThread) [homeassistant.core] Error executing service <ServiceCall tts.google_say (c:89ce529199f645f5953a5825d0f61cd0): entity_id=['media_player.test_device'], message=Testing 1, 2, 3!, cache=False>
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/core.py", line 1117, in _event_to_service_call
    await service_handler.func(service_call)
  File "/usr/src/app/homeassistant/components/tts/__init__.py", line 134, in async_say_handle
    options=options
  File "/usr/src/app/homeassistant/components/tts/__init__.py", line 300, in async_get_url
    engine, key, message, use_cache, language, options)
  File "/usr/src/app/homeassistant/components/tts/__init__.py", line 313, in async_get_tts_audio
    message, language, options)
  File "/usr/src/app/homeassistant/components/tts/google.py", line 83, in async_get_tts_audio
    token.calculate_token, part)
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.6/site-packages/gtts_token/gtts_token.py", line 28, in calculate_token
    seed = self._get_token_key()
  File "/usr/local/lib/python3.6/site-packages/gtts_token/gtts_token.py", line 62, in _get_token_key
    a = re.search("a\\\\x3d(-?\d+);", tkk_expr).group(1)
AttributeError: 'NoneType' object has no attribute 'group'

Additional information:
Tested using the UI/Front End, Scripts, Automations.  Tested on versions 0.78, 0.77, 0.76. and 0.75.

Related comment from another issue - https://github.com/home-assistant/home-assistant/issues/16686#issuecomment-422977653

Enabled debug and this is all that logs
2018-09-20 11:38:57 DEBUG (MainThread) [homeassistant.components.websocket_api] WS<PHONE_NUMBER>68576: Received {'type': 'call_service', 'domain': 'tts', 'service': 'google_say', 'service_data': {'entity_id': 'media_player.test_device', 'message': 'yo'}, 'id': 22}
2018-09-20 11:38:57 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=tts, service=google_say, service_data=entity_id=media_player.test_device, message=yo, service_call_id=67510f32a940489aa7e6482b0d74a005>
2018-09-20 11:38:57 ERROR (MainThread) [homeassistant.core] Error executing service <ServiceCall tts.google_say (c:e0b449c237994b3aa328d9be1581c30e): entity_id=['media_player.test_device'], message=yo>
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/core.py", line 1180, in _event_to_service_call
    await service_handler.func(service_call)
  File "/usr/src/app/homeassistant/components/tts/__init__.py", line 137, in async_say_handle
    options=options
  File "/usr/src/app/homeassistant/components/tts/__init__.py", line 306, in async_get_url
    engine, key, message, use_cache, language, options)
  File "/usr/src/app/homeassistant/components/tts/__init__.py", line 318, in async_get_tts_audio
    message, language, options)
  File "/usr/src/app/homeassistant/components/tts/google.py", line 83, in async_get_tts_audio
    token.calculate_token, part)
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.6/site-packages/gtts_token/gtts_token.py", line 28, in calculate_token
    seed = self._get_token_key()
  File "/usr/local/lib/python3.6/site-packages/gtts_token/gtts_token.py", line 62, in _get_token_key
    a = re.search("a\\\\x3d(-?\d+);", tkk_expr).group(1)
AttributeError: 'NoneType' object has no attribute 'group'
2018-09-20 11:39:07 DEBUG (MainThread) [homeassistant.components.websocket_api] WS<PHONE_NUMBER>68576: Sending {'id': 22, 'type': 'result', 'success': True, 'result': None}

Related - https://github.com/pndurette/gTTS/issues/60
Seems to be fixed in - https://github.com/Boudewijn26/gTTS-token/pull/8
I validated that PR in my local environment.

Docker container running 0.78.0 and gtts-token==1.1.1 - Multiple failures.  Random.  Some work, some do not.
Docker container running 0.78.0 and gtts-token==1.1.1 (with patch from above PR) - NO FAILURES!

Validated and others have confirmed the PR in Boudewijn26/gTTS-token#8 corrects the issue.  Will close this issue.

i recently just updated with the new gtts-token.py and i know how this error
Fri Sep 21 2018 03:55:44 GMT-0400 (Eastern Daylight Time)

Error executing service <ServiceCall tts.google_say (c:86e0b4f9926b40868312fae6ce2c747c): message=The current time is 3:55, Today's weather will be a cloudy, with a high of 77.04 degrees., entity_id=['media_player.basement_speaker'], cache=False>

Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/core.py", line 1117, in _event_to_service_call
    await service_handler.func(service_call)
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/tts/__init__.py", line 134, in async_say_handle
    options=options
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/tts/__init__.py", line 300, in async_get_url
    engine, key, message, use_cache, language, options)
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/tts/__init__.py", line 313, in async_get_tts_audio
    message, language, options)
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/tts/google.py", line 74, in async_get_tts_audio
    from gtts_token import gtts_token
  File "/srv/homeassistant/lib/python3.5/site-packages/gtts_token/gtts_token.py", line 84
    return a
           ^
SyntaxError: 'return' outside function

do you happen to have the steps on how to correct the issue on HASS.IO @maddox needs some help and I am not familiar with HASS.IO

Thanks! The fix by Boudewijn26/gTTS-token#8 is working fine! I validated in my pi code as well.

@rotcop4u2 hassio is just a docker container.  So you'd have to exec into the container, find the file, and edit it with the corrected patch.


Reduce flakiness of e2e tests

Description
Changes proposed in this pull request:

We are using otel and nginx images from docker. These images are pull in unauthenticated docker pull which has rate limiting. To mitigate use images from kyma's docker registry
Make sure the trace/metric backend is running before testing for traces.
Some refactoring

Related issue(s)

/retest

/retest


Completed version dependence (Again)

Ignore the branch name, had completed version dependence then moved to a new branch, then had to redo version dependence.
Calculates using this basic idea:
if (number_of_dependencies == undefined)     {         return 1;     }     return 1 / (1 + (number_of_dependencies/2));
Tested the undefined case.

@BellDorian
Made requested change

Excellent work with this one, Ben. You're good to merge!


Trimming possible leading spaces from network service name

Signed-off-by: Serguei Bezverkhi<EMAIL_ADDRESS>Description
In some cases for better readability requested network service annotations can be specified in this form:
ns.networkservicemesh.io: l3vpnnse/vrf_red?vpn=100:100, l3vpnnse/vrf_blue?vpn=101:101, l3vpnnse/vrf_green?vpn=105:105

Currently In this case leading space, is considered as a part of the name and as a result request to find such name fails. It is very difficult to spot in the error message because the output is not quoted.
time="2020-06-21T12:38:32Z" level=error msg="nsm client: Failed to connect rpc error: code = Unknown desc = NSM:(7.1.5) <nil>. Last NSE Error: rpc error: code = Unknown desc = no NetworkService with name:  l3vpnnse. Retry attempts: 9 Delaying: 5s" operation="nsmClient.Connect.attempt:1" span="{}"

Motivation and Context
Adding Trim function for the network service names prevent this issue to occur.
How Has This Been Tested?

[X ] Covered by existing integration testing
[ ] Added integration testing to cover
[ X] Tested locally
[ ] Have not tested

Types of changes

[ X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

@edwarnicke  PTAL, minor fix for the issue I hit in testing..