Improve support for minification

When this file is minified, the absence of a ";" after the definition of variable "punctuation" can lead to a run-time error. In my case, I'm using the minification engine embedded in the DNN platform (https://www.dnnsoftware.com).

Sorry, but we don't change our code to address bugs in minifiers. Use a proper one like babili if you can, or if you have to use a broken one for reasons outside your control, apply this patch in your own build process.

Sorry, you're right: I'll patch the minifier instead.
Il ven 5 apr 2019, 09:46 Marijn Haverbeke<EMAIL_ADDRESS>ha
scritto:

Closed #5845 https://github.com/codemirror/CodeMirror/pull/5845.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/codemirror/CodeMirror/pull/5845#event-2255036420, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ADH6OHwfhYGvcQBGKXn0FhuA-JtdS_UPks5vdv9agaJpZM4ceP-h
.


Add admin remarks button to lobby

About the PR

Adds a button that runs the adminremarks command to the lobby.
Why / Balance

Telling players that they need to run a command to view notes about them from
admins is not exactly good UI design. Players should ideally not have to touch
the console.
Technical details

Adds a single button to the XAML. I also switched CharacterSetupGui from manual dependency injection to automatic dependency injection with IocManager.
Media

Requirements

[X] I have read and I am following the Pull Request Guidelines. I understand that not doing so may get my pr closed at maintainer’s discretion
[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl: Aquif

tweak: There is now a button to view your admin remarks in the character editor, right next to the stats button.

The YAML linter failure is nuget's fault, not mine.

lobby is a strange place for this, how often are people actually going to care about looking at this

lobby is a strange place for this, how often are people actually going to care about looking at this

Every single time I looked at my adminremarks (lack thereof), it was in the lobby

lobby is a strange place for this, how often are people actually going to care about looking at this

I can't really think of another place and I expect it will be used more then the Call Vote button which also exists in the same location. I would wager a bunch of players have never checked their admin remarks just because they don't know how.

It might actually be better to put this button in the escape menu (or in a submenu thereof).

It might actually be better to put this button in the escape menu (or in a submenu thereof).

I agree

It might actually be better to put this button in the escape menu (or in a submenu thereof).

I agree

I was originally going to do that but I am fairly certain that it is not accessible from the lobby which would be the main place people would view them. If I am wrong about this I am happy to change it.

You're correct that the escape menu isn't available in the lobby screen - I never realized that.

In the character editor next to stats seems like a better place. If I remember, I will move it tomorrow.

PR description updated to current location.

Code looks good and it tested fine in-game


Updated code-of-conduct-bn with native translation. (bangla review requested)

Previously the translation was direct copy of google translation, which was bit hard to read throughly.  Now it's been updated with actual bangla native accent.
What does this PR do?
It updates Code-Of-Conduct-bn version with native accent.
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.

Bangla review requested

@eshellman Hello, I'm from Bangladesh as well.

yes, would like to have another bangla native to review the changes

Ok, but If there's no one to help within 6 hours, can I bring someone from my connection to review it?

I can review :) I'm a native Bengali, from Kolkata.

Sure, Thank you.

@eshellman Hello, It's reviewed now, please take a look.

could you resolve the remaining suggestions? thanks everyone!

Everything was taken care of.

Thanks, and welcome to free-programming-books, all who helped!


Support topologySpreadConstraints

Hi,
In order to guarantee that a replica don't get scheduled in the same zone and node as another, we need to be able to specify topologySpreadConstraints.
I am happy to contribute back this change to the project.

This Helm chart uses a StatefulSet.  If you use the topology.kubernetes.io/zone label on your Node resources as is common, then the Kubernetes scheduler will automatically spread the Pods in the StatefulSet across the zones.
I think the default behaviour is what most people are after though, without any of the additional complexity of topologySpreadConstraints.  Is there any additional control that you specifically need, or does the above cover it?

This Helm chart uses a StatefulSet. If you use the topology.kubernetes.io/zone label on your Node resources as is common, then the Kubernetes scheduler will automatically spread the Pods in the StatefulSet across the zones.
I think the default behaviour is what most people are after though, without any of the additional complexity of topologySpreadConstraints. Is there any additional control that you specifically need, or does the above cover it?

Thanks for the response.
As far as I understand this is a best effort on the part of the Kubernetes scheduler and can lead to an uneven distribution of pods across zones. It would be better guarantee to use the topologySpreadConstraints and conditionally include if it needs to be configured.

Closing as addressed in #97


[BUG] Apple rejects the build because of missing NSMicrophoneUsageDescription description

Describe the bug
ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSMicrophoneUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App Store that access user data are required to include a purpose string. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy).
To Reproduce
Steps to reproduce the behavior:
Expected behavior
You should write in the plugin's description what is needed for the iOS configuration. Probably not possible, but if there is a way not to have microphone usage for just playing video that is probably the most needed case, it would be great to provide the plugin without the need for microphone description/usage.
Screenshots
If applicable, add screenshots to help explain your problem.
Technical Details:
Additional context
Add any other context about the problem here.

XD
Just add in yout Info.plist in your IOS/Runner directory record as below
<key>NSMicrophoneUsageDescription</key>
<string>your description why you using microphone or if u dont use it just write here that microphone is not needed thats all</string>


pull request for e2e test at 01/31/2017 20:15:12

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Remove MobX-State-Tree flag for non-demo projects

This PR adds support for removing MobX-State-Tree code from a non-demo project.
Retargeted to v10 branch.
Changes:

// @mst inline comments, similar to how demo code removal works
Refactored demo.ts removal logic into more generic markup.ts to be shared with @mst comment types too, and make it easy to add additional other types in the future too.
Added new replace-next-line markup command type, to help swap out lines of code easily without hot patching in scripts (keeps code replacements inline next to other code)

The option shows up --removeDemo=true is set

@Jpoliachik can you target this against v10 as the base branch?

@frankcalise sure thing, I'll work on this early next week 👍

This is ready for additional review.
As far as CLI documentation, I added the --mst flag option to the list, and added a blurb under the MST page. I didn't think much else was necessary, since this flag should be straightforward for users, but i'm open to opinions if we think other docs are needed!


Bump MSRV to 1.80

This commit updates the minimum Rust version required to compile Wasmtime to 1.80.0 from the previous 1.78.0.

The previous build issue is summarized here and we'll have to figure something out over the next ~6 weeks as that change will eventually reach stable and break us.


Replace panda dataframe with pyspark dataframe

Motivation:

Reduce dependency and code complexity.
For some operations (e.g., join), the current implementation based on the Panda data frame relies on the assumption that the data can fit in the memory.

Using ray instead


[Feature]: show a better error for wrong mssql configuration

Is there an existing issue for this?

[X] I have searched the existing issues

Summary
When the MSSQL datasource configuration is wrong, three things happen:

upon testing the datasource, the busy indicator spins for a long time and gives up without an error
the schema in the entity explorer shows a timeout error
if you try to run a simple query select * from dbo.users, there is a timeout error

Use the following config:
host: SQL5106.site4now.net
db: db_a9b34d_rohansdb
user: db_a9b34d_rohansdb_admin
pw: Password@123
First, keep the port number blank or enter 1433 to ensure that the correct config works. Test connection, see the schema, run a query.
Next deliberately enter a wrong port number. You can see the three symptoms mentioned above.
Ideal scenario:

On test of the datasource, I should see an error message saying that the port number is wrong
Same in the schema
Same when I try to run a query

Why should this be worked on?
this will help users create good quality mssql datasources, and therefore be more likely to successfully execute their query

@rohan-arthur
upon testing the datasource with incorrect port number, I am able to see an error message, without needing to wait for a longer time , same I can see for schema and when I run query as well.
Is this issue resolved ?
datasource with wrong port

schema with wrong port

query with wrong port

@Shirisha-Manthoju , this issue is for microsoft sql server datasource. Your screenshots show mysql.
Even with mysql, while there is no timeout, the error is still not helpful. Ideally, it should indicate that the port number is wrong.

Hello @rohan-arthur ,
In case of mysql ,

we have the deployed mysql database link , for which the port number may differ (not default port 3306)
If we try to enter wrong port , then the expectation is that it should raise the error saying port number is wrong.
But , how do we identify that port number is wrong for a particular host address.
In that case it is ideal to show error message that the connection is failed instead of port number is invalid which the appsmith is handling right now

thanks @Shirisha-Manthoju! Do you have a PR for these changes?

Hi @rohan-arthur , raised PR , do check it and also I have attached the video for the issue.

Hello @rohan-arthur can you please review the PR for this issue


FIX/STY: combine sensor types in psf_ctf

I would very much appreciate your help with the further development of the psf_ctf module (point-spread and cross-talk functions for linear estimators).
psf_ctf needed a fix: previously, when SVD was selected to summarise the forward solution of a label, the SVD was applied to all sensory types simultaneously (unscaled). Now the SVD is computed for sensor types separately. I now also included functions that I wrote for another module (DeFleCT, not yet available).
I tested the output of the functions point_spread_function (CTF) and cross_talk_function (PSF) in two ways: The CTFs for MNE and dSPM (non-depth-weighted) should be the same (apart from scaling) - indeed they are. The PSFs and CTFs for MNE (non-depth-weighted) should be the same - however they are similar but not exactly the same. I currently cannot explain this discrepancy. (NB: In order for this to be exactly true, it needs to be tested on labels with a single vertex - while testing it myself, I changed the psf_ctf.py code so it would only use one vertex). Maybe there are differences in the handling of forward solution/inverse operator/source space etc. that I am not aware of?
I would very much appreciate it if someone with more (mne-)python experience could check whether I've dealt with everything correctly.
I currently have no idea what to do with travis...

can you share your testing code so we can turn it in actual
non regression tests?
maybe someone can give you a hand here...

concerning making Travis happy: what text-editor are you using? Any way to enable automatic PEP-8 checking in that editor?


[Feature]

What is the feature?
ImportError: cannot import name 'show_result_meshlab' from 'mmdet3d.apis' (E:\project\mmdetection3d\mmdet3d\apis_init_.py)
Any other context?
No response

Can you provide more detailed information following the template?

What is the feature?
ImportError: cannot import name 'show_result_meshlab' from 'mmdet3d.apis' (E:\project\mmdetection3d\mmdet3d\apis__init__.py)
Any other context?
No response
Is the problem solved? I am facing the same issue.


Update user profile clears entire "profile" property when using omitFields

I currently have a template that allows a user to update their profile, just like every other Meteor app out there. The user's profile information is stored in a sub-object of the Meteor.users schema, called profile. Within this particular form I'm omitting several fields, because I don't want users to have direct access to edit the values (profile image url and screen name).
HTML file:
<template name="settingsProfile">
    {{#autoForm collection='Meteor.users' doc=user type='update' id='profileUpdateForm'}}
        {{> afQuickField name='profile' omitFields='profile.screenName,profile.image'}}
        <button type='submit' class="btn btn-primary">Save profile</button>
    {{/autoForm}}
</template>

JS file:
Template.settingsProfile.helpers({
    user: function() {
        return Meteor.user();
    }
});

AutoForm.hooks({
    profileUpdateForm: {
        after:  {
            update: function() {
                Router.go('/home');
            }
        }
    }
});

I have separate templates to allow the user to upload a profile photo and create their screen name.
Even though the schema for the profile property has these additional fields defined, and I've omitted them from the form, if I remove all of the values from the form and click the save button autoform will completely wipe out the entire profile property, which deletes their screen name and profile photo url.
Steps to reproduce:

Navigate to the page containing this template.
Set a value for any of the fields with the profile. For example, enter "Bob" in the first name field.
Click the save button. This should save your changes and redirect you to the "/home" path.
Go to the profile photo page, upload an image, which sets the profile.image property after the image is uploaded and resized.
Navigate back to the page containing this template. The values entered in step 2 should be displayed.
Remove all of the values on this form and click save. Even though I'm telling the form to omit the profile.image property from the list of fields the code will '$unset` the entire 'profile' property, even though it currently contains a value in one of the omitted fields.

Is there a way to prevent this behavior?

+1 ; like #992


CI: Cilium E2E Upgrade (ci-e2e-upgrade)

CI failure
This test breaks currently on 5.4:
[=] Test [north-south-loadbalancing-with-l7-policy] [51/77]
...........
  ℹ  📜 Applying CiliumNetworkPolicy 'echo-ingress-l7-http-from-anywhere' to namespace 'cilium-test'..
  [-] Scenario [north-south-loadbalancing-with-l7-policy/outside-to-nodeport]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-0: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-0: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-0: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-0: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-1: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-1: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-1: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-1: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-2: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-2: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  [.] Action [north-south-loadbalancing-with-l7-policy/outside-to-nodeport/curl-2: cilium-test/host-netns-non-cilium-7s2f8 (<IP_ADDRESS>) -> cilium-test/echo-other-node (echo-other-node.cilium-test:8080)]
  ❌ command "curl -w %{local_ip}:%{local_port} -> %{remote_ip}:%{remote_port} = %{response_code} --silent --fail --show-error --output /dev/null --connect-timeout 2 --max-time 10 http://[fc00:c111::5]:32522" failed: error with exec request (pod=cilium-test/host-netns-non-cilium-7s2f8, container=host-netns-non-cilium): command terminated with exit code 28

Failures:

https://github.com/cilium/cilium/actions/runs/8202345065/job/22432934103
https://github.com/cilium/cilium/actions/runs/8225352938/job/22490285567
etc.

Sysdump example:
cilium-sysdump-14-final.zip

Can confirm it's happening a lot in Cilium E2E Upgrade and always on the same configuration:
            kernel: '5.4-20240305.092417'
            kube-proxy: 'iptables'
            kpr: 'true'
            devices: '{eth0,eth1}'
            secondary-network: 'true'
            tunnel: 'vxlan'
            lb-mode: 'snat'
            egress-gateway: 'true'
            lb-acceleration: 'testing-only'

The other 5.4 configuration, which has KPR disabled, is not affected.

@jschwinger233 pointed me to https://github.com/cilium/cilium/pull/30837#issuecomment-1960897445. I haven't hit the failure after switching to the 5.15 kernel (yet). Once https://github.com/cilium/cilium/pull/31558 has been released, we can better validate the hypothesis, as the drop will be visible within cilium-dbg metrics list.

We're talking about a few weeks, at best, right? Can we disable that test case in the meantime?

We're talking about a few weeks, at best, right? Can we disable that test case in the meantime?

That's what https://github.com/cilium/cilium/pull/31895 does :sunglasses:

Can this issue be closed now that https://github.com/cilium/cilium/issues/31895 has been merged?


Rename extend config to extends

Current
Bridge.define('Demo.Employee', {
    extend: [Demo.Person]
});

Revised
Bridge.define('Demo.Employee', {
    extends: [Demo.Person]
});

Implemented but extends is reserved javascript keyword. Need to use $ prefix for extends

Rename to inherits, with a $ prefix if there is a collision.


Add double return values in getter methods inside the Keeper

Currently the GetX methods inside the keeper.go file have a single return value. As examples we can take a look at
https://github.com/desmos-labs/desmos/blob/18c63f5e7f4b61ac43b705c70a789a12b2dee698/x/magpie/keeper.go#L41
https://github.com/desmos-labs/desmos/blob/18c63f5e7f4b61ac43b705c70a789a12b2dee698/x/magpie/keeper.go#L102
I personally think that in this case having a single value may make the "not found" situation hard to handle.
Let's consider the first case (GetPost). As this returns a default Post when none is found, what should we check to make sure that is was not found indeed?
I think that having a double return value such as the following might be more useful:
func (k Keeper) GetPost(ctx sdk.Context, id string) (post Post, found bool) {
    // ...
}

Having a method like this one, we could then perform a simple check like this one
if post, found := keeper.GetPost(ctx, id); found {
  // do something with post
}

Or something like this
post, found := keeper.GetPost(ctx, id)
if !found {
  // throw an error
}

// do something with post

Please go ahead with these changes and #19


Cloud Dedicated Go sample hardcodes bucket name

In the Write line protocol data to InfluxDB Cloud Dedicated docs, most settings are driven by environment variables, but the bucket name is hardcoded
The hardcoded name is first mentioned in the code sample, at which point the user will likely already have created the database
writeAPI := client.WriteAPI(os.Getenv("INFLUX_ORG"), "get-started")

It would be better to update that to be
writeAPI := client.WriteAPI(os.Getenv("INFLUX_ORG"),os.Getenv("INFLUX_BUCKET"))

There's a similar example for serverless which would probably benefit from the same
Relevant URLs

https://docs.influxdata.com/influxdb/cloud-dedicated/write-data/line-protocol/
https://docs.influxdata.com/influxdb/cloud-serverless/write-data/line-protocol/

but the bucket name is hardcoded

There are a couple of (non-obvious) reasons for this. Historically, client libraries, etc. haven't used an bucket env var b/c ( I assume), in practice, you may be writing to multiple buckets from a single app--for example, an auth bucket and a data bucket. Also, in this case, we refer to the Get Started tutorial that guides the user to create a "get-started" bucket, tokens, etc.
That said, we have a new feature for customizable placeholders that the user can edit in-page before copying the code. We're slowly incorporating the feature into examples, but it will eventually apply to the bucket name here as well.
The feedback is much appreciated!


Deprecate AfterConfiguration hook

Description
With the addition of InstallPlugin and BeforeAll hooks, AfterConfiguration can safely be deprecated.
Its name may be confusing, InstallPlugin and BeforeAll are more appropriate.
Type of change
Please delete options that are not relevant.

Breaking change (will cause existing functionality to not
work as expected)

Update required of cucumber.io/docs
Yes: https://cucumber.io/docs/cucumber/api/
Refs. https://github.com/cucumber/docs/pull/663
Checklist:
Your PR is ready for review once the following checklist is
complete. You can also add some checks if you want to.

[x] Tests have been added for any changes to behaviour of the code
[x] New and existing tests are passing locally and on CI
[x] bundle exec rubocop reports no offenses
[x] RDoc comments have been updated
[x] CHANGELOG.md has been updated
[x] Update cucumber.io/docs

A PR for the documentation has been submited: https://github.com/cucumber/docs/pull/663
So this is ready for review :)

@luke-hill does that looks good?


Failed to import arm64 image from local tar file

Failed to import arm64 image from local tar file. It seems OK, but fails in log.
D:\>k2s image import -t redis-arm64v8-latest.tar
  SUCCESS  'image import' completed in 2.6981483s
Please see 'C:\var\log\k2s.log' for more information

[04-06-2024 14:15:38] [runningstate.module.psm1::Get-RunningState] Getting running state for SetupType='k2s'
[04-06-2024 14:15:38] [runningstate.module.psm1::Get-RunningState] not WSL setup type
[04-06-2024 14:15:38] [runningstate.module.psm1::Get-IsVmRunning] Checking if VM is running for Name='kubemaster'..
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-IsVmRunning] Found VM state 'Running'
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-RunningState] control-plane 'kubemaster' running
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-RunningState] checking 'flanneld' service state..
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-RunningState] 'flanneld' running
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-RunningState] checking 'kubelet' service state..
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-RunningState] 'kubelet' running
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-RunningState] checking 'kubeproxy' service state..
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-RunningState] 'kubeproxy' running
[04-06-2024 14:15:39] [runningstate.module.psm1::Get-RunningState] returning with IsRunning='True' and Issues=''
[04-06-2024 14:15:39] Importing image redis-arm64v8-latest.tar. This can take some time...
[04-06-2024 14:15:39] copy: redis-arm64v8-latest.tar to: /tmp/import.tar IgnoreErrors: False
[04-06-2024 14:15:40] Error: loading index: open /var/tmp/oci4141148282/index.json: no such file or directory
[04-06-2024 14:15:40] Error occurred while executing command 'sudo buildah pull oci-archive:/tmp/import.tar 2>&1' in control plane (exit code: '125')
[04-06-2024 14:15:40] Error: loading index: open /var/tmp/oci4141148282/index.json: no such file or directory
[04-06-2024 14:15:40] Image archive redis-arm64v8-latest.tar imported successfully.
[04-06-2024 14:15:40] [cli-messages.module.psm1::Send-ToCli] Converting message of type 'CmdResult' to JSON..
[04-06-2024 14:15:40] [cli-messages.module.psm1::Send-ToCli] message converted
[04-06-2024 14:15:40] [cli-messages.module.psm1::Send-ToCli] JSON compressed
[04-06-2024 14:15:40] [cli-messages.module.psm1::Send-ToCli] JSON base64 encoded
[04-06-2024 14:15:40] [cli-messages.module.psm1::Send-ToCli] message sent via CLI

Arm64 images will not work in an X64 environment. We don't test Arm64 at all at the moment, not sure if everything works.
Have you installed K2s on a Arm64 system ?

My Host is x64 and the registry addon is enabled. I joined a nvidia jetson(arm64) worker into k2s cluster. Now I want to import a arm64 tar and push it into local registry.
My Environment:
https://github.com/Siemens-Healthineers/K2s/issues/515

Import will not work on host or kubemaster because you have x64 and the container runtimes will not be able to store it.
What will work is pushing the image to your registry from the new arm64 node directly. Registry shall be able to store also arm64 images, but to be honest we never did that till now.
Adding new nodes will do for version 1.2.0, then also your use case could be tried out with the new k2s node command.

I tried to push the arm64 tar file to local registry from x64 master node using skopeo.

How to access the registry from jetson node ?
Failed to access it on running these cmds on jetson and the registry's IP is volatile.
curl -k -v https://<IP_ADDRESS>:5000
curl -k -v https://k2s-registry.local

From the node this will not work, pod IPs are only accessible from inside the cluster, that's a general behavior of K8s.
Try:
kubectl run curl --image=radial/busyboxplus:curl -i --tty
curl -k -v https://<IP_ADDRESS>:5000

I notice there is a service named k2s-registry. And is there any config to export registry like api-server (<IP_ADDRESS>) ?

There are many ways to solve this:

use the node port that already is added on port 80 on your NVIDIA node (node port name: k2s-registry)
define your own node port service with your own port and use it on that node
expose the registry to outside using the addon exthttpaccess
...


The C file build successfully but no command  windows appear

I am using Ubuntu.Previously, I use this package successfully. But now it doesn't appear a window. How can I fix this. I just switch my shell from bash to zsh. Is it the fault

can you screen capture the package's config page?
did you customized the terminal start command?
would resetting this config to default be helpful?

Sorry, I am just a beginer. I think I didn't customized the terminal star com after I google it. and here is the config page: http://oretxrabb.bkt.clouddn.com/Screenshot from 2017-09-09 23-35-37.png. It is all default config. This problem appear when I switch my shell from bash to zsh


dedupe target ports while creating service instances for k8s

When a Service has multiple ports pointing to same target port as
ports:
 - name: http-7442
  port: 7442
  protocol: TCP
  targetPort: 7442
 - name: http-8443
  port: 8443
  protocol: TCP
  targetPort: 7442
 - name: http-443
  port: 443
  protocol: TCP
  targetPort: 7442
 - name: http-12098
  port: 12098
  protocol: TCP
  targetPort: 12098

we create services instances for all target ports (multiple for same target port) and thus try to create multiple ingress listeners for the same port and complain about "conflicting inbound listeners".
This PR dedupes the target ports so that we create one ingress listener.

@howardjohn can you PTAL?

I like the general idea but don't we lose info about one of the service ports? what if they are different protocols for example

That is a good point, right now we are not creating listeners for rest of the target ports any way and complaining about conflicting listeners. Do you think if we dedupe by port and protocol that would be better?
FWIW, for clusters we filter out by svcPort https://github.com/istio/istio/blob/master/pilot/pkg/networking/core/v1alpha3/cluster.go#L550 and do not create duplicate clusters any ways.

ah actually we don't support multiple protocols on a single port. So today we just pick an arbitrary one, and the same with this pr?

ah actually we don't support multiple protocols on a single port. So today we just pick an arbitrary one, and the same with this pr?

Yes. That is correct.

I am not 100% sure our claim of "no two protocols on the same ports" refers to the target port or the service port. I could see a (bit weird) use case where you label the port as tcp and http, and hit the TCP one when you want performance and http one when you want telemetry or something like that. The code you linked above, we are deduping by port+protocol, so it doesn't seem exactly the same to me?
@rshriram what do you think?

The code you linked above, we are deduping by port+protocol, so it doesn't seem exactly the same to me?

Yes. The clusters are created per port and protocol. But even though we create inbound clusters for each port and protocol, we are going to use only one of them because we create only one inbound listener per port and complain about conflicting listeners for rest.
And based on how finding target port works, if the target port is a number https://github.com/istio/istio/blob/master/pilot/pkg/serviceregistry/kube/controller/controller.go#L931 we just pick the service port as is because we do not have additional info about target port protocol when it is number.
So I think "no two protocols on the same ports" applies to target ports as well as we can not determine the protocol of target port if it is just a number. If target port is named port - I think we will probably will be able to because  additional container ports are available to make this distinction (which we are already doing).

if Target port is a number it can still have a name though which is where we get the protocol for, right? https://github.com/istio/istio/blob/master/pilot/pkg/serviceregistry/kube/controller/controller.go#L636
Target port being a number is the common case, a named Target port seems very rare from what I have seen, even in your example service in the pr description you have a Targetport number with a protocol declared?

if Target port is a number it can still have a name though which is where we get the protocol for, right?

If Target port is a number,  are you saying we should get the protocol from mapped service port? If yes, I think we can do that.
So in the example below, we should build two service instances on on TCP (for mapped 8443) and one on http (that maps to use 7442 and 7557)?
ports:
 - name: http-7442
  port: 7442
  protocol: TCP
  targetPort: 7442
 - name: tcp-8443
  port: 8443
  protocol: TCP
  targetPort: 7442
 - name: http-7557
  port: 7557
  protocol: TCP
  targetPort: 7442

that's already what we do now isn't it? except we would make 3 listeners instead of 2.
interested in hearing what @nmittler thinks about this

except we would make 3 listeners instead of 2.

We make 3 service instances and try to make 3 inbound listeners, will make 2 and complain the third one as "conflict" -  This is what this PR is trying to fix (basically not complain)

ok, deduping to 2 sgtm, but I think 1 (what the original pr) may not give the correct behavior.
I am pretty sure we don't use the port (not Target) field anywhere, can you double check though?

but I think 1 (what the original pr) may not give the correct behavior.

Yes, because the original PR did not dedupe by protocol (did just by port). Fixed now. PTAL.

@ramaraochavali: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-istioio-k8s-tests_istio
88af7043fbad51e49634725d48db1f0ce8390e5a
link
/test integ-istioio-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test integ-istioio-k8s-tests_istio


Add configuration API

ConfigurationManager allows adding configs that can be managed by minigame core for loading and saving automatically.
Configuration class provides useful methods for loading, saving and getting CommentedConfigurationNode as well as merging changes from config assets.

much better

Squash the commits and everything should be ready.

:+1:


🚨 add eslint

Closes #88

@kettanaito the CI is failing, but I think the PR is ready to be reviewed, I've not fixed any warning (almost all any usages), but I've fixed all the errors but one.

Hi, @cloud-walker. Thank you for the effort with this!
We are going to adopt an internal tool to manage developer experience and processes for all open-source libraries in this organization to be consistent. I'll close your pull request so we don't have to migrate from an existing eslint setup to that tool's setup.


fix: update to contact evet types

Update event name for contact event types

Merging to test this in production.


KEDA Build Tools Not Compiling for s390x

Report
I'm using an RHEL8 development machine on s390x to compile KEDA from source code, with the objective of deploying it manually onto an IBM Redhat OpenShift cluster as a container. Upon running the make build command, the build-tools module fails with the following error below. Is there any way to assist with compiling the latest version of KEDA on s390x architecture?

[internal] load metadata for ghcr.io/kedacore/build-tools:1.19.7:

failed to solve with frontend dockerfile.v0: failed to create LLB definition: no match for platform in manifest sha256:485cc0164d93f38b5bea9121e7dcb71d6a588777fe7780250e4eeb96cfef5aed: not found
NOTE: I also ran the option "make docker-build-tools" to build just that module and the Rust python module from build-tools.Dockerfile failed to build successfully.
      =============================DEBUG ASSISTANCE=============================
      If you are seeing a compilation error please try the following steps to
      successfully install bcrypt:
      1) Upgrade to the latest pip and try again. This will fix errors for most
         users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
      2) Ensure you have a recent Rust toolchain installed. bcrypt requires
         rustc >= 1.56.0.

      Python: 3.8.10
      platform: Linux-4.18.0-305.el8.s390x-s390x-with-glibc2.29
      pip: n/a
      setuptools: 67.7.2
      setuptools_rust: 1.6.0
      rustc: n/a
      =============================DEBUG ASSISTANCE=============================

  error: can't find Rust compiler

Expected Behavior
Running 'make build' to compile the source code and produce all executable modules that would be wrapped into a docker container, pushed to a Docker repository and deployed in KEDA.
Actual Behavior
"make build" fails to compile executables.
Steps to Reproduce the Problem

Install RHEL8, protoc and ensure gcc and g++ are installed
Download KEDA and run "make build"
Run make "docker-build-tools" also gives error
NOTE: I have run the same commands on KEDA version 2.10 and 2.9. Same error occurs.

Logs from KEDA operator
test -s /home/cloud-user/projects/keda-2.9.3/bin/controller-gen || GOBIN=/home/cloud-user/projects/keda-2.9.3/bin go install sigs.k8s.io/controller-tools/cmd/controller-gen
test -s /home/cloud-user/projects/keda-2.9.3/bin/mockgen || GOBIN=/home/cloud-user/projects/keda-2.9.3/bin go install github.com/golang/mock/mockgen
GOBIN=/home/cloud-user/projects/keda-2.9.3/bin go install google.golang.org/protobuf/cmd/protoc-gen-go
GOBIN=/home/cloud-user/projects/keda-2.9.3/bin go install google.golang.org/grpc/cmd/protoc-gen-go-grpc
PATH="/home/cloud-user/projects/keda-2.9.3/bin:/home/cloud-user/.local/bin:/home/cloud-user/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/data/apache-jmeter-5.4.3/bin:/home/cloud-user/.local/bin" protoc -I vendor --proto_path=hack LiiklusService.proto --go_out=pkg/scalers/liiklus --go-grpc_out=pkg/scalers/liiklus
PATH="/home/cloud-user/projects/keda-2.9.3/bin:/home/cloud-user/.local/bin:/home/cloud-user/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/data/apache-jmeter-5.4.3/bin:/home/cloud-user/.local/bin" protoc -I vendor --proto_path=pkg/scalers/externalscaler externalscaler.proto --go_out=pkg/scalers/externalscaler --go-grpc_out=pkg/scalers/externalscaler
PATH="/home/cloud-user/projects/keda-2.9.3/bin:/home/cloud-user/.local/bin:/home/cloud-user/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/data/apache-jmeter-5.4.3/bin:/home/cloud-user/.local/bin" protoc -I vendor --proto_path=pkg/metricsservice/api metrics.proto --go_out=pkg/metricsservice/api --go-grpc_out=pkg/metricsservice/api
/home/cloud-user/projects/keda-2.9.3/bin/controller-gen object:headerFile="hack/boilerplate.go.txt" paths="./..."
/usr/lib/golang/src/net/cgo_linux.go:12:8: no such package located
Error: not all generators ran successfully
run `controller-gen object:headerFile=hack/boilerplate.go.txt paths=./... -w` to see all available markers, or `controller-gen object:headerFile=hack/boilerplate.go.txt paths=./... -h` for usage
make: *** [Makefile:127: generate] Error 1

KEDA Version
2.10.0
Kubernetes Version
None
Platform
None
Scaler Details
No response
Anything else?
No response

Hi @jried31
Sadly, we don't support s390x currently. I don't have any machine that I can use with that architecture to help you but it looks like the problem is related with this line
/usr/lib/golang/src/net/cgo_linux.go:12:8: no such package located
The only option that I can suggest is using an AMD or ARM machine and cross-compile the image using docker buildx to generate the image in s390x. If you use one supported architecture for building any non-supported architecture, you could use all the already existing tooling.
@zroubalik , should we support s390x for OpenShift? Isn't KEDA available as part of OpenShift's OLM Operator (using custom-metrics or something similar)?

A preview (pre-alpha i presume) is available for OpenShift on x86 with limited functionality. It is not made available for install on OpenShift s390x architecture. I did manage to cross compile successfully with an x86 machine. An installation via OperatorHub would be ideal so that we're working with the same tested versions of Keda on OpenShift.
I appreciate the consideration for adding to your roadmap.

@jried31 -- I raised the issue is on both sides. --- Yes, regarding your question. How would you like to go about discussing?
Beyond this error: /usr/lib/golang/src/net/cgo_linux.go:12:8: no such package located
which is a separate issue I recall that the build-tools step fails compiling on s390x.


[AVM Module Issue]: use application_insights_connection_string and application_insights_key for application insights related settings instead of setting in app_settings

Check for previous/existing GitHub issues

[X] I have checked for previous/existing GitHub issues

Issue Type?
Bug
(Optional) Module Version
No response
(Optional) Correlation Id
No response
Description
Reviewing documentation of azurerm_windows_function_app

addressed in release v0.5.0


[FEATURE] Utilize EIP-1559 for Gas Estimation

File(s): frontend/???
Test Files Required?: No
What Testing Should Include:

N/A

EIP-1559 was recently added into the London hardfork where it enabled a better gas fee mechanism. Utilizing this new implementation can better improve the UX, especially avoiding overpaying while also not waiting too long (although our project doesn't necessarily have anything time-critical).

MetaMask displays this little warning now

Pre-Venus frontend (frontend branch) updated to prevent overspending with incorrect EIP1559 calculation.
frontend-v02 unaffected as it is already updated.


Handling multiple frequencies with the same trip_id

 Issue by cbergy
Monday Sep 24, 2018 at 08:32 GMT
Originally opened as https://github.com/catalogueglobal/datatools-ui/issues/249

Importing a new feed does not take into account multiple frequencies that use the same trip_id: only the first one is shown in the editor.
The same happens when manually editing frequencies: the editor blocks you from inserting the same trip_id for different frequencies.
The GTFS standard does not pose this limitations.
See the example on the Google site

 Comment by landonreed
Tuesday Sep 25, 2018 at 15:52 GMT

Yes, this limitation should have been documented.  We were aware of the limitation when manually editing frequencies, which for the moment we deemed tolerable because it was still producing valid GTFS.  However, on import it should not lose track of the multiple frequency entries per trip_id.


Get error "The name '_config' does not exist in the current context" when add Server-side behavior

Following code does not pass build, that the build error says "The name '_config' does not exist in the current context"
public IActionResult About()
{
    string appName = _config.Get("ApplicationName");
    ....
}

Did I miss any point, or anything wrong?

We should remove the _config code.

And update the code samples for this article to use literal include of real code files. Will do.


Dag display fails silently when rendering results in exception

When dag rendering fails due to a javascript exception, the exception is shown in the javascript console, but is not shown to the website user.
Showing these exceptions would help users diagnose that their dags are funky.
Again, no code from me for now, but I'm opening this as a todo.

The real bug is the error in the javascript, though error handling would be good for the async calls.


MajorBBS Ordinal 432

Closes #146
Added MajorBBS Ordinal 432 & Test

Updated to string

Return Pointer.

Updated based on IDA output.

Comment fixed.


[WIP][Refactor] Refactor the new client outside pkg/cmd.

#1907
Checklist:

[X] move newClient from pkg/cmd to the location where call it.

Signed-off-by: Laitron<EMAIL_ADDRESS>

Can we update pkg/cmd/image too?

@djdongjin I have resolved the changes mentioned above. However, I have discovered that refactoring NewClient in pkg/cmd/builder/build.go is complicated and I have not finished it yet. Therefore, I am changing its status to WIP.

No worries, I'll fix #1909 today, which will also simplify the logic in inspect.go.

can you rebase to resolve the conflict. it should also simplifies the changes for inspect.


Spreading Parameters of ternary function type does not recognize parameter type

TypeScript Version:  4.0.2

Search Terms: spread, parameters, ternary
Code
type EventCallback<T extends EventType> = T extends 'fetch'
  ? (meta: {url: string; duration: number}) => void
  : never;

type EventType = 'fetch';

const listeners = new Map<string, EventCallback<any>[]>();

const getListeners = (eventType: EventType) => listeners.get(eventType) || [];

export function dispatch<T extends EventType>(
  eventType: T,
  args: Parameters<EventCallback<T>>,
) {
  getListeners(eventType).forEach((listener) => listener(...args));
}

Expected behavior:
No error
Actual behavior:

Playground Link: https://www.typescriptlang.org/play?#code/C4TwDgpgBAogbhAdsAwgQwDYYEZoMYDWAPACpQQAewSAJgM6wLIngQB8UAvFGZdYvSgByAGYRgeABZCAUFCgB+KAAoAtuLQAuKAG8ArgCcM2usAMBLRAHMA3FBqG0wcwHtE2xHtXYIBgL4AlFwccC7mNHJQHhAIBjYyMqCQjEjALMncouJSQvEyeG6mUBjmpki+DNyIEADuUACyaGBEphbWADQpyOhYuIREaIggbADaALpsygF5BYhFVuIAMqX8FVwqManpENrwW6xBnBwlZdUGdAB0C8DKm8wHUAA+j1DjeZRgLgbAUCJ6iHhnG57KUwE4pKRyFRaAw9vdIJNInc0qxtCR2pE0AYrHRtAAFLFodTUc5EOGoTA4fDEEhsNgYoI6SLXZanCq3JgoyABC4iL4wfCSZTKE6rAyHY4rcoGZQXOVYnEBaYyPwyIA
Related Issues:  None

This is basically a design limitation. A spread argument ...args is processed as synthetic discrete arguments only when the type of args is an actual tuple type. In this particular case, args is of a type that is assignable to a tuple type, but it isn't an actual tuple type. For that reason, arity checking assumes that the spread argument could be of any length, including zero, and therefore the arity check fails. Unfortunately, it would be non-trivial to do better here.


Set-GPPGroup -DeleteAllUsers or -DeleteAllGroups parameters produce error when policy contains multiple groups

Consider this scenario:
New-GPPGroup -GPOName "TEST GPO" -Update -Name "Administrators"
Set-GPPGroup -GPOName "TEST GPO" -Name "Administrators" -DeleteAllUsers -DeleteAllGroups
New-GPPGroup -GPOName "TEST GPO" -Update -Name "Remote Desktop Users"
Set-GPPGroup -GPOName "TEST GPO" -Name "Remote Desktop Users" -DeleteAllUsers -DeleteAllGroups

The 'Administrators' group will be created correctly with Delete all users and Delete all groups set
The 'Remote Desktop Users' group will be created twice, and the second command will error out:
Exception calling "Remove" with "1" argument(s): "Collection was of a fixed size."
At C:\Program Files\WindowsPowerShell\Modules\PSGPPreferences\0.2.0\Groups\Remove-GPPGroupsItem.ps1:117 char:21
+                     [void]$WorkObjects.Remove($ObjectToRemove)
+                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : NotSupportedException

Seems that Set-GPPGroup can't handle multiple groups in a single policy

Thanks you Chris! Appreciate your bug reports!

Could you please check ou the dev branch?

Hey, just tested, that seems to be working fine.
Thanks for the swift reply! This module shows a lot of promise, please do keep developing! I'll post a few more bugs in a minute.


Update H3Hexagon Layer docs & props for ColumnLayer

For #3015

Add getFillColor, getLineColor & wireframe props to ColumnLayer of H3Hexagon Layer.

Add updated props to the docs.

Fix ColumnLayer docs for wireframe.

Coverage decreased (-0.006%) to 62.519% when pulling cde59e3f26f5c2ce961841968025268053618953 on kaushikb11:hexagon-column into b67cd7e616c64208c3cede570d4c29a8f90f5b3e on uber:master.


Updated generated API doc

What this PR does / why we need it:
Updated generated API doc
NONE

/hold cancel

/retest


[SMALLFIX] increase the heartbeat timeout

I have seen this in the log:
timed out after 36903ms without a heartbeat
timed out after 29539ms without a heartbeat
timed out after 17920ms without a heartbeat
timed out after 13112ms without a heartbeat
This caused lots of blocks as "LOST":
http://ec2-54-149-189-171.us-west-2.compute.amazonaws.com:19999/browse?path=%2FCREATE_FILE_MUST_CACHE_1.1.0_C30%2F0%2F0%2F0&offset=0&limit=20
I think we need to improve the way to do the heartbeat. It takes too long to copy the block information when the worker has lots of blocks.

You might also want to update the documentation for the default value change.

@ifcharming  Fixed

LGTM

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/10227/
Test PASSed.

LGTM


BI-2365 - BI-2365 Change Honey to Honey Bee under program Species list

Description
Story: BI-2365

Renamed Honey to Honey Bee

Dependencies

bi-web release/1.0

Testing

Verify Honey Bee is in the species select box when creating a program
Create a Honey Bee program and verify it is created without error

Checklist:

[x] I have performed a self-review of my own code
[x] I have tested my code and ensured it meets the acceptance criteria of the story
[x] I have tested that my code works with both the brapi-java-server and BreedBase
[ ] I have create/modified unit tests to cover this change
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to documentation
[ ] I have run TAF: <please include a link to TAF run>

@nickpalladino my only question is if this is intended to go into v1.0 or v1.1?

@nickpalladino my only question is if this is intended to go into v1.0 or v1.1?

Ya was hoping to get it into v1.0


Update Mono C# warning to reflect latest list of platforms supported

Simple fix for #38627. iOS (#20268) and HTML5 (#20270) removed from list of exceptions
for platforms supported in warning message.
Bugsquad edit: Fixes #38627.

Thanks!

Cherry-picked for 3.2.2.


Deactivation cleanup deux

Re enable "deactivation cleanup"
Pass the parameters to Octokit in the same order to avoid confusion
Return true while deactivation the repo to avoid returning nil so we
don't break anything in the callback

Things are fine on staging on this branch.


Disable debug output by default

Given this main.go:
package main

import (
	"fmt"

	"github.com/prisma/demo-go/db"
)

func main() {
	client := db.NewClient()
	err := client.Connect()
	if err != nil {
		panic(err)
	}

	defer func() {
		err := client.Disconnect()
		if err != nil {
			panic(fmt.Errorf("could not disconnect %w", err))
		}
	}()
}

Running go run main.go, I first get:
info: 2020/07/15 11:28:49 no query engine defined or found
info: 2020/07/15 11:28:49 if you want to pre-fetch the query engine for better startup performance, specify `binaryTargets = ["native"]` in your Schema.prisma file under "generator" and upload the query engine with your application.
info: 2020/07/15 11:28:49 fetching the query engine now...
info: 2020/07/15 11:28:50 done.
Printing to stderr for debugging
Listening on <IP_ADDRESS>:60190

And subsequent runs I get:
Printing to stderr for debugging
Listening on <IP_ADDRESS>:60247

Problem
As a new user, I don't care about this information. It's telling me things that don't matter at all to me when I'm just evaluating Prisma Go. Listening on <IP_ADDRESS>:60247 is confusing because I didn't start a server.
Suggested Changes

Allow one to pass in a logger or provide a log level flag to see this debug information
Listening on <IP_ADDRESS>:60247 => Query engine is listening on <IP_ADDRESS>:60247

We just pipe whatever the query engine logs which is mostly used for error logging. I guess we should be able to only log errors and not debugging output from the query engine.

Sounds good. I'd follow whatever JS client does here.


Revert "ci: Workaround dep checker (cves) issue again"

and fix release date
This reverts commit 7e50eecb80669d04c74b4125bfee00fc96c7fb85.

Commit Message:
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

pushing this through as it fixes the dep checker and the fix will blow caches


Wrong asset file under 'Releases'

I was looking to download the asset .zip file but see that its the 'GetConnected' app which has been release; I assume it should have been 'HowTo'

Hey Emil, Thanks so much for reaching out, it is already fixed with the latest release.


SNI support

My app was experiencing timeouts when connecting to some domains.  To make a reduced testcase, I started with the 'TCP secure get https website three times' test (https://github.com/MobileChromeApps/cordova-plugin-chrome-apps-sockets-tcp/blob/master/tests/tests.js#L793).  Running that test on my Nexus 5X, by clicking the "Run" button in the test app with only chrome-sockets-tcp selected, I see flakiness, with maybe an 80% success rate.  (The second run in particular seems to fail frequently.)  I modified the target domain from httpbin.org to a0.awsstatic.com, and saw similar results.  However, when I changed the target domain to sdk.amazonaws.com, I saw 100% failure.
In the last case, I set breakpoints to locate the failure.  It appears that chrome.sockets.tcp.secure() never calls its callback, resulting in a test timeout.
The flakiness of the test does not seem surprising.  In particular, any nagling or similar aggregation would break the recvCounter mechanism.  However, I'm not aware of any difference between the a0.awsstatic.com and sdk.amazonaws.com domains that would logically explain the difference in behavior.  (Both domains are hosted on Amazon Cloudfront, so they should behave almost identically.)
The only difference I've been able to find between these domains is that sdk.amazonaws.com is defined by a CNAME record, whereas a0.awsstatic.com is defined by an A record.  The extra DNS lookup and secondary name should not be a problem, but perhaps a buggy TLS client could fail in this case.

By debugging the unit tests when pointed to sdk.amazonaws.com, I've found that the failures occur after finishConnect() succeeds, but the SSL handshake fails.  Debugging revealed that the server replies with 7 bytes before closing the socket: 21, 3, 3, 0, 2, 2, 40.  Reading the TLS specification, I've determined that this is
21 // ContentType = alert
3 // ProtocolVersion = 3,3 (TLS 1.2)
3
0 // length = 0,2 (2 bytes)
2
// Alert:
2 // AlertLevel = 2 (fatal)
40 // AlertDescription = 40 (handshake_failure)

I don't yet know what is causing the handshake failure.

After tracing this deeper, I'm now convinced that the issue is a lack of SNI (Server Name Indication).  Chrome's sockets API always includes SNI when connecting to a domain by name.  This plugin never includes SNI ... understandably, since the requisite method is only now being introduced in API 24 (Android N).  The servers where this fails appear to require SNI.


GraphQL API doesn't update optional values

Describe the bug
Im trying to implement AppSync API and it doesn't update optional Values, when updating on the client app side.
To Reproduce
Steps to reproduce the behavior:

Create a DataModel with optional fields
Create on your app an item of this model with any optional key filled with value 'nil'
Now we can see in our Table that this key is from type 'NULL' and his value is true.
Now update on your app this key with the value it should be, when it is not nil. E.g. string.
The Xcode console will show that the operation was successfull and the item was updated. But in the success data you can see, that this value wasn't updated
Refresh the table and you will see, that nothing happened. The key is still from type 'NULL' and set to true

Expected behavior
Update the key with its given new value
Screenshots

Environment(please complete the following information):

Dependency Manager: [ Cocoapods]
Swift Version : [ 5.3]

Device Information (please complete the following information):

Device: [Simulator]
iOS Version: [iOS 14]

Hi @chris-mds
Sorry you are running into this issue, can you please verify which Amplify pod versions you are using?
I was not able to reproduce using Amplify 1.3.1 on Xcode 12
let post = Post(title: "title", content: "content", createdAt: .now(), updatedAt: nil, draft: nil, rating: nil, status: nil, finishedFrom: nil, isFinished: nil, finishedAt: nil, comments: [])
                Amplify.API.mutate(request: .create(post)) { (result) in
                    switch result {
                    case .success(let result):
                        print(result)
                    case .failure(let apiError):
                        print(apiError)
                    }
                }

_ = Amplify.API.query(request: .get(Post.self, byId: "BF95FF22-8620-4758-B048-D843BFCEB8E8")) { (result) in
                    switch result {
                    case .success(let result):
                        print(result)
                        switch result {
                        case .success(let post):
                            if var post = post {
                                post.finishedFrom = "Chris"
                                post.isFinished = true
                                post.comments = []
                                Amplify.API.mutate(request: .update(post)) { (result) in
                                    switch result {
                                    case .success(let result):
                                        print(result)
                                    case .failure(let apiError):
                                        print(apiError)
                                    }
                                }
                            }
                        case .failure(let graphQLError):
                            print(graphQLError)
                        }

                    case .failure(let apiError):
                        print(apiError)
                    }
                }

There was a known issue fixed in 1.2.0 and later

Since I was mixing APIPlugin and DataStorePlugin and I haven't handled versions, the conflict detection rejected any updates. Now with a clean API and no mixes it works like expected, thanks!


Problems with text fields enhanced by TinyMCE

Hi, me again ;-)
I'm having problems when I'm trying to fill_in a text field which is enhanced by the TinyMCE rich text editor. It just remains empty.
The thing is that the text field is irrelevant for the test case, it just prevents a validation from passing. Maybe there is a workaround which can be used?
Thanks for your support!
Fabian

Does it work with other drivers, out of interest? Can you provide a test case? Thanks

The tests fails with selenium as well, I guess tinyMCE just does some really weird stuff. Anyway, I've sent you a failing test, maybe there's some workaround.

 Capybara will refuse to interact with hidden elements, hence the problem.
This may be possible to solve in the future by enhancements in PhantomJS. If/when PhantomJS supports simulating keyboard input, then you could simulate a click in the appropriate place, and then start inserting keyboard events. But I will close this for now and re-evaluate if/when PhantomJS supports that.
Cheers

Yes I thought so, thanks!


permit creation of dev release with version

this is useful for e.g. creating release candidate tarballs in CI

woops, just noticed I submitted this against master.


Support user-defined tile tabs similar to diagrams

Tile tabs can be referenced groups of tiles with similar characteristics, like live or VOD, or category or rating.
Today we have a single tile tab, which may limit scaling out monitoring large number of channels.

UI and tag support needed. Tiles can be present on multiple tile tabs.
Tag "MSAM-TileTab="


Cacbot Pluggings/Configuration Screen Errors

Since the 14.0 update my Raidboss and oopsy plugs have stopped working and the new configuration window is completely blank. Likely that I've not followed something correctly but please help

Check your overlay log, if it contains an error mentioning an outdated Newtonsoft.Json version, follow these instructions.

Thank you, that fixed the issue


Are you using function calling?

Describe the issue
Am i right in assuming that currently SWE-agent parses tool calls etc. manually and then calls the tools? i.e. currently you are not using the function calling option e.g. of openai (https://platform.openai.com/docs/guides/function-calling)?
Optional: Relevant documentation page
No response

This is correct, we don't use it at the moment, we simply extract the triple-backticks blocks from the LM answer and treat the content as the commands.

From what I remember, J & C tried tool calling and it did not improve performance.


No longer compatible with dash

TypeError: Dash() got an unexpected keyword argument 'auth'

Dash 2.3.1

Just remove the auth argument and it will work

See PR https://github.com/fspijkerman/dash-cognito-auth/pull/4


Deprecate using non-String keys for nested map properties

When a task or transform parameters object declares a @Nested Map<X, Y> property, we resolve each key in the map to a sub-property. To get the name for each key, we currently call X.toString(), and this is problematic. It can lead to property name collisions, and the names we get this way might not be human well readable (e.g. when falling back to Object.toString()).
We should emit a deprecation warning for @Nested Map<X, Y> properties where X != String.

cc: @gradle/execution

There may be some corner cases when the keys of the maps are GStrings in Groovy. Because of type erasure Groovy probably won't convert them to Strings when you add them to the map. Though I am not sure this is a problem in practice.


Rename pony-stable to tack

This is a PR I am opening to get the work started on this. So far, it includes changing references to bundle.json to tack.json.
@dipinhora do you have time to add changes to the release process to this PR? are there changes with external services that need to be made? i know the pony-stable forumula will need to be changed.

I've left the name "bundle" in the code but the file is tack.json given that you can have a "tack bundle" as a term with horses. This seems reasonable. The tack.json file defines your bundle of dependencies. However, I'm also open to saying "no, things like _BundleLocator need to be renamed as its confusing otherwise". If that were the case _TackLocator? That seems slightly od to me as the program itself will be called tack.
Thoughts @jemc?

Agreed about leaving internal use of the term "bundle".

@dipinhora do you have time to walk me through the mechanics of the rename for COPR etc?

@SeanTAllen I'm not sure I have the answers re: COPR, deb packaging, appimage, etc. I don't know if a rename would be sufficient or if it would be better to create a new package for tack. It's a decision that would need to be made along with some others. Should the old pony-stable packages remain for backwards compatibility (without getting new versions added)? Should the pony-stable package remain and become a virtual package that installs tack after the change? There are likely other things to consider and think through and make decisions about.
Once the decisions regarding the package management considerations to the rename have been figured out and made, I can help with figuring out the technical side of things as time permits if needed (note: I'm not an expert on RPM/DEB/etc packaging and would likely be relying on docs and google to figure things out so asking me may or may not be better than trying to figure things out yourself).

Rebased onto master.

CI in GH is a little confused right now.
We have failing tests after the rebase. Someone (probably me) can look into it. I'm going to be figuring out the Windows + @cloudsmith story first.

I'm going to remove bintray as part of this PR.


Upload and save images to IndexedDB

Here is a good reference: https://hacks.mozilla.org/2012/02/storing-images-and-files-in-indexeddb/


IE 11 Object.keys bug after 10.0 upgrade

I'm submitting a ...
[x] bug report
Current behavior
We have implemented 2 custom floating filters following documentation on ag-grid.com. These filters have worked correctly, until today when we updated to v. 10.0.0 from 9.1.0.
Now, when we load our AngularJS page/ag-grid instances we get the following error in IE11 and the grid never loads.
TypeError: Object.keys: argument is not an Object
   at e.iterateObject (http://localhost:62881/Scripts/ag-grid.min.js:44:1663)
   at e.mergeDeep (http://localhost:62881/Scripts/ag-grid.min.js:44:2226)
   at Anonymous function (http://localhost:62881/Scripts/ag-grid.min.js:44:2272)
   at e.iterateObject (http://localhost:62881/Scripts/ag-grid.min.js:44:1722)
   at e.mergeDeep (http://localhost:62881/Scripts/ag-grid.min.js:44:2226)
   at e.prototype.getParams (http://localhost:62881/Scripts/ag-grid.min.js:290:3411)
   at e.prototype.createAgGridComponent (http://localhost:62881/Scripts/ag-grid.min.js:290:3268)
   at e.prototype.newFloatingFilterComponent (http://localhost:62881/Scripts/ag-grid.min.js:290:4052)
   at e.prototype.newFloatingFilterWrapperComponent (http://localhost:62881/Scripts/ag-grid.min.js:290:4544)
   at t.prototype.createFloatingFilterWrapper (http://localhost:62881/Scripts/ag-grid.min.js:512:5674) <ui-view class="ng-scope">

This error only happens in IE. Per StackOverflow this is an issue related to IE implementing the Object.keys method using old JS standards.
Workaround: Override browser's definition of Object.keys with
Object.keys = function(obj) {
    var keys = [];

    for (var i in obj) {
      if (obj.hasOwnProperty(i)) {
        keys.push(i);
      }
    }

    return keys;
  };

Expected behavior
The page should load in IE without requiring us to override Object.keys method.
Minimal reproduction of the problem with instructions
Slimmed Example   The filter is a little buggy here, I pulled it out of a large ag-grid with a shared factory and seem to have caused the max value to not always work.

ag-Grid version: 10.0.0

Browser: Bug exists in IE; works correctly in Chrome.

Language: AngularJS, JavaScript

Thanks!

Hi,
Thanks for this, we have just created the ticket AG-482 to fix this, we will update this thread as soon as the fix is available.

Hi after further consideration we have decided not to do this, since we could break other peoples code that relies on this behaviour to be buggy...
Since you should be able to use a polyfill or similar... we are not doing this in our end
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/keys


useComputed doesn't update on deps change

We have our own mobx-based useComputed, and I was looking at Legend's implementation just out of curiosity.
I thought this approach was neat:
                // setValue may be undefined if this is the first run
                setValue?.(v);

But in trying the approach out for our useComputed test suite, it doesn't actually work b/c contrary to the comment of "setValue is only undefined on the first run", it's actually always undefined, b/c on the 2nd run, i.e. useMemo has noticed that deps has changed and running effect again (for us autorun), setValue is still undefined, b/c this is a brand new invocation of the useComputed function, and setValue-the-setter still hasn't been set by useState.
I think for this to work you'd need to use a ref to hold the setValue? i.e. something like:
function useComputed(...) {
  const setValueRef = useRef();
  const initial = useMemo(() => {
    ...
    if (setValueRef.current) setValueRef.current(v);
  });
  const [value, setValue] = useState(initial);
  // Let the next invocation of useComputed get setValue
  setValueRef.current = setValue
  return value;

Ah, good point! We hadn't actually tested it with the deps array yet since we made that change. I'll look into fixing that. The ref solution looks like it would work 👍.
I'll experiment with it to try find a solution without adding a hook if possible, but otherwise will go for the ref solution. Thanks!

I'm actually changing it significantly based on some other changes I've been working on. useComputed will now be the basis of observer so everything is more consistent. I'm finishing testing another branch and will hopefully release it tomorrow.
Preview of the change if you're interested: https://github.com/LegendApp/legend-state/blob/primitive/src/react/useComputed.ts
Note that it looks longer but a bug chunk of it is wrapped in process.env.NODE_ENV === 'development' to workaround React 18 strict mode's double useEffect. And it's just got the two hooks (useReducer to force render and useEffect to cleanup).

This should be fixed in 0.16, especially since it doesn't have deps anymore. Please let me know if there's still any issues.


Improve multisig support in casper-client-rs

We should support the creation of deploys where the session account is not automatically derived from the provided secret key.  We should also make the provision of a secret key optional for the make-deploy and make-transfer subcommands

Note that updates to support this exist here, but need the addition of tests before a PR can be cut.

This is a high value feature that has been rolling for several sprints. Needs to be prioritized and tied off.  Please work to get it done.


processDependencies omits dependencies inherited from parent pom

When we have working project on which goal versions:update-properties is executed:
    <project>
        <parent>
           <artifactId>my-parent</artifactId>
        </parent>
        <properties>
              <my.version>1.1</my.version>
        </properties>
    </project>

and its parent:
  <project>
       <properties>
             <my.version>1.0</my.version>
       </properties>
       <dependencies>
            <dependency>
                 <artifactId>my-dependency</artifactId>
                 <version>${my.version}</version>
            </dependency>
       </dependencies>
   </project>

then property my.version is not updated:
Property ${my.version}: Leaving unchanged as 1.1
Expected behavior: property my.version is updated:
Updated ${my.version} from 1.1 to 1.2
Workaround: clone the dependency from parent to working project fixes the issue, my.version property is properly updated.

First can you please make a full working example which shows the behaviour...and please add an output of your run...also which version of versions-maven-plugin do you use? And which version of Maven do you use? How exactly have you called ?

Hi,
Please find attached zip with working example.
Script exmple/run.sh contains commands which reproduces the situation:
(cd mywork && mvn versions:update-properties)
outputs: Property ${mylib.version}: Leaving unchanged as 1.1.
After duplicating the dependency from the parent project:
(cd mywork-workaround && mvn versions:update-properties)
outputs: Updated ${mylib.version} from 1.1 to 1.2
The output of script run.sh is in attached zip under name example/out.txt.
Regards
Grzegorz
example.zip

I have a similar project, but the properties for version definitions is kept in the parent pom. Example:
    <properties>
        <org.external.artifact.version>3.0.0</org.external.artifact.version>
      </properties>
The child modules define the  with a reference to ${org.external.artifact.version} as the required version. When running the goal versions:update-properties, no changes are made to the parent pom.xml or to any of the child pom.xml files.
The instructions on https://www.mojohaus.org/versions-maven-plugin/examples/update-properties.html seem to imply that this is supported. However, my experience does not match the documentation.

I have similar setups, but I don't want the child to make any updates to the parent's properties.  They are separated explicitly and controlled separately.
The parent contains the property, and sets it.  The child POM simply references that property and may have its own version properties that should be updated in it, but they are not the same as that in the parent.
Simple example:
parent contains a property:

<lib.a.version>1.0.0</lib.a.version>
an appropriate  for lib.a so that the versions plugin can manage this property.

child contains a property:

<lib.b.version>1.2.3</lib.b.version>  (but NOT a property for lib.a.version)
an appropriate  so that the versions plugin can manage it
a  on lib.a with version set to ${lib.a.version} inherited from the parent

Upon running update-properties on the child POM, I expect lib.a.version to NOT be changed in any way, and this is the way it works today.  I imagine that since the property is not listed in the POM, this will continue working as expected for me.


Enabling customers not using Flux: what's next?

Opportunity
A relevant percentage of our customer base does not use Flux, using ArgoCD instead.
Customer feedback highlights mainly 3 things:

From a customer perspective, ArgoCD / Flux are pretty much equivalent in terms of functionalities so there is really no strong advantage in favoring one over the other;
A big difference between the two is the UI (ArgoCD is more WebUI-centric, Flux is more CLI-driven) and considering how similar these tools are, this was in the end one of the main reasons for customers to choose one over the other (= personal preferences about UIs). In some cases, these preferences are very strong towards one specific type of UI;
Considering how similar these 2 tools are, migrating from one to another is a high cost that customers want to avoid.

Our customer base situation and feedback pretty much reflect the exact situation happening right now on the topic within the community at large:

https://gitlab.com/gitlab-org/gitlab/-/issues/357947#note_1183715452
https://gitlab.com/gitlab-org/gitlab/-/issues/357947#note_1193560400

Possible next steps

PoC of Flux WebUI capabilities (based on weave gitops Web UI) + demo with customers to collect their feedback;
Spike to find out effort, value and constraints about offering managed ArgoCD to customers.

edit: fixed typos

@mproffitt is there any other relevant customer feedback that you have collected and that is missing from the description above? If yes, please make any contribution you see fit :)

The one comment I see that is not captured here is that occasionally we see customers who already have their own CI/CD system that they want to stick with.
The customers who drive this issue are already ingrained with ArgoCD and it would require a level of re-skilling within their respective companies to switch from one CI/CD system to another.
I see both Flux UI and potential adoption of Managed Argo as being mutually exclusive to one another and both are nice-to-haves but ones that can potentially make the whole experience more appealing both to existing, and prospective customers.
Whilst feedback on the reasons companies previously chose argocd over flux has already been encapsulated within the comments here, we have yet to offer a demonstration of the Weave-GitOps UI to customers and I see the delivery of this as a potential quick win for our platform today whilst ArgoCD as a managed solution requires additional time to consider and develop the right proposal around.

the outcome of the conversation is to proceed with a spike around the potentialities of Weave GitOps UI https://github.com/giantswarm/roadmap/issues/1821


Recyclebin improvements

Implement some of the changes suggested here #1089
Changes:

Fix #1088, #1181, #1199
Auto refresh on recyclebin changes
Fill info in Properties window
Customized recyclebin context menu
Recycle bin always at the bottom of sidebar items
Added confirmation dialog on emptying recyclebin

Issue #1199 is not fixed. Still getting the same exception in debug_fulltrust.txt

@tsvietOK Can't reproduce that exception anymore, mind telling me on which line is thrown?

I can't tell you where the exception, but that's what i get:

To get the exception line you could:

launch Files Dev from start menu
in visual studio:

click Debug menu
click Attach to process..
select "FilesFullTrust.exe"

go to recyclebin in Files Dev and get exception

In the picture I'm seeing a "NullReferenceException", in issue #1199 it was an "InvalidCastException". Is the debug_fulltrust.txt still the same?
If it doesn't work I can make a version with some additional debug logs.

@gave92

@tsvietOK Could you confirm whether the issue you reported is still present in the latest commit? Thanks!

@gave92 Issue fixed, good job!

@gave92 Can you merge in master?


Code not available on idf v4.4,can I modify the relevant files to change this?

Describe the bug
Code is available on idf v4.3.1 release,but  not available on idf v4.4,can I modify the relevant files to change this? Because I want to use this tool to do experiments on ESP32 S3(which only supports idf v4.4 and v5.0)

It's available in IDF V4.4 under my test.
Some config settings need to be changed in V4.4. such as UART baud rate is in ESP System Settings instead of  Common System Settings

Thanks for taking a look at this. Feel free to create a pull request to update the documentation for v4.4 changes. Thanks!


fix(pruner/light): Include time.Second

Thank you @walldiss for finding this.

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

Project coverage is 44.38%. Comparing base (2469e7a) to head (438f09d).
Report is 46 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3370      +/-   ##
==========================================
- Coverage   44.83%   44.38%   -0.46%
==========================================
  Files         265      273       +8
  Lines       14620    15255     +635
==========================================
+ Hits         6555     6771     +216
- Misses       7313     7696     +383
- Partials      752      788      +36

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


Null Reference error on AtomicUpdate if there is no prop marked as unique key

Hello.
Here is the model
public class TestClass
{
            [SolrField("id")]
            public string Id { get; set; }
            [SolrField("FirstName")]
            public string FirstName { get; set; }
            [SolrField("LastName")]
            public string LastName { get; set; }
}

Code:
var updateValues = new List<AtomicUpdateSpec> {
     new AtomicUpdateSpec("SomeField", AtomicUpdateType.Set, fieldValue)
};

var task = dbContext.AtomicUpdate("uniqueIdValue", updateValues); // here I'am getting NullRef exception

Not a critical issue, but better to throw some specific exception.
I think the problem is in this part of the code, line 357 (no checks for null or empty):
https://github.com/SolrNet/SolrNet/blob/5983baa5c2b7385fe4468d655cf456ba003a2fb6/SolrNet/Impl/SolrServer.cs#L355-L359
Thanks

Thanks for catching that, would you be able to send in a pull request for that?


main: remove special token file descriptor feature

https://github.com/ggerganov/llama.cpp/pull/6923

FYI CI issue is temporarily worked around, so you may want to merge this in anyway then do a rebase on top of latest master


fix(datePicker): Fix date picker clearing date issue

Issue: #963
What I did
Fix clearing DatePicker functionality
Add 'Clearing the Date' section to the documentation (docs and storybook)

Screenshots:

Checklist

[x] changeset has been added
[x] Pull request description is descriptive
[x] I have made corresponding changes to the documentation
[x] New and existing unit tests pass locally with my changes
[x] I have added tests that prove my fix is effective or that my feature works

How to test

I could be convinced either way, but do we think that we should add this clearing logic for onInputChange and/or onChange? Right now if I manually clear the input using the backspace, we chosen date remains as the last valid date 🤔

I've tested this case and it works fine. I made a screen record to check, if I missed any case.
https://github.com/user-attachments/assets/21abd3cc-d62e-415e-ae8c-af476204c366

I could be convinced either way, but do we think that we should add this clearing logic for onInputChange and/or onChange? Right now if I manually clear the input using the backspace, we chosen date remains as the last valid date 🤔

I've tested this case and it works fine. I made a screen record to check, if I missed any case.
Date.Picker.clearing.the.date.mov

Yeah this looks great! I was just wondering about the case of partial removal, so backspacing the year only completely clears the input field because the date is no longer valid-- would developers expect that date to come back to them as empty since it visually looks cleared, or is it okay that the date they get back is the last valid one? This may be a question for our designer on what functionality we expect.
The other part of my question was around the two other functions that adopters hook into: onInputChange and onChange. I think I'm okay with keeping clearing the date specific to onDateChange, so lets leave it as is.

I could be convinced either way, but do we think that we should add this clearing logic for onInputChange and/or onChange? Right now if I manually clear the input using the backspace, we chosen date remains as the last valid date 🤔

I've tested this case and it works fine. I made a screen record to check, if I missed any case.
Date.Picker.clearing.the.date.mov

Yeah this looks great! I was just wondering about the case of partial removal, so backspacing the year only completely clears the input field because the date is no longer valid-- would developers expect that date to come back to them as empty since it visually looks cleared, or is it okay that the date they get back is the last valid one? This may be a question for our designer on what functionality we expect.
The other part of my question was around the two other functions that adopters hook into: onInputChange and onChange. I think I'm okay with keeping clearing the date specific to onDateChange, so lets leave it as is.

Now I see what case you're talking about. After partial removal the input is cleared but Chosen day is not. As for me, it would be more compatible if the chosen date was updated (cleared) as well. If so, I will update the PR

I could be convinced either way, but do we think that we should add this clearing logic for onInputChange and/or onChange? Right now if I manually clear the input using the backspace, we chosen date remains as the last valid date 🤔

I've tested this case and it works fine. I made a screen record to check, if I missed any case.
Date.Picker.clearing.the.date.mov

Yeah this looks great! I was just wondering about the case of partial removal, so backspacing the year only completely clears the input field because the date is no longer valid-- would developers expect that date to come back to them as empty since it visually looks cleared, or is it okay that the date they get back is the last valid one? This may be a question for our designer on what functionality we expect.
The other part of my question was around the two other functions that adopters hook into: onInputChange and onChange. I think I'm okay with keeping clearing the date specific to onDateChange, so lets leave it as is.

Now I see what case you're talking about. After partial removal the input is cleared but Chosen day is not. As for me, it would be more compatible if the chosen date was updated (cleared) as well. If so, I will update the PR

I want to triple check with our designer who comes back from vacation on Monday, and I'll let you know soon. Thank you! everything else looks great ⭐

I could be convinced either way, but do we think that we should add this clearing logic for onInputChange and/or onChange? Right now if I manually clear the input using the backspace, we chosen date remains as the last valid date 🤔

I've tested this case and it works fine. I made a screen record to check, if I missed any case.
Date.Picker.clearing.the.date.mov

Yeah this looks great! I was just wondering about the case of partial removal, so backspacing the year only completely clears the input field because the date is no longer valid-- would developers expect that date to come back to them as empty since it visually looks cleared, or is it okay that the date they get back is the last valid one? This may be a question for our designer on what functionality we expect.
The other part of my question was around the two other functions that adopters hook into: onInputChange and onChange. I think I'm okay with keeping clearing the date specific to onDateChange, so lets leave it as is.

Now I see what case you're talking about. After partial removal the input is cleared but Chosen day is not. As for me, it would be more compatible if the chosen date was updated (cleared) as well. If so, I will update the PR

I want to triple check with our designer who comes back from vacation on Monday, and I'll let you know soon. Thank you! everything else looks great ⭐

Thank you. So I will wait for Monday with updating


Redesign of the gRPC stats plugin

Remove the composite stats handler utility. Tracing
will be handled by interceptors and we will provide a utility
configuration utility that sets both the stats handler and the
tracing interceptors in the future.

Rename the package to grpcstats in order to avoid
name collusion with the OpenCensus stats and grpc/stats
package.

Export instrumentation handlers for clients and servers.

Several naming and organization improvements.

@adriancole, yay! We have one more round of reorg/redesign when the tracing package is available. Then, it will be in a better shape.


multi-account: doesn't open the google drive with the logged in account when viewing the extracted files

When using a multi-account workflow, the View extracted files button opens the google drive with https://drive.google.com/#folders/<folder-id> which doesn't open it correctly.
how to reproduce:

login to the google services using 2 accounts.
use the second account.
connect to a zip file in google drive with zipextractor.
extract the zip to a desired folder
click on View extracted files button.

Expected:
The drive link opens up with url of format: https://drive.google.com/drive/u/1/folders/<folder-id>
Obtained:
The drive link opens up with url of format: https://drive.google.com/drive/u/0/folders/<folder-id>

Thank you for sending the support!!


Fix typos

Hi @g1stavo thanks for the change
We use authorisation spelling when talking about it as a concept, but set the key authorization for the header name
See https://github.com/pact-foundation/pact-workshop-js/pull/45/files
We do need to update some other areas of the readme that also misuse authorization when talking about the general term, and will need to propagate through the branch steps.
Good step on the receive


Error Initializing Output Stream

I just updated for the first time in quite a while. I have the same settings as my previous install (copy original audio, including TrueHD, add aac 2.0, output mkv). The new install has been failing on the occasional file. Log included. File is 1080p, 8 channel TrueHD, 5 channel ac3. Older version (6+ months old) converts the same file without issue.
Log.txt

Looks like you're attempting to create an 8 (7.1) channel DTS audio track which FFMPEG doesn't support, not sure why the older one would work without logs unless it was before DTS was even supported and thus a non-issue
d195b6e22b97b86a8600514a5d4607819d1b20e9
That patch adds a cap to DTS codec to prevent you from setting inappropriately high channel count


Created link and container for data upload

Background
Link to issue
https://biomage.atlassian.net/browse/BIOMAGE-570
Link to staging deployment URL
https://ui-384tc73i4oyikw88oujd8gj9gc.scp-staging.biomage.net/
Links to any Pull Requests related to this
N.A.
Anything else the reviewers should know about the changes here

Created link to Data Upload module
Created layout for Data Upload module

Changes
Code changes

Fixed title cases of for module names and page titles

Definition of DONE
Your changes will be ready for merging after each of the steps below have been completed:
Testing

[ ] Unit tests written
[X] Tested locally with Inframock
[X] Deployed to staging

To set up easy local testing with inframock, follow the instructions here: https://github.com/biomage-ltd/inframock
To deploy to the staging environment, follow the instructions here: https://github.com/biomage-ltd/biomage-utils
Documentation updates
Is all relevant documentation updated to reflect the proposed changes in this PR?

[ ] Relevant Github READMEs updated
[ ] Relevant wiki pages created/updated

Approvers

[ ] Approved by a member of the core engineering team
[] (UX changes) Approved by @vickymorrison (this is her username, tag her if you need approval)

Just before merging:

[ ] After the PR is approved, the unstage script in here: https://github.com/biomage-ltd/biomage-utils is executed. This script cleans up your deployment to staging

Optional

[ ] Photo of a cute animal attached to this PR

@vickymorrison -- Wasn't this meant to be called Data Management?

@vickymorrison -- Wasn't this meant to be called Data Management?

Fixed in latest commit, changed to "Data Management"


Hook for remote mutations

Closes #1262.
Motivation
There are a lot of existing discussions and feature requests about doing requests with side effects on the remote side manually in SWR (e.g. #93, #116, #550, #1082), and we do see some valid use cases for it.
As a conclusion, we need something that:

Stops revalidate automatically (mount, focus, reconnect, retry...)
Returns a callback function for triggering the mutation manually
Prevents potential race conditions
(optional) Revalidate the resource after mutation
(optional) Backfill the request response to the cache

useSWRMutation
import useSWRMutation from 'swr/mutation'

// fetcher impl.
function getData(url, token) { ... }

// normal SWR API, but it will never start the request
const { data, error, mutate, trigger, reset, isMutating } = useSWRMutation('/api/user', getData, {
  // options
  onError,
  onSuccess,
  revalidate = true, // auto revalidate after mutation
  populateCache = false // write back the response to the cache after mutation
})

Usage:
// Trigger it manually, the extra argument will be passed to the mutator (after the key arg/args)
trigger('my_token')

// wait until it's done
await trigger('my_token')

// override options
await trigger('my_token', { revalidate: false, populateCache: true })

// in-place event handler
await trigger('my_token', { onError: () => {}, onSuccess: () => {} })

// catch error
try {
  data = await trigger('my_token')
} catch (error) {
  // ...
}

// reset data, error, isMutating
reset()

The trigger() call will still reflect the hook-returned data and error with a re-render, but that's more declarative.
To-dos

[x] Finalize the name of the hook.
[x] Sometimes, mutation APIs (POST, PUT, DELETE) return different payload from the GET API. It might be an issue if we write back to the cache with the same key. This behavior needs to be reconsidered.
[x] If the mutation APIs' results cannot be cached, that normally means that we need to revalidate those keys again if there's a useSWR hook with the same key. This can be another option to consider.
[x] Ensure callbacks and isMutating state are working as expected.
[x] Ensure with a test case that under trigger mode there's no deduplication.
[x] Ensure with a test case that trigger prevents race conditions with normal GET requests.
[x] Tests for reset.
[x] Potential race conditions of reset and trigger calls.
[ ] (docs) Have a specific list of options, that can be used in useSWRMutation and ignore the others.

How about
const { mutate, trigger, reset, isMutating } = useSWRMutation('/api/user', (extraArgument) => {})
// fetcher only receive extraArgument from trigger
trigger(extraArgument)

trigger would have batter typescript intellisense and for some non-restful endpoints, they actually may not need the key args

fetcher only receive extraArgument from trigger

Yeah that makes the design so much simpler and I have thought about it. But I wasn't sure, and this design is mostly for consistency.

IMO The benefit of receiving keys is that user could configure a general fetcher in context rather than writing it at every hook instance.
But in useSWRMutation user cannot set a general mutate function in context (or should we allow user to do that ?).
The mutate function could access the keys directly in every hook instance instead of receiving it from its arguments.

I feel that it's still able to reuse the mutator function:
const { trigger } = useSWRMutation('/api/user', post)

trigger({
  name: 'yo'
})

And post is defined as:
function post(API, data) {
  return fetch(API, {
    method: 'POST',
    body: JSON.stringify(data)
  }).then(res => res.json())
}

Which is a general utility to post data.

I am sorry. my last reply is somehow misleading.
My expectation
// if user already have a mutator function like this
interface User {
  name: string
  age: number
}
const updateUser = (param: User) => post('/api/user', param)

const { trigger } = useSWRMutation('/api/user', updateUser)
// ts error here since age is string
trigger({ name: '123' , age: '12'})

It would be batter if swr could make use of user-defined types and let typescript do type check on trigger.
Possible solution
Since we would not use SWRConfig to set a general mutator function
<SWRConfig
  value={{
    fetcher: post
   }}>
</SWRConfig>

The key does not have to be passed to mutator function
We could improve the type of trigger by letting mutator function only receive extraArgument. In this way it doesn't need to upgrade the typescript version.

Since we would not use SWRConfig to set a general mutator function

This is a good point! This hook shouldn’t using the fetcher from the context. Will get it fixed.

We could improve the type of trigger by letting mutator function only receive extraArgument.

Yeah this can maybe fix the typing problem, but my point was that this breaks the consistency in API design. useSWR passes the key to fetcher and it doesn’t feel great to not do so for the mutator.

Does newer TS support this feature?

It could do the trick. But it would require user to do some extra work
interface User {
  name: string
  age: number
}
const updateUser = (param: User) => post('/api/user', param)

// developer need to type the mutator function explicitly so that trigger could get correct inferred type
const { trigger } = useSWRMutation('/api/user', (key: string, extraArguments: User) => updateUser(extraArguments))
trigger({ name: '123' , age: '12'})

FYI: typescript-playground

A question: do you consider supporting configure onSuccess, onError, etc globally? Like what useSWR does.

@anothertempore Yes those should be supported!


MySQL settings doesn't get saved

With MySQL Player Settings don't get saved and loaded correctly.
They are all deactivated.

Will look into it tomorrow

I reloaded the plugin and it seems to work now... Very strange 😛
I'll close this, will update if there are any news.

Thanks, the problem is that the settings are only saved when the player leaves, and I don't now any existing way to save it when before the plugin is disabled, It can be done by caching data, but it will be too much.

So, i've managed out how to reproduce it.
Basically it only happens when the player data is loaded for the 1st time from Database.
This means when you reload.
This also means that config's defaults don't get loaded and all defaults to false to new players... This is something that shouldn't happen!

Weird, I'll have a look at the code, it should be solved for the next update. Thanks for reporting the issue!