Pushed view props are not updated when changed on parent view

Description
When you push a view with a prop as shown below:
 <Action.Push title="Post Detail" target={<Post post={post} />} />

It appears that the post prop becomes "frozen" in the child view, meaning any updates to the state in the parent view don't get passed to the child view's props.
While this might not pose a problem in many scenarios, if you're refreshing a list of items on the parent page (whether through websocket or polling), it would be intuitive to expect those updates to be reflected in the child view, especially if you're actively viewing it.
Related issue: https://github.com/raycast/extensions/issues/896 (Closed)
Workaround: Use a store library like zustand to share the state between parent and child view.
When the child view is about display an element from a list, just pass the id to the child prop, and get the real object from the store (with Array.find).
Steps To Reproduce
I've tried to write a straigthforward example to explain the issue:
import { Action, ActionPanel, List, Detail} from "@raycast/api";
import { useEffect, useState } from "react";

export default function Command() {

  const [counter, setCounter] = useState<number>(0);

  useEffect(() => {
   // Start updating the counter state every seconds when the Command Component is mounted
    const interval = setInterval(() => {
      setCounter(counter + 1);
    }, 1000);

    return () => clearInterval(interval);

  }, []);

  return (
    <List>
        <List.Item
          title={`Counter state: ${counter}`}
          actions={
            <ActionPanel>
              <Action.Push title="ChildPage" target={<ChildPage counter={counter} />} />
            </ActionPanel>
          }
        />
    </List>
  );
}

interface ChildPageProps {
  counter: number;
}
function ChildPage({counter}: ChildPageProps) {
  return (<Detail>{counter}</Detail>);
}

Current Behaviour
You don't see the counter incrementing on the child view.
You have to go back to the parent view and re-click on the push action to view the new incremented value on the child view.
Expected Behaviour
You should see counter continuing incrementing each seconds when you are in the child view, because the parent view update the counter that is passed to the child view.

That's not a bug, it's not a "child" view but a "sibling" view. When you update a component, its siblings aren't updated.
But I agree that the <Action.Push /> semantic is hiding a bit what's happening. It's more intuitive if you think of it as
const {push} = useNavigation()

...

<Action title="ChildPage" onAction={() => push(<ChildPage counter={counter} />)} />

You're right, it's more like a "Go to this page" than "Open this page/modal on top of this one".
There is no page hierarchy, just top level pages that can be pushed to the raycast internal router.
I mistakingly thought that all pages pushed by a root command components were a kind of child view of this root command.
With this point of view, my workaround (using a store to share data between pages) appears to be the best solution to handle this kind of edge cases right ?

Indeed, that works yes 👍

Ok thank you for enlightening me on this.
This is obviously not a bug and can be closed I guess.


Calico v3.26.0 failing k8s conformance tests on Azure

Opened a PR to bump Calico to v3.26.0 in Cluster API Provider Azure after the release came out (https://github.com/kubernetes-sigs/cluster-api-provider-azure/pull/3603), however the conformance jobs are failing on the PR (jobs show passed but it actually failed 17 tests, this is a separate issue we're looking into): https://prow.k8s.io/view/gs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1664348179514003456
Calico is installed via Helm chart using the Tigera operator.
All the calico pod logs can be found in artifacts:
https://gcsweb.k8s.io/gcs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1664348179514003456/artifacts/clusters/capz-conf-3k0hpv/calico-apiserver/
https://gcsweb.k8s.io/gcs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1664348179514003456/artifacts/clusters/capz-conf-3k0hpv/calico-system/
https://gcsweb.k8s.io/gcs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1664348179514003456/artifacts/clusters/capz-conf-3k0hpv/tigera-operator/
Nothing changed aside from Calico version.

From what I can see the errors appear to be due to pods stuck terminating, which suggests something going on with the CNI plugin perhaps. Unfortunately I don't see the CNI plugin logs in that output (nor do I see the kubectl describe pod output for the "stuck pods" (which would also potentially shine light onto why it is stuck).
Any possibility of getting that information?

@caseydavenport I don't have the describe for the pods that were created as part of conformance unfortunately since they get deleted before the log collection occurs but I do have pod describe logs for all the kube-system pods here and the  kubelet logs for the nodes if that helps.
What do you mean by CNI plugin logs? is that a pod log or on the VM? is it https://storage.googleapis.com/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1664348179514003456/artifacts/clusters/capz-conf-3k0hpv/calico-system/calico-node-dwjks/calico-node.log ?

The CNI plugin logs would be on the host, likely at /var/log/calico/cni.log

I tried to collect logs from /var/log/calico/cni.log however that file is empty on the cluster VMs: https://storage.googleapis.com/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1666918655864082432/artifacts/clusters/capz-conf-axvzeg/machines/capz-conf-axvzeg-md-0-6cbb46ff7dx5qgfw-fqhck/cni.log
Which tells me something is probably wrong with CNI plugin? I can try to check a healthy Calico install too to sanity check that this file exists on Azure VMs running Calico CNI. Note that we're using Calico in VXLAN mode if that matters.

@caseydavenport @jsturtevant was able to get logs:

Control plane node: https://storage.googleapis.com/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1668292743819956224/artifacts/clusters/capz-conf-bx649b/machines/capz-conf-bx649b-control-plane-sfn8w/cni.log)
1st worker node: https://storage.googleapis.com/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1668292743819956224/artifacts/clusters/capz-conf-bx649b/machines/capz-conf-bx649b-md-0-5d84cbcb6dxplc8w-9b4h2/cni.log)
2nd worker node (empty for some reason): https://storage.googleapis.com/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_cluster-api-provider-azure/3603/pull-cluster-api-provider-azure-conformance/1666918655864082432/artifacts/clusters/capz-conf-axvzeg/machines/capz-conf-axvzeg-md-0-6cbb46ff7dx5qgfw-zs8hb/cni.log)

@caseydavenport any thing jump out to you from the logs? not sure where to look next

Looking into this a bit more, it seems that the reason conformance tests are failing is because various tests are timing out when waiting for pods to delete. E.g.:
{Jun  8 23:23:56.369: Pods left unterminated after stop:
update-demo-nautilus-9slht
update-demo-nautilus-rvp9c

I was able repro locally. Created two deployments (using this yaml https://github.com/Azure-Samples/azure-voting-app-redis/blob/master/azure-vote-all-in-one-redis.yaml).

@CecileRobertMichon sorry, just a random person here. Deployments manage Replica Sets which manage pods. If there is no Deployment, but when you delete a pod it's span back up, there must be something (such as Replica Set) that does it.  If you try to list it again is it listed?
What about Replica Set?
If there is no Replica Set, examine the Kubernetes Audit Log to see what is creating the new pods when you delete the old ones, for diagnostics purposes

This of course does not answer what Calico has to do with any of this, but hopefully will get us more info to get to the bottom of this.

@AndrewSav thanks for the questions/pointers, that was helpful.
 If you try to list it again is it listed?

Yes
k get deploy azure-vote-front
Error from server (NotFound): deployments.apps "azure-vote-front" not found

What about Replica Set?

The replica set still exists. Looks like that's the issue. Why it's not getting deleted when the deployment gets deleted I don't know.

Check the ownerReferences field of the pod, what is it?

pod is owned by replica set, replica set is owned by deployment that no longer exists.
Pod:
apiVersion: v1
kind: Pod
metadata:
  annotations:
    cni.projectcalico.org/containerID: 95ede545456bf9086e88835b1e65349c66e9b40e691373d393f49b65cf31aed2
    cni.projectcalico.org/podIP: <IP_ADDRESS>/32
    cni.projectcalico.org/podIPs: <IP_ADDRESS>/32
  creationTimestamp: "2023-06-20T15:15:17Z"
  generateName: azure-vote-front-55fc499bf-
  labels:
    app: azure-vote-front
    pod-template-hash: 55fc499bf
  name: azure-vote-front-55fc499bf-x78pd
  namespace: default
  ownerReferences:
  - apiVersion: apps/v1
    blockOwnerDeletion: true
    controller: true
    kind: ReplicaSet
    name: azure-vote-front-55fc499bf
    uid: 5d9dedd0-09fc-48a4-8a91-711c2c0edeab
  resourceVersion: "1800"
  uid: 67a36a18-cd1b-4c5d-bce2-a7bcc7a300f7

Replica Set:
apiVersion: apps/v1
  kind: ReplicaSet
  metadata:
    annotations:
      deployment.kubernetes.io/desired-replicas: "1"
      deployment.kubernetes.io/max-replicas: "2"
      deployment.kubernetes.io/revision: "1"
    creationTimestamp: "2023-06-20T15:15:17Z"
    generation: 1
    labels:
      app: azure-vote-front
      pod-template-hash: 55fc499bf
    name: azure-vote-front-55fc499bf
    namespace: default
    ownerReferences:
    - apiVersion: apps/v1
      blockOwnerDeletion: true
      controller: true
      kind: Deployment
      name: azure-vote-front
      uid: 75fc9a13-a51a-4989-9f1e-7ec91d76707b
    resourceVersion: "1816"
    uid: 5d9dedd0-09fc-48a4-8a91-711c2c0edeab

Just to confirm, I ran the exact same steps with an identical Azure cluster with Calico 3.25 installed, deleting the deployment triggers the replica set to get deleted as well as expected (and pods get terminated).

I think I found the issue
I0620 15:32:48.724912       1 shared_informer.go:273] Waiting for caches to sync for garbage collector
E0620 15:33:18.725865       1 shared_informer.go:276] unable to sync caches for garbage collector
E0620 15:33:18.725897       1 garbagecollector.go:250] timed out waiting for dependency graph builder sync during GC sync (attempt 38)
I0620 15:33:18.829609       1 shared_informer.go:273] Waiting for caches to sync for garbage collector
W0620 15:33:41.597907       1 reflector.go:424] vendor/k8s.io/client-go/metadata/metadatainformer/informer.go:90: failed to list *v1.PartialObjectMetadata: connection is unauthorized: bgpfilters.crd.projectcalico.org is forbidden: User "system:serviceaccount:calico-apiserver:calico-apiserver" cannot list resource "bgpfilters" in API group "crd.projectcalico.org" at the cluster scope
E0620 15:33:41.597994       1 reflector.go:140] vendor/k8s.io/client-go/metadata/metadatainformer/informer.go:90: Failed to watch *v1.PartialObjectMetadata: failed to list *v1.PartialObjectMetadata: connection is unauthorized: bgpfilters.crd.projectcalico.org is forbidden: User "system:serviceaccount:calico-apiserver:calico-apiserver" cannot list resource "bgpfilters" in API group "crd.projectcalico.org" at the cluster scope
E0620 15:33:48.830629       1 shared_informer.go:276] unable to sync caches for garbage collector
E0620 15:33:48.830657       1 garbagecollector.go:250] timed out waiting for dependency graph builder sync during GC sync (attempt 39)

bgpfilters.crd.projectcalico.org is forbidden: User "system:serviceaccount:calico-apiserver:calico-apiserver" cannot list resource "bgpfilters" in API group "crd.projectcalico.org" at the cluster scope
@AndrewSav @caseydavenport

Interesting. For one reason or another I did not have the bgpfilters CRD after upgrade to 3.26.0, I had to create them manually from the yaml.

It might be worth noting I'm using Helm to install Calico v3.26 via the operator on a brand new k8s cluster in the repros above

It appears that this bit is controlled by https://github.com/tigera/operator. When you have an APIServer object, the operator creates ClusterRole called calico-crds and a ClusterRoleBinding called calico-apiserver-access-calico-crds. The binding binds the role to calico-apiserver ServiceAccount. Can you check if you have those objects in place?
The role should have bgpfilters in the list, which is intended to allow the access you see denied in the logs.

@AndrewSav thank you for all the help here, much appreciated.
I've tested with Calico v3.26.1 and can confirm it fixes the issue.
/close

Apologies for my delay here - I've been on PTO for the last two weeks. That said, I'm glad you managed to figure it out! Thanks for the help @AndrewSav!
@CecileRobertMichon - I just wanted to double check - is there any thing that needs to be done on the Calico side for this?

@caseydavenport apologies for hijacking unrelated issue, wanted to find out what is the best way to proceed. I'm also having an issue after kubernetes and calico upgrade, and I suspect it is not calico issue, but I'm not sure. What happens, after a node is provisioned if a pod is scheduled on the node before the calico pod initialises the pod get the IP of <IP_ADDRESS> then when calico does initialise the IP remains <IP_ADDRESS> and the pod gets stuck. The only way to fix it is to delete the pod.
I'm a bit apprehensive opening an new issue here because I'm not sure if it is calico issue. Since all the components are a newer version, it can be anything. In particular, I suspect it may be cri-o which I'm using as the container runtime. The did changes around cni lately which could unintentionally break things. Do you think it worth opening an issue in this repo, or what is my best shot?

@AndrewSav let's open a new issue and I'd be happy to discuss in more detail  :)


Issue in running terraform after simplifying commands into docker

Hi,
I am attempting to build an AWS infra using viya4-iac-aws github project.
I have a docker container run command,, however this command is failing with the error message:
Couldn't set up logging tempfile: open /tmp/terraform-log465088132: permission denied
Command I used:
docker container run --rm --group-add root --user $(id -u):$(id -g) -v $HOME/.aws:/.aws -v $HOME/.ssh:/.ssh -v $HOME/viya4-iac-aws:/workspace --entrypoint terraform viya4-iac-aws
tried as well below
docker run --rm --group-add root --user $(id -u):$(id -g) -v $HOME/.aws:/.aws -v $HOME/.ssh:/.ssh -v $HOME/viya4-iac-aws:/workspace --entrypoint terraform viya4-iac-aws
Not sure why its saying something about /tmp. the permission of this folder is drwxrwxrwt
I am using Amazon Linux2 OS.
Pls advice,
Thanks in advance,

Who is the docker user you're running as? Is it root? You may want to run as a normal user. Again, not knowing what your system is like can't help much here. You may want to google the issue and/or check this link to see if that helps.

Please disregard, I just downloaded a new viya4-iac-aws package and rerun the steps. all good now.


Add files via upload

 Quality gate: Failed
7 Issues

 7 Code issues

Details

 Quality gate: Failed
7 Issues

 7 Code issues

Details


Fix: use proper auth-tag in cryptograhy (the current code is using associated-data in the API, but it seems it's not the same thing as auth-tag).

Done (in sema4ai-actions).


[advanced editor] initialised advanced editor module

Initialised the advanced json editor module and did initial hooking up to the main module in order to start building the skeleton of the main module.
References #1.

Let me try to explain my approach. I have separated the advanced module and main module just like in my proposal. I am using ES6 classes  to build the modules and using browserify require to use one module in another. Using classes, to me, makes the code more modular, and gives me the possibility to easily separate concerns within the module, by using class methods, instead of functions that would affect the global scope. Also it is a lot easier to write cleaner and more understandable code with classes. I also believe the fact that classes have their  own scope, will avoid a lot of issues.

@gastonche yes sure I understood that, I see you are using some of the code of django-netjsonconfig, I wouldn't mind to start from scratch either. But up to you. We can clean up leater if needed.

I already have the editor working so my work today is to clean and optimize the code. Then I will make the module more dynamic and customizable. This way I can now integrate it with the main module, hook the events correctly between the main module and the advanced editor module. From there I will be able to know what  next

@gastonche ok, proceed

@gastonche for the moment proceed as fast as possible. We'll start to clean up before the first evaluation.


Fix : Didn't load gitlab directory, if owner is group.

Update

Add a function that distinguishes whether the owner is a group or an individual

Next Feature

Speed issue found in API, need to be corrected after Issue creation

Ops, I just checked the error. I'll fix it and send you the PR again.


Add support for creating Ellipsoid, Datum, etc from string

See: https://github.com/OSGeo/proj.4/commit/292807eee9e1194175b64cb5c0a9f0b432352abc

This is in master now.


Bug

bytedance is china company, why no chinese document

bytedance is china company, why no chinese document


Is it possible to only use the automatic version incrementing and changelog generation without pushing the crate?

It's mostly for a project of mine that uses a lot of small crates as some sort of plugins. And I just don't want to handle the versioning on my own. As I always use Angular style commit messages, this would come in handy.

In theory it should be, we once implemented a "no-release" mode by passing the --release=no flag.
However, I haven't used semantic-rs in a while, so I can't tell you if it actually works as it should.

Confirming what @badboy said above. If you don't pass release or --release=no we only build locally and don't push anything to crates.io and GitHub.
I'm closing this but feel free to reopen if anything is unclear.


new(gen_filters): port markdown function to generic filters

Signed-off-by: Luca Guerra<EMAIL_ADDRESS>
What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature
Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area driver-kmod

/area driver-ebpf

/area libscap

/area libsinsp

/area tests

/area proposals

What this PR does / why we need it:
This PR introduces a replacement for void list_fields() with markdown format, that in turn is used to format the documentation website ( https://falco.org/docs/rules/supported-fields/ ). After merging this PR we can completely remove list_fields() I believe since all the relevant functionality lives in gen_event_* and so we can remove duplicated code.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

Hi @LucaGuerra. Thanks for your PR.
I'm waiting for a falcosecurity member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

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.

/ok-to-test

cc @mstemm does it make sense to you? If not, suggestions welcome to remove the duplicate code in list_fields()!

LGTM label has been added.  Git tree hash: faeada5d03bab158e38da815339ea85f3178cacd

/approve

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/test build-libs-minimal


unable to resolve class DependencyResolveDetails

Extension Name: vscode-gradle
Extension Version: v3.16.4
OS Version: Win11
VSCode version: 1.92.1
Describe the bug
Project  setting is:
{
"java.import.gradle.java.home": "d:\soft\java\jdk1.8.0_211",
"java.import.gradle.wrapper.enabled": true,
"gradle.debug": true,
"gradle.nestedProjects": true,
"java.gradle.buildServer.openBuildOutput": "openOnBuildStart",
"java.jdt.ls.java.home": "d:\soft\java\jdk-<IP_ADDRESS>",
"java.configuration.runtimes": [
{
"name": "JavaSE-1.8",
"path": "d:\soft\java\jdk1.8.0_211",
},]
}
gradle wrapper version is 4.10.3
[build.gradle file]  (https://github.com/openboxes/openboxes/blob/develop/build.gradle)
Screenshots

Output from "Gradle for Java"
FAILURE: Build failed with an exception.

Extension Name: vscode-gradle Extension Version: v3.16.4 OS Version: Win11 VSCode version: 1.92.1
Describe the bug Project setting is: { "java.import.gradle.java.home": "d:\soft\java\jdk1.8.0_211", "java.import.gradle.wrapper.enabled": true, "gradle.debug": true, "gradle.nestedProjects": true, "java.gradle.buildServer.openBuildOutput": "openOnBuildStart", "java.jdt.ls.java.home": "d:\soft\java\jdk-<IP_ADDRESS>", "java.configuration.runtimes": [ { "name": "JavaSE-1.8", "path": "d:\soft\java\jdk1.8.0_211", },] }
gradle wrapper version is 4.10.3
[build.gradle file] (https://github.com/openboxes/openboxes/blob/develop/build.gradle)
Screenshots
Output from "Gradle for Java" FAILURE: Build failed with an exception.

It seems that this is because the 3.16.4 version of the extension does not support the 4.10 version of gradle. After replacing the 3.7.0 version of the extension, the project can be loaded normally and the project tasks can be displayed normally.But I still hope that version 3.16.4 can support lower versions of gradle, because there are still many old projects in use.

Extension Name: vscode-gradle Extension Version: v3.16.4 OS Version: Win11 VSCode version: 1.92.1
Describe the bug Project setting is: { "java.import.gradle.java.home": "d:\soft\java\jdk1.8.0_211", "java.import.gradle.wrapper.enabled": true, "gradle.debug": true, "gradle.nestedProjects": true, "java.gradle.buildServer.openBuildOutput": "openOnBuildStart", "java.jdt.ls.java.home": "d:\soft\java\jdk-<IP_ADDRESS>", "java.configuration.runtimes": [ { "name": "JavaSE-1.8", "path": "d:\soft\java\jdk1.8.0_211", },] }
gradle wrapper version is 4.10.3
[build.gradle file] (https://github.com/openboxes/openboxes/blob/develop/build.gradle)
Screenshots
Output from "Gradle for Java" FAILURE: Build failed with an exception.

It seems that this is because the 3.16.4 version of the extension does not support the 4.10 version of gradle. After replacing the 3.7.0 version of the extension, the project can be loaded normally and the project tasks can be displayed normally.But I still hope that version 3.16.4 can support lower versions of gradle, because there are still many old projects in use.

or upgrade gradle wrapper from 3.10.4 to 5.6.4 , the project is loaded normally.
gradlew wrapper --gradle-version=5.6.4


WIP: Fix memory leak

After upgrading Monix to the latest version I found a memory leak related to the new bracket implementation.
Git bisect shows the culprit commit:
https://github.com/monix/monix/pull/1120
Below is a simple piece of code that reproduces the issue:
F.guarantee(F.unit)(F.unit).foreverM - it fails with OutOfMemoryError on monix.eval.Task, but works fine with cats.effect.IO
I'm not sure if this is a correct fix of the issue and I need help to write a test on this case

Big thank you!

I'm not sure if this is a correct fix of the issue and I need help to write a test on this case

I think we're fine skipping the test if it takes a long time to go out of memory

I rolled back Monix to 3.1.0 in my project, so it can wait for some time.


Add support for AWS SQS

Investigate supporting SQS in addition to NATS.
This should be configurable by the mEditor instance.
Make the NATS server an optional part of the stack.

Making the NATS server optional might look something like building an HTTP wrapper for our pub/sub system.


Kibana upgrade to 4.0

As part of the upgrade to 4.0 the CSS has changed. Also the page layout and page objects have changed. There is no longer an Event Dashboard title nor section. The graphs are now encapsulated inside a ".gridster" css section. As a result of the changes that occurred with the upgrade to 4.0, all of the test cases to include the setup step need to be refactored. We will be removing all test cases and adding new one once the portal starts displaying data once again.
In the mean time we need to refactor
-setUp() to look for ".name" with the test "Home dashboard"
-test for the grid's existence
-confirm the log section exists
-confirm an actual log exists

Something else I noticed is that the kibana portal must be accessed via https://. Prior to the upgrade we were able to access http:// only. This required one change to the setup step and has already been committed.

The upgrade is complete and this story is no longer needed. Future issues will be created for any additional work going forward.


This enhancement aims to add a holiday list as parameters or props to the react-datepicker component.

The background will be set to orange for holidays in the calendar. If a holiday is selected, its background color will change to blue. Additionally, on mouseover, a tooltip will display the details of the corresponding holiday.

This looks very similar to https://reactdatepicker.com/#example-highlight-dates-with-custom-class-names-and-ranges. Can you explain how this would be different and can't be solved by the example above?


PDB FTP change unsupported

When updating the localpdb files (with localpdb_setup -db_path [DB PATH HERE] --update) , I get the following error:
Failed to download url: 'http://ftp.rcsb.org/pub/pdb/derived_data/index/entries.idx' to destination: '[DESTINATION FOLDER]/localpdb/data/20231013/pdb_entries.txt'
Failed to download file_type: "entries"

I am fairly certain this is because of the (recent?) PDB change that makes their HTTP downloads available at files.rcsb.org, whereas their FTP downloads are still at ftp.rcsb.org (see https://www.wwpdb.org/ftp/pdb-ftp-sites).
I tried to tweak the remote_sources.yml file to reflect these changes, but was only able to successfully update my localpdb files with these very janky changes to the localpdb code:

changing download_proto within the rcsb mirror from http to ftp in remote_sources.yml
adding the argument ftp=True to any call to download_url in PDBDownloader.py
getting rid of any versioning or modification checks in PDBDownloader.py (I suspect this is a very bad thing to do!)

I had to do all of this because 1) simply changing the url of the rcsb mirror in remote_sources.yml to files.rcsb.org led to an error saying that ftp://files.rcsb.org is inaccessible and I couldn't figure out how to make it go to http://files.rcsb.org instead; and 2) simply changing the download_proto of the rcsb mirror in remote_sources.yml to ftp (from http) led to errors with checking versioning that were only fixed by the other tweaks mentioned above.
However, I suspect that this is not the smartest of solutions and that myself and other users would benefit from a fix from the localpdb creators that either properly changes the protocol type from HTTP to FTP, or properly updates the HTTP address to files.rcsb.org.

Hi @kristycarp - thanks for raising the issue and providing the temporary workaround.
I believe seting -mirror option to either pdbe or pdbj can solve this too (these are identical replicates of default rcsb mirror) - at least this was helpful in recent e-mail conversation regarding similar / or same issue.
I'm away now but I'll look into this more thoroughly at the beginning of November and provide a proper fix.


Added support for the Windows platform

This Pull Request introduces changes to the Makefile to enable documentation generation support on Windows.
Changes in Makefile is as followed:
PYTHON := python3
ifeq ($(OS),Windows_NT)
    PYTHON := python
endif
BUILD      = $(PYTHON) -m sphinx

These changes have been tested on Windows.
This effort aims to make the ROS2 documentation more accessible to developers and users who are on a Windows platform.
Any feedback or suggestions are welcome. Thank you.

@Mergifyio backport rolling humble


Bug: Is it a bug in *Batch.Put?

We have the following code:
var key = []byte("key")
var value1 = []byte("v1")
var value2 = []byte("v2")
db.Put(key, value1)
duration, _ := db.TTL(key)
fmt.Printf("before expire: %d\n", duration)

batch := db.NewBatch(BatchOptions{})
err = batch.Expire(key, time.Second*10)
err = batch.Put(key, value2)
err = batch.Commit()
duration, _ = db.TTL(key)
fmt.Printf("after expire: %d\n", duration)

Its output is
before expire: -1
after expire: -1

We expected to add an expiration time of 10 seconds to the key through batch.Expire(key, time.Second*10), but batch.Put(key, value2) removed the expiration time incorrectly.
I found this line in the code: https://github.com/rosedblabs/rosedb/blob/a89ea823e5b9d3f65422671410f082e0b47a255e/batch.go#L131
So, is it a bug?

First, you set the expiration time of the key in batch,
The key is then immediately set to a new value, so any previous information will be overwritten,
I think this is correct.

First, you set the expiration time of the key in batch, The key is then immediately set to a new value, so any previous information will be overwritten, I think this is correct.

I got it.


Frederic Brilliant!

Absolutely brilliant work Frederic with this repo.  Reminds me of pipeline.io efforts.  Thank you for your contribution.

Thank you for the feedback.
Pipeline.io efforts are in the same space, but head of to a specialized platform.
On the other side Kubernetes takes a more generalized approach on distributed computing, that allows a higher degree of customisation. Therefore, if you need distributed computing for other applications, it might be easier to build only one Kubernetes Infrastructure, than dealing with two systems. But this is only reasonable to certain extend.
Overall, i am looking forward to the beta of pipeline.io and see how it performs.


slack script is not accepting multiline payload

Hi,
I am running in an invalid_payload error when sending zabbix templates through the slack.sh script:

I am using the default Zabbix message templates:

When I tried to test the Media Type with the message template it gives the invalid payload error:

Bet when I change the multiline to an oneliner it sends the payload:

Is it something wrong with this script or is it coming from Slack? I tried to find out if Slack changes something on their side, but I could not find it.
Before this morning it worked perfectly.

In my case I managed to implement a workaround to change the action so that it does not contain newlines.

Problem started at {EVENT.TIME} on {EVENT.DATE} \n Problem name: {EVENT.NAME} \n Host: {HOST.NAME}

instead of default record:

Problem started at {EVENT.TIME} on {EVENT.DATE}
Problem name: {EVENT.NAME}
Host: {HOST.NAME}


feat: Azure Pipelines

Initial support to parse Azure Pipelines.

Only the pr field and steps are modeled.
Only a subset of files are considered as Azure Pipelines.
No support for expressions.

Add rules in unverified_script_exec & injection  to analyze Azure Pipelines.
The tasks used in a pipeline are reported in the build inventory using the purl type pkg:azurepipelinestask

LGTM, I'd like to do some basic smoke test before merging

Tested against various orgs, no measurable performance delta. Stable.


Add validations for driver account signup

Currently, there aren't any validations made before signing up the ambulance driver.
Add validations for the following:-

Username has to be unique -- (Allow only alphabets and numbers)
Ambulance Number has to be unique -- (Allow only alphabets and numbers and space)

Happy coding 🎉

Hello @Yaswanth820,
Can I have this one?

@Yaswanth820  Can I work on this issue?

Hey @atilafb . I am assigning the task to you.

Hey @rsarthak . There are a few more interesting issues for this repo. Please check those out. I will be rolling out new ones in a few hours. Make sure to check those out too!

I want to work on this issue. Please assign it to me.


[Feature]: add content to pandas page

Is your feature request related to a problem? Please describe.
https://www.nsccbpit.tech/pandas

add the content and resources to this page
Describe the solution you'd like
No response
Describe alternatives you've considered
No response
Additional context
No response

Hey @pradeeptosarkar , Could you please check it?

@Laxmankohar you may raise a PR its good


Add Host/Host Templates Improvements

Requirements
Functional

Users should be able to create hosts in rancher by simply selecting a flavor like "Digitial Ocean with 2 gigs of memory"
If a machine driver config property cannot be wrapped into the flavor (ie, access and secret keys), the user shoudl be able to securely save those credentials in Rancher for reuse when creating machines.

Technical
Ensure flavor-machine-driver is fully functioning and free of defects

The driver is already implemented, but needs to be more fully tested and if bugs come up, they need addressed
We need a mechanism for pushing the provider and flavor config files down to GMS
We need to see if there are any other underlying cloud provider drivers that need implemented. Currently have packet, aws, and digital ocean

Ensure go-machine-services integration with the cattle's hostTemplates is fully functioning and defect free

Users can either explicitly pick a hostTemplate to use when creating a machine or if they don't, gms should pick one based off the name of flavor being used. HostTemplate has a field called flavorPrefix. The idea is that if the user has not selected a host template, you look at the prefix of the flavor which will be named like digitalocean-2gb-sfo1. In this case, the flavor prefix is digitalocean, so you would find a HostTemplate in the Rancher API whose flavorPrefix field has a value of "digitalocean".
So, there are two use cases: 1) user explicitly picks a hostTemplate 2) gms infers a hostTemplate. Use case 1 is implemented but not tested at all, so it must be tested and verified by developer before handing off to QA. Use case 2 is not implemented at all, so it needs implemented.

Random

HostTemplate is a resource in the v2-beta API. You can hit it using the API UI.
The new UI @vincent99 is working on has already integrated with hostTemplate and the flavor driver. You can switch to that to see how it works

Got some questions:

a mechanism for pushing the provider and flavor config files down to GMS:

who will be adding/removing flavors, at what time? (e.g. admin - at run time, or us - as part of rancher distribution)
will there be a catalog of flavors?

gms infers a hostTemplate:

what do we do with the hostTemplate(s) when we've found one (or more)? can I extract the account credentials from a hostTemplate?

credential store:

does rancher have it or is building one a part of this?

I think these should go into separate (related) issues:

implement the initial set of flavors (for digitalocean, aws, packet)
gce driver and flavors

a mechanism for pushing the provider and flavor config files down to GMS:

who will be adding/removing flavors, at what time? (e.g. admin - at run time, or us - as part of rancher distribution)
will there be a catalog of flavors?

I learned from @cloudnautique  today that, at least for the alpha, the flavors will be managed by him as part of the deployment process. So, you have no work to do here. The "catalog" of flavors will be whatever we come up with as wanting to ship.

gms infers a hostTemplate:

what do we do with the hostTemplate(s) when we've found one (or more)? can I extract the account credentials from a hostTemplate?

Once you find the template, you apply it to the machine, exactly as if it were passed via hostTemplateId. The logic for applying it when set as hostTemplateId is already implemented, so really you just need to add a bit of code that guesses/infers the template if hostTemplateId == nil and then let the current apply logic take place
You dont need to explicitly extract credentials or any other property, just need to generically apply

credential store:

does rancher have it or is building one a part of this?

Credential store is already done and transparent to you. You  just need to find and apply the template and can safely assume we are securely storing the creds

I think these should go into separate (related) issues:

implement the initial set of flavors (for digitalocean, aws, packet)
gce driver and flavors

That's fine. Let's go with only the existing providers (do, aws, packet) are in scope

Relaeted https://github.com/rancher/rancher/issues/8592 should be fixed as part of this.

I imagine the host creation flow should look like this:

The user is presented the list of available flavors and picks one.
The user chooses if they want to use the saved credentials for the flavor if entered before (which is the default), or enter a new set of credentials.
The host is created.

Correct?

If more than one template exists with a match flavorPrefix to the flavor being used and the user did not explicitly specif hostTemplateId, should gms pick the first or error out.

To summarize what should be done:

[ ] create host using the flavor driver using credentials from the specified hostTemplateId
[ ] initial set of providers (digitalocean, aws, packet) and flavors (2 per provider)
[ ] end-to-end testing

I've just hit this bug with the flavor-driver:
The machine has just been successfully created:
docker-machine create -d rancher --rancher-digitalocean-access-token=XXXXX --rancher-flavor=digitalocean-sfo2-2gb ivan-test-do-flavor1

But docker-machine config exits with an error:
$ docker-machine config ivan-test-do-flavor1
json: cannot unmarshal object into Go struct field Driver.Driver of type drivers.Driver

Probably going to take a couple days to troubleshoot.

@cjellick @imikushin : Are host templates per environment?
Since UI is not available currently, testing will be done by creating host templates manually.

Yes @soumyalj, they are per environment

Version - 2.0 master 8/5
Host Templates are implemented in 2.0 builds.  They are on a per cluster (not environment) basis.  Templates are working and will be further tested.  All bugs will go into another issue.  Closing this.


Posts are not sorted by date

The /blog page does not sorts blog posts based on dates. Does it sorts by last edited time of a blog post.

@yskoverride in the sidebar "From blog"?

@vidalvasconcelos the problem is with the blog posts page, not the sidebar. I am manually changing the positions of the posts in /blog/ page as a workaround.


[docs] Added READMEs in each directory

This is my documentation with README.md files in each directory slightly modified. I believe running "git rebase" didn't work for me again, even though locally it appears everything is squashed. I request the maintainers to make adjustments as necessary, although I believe what I made in this hour should hold value for anyone who wants to contribute to OpenAGI itself and to improve it's further maintenance. Thanks.

I see the test failed and it's because I didn't merge, but I don't have that issue locally so I'm not sure how to resolve it.

Yeah, I had to deal with that when merging. I removed the openagi/ directory and it should work okay now.


Ability to inject own JS code without making own recipe

For example to apply custom themes to Telegram, e.g. https://github.com/pztrn/website-css-hacks.

+1 for that. That would be great.


Update $care-gaps to include the SDE resources as Bundle entries

SDE references have been re-designed.  $care-gaps needs to be updated.
IS: care-gaps adds resources referenced in evaluatedResource to the response bundle as entries, but does not add resources referenced by the http://hl7.org/fhir/us/davinci-deqm/StructureDefinition/extension-supplementalData extension on the MR (new behavior).
SHOULD BE: add resources referenced by the http://hl7.org/fhir/us/davinci-deqm/StructureDefinition/extension-supplementalData extension.
Note, the bundle entries must remain unique.

Resolved in #567


Fixing multibyte utf8 characters splitting

strings.Title will fix bugs while splitting multibyte characters, and it is the default way of doing capitalization of sentences.

I respect your work and here is my modest contribution to it.


cyw43: bluetooth hci support

i don't know how to finish this up given that:
runner calls bus.init() then takes ownership of it
then
runner has a select3! thing going on that polls ioctl + net_driver_channel + bus.status wait for event interrupt going on, where it runs in its own task
not sure how to attach + expose an HCI connector that would plug into bleps given this

@Dirbaio could you please check the comment description of the PR and suggest how i can "plug" this in/give any guidance? to be clear, we're past cyw43 "unknown just need to poke at it" issues and are at the point of extending existing design

@brandonros haven't looked very deep, but I imagine a design similar to embassy-net-driver-channel could work: allocate packet queues for rx/tx (either a Pipe if it's a byte stream like an uart, or a zerocopy_channel::Channel if it's packet-based.
This allows the cyw43 task to transfer packets between the queues and the cyw43, so a separate BLE task can send/receive packets and handle them with the BLE stack.

Hey! Any update on this PR? Very excited for BLE support. 😄

probably need somebody else to reattempt this better/nicer/cleaner/get it working


System.IO.FileLoadException : Could not load file or assembly 'Microsoft.Bcl.AsyncInterfaces, Version=<IP_ADDRESS>

Description
The methods raise runtime exception if the version of the Microsoft.Bcl.AsyncInterfaces is not exactly <IP_ADDRESS>
Details
Even if your package declare the dependency as ">= <IP_ADDRESS>"
    <PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="5.0.0" />

when I added to my project a dependency to the System.Text.Json (wich depends on Microsoft.Bcl.AsyncInterfaces <IP_ADDRESS>)
the call to all of your method start failing because the cannot load the Exact version of the Microsoft.Bcl.AsyncInterfaces <IP_ADDRESS>.
This is the Exception:
System.IO.FileLoadException : Could not load file or assembly 'Microsoft.Bcl.AsyncInterfaces, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

There is a viable workaround to let your beautiful library with the Microsoft.Bcl.AsyncInterfaces  Version=<IP_ADDRESS> or greater?
thanks in advance and congratulation for your piece of code

Hi @IMCubator-CI,
Thank you for the kinds words, and using the library :-)
The feature you are looking for is assembly binding redirects, described here: https://learn.microsoft.com/en-us/dotnet/framework/configure-apps/redirect-assembly-versions
With this you can tell the runtime: "Whenever someone asks for this library, in a version range between X and Y, give them Y".
I used it myself in the Profiling project, here: https://github.com/csrakowski/ParallelAsync/blob/master/tests/Profiling/App.config#L12
If you copy this <dependentAssembly /> node into your app.config, it should work again.

Hi @IMCubator-CI,
Just following up, to check if you were you able to fix the issue you faced?
If so, I would like to close this issue.


Compilation error

TypeError: Cannot read property 'Permissions' of undefined
at eval (betterdiscord://plugins/add_reaction.plugin.js:14:97)
at Object.requireAddon (:4:39192)
at Object.loadAddon (:4:9163)
at Object.loadAddon (:4:36864)
at AsyncFunction. (:4:7155)
after relaunching i go the following:

TypeError: Cannot read property 'Permissions' of undefined
at eval (betterdiscord://plugins/add_reaction.plugin.js:14:97)
at Object.requireAddon (:4:39192)
at Object.loadAddon (:4:9163)
at Object.loadAddon (:4:36864)
at Object.loadAllAddons (:4:11637)
at Object.initialize (:4:6059)
at Object.initialize (:4:36059)
at Object.startup (:4:396505)

@a10x pls fix


[virt-operator] remove duplicated and redundant unit tests from webhook test suite

Signed-off-by: Igor Bezukh<EMAIL_ADDRESS>What this PR does / why we need it:
Going over the unit tests I've noticed the following redundancy:

Due to PR#5221 we don't restrict the modification
of Kubevirt CR pod placement configuration while VMs are running, therefore these scenarios:

should accept workload update when no VMIS are running

should accept KV update with VMIS running if workloads object is not changed

seems not relevant anymore.

We test twice the same scenario of rejecting invalid JSON patching format, here and here

Release note:
NONE

@rmohr @zcahana Hi. Can you please take a look?

Thanks Igor!
/lgtm

/cherrypick release-0.44


Language tests for the Q1 2021 small features release.

This tracks writing language tests for this feature set.
cc @lrhn @eernstg @franklinyow

Making a note that we may need additional test coverage for any spec updates based on this issue.

cc @srawlins @stefantsov @johnniwinther @scheglov @devoncarew for visibility on anything landed here.

Note that @lrhn did much of this work already:
Landed: https://dart-review.googlesource.com/c/sdk/+/180844 adds tests for https://github.com/dart-lang/language/issues/496, https://dart-review.googlesource.com/c/sdk/+/180843 adds tests for https://github.com/dart-lang/language/issues/120.
Under review: https://dart-review.googlesource.com/c/sdk/+/185583 adds tests for https://github.com/dart-lang/language/issues/1297.

I think we seriously need some more test coverage here.  There are no static error tests at all that I see in the language directory for this.  c.f. https://github.com/dart-lang/sdk/issues/45394 for an issue found accidentally.

It would also be good to get more runtime type test coverage for this, e.g. tests that  casts to generic type parameters work correctly (both pass when appropriate, and throw when appropriate) when the parameter is instantiated with a generic function.


Create a test suite per test macro

We could change the ci script to invoke those target specifically but that would be less adaptable to change (i.e. we would need to maintain that list).
Documentation of this repo is still TBD.

I'm fiddling with a bazel_java_integration_test that runs bazel_java_integration_test and calls the suite :)
I'll probably stop soon and pick it up on Sunday.
You can merge if you want but I'd really like to get that test in.
as @johnynek said my testing bar is high. I'm probably uptight about testing as he is about isolation and reproducibility. We both care greatly about correctness in our own ways :)

I'm close.
Can't push since I don't have write and would rather not fork at this time of night.
Pretty certain all I'm missing is to add the junit/hamcrest deps to the WORKSPACE I create in my test
test_in_bazel_patch.txt

I just gave you write access, feel free to add the test. This PR is not urgent to merge.

Thanks!
Now that I think of it adding the junit/hamcrest deps is not that easy since you depend on @org_hamcrest_core//jar which will be a bit cumbersome for me to simulate.
To use a maven_jar dependency in the test I'd need to start up a fake maven server which feels too much of an overkill (for this specific test).
Another alternative is to manually create a local repository called org_hamcrest_core and add a jar package there with a target called jar.
That also feels too much of work.
I think this correlates a lot to the discussion about canonical naming since I'd like to supply you with that dependency even though it's not from maven. My best alternative seems to use bind but I know it's on its way out.
WDYT?
I think this discussion is important to the usability of this library since it surfaces a common use-case of a rule testing itself.

Ok,
We have a passing integration test which runs bazel with the integration testing rule itself :) Meta-test...
The amazing thing about tests is that they give so much feedback about the API and the needs.
Many things surfaced which I'll open separate issues about but just to clarify here as well:

Need to split about the logic from BazelBaseTestCase to WorkspaceDriver which will be agnostic from JUnit and BazelBaseTestCase will use it.

Diagnostics

dump workspace layout on error (exists in contents method)

output logs of inner tests (exists in logsOfInternalTests method)

Exit code higher level matcher- maybe (exists in successfulExitCode, commandDescription)

Utility method for cat for file content to verify it contains what you expect- maybe (Files.readAllLines(workspace.toPath().resolve("IntegrationTestSuiteTest.java")).forEach(System.out::println);)

Workspace setup

copyFromRunFiles entire directories
strip prefix from copyFromRunfiles
External repositories handling- maybe (exists in addExternalRepositoryFor, repositoryDeclarationFor, writeWorkspaceFileWithRepositories)

Essentially the "maybe"s are features I'm not sure that should be generalized and I'll wait for more feedback (from me or others) about the necessity.
The others are features I'll open issues for and start working on them (unless you'll have objections)
The only dillema I have about the current code is that tests take a lot of time to run and I think I'm not leveraging the unpacking.
Can you help me with it?

btw, I rebased on top of master to see if the unpacking solves the problem but it doesn't (or maybe I'm not utilizing it well)

I think the cla problem might be from the rebase:
commit 42d2bd596cb8b015ed687fbeef3587779b3003f2
Author: Damien Martin-Guillerez<EMAIL_ADDRESS>Date:   Thu Nov 9 23:37:43 2017 -0800

    Unpack Bazel in the repository rule (#4)

    This way Bazel is unpacked only once per version for all the tests.

Note the<EMAIL_ADDRESS>

humm ok let me fix that
On Tue, Nov 14, 2017 at 1:13 PM Ittai Zeidman<EMAIL_ADDRESS>wrote:

I think the cla problem might be from the rebase:
commit 42d2bd596cb8b015ed687fbeef3587779b3003f2
Author: Damien Martin-Guillerez<EMAIL_ADDRESS>Date:   Thu Nov 9 23:37:43 2017 -0800
Unpack Bazel in the repository rule (#4)

This way Bazel is unpacked only once per version for all the tests.

Note the<EMAIL_ADDRESS>—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/bazelbuild/bazel-integration-testing/pull/5#issuecomment-344400484,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADjHf1H9qQfccE0Dm-476DyL37yoBsmBks5s2gKSgaJpZM4QZHmI
.

Ok, I've done all the changes. Waiting for your thoughts about the comments I left.
Also if there is anything we can do about the performance that would be great

@damienmg friendly ping on this PR and also a small request:
Can you enable github issues? I want to open issues for the things we talked about here

@googlebot: I signed it trying to retrigger the test


AHC-WS fixes

Fixes issues:
https://issues.apache.org/jira/browse/CAMEL-12951
https://issues.apache.org/jira/browse/CAMEL-12952

Thanks


Fix stcp compile errors

Fixes #19371
running config with 'enable-sctp' gave compiler errors.
I would class this as a regression that should go into a new release..

Tests passed locally with these changes..
To add this to our ci loop it would need to do the following:
sudo apt install libsctp-dev
sysctl -w net.sctp.auth_enable=1

Did you see the preconditions to doing this pauli?

Isn't the commit message mis-typed?
"sctp" instead of "stcp"

Testing with a dummy action show that 'lksctp-tools' needed to be installed also..
The tests passed with this setup. The tests also failed if net.sctp.auth_enable was not set (indicating that the sctp is being used in the tests).

@t8m reapprove?

This pull request is ready to merge

Merged to master. Thank you.


⚠ ClamAV has degraded performance

In 34ba922, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 69 ms

Resolved: ClamAV performance has improved in 1164d73.


Compute transaction from UTXOs

Compute a transaction from UTXOs not using a change address. Compute a transaction according the following process:

Check if the amount is less than the total balance. If amount is greater, stop process and show user error ("Insufficient Funds").
Set transactionUtxos = [], transactionUtxoValue = 0, transactionValue = amount user is trying to send.
Add top UTXO to transactionUtxos. Add value of transactionUtxoValue = utxo.value.
Check if transactionUtxoValue >= value of transaction. If yes, proceed. Otherwise, repeat step 3 with next of utxos list.

Create a transaction https://github.com/bitcoinjs/bitcoinjs-lib/blob/master/test/integration/transactions.js#L63

@kdbusiness121
coinexplorer api has call limit?

@gedanziger
utxos should be fetched when mounting page?
or utxos should be fetched just before submit sending tx?

Verified by 3de96f7b0bd5e2747305a24b1b3c23b02cb94050


Move FeeConsensus into modules

Addresses issue: https://github.com/fedimint/minimint/issues/313

One of: [@elsirion, @justinmoon,  @jkitman] please.
Could I have an opinion on commit https://github.com/fedimint/minimint/pull/325/commits/25b2cf7ce4ccd9bf5ce4530dacc4b275a426cc3c please? Does that sort of change seem reasonable to you? I'm not sure if minimint_wallet::PegOut should know about consensus fees.
As far as I can tell, FeeConsensus fields are only ever set to minimint_api::Amount::ZERO. Will they be configurable in the future? Should these fields be part of the config structures (e.g. minimint_wallet::config::WalletConfig)? If they should be in configs then I'm not sure how to get ServerConfig into minimint_core::transaction::Output::fee without moving it to minimint_core.
InputMeta was mentioned as candidate housing. But it isn't on the ln/wallet/mint module level. Could you expand on that idea a bit please? And also for OutputMeta I suppose.

Thanks for getting this started!

FeeConsensus fields are only ever set to minimint_api::Amount::ZERO. Will they be configurable in the future?

Yes they will be configurable in the future, but aren't configurable at all now. Someday I think a live federation should be able to alter fee-rates while the federation is running if sufficient number of servers agree to it.
After thinking about it a little more, I think there are 2 separate things happening here and could be implemented separately in 2 successive PRs:
(1) Move fee information into modules
(2) Add consensus logic so that fee rates can be adjusted dynamically
For (1), I think each module could have their own fee-related struct defined in that module's crate. Then each of these structs could be placed in both the client and server configs. Taking wallet module as an example, server-side part could go in WalletConfig and client-side part could go in WalletClientConfig. Maybe try this with the wallet module (fee_peg_out_abs and fee_peg_in_abs) to get started?
I'm not exactly sure how we will do (2).

Thank you for the reply. I've moved the FeeConsensus structs into the different modules configs.
One drawback of my approach is that I've added a method to ServerConfig and ClientConfig:
    pub fn fee_consensus(&self) -> minimint_core::config::FeeConsensus {
        minimint_core::config::FeeConsensus {
            wallet: self.wallet.fee_consensus.clone(),
            mint: self.mint.fee_consensus.clone(),
            ln: self.ln.fee_consensus.clone(),
        }
    }

This avoids the need to move different configs into minimint_core::transaction::Input::fee and minimint_core::transaction::Output::fee. Which would probably require moving ServerConfig (and some minimint::net components into minimint_core).
I think this PR completes the issue, but let me know what you think my current changes.

I wonder if it makes sense to have a Fee type with a default of zero, which impls Into<Amount>. Deriving Default for FeeConsensus is nice, but having a default of zero for transaction output amounts (for instance) doesn't seem right ...

I wonder if it makes sense to have a Fee type with a default of zero, which impls Into<Amount>. Deriving Default for FeeConsensus is nice, but having a default of zero for transaction output amounts (for instance) doesn't seem right ...

A Fee type with a default of zero sounds right to me. I would probably make that change in another PR, but I don't mind either way.

This seems like a good first step towards #313. Ideally we could get rid of FeeConsensus completely. You already split it up and it feels rather redundant now. This will require more refactoring around the transaction validation logic though.
The goal should probably be to get rid of the TransactionItem trait and do amount validation using apply_input/apply_output which already return the amounts. This will also simplify further modularization.

@elsirion That makes sense to me on a high level. I'll reach out to you on discord for a bit more hints if you don't mind!

@elsirion rebase complete!


Enable gradle build

Added gradle build for layers:
create one gradle project for each layer
all layers templated from the same build.gradle
with the change, application could add dependencies in its
build.gradle file,
android.sources {
main {
jniLibs {
dependencies {
project ":/dir/to/core_validation"
project ":/dir/to/device_limits"
...other layers...
}
} //jniLibs
} //main
} //android.sources
layers will be automatically build and packaged into apk files

These changes got cherry-picked in via PR #294.  Thanks!


docs(readme): update mongo supported version

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Re-raise exception in test so that prow can know there is a failure

Fix https://github.com/kubeflow/kubeflow/issues/436
@ankushagarwal do you think it's the right thing to do?

This change is

Coverage remained the same at 44.301% when pulling d7c9239f1a99e859fc55cfc318140ece86263bf6 on lluunn:test_reraise into 3a279aaff42d577ac766d351c2f41f380c4ddf4c on kubeflow:master.

I am not very familiar with this. It looks ok to me. Can you also re-raise an exception in the except util.TimeoutError:  block

Done.

cc @jlewi for fyi

/lgtm

/approve

Same tests also failed in #469 , but it showed success.
So the test has been failing, but we didn't notice..

@lluunn We check that there are no test failures here
https://github.com/kubeflow/testing/blob/ce2898e60a33c08ee79b9dfb61ca45db920f8370/py/kubeflow/testing/run_e2e_workflow.py#L274
And we use that to 1 set the result in gubernator to failed and also set the exit status to non-zero.
Do you know what that isn't working?

run_e2e_workflow determines the failure by the status of argo workflow. https://github.com/kubeflow/testing/blob/ce2898e60a33c08ee79b9dfb61ca45db920f8370/py/kubeflow/testing/run_e2e_workflow.py#L155
However, when some test fails, the workflow exits normally (after upload junit).

@lluunn prow_artifacts.finalize_job checks the junit xml files to see if there are any errors and if there are marks the prow job as failed. It looks like that function should return success so that we can turn it into an exit code.
https://github.com/kubeflow/testing/blob/master/py/kubeflow/testing/prow_artifacts.py#L213

https://github.com/kubeflow/testing/pull/77 should be better, closing this.


Add --test-user flag to integration test, default to jenkins if the run is triggered from docker image

To fix the integration test under new image

This change is

I definitely did not change historical_handlers_test.go

cc @DirectXMan12
I have a green run when hard-code jenkins@ into the code, now add it properly as a flag.

Aha Jenkins overloaded. Please try again later. everywhere... will retrigger it once we drain the queue...

@k8s-bot test this

greened, thanks Jenkins!


Openssl1.1.1g make install fails on Centos7

There is not enough information here to provide any assistance. Please provide information about the steps you took and what error messages you saw.


Add a CircleCI job to test oqs-provider against memory leaks.

This commit introduces a new CircleCI job called check-ASan-tests that compiles OpenSSL 3, liboqs and oqs-provider with ASan (-fsanitize=address). Then, it runs the CTest suite.
If any memory leak occurs somewhere and is triggered in one of the various unit tests, then this CircleCI job fails and displays the ASan trace.
This job should fail until https://github.com/open-quantum-safe/oqs-provider/pull/245 is merged.

This job should fail until https://github.com/open-quantum-safe/oqs-provider/pull/245 is merged.

And it duly does :)
Can I ask whether there was a reason this job was added in CCI instead of github CI? Please see (the newly added #248).

Since it's the first time I use it, I'd prefer you to check my code before merging, @baentsch

OK -- sorry I noticed this update here only now. The code looks good (and failure is as expected :) -- but is keeping it in a separate job the best approach? Reason for asking: The way it is right now it's not really represented "at a glance" (in the README.md's CI status buttons). Given it's really a Linux test, would it be (more) sensible to add it within the existing Linux test (to see a failure suitably highlighted?). Also it's not really telling us too much about Windows or MacOS memory leaks, does it? It's unlikely there should be (different) leaks on those platforms but we don't really know without running an "asan-equivalent" there, right?

Should I put it in the .github/workflows/linux.yml file then?

That would (have) be(en) my preference, Yes. Before you do it, please read on.

I really don't know what the CI status buttons display actually…

They simply show whether the latest run (on the given branch --"main" in our case) was successful or not. So any test failure would be flagged (and make us aware of something wrong).

I know that we can compile everything with ASan on MacOS, but I'm not sure about Windows.
I can add a ASan test in the .github/workflows/macos.yml file too

I just very nearly stated "If we can do MacOS too, then Yes, please also add it there." But I'm reconsidering/wondering: Is Asan really finding platform-specific problems or any issues with the code (happening on every platform)? If the latter were the case, I'd revisit my statements from above and keep things as you did them now (and only ask you to change the job title to "Safety Checks" and add that job's CI button to the README): What's your take, @thb-sb ?


fs entries is working randomly

Sometimes it works and some it doesn't, seems to be random at each call of the function.
Apparently the rust internal function is sometimes failing, making it return nil instead of an iterator function, and then lua fails because of it.

It wasn't failing randomly, it was returning nil when the directory didn't exist. Now after https://github.com/foundpatterns/torchbear/commit/5692bdca8b2e459c0f027f8382dcfa82c94acba6 it errors. It obviously cannot iterate entries in a non existing directory.

https://github.com/foundpatterns/torchbear/commit/5692bdca8b2e459c0f027f8382dcfa82c94acba6


SearchIcon in Masthead may not be necessary instead 'Avatar' is

Magnifying icon takes no role there since the searching functionality is fully operational at query input in the center of Masthead.
Personal avatar, which links to account settings page, when clicked may be better suited to that position. @mysterism should take note

It turned out to be necessary though.. but this means Masthead should dynamically change its shape. In any way, work should be done.

Done by #131


add signed_in? convenience method

This makes it easier to render UI that's dependent upon users being logged in, conditionally rerouting in controllers, etc. Devise offers a helper called user_logged_in? so this could help folks who might be used to having something similar.

I think... I want to keep just existential methods, and also we are introducing this idea of helper_methods, it's an additional learning overhead. close for now...


Confused about orientation

I’m confused. I created a new project. Added Swift package to project.  Added a cameraView & label to storyboard. Build & run on device (iPad Pro 10.5” - iPadOS 14) in Portrait. Everything looks great. Camera view is correct. Rotate left & image is now displaying 90 degrees right. Rotate device back to portrait & camera image now incorrect there as well.
if I start out in landscape right. Then cameraView is rotated 90 degrees right, but is correct when back in portrait. I can only get it to correctly view in portrait mode no matter what settings I try. See images where the “This is a Label is always correctly displayed above cameraView.
here is my ViewController
//
//  ViewController.swift
//  BasicCameraManager
//
//  Created by Vincent Weston on 1/20/21.
//
import UIKit
import CameraManager
class ViewController: UIViewController {
@IBOutlet weak var cameraView: UIView!

let cameraManager = CameraManager()

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view.
    //cameraManager.shouldKeepViewAtOrientationChanges = false
    //cameraManager.shouldRespondToOrientationChanges = false

    cameraManager.addPreviewLayerToView(self.cameraView)
}

}
Start in Portrait

rotated

Started in landscapeRight

Rotated back to portrait

any help would be really great.👍

@Vweston Same here. Did you ever find a solution for this?

I have the same issue. Here are the details:

I'm on Xcode 12.4 (12D4e), the latest as of today.
Create a new empty template app
by default in Deployment Info the iOS target is 14.4 and both iPhone and iPad are checked
pod init and then configure Podfile as per your instructions
pod install, when it's finished Podfile.lock says that 5.1.3 was installed.
Add the required privacy entry to info.plist
in ViewController add let cameraManager = CameraManager()
and in viewDidLoad() add let cameraManager = CameraManager()

I'm running on two devices. An iPhone X with 14.4.2 and an iPad Mini (5th generation) also on 14.4.2. I get the same results on either device.

Start in Portrait. Everything is as expected.
Rotate to landscape, either way. Two things happen. The view is rotated 90 deg off from what it should be. And the view is cropped towards the home button.
Rotate back to portrait. The view remains cropped and is still 90 deg off.

I notice that the default value in the source for shouldKeepViewAtOrientationChanges is false. So I create a CameraManager subclass and override shouldKeepViewAtOrientationChanges so it returns true. In ViewController I change it to  let cameraManager = MyCameraManager()
Then run:

Start in Portrait. Everything is as expected.
Rotate to landscape. Same result as before. The view crops and is off by 90 deg.
Rotate back to portrait. This is correct now. Proper orientation and not cropped.

I haven't found a solution for the orientation issues but viewWillTransition() helped with the cropping.
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
    super.viewWillTransition(to: size, with: coordinator)
    cameraManager.addPreviewLayerToView(view)
}

I don't know if that's the best solution for that.
Can you provide any help on the orientation issues?

For my case, I setting like that
cameraManager.shouldKeepViewAtOrientationChanges = false
cameraManager.shouldRespondToOrientationChanges = true

And in where do the update UI when rotation change like viewWillTransition for example (me is updateUIView because I code SwiftUI), call resetOrientation function
DispatchQueue.main.async {
    self.cameraManager.resetOrientation()
}

qhu91it Thank you that solved my problem


Implement last_error_value

Fixes #156

r? @gabrielesvelto since you reviewed the original patch and also do a lot of the error code stuff.

socc-pair --crash-id=3f131f66-733d-43f7-8005-c6f700211109

seems happy with this, except I guess we don't have STATUS_TIMEOUT in our definitions:
-      did not match
+      last_error_value: STATUS_TIMEOUT
-      last_error_value: unknown 0x00000258

socc-pair --crash-id=3f131f66-733d-43f7-8005-c6f700211109

seems happy with this, except I guess we don't have STATUS_TIMEOUT in our definitions:
-      did not match
+      last_error_value: STATUS_TIMEOUT
-      last_error_value: unknown 0x00000258

Ah yes, I think I only added the errors and warnings to the definitions, not the "harmless" statuses. I'll file an issue to add them and also update the definitions given Microsoft released two new SDKs.

nice, your PR filled in the STATUS_TIMEOUT as expected :)

New commit should address concerns.


Wrong Sample Type used for Input

In the following project
Input for Assay sequencing step (purple arrow) should be from library step, but it is from the Extraaction Assay (red arrow).

Tried again in this Project.
Same effect.
Using the create the next Assay button in the 3rd or 4th Assay has as default the 2nd Assay in the Input Assay drop down menu (clipping below).

Fixed


FutureResult inner type mismatch errors point to wrong line

Quite apart from https://github.com/rust-lang/rust/issues/46606 but involving the same test code, an inner type mismatch in FutureResult chaining generates an error for one of mismatched types (which is a matter of some contention), but aside from which type triggers the error, the error ultimately points to the wrong location.
For example, in the code below:
    let f = future::result(Ok(()))
        .map_err(|()| "&'static str error")
        .map(|_| future::result(Err("another &'static str error")))
        .and_then(|_|
             future::result(Ok(())
                .map_err(|()| "String error".to_owned())
            )
        )
    ;

The error
13 |         .and_then(|_|
   |          ^^^^^^^^ expected struct `std::string::String`, found &str

points to the combinator resolving to a String, which:

According to the compiler, String was the right result and the &'static str result was the wrong one, so if anything, the error should be on the map_err or map lines and not the and_then line, however,
The error should actually point to the line of code that returned the &'str the compiler is complaining about, and not the function accepting the closure returning the wrong type.

(I imagine what is happening here is that and_then is an impl function being passed a FutureMap structure, and the compiler is finding a mismatch between the expected type passed to the the and_then function vs the actual inner type of FutureMap, and complaining at that juncture. Additionally, I no longer have any clue whether I should be posting criticism of compiler errors/hints while compiling against futures-rs here or in the rust-lang repo. Forgive me.)

Thanks for the report! Isn't this a rustc bug though? (if at all?) I'm not sure there's anything we can do in this library to coerce the error messages?

Yeah, I wasn't sure whether to spam the rust issues with these errors or to keep them here.
I guess we can close this in favor of https://github.com/rust-lang/rust/issues/46639

Ok!


LitElement + Chart.js

I'm trying to get Chart.js working ... I was able to get it working outside the render, but inside I'm having an issue.  https://stackblitz.com/edit/lit-element-chartjs

I got this working by adding a div around the canvas element.

Let's not submit another issue for each JS library you happen to use 😄
I mean, lots of libraries assuming using API like document.querySelector and relying on global CSS would be broken by Shadow DOM, and there is nothing much to do here for LitElement (except for drop Shadow DOM at all, which is probably not what the Polymer team is going to do),

@web-padawan hey, it should be obvious to guys like you that I'm not that knoledgeable about this library, shadow-dom, shadow-root, light-dom and the like.  Now that I'm starting research this stuff as I come across issues, I'm coming to the same conclusion as your comment above on my own (hence I closed this issue).
Some on here are unpompus and kind enough to ask me to get on slack for questions like this -- which I did today.;

@aadamsx don't hesitate to ask, and sorry if I was unfriendly. We should have a clear list of the implications Shadow DOM has, documented somewhere, now when LitElement is going to become stable. I believe Polymer team will be able to provide better docs quite soon.


Message: no such element: Unable to locate element: {"method":"css selector","selector":"span"}

I ran into this issue on Windows as well as osx
My chrome version is 89.0.4389.82
Python version : Python 3.8.2
Here is the trace:

❯ python3 whatsoup.py
Success! WhatsApp finished loading and is ready.
Traceback (most recent call last):
  File "whatsoup.py", line 1099, in <module>
    main()
  File "whatsoup.py", line 30, in main
    chats = get_chats(driver)
  File "whatsoup.py", line 212, in get_chats
    last_chat_msg = last_chat_msg_element.find_element_by_tag_name(
  File "/Users/xxx/opt/WhatSoup/env/lib/python3.8/site-packages/selenium/webdriver/remote/webelement.py", line 305, in find_element_by_tag_name
    return self.find_element(by=By.TAG_NAME, value=name)
  File "/Users/xxx/opt/WhatSoup/env/lib/python3.8/site-packages/selenium/webdriver/remote/webelement.py", line 658, in find_element
    return self._execute(Command.FIND_CHILD_ELEMENT,
  File "/Users/xxx/opt/WhatSoup/env/lib/python3.8/site-packages/selenium/webdriver/remote/webelement.py", line 633, in _execute
    return self._parent.execute(command, params)
  File "/Users/xxx/opt/WhatSoup/env/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "/Users/xxx/opt/WhatSoup/env/lib/python3.8/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"span"}
  (Session info: chrome=89.0.4389.82)

The script opens chrome and starts going through messages and crashes randomly at different messages.
Language is set to english

@oddtazz This is a tricky one for me because I cannot reproduce your error with my computers, which means there is likely something different/unique about your WhatsApp and HTML that I have not encountered yet. I'm unable to provide any precise fixes for this unless I can see some of the HTML to investigate the cause.
If you are OK sharing your HTML with private info removed, then run the whatsoup.py script again and when the error is thrown, don't close the script or your browser but instead open up dev tools in Chrome (F12), run the below JavaScript snippet in the Console, verify there's no other private info in it, and then send it to me on here or you can send it privately/offline as well. I attached a photo of how it looks when ran.
If you are not OK with this approach, then an easy workaround is replacing line 212 of whatsoup.py with last_chat_msg = '' which will just make the terminal window not show any of the last chat messages when you're selecting a chat to scrape/export (it won't affect the main export functionality). There are other options we can try as well.
// This script sets all names/messages from chats in the left chat pane to 'redacted' instead of private info

// Get all of the viewable 'chat cards' from left pane. A chat card is what it sounds like, the rectangle with a person/groups photo and name, last message, and last message time. Note: these load dynamically based on your viewport, so it will only get the cards which can be seen in your browser window.
var chat_cards = document.querySelector('[aria-label*="Chat list"]').childNodes

// Loop through each of the viewable chat cards
for (let i=0; i<chat_cards.length; i++){
  // Get all descendants for a chat card
  let elems = chat_cards[i].querySelectorAll('*')

  // Loop through each descendant and search for the elements which hold private data, replacing it with 'redacted'
  for (let j=0; j<elems.length; j++){
    if (elems[j].getAttribute('title')){
      console.log("Replacing '%s' with 'redacted'", elems[j].getAttribute('title'));
      elems[j].setAttribute('title','redacted');
      elems[j].innerText = 'redacted';
    }
  }
}

// Print the redacted HTML so it can be safely shared
document.querySelector('[aria-label*="Chat list"]').outerHTML;

@oddtazz I'm not seeing anything out of the ordinary. Any chance you have chrome extensions installed that may be modifying the DOM?
Also, did you try the other workaround I noted above by setting the offending line to an empty string: last_chat_msg = ''? The only critical piece of data that's needed in the get_chats function is name_of_chat which you aren't having issues with, so setting the last_chat_msg variable to an empty string should fix the issue.

I have no chrome extensions, chromedriver launches a completely different instance of chrome doesn't it.
Just to be sure I disabled all extensions and ran the script again which gives me the same stack trace.
I also set last_chat_msg to an empty string but this too gives me the same error.
So here's what I am thinking:
I have tried this script on 2 macbook pros (13" and 15") and a windows machine. I get the same error in all the places so it is probably not operating system related or hardware related.
I am using Version 89.0.4389.82 of chromedriver and browser which is the latest version at the moment. Is it the same version you are using too? I can't think of any other issue which could cause this behavior.

We are using the same version of Chrome. Thanks for checking on multiple machines and ruling out hardware.
I wonder if WhatsApp is changing some of its UI based on your locale? Can we compare localization?

Check Chrome's language settings. If you go to chrome://settings/languages you can verify what language your browser is using. Mine is using English.
Check HTTP Header language.  You can check it on HTTP Bin under Accept-Language. Mine is "en-US,en;q=0.5"

@oddtazz Checking in to see if the above suggestion resolved the issue for you?

Hey sorry for the late reply Eddy,
I managed to get it to work after your previous comment. Turns out you were using en-US,en and I was using en-IN,en,en-UK English(India), English and English(UK) languages.
My Accept-Language = "en-UK,en;q=0.9,en-IN;q=0.8"

@oddtazz Thanks for confirming! Quick question, did you solve this only by setting Accept-Language? For example did you also set WhatsApp language on your phone to English? I'm asking because I'm testing it with the en-UK locale you provided and still can't reproduce the error.
I added this line to setup_selenium():
# Set locale to @oddtazz's config
options.add_experimental_option('prefs', {'intl.accept_languages': 'en-UK,en;q=0.9,en-IN;q=0.8'})

HTTP Bin shows: "Accept-Language": "en-UK,en;q=0.9,en;q=0.9;q=0.8,en-IN;q=0.8;q=0.7" however I don't see any changes to WhatsApp UI and my script doesn't throw any errors.

I managed to break this again today with accepted languages as "Accept-Language": "en-US,en;q=0.9"
I am sure I have made no changes to chrome apart from fiddling with the language settings.
Maybe language is not the issue in this case, but that would lead to a bigger puzzle. What changed between 6 days ago and today? Specially since chrome version is the same. I would say treat my issue as an edge case. Maybe I am doing something very different compared to others. (It would be helpful to know in what way though :p )
Regardless keep up the good work!

I managed to break this again today with accepted languages as "Accept-Language": "en-US,en;q=0.9"
I am sure I have made no changes to chrome apart from fiddling with the language settings.
Maybe language is not the issue in this case, but that would lead to a bigger puzzle. What changed between 6 days ago and today? Specially since chrome version is the same. I would say treat my issue as an edge case. Maybe I am doing something very different compared to others. (It would be helpful to know in what way though :p )
Regardless keep up the good work!

@oddtazz , just check to make sure the chat its breaking on is  not  blocked. Mine was breaking and  it wasn't a language issue . It broke on a blocked chat.

So do I, when I deleted the blocked contact the proses continue.
But I still get the issue. Dunno still finding the another issue

Closing this bug report as this project is not maintained anymore.


[iOS] Ellipsis carries background from trimmed text

Description
This issue happens on iOS only:
I tried to use nested text which has background, and could be wrapped with an ellipsis. Even the nested text doesn't show, the ellipsis has the background of nested text.
<Text numberOfLines={1} ellipsizeMode={'tail'}>Long text <Text style={{backgroundColor: 'red'}}>Nested text</Text></Text>

React Native Version
0.70.6
Output of npx react-native info
System:
OS: macOS 12.5.1
CPU: (10) arm64 Apple M1 Max
Memory: 548.38 MB / 64.00 GB
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 16.13.0 - ~/.nvm/versions/node/v16.13.0/bin/node
Yarn: 1.19.2 - ~/.nix-profile/bin/yarn
npm: 8.1.0 - ~/.nvm/versions/node/v16.13.0/bin/npm
Watchman: 4.9.0 - /Users/shidong.lin/.nix-profile/bin/watchman
Managers:
CocoaPods: 1.11.0 - /Users/shidong.lin/.nix-profile/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 22.2, iOS 16.2, macOS 13.1, tvOS 16.1, watchOS 9.1
Android SDK:
API Levels: 30, 31, 32
Build Tools: 30.0.3
System Images: android-31 | Google Play ARM 64 v8a, android-32 | Google Play ARM 64 v8a
Android NDK: Not Found
IDEs:
Android Studio: 2022.2 AI-222.4459.24.2221.9862592
Xcode: 14.2/14C18 - /usr/bin/xcodebuild
Languages:
Java: 11.0.11 - /Users/shidong.lin/.nix-profile/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 18.2.0 => 18.2.0
react-native: https://github.com/react-native/archive/f56cf181afcd364122f94ac8609f9b3c7b0b1afb.tar.gz => 0.70.6
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps to reproduce
<Text numberOfLines={1}>Long text <Text style={{backgroundColor: 'red'}}>Nested text</Text></Text>

Just create a long text with colored nested text, check the behavior of ellipsis.
Snack, code example, screenshot, or link to a repository
<Text numberOfLines={1} ellipsizeMode={'tail'}>Long text <Text style={{backgroundColor: 'red'}}>Nested text</Text></Text>

@lsdimagine As the bot commented above there's a newer patch available, so please follow the rest instructions.
Also, could you please provide a plain repro (on the latest patch) preferably a Snack?

@lsdimagine As the bot commented above there's a newer patch available, so please follow the rest instructions. Also, could you please provide a plain repro (on the latest patch) preferably a Snack?

sure! I created a snack example here https://snack.expo.dev/TkCTpaU8H

@lsdimagine thanks for the repro, someone will take a look into it. Also, did you try this on the latest patch?

Results from provided Snack:

iOS
Android

Cc: @cortinico @kelset

Unfortunately I had to revert the PR here as it was causing crashes internally
NSRangeException at __83-[RCTTextLayoutManager processTruncatedAttributedText:textContainer:layoutManager:]_block_invoke in packages/react-native/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm:153: NSMutableRLEArray objectAtIndex:effectiveRange:: Out of bounds

Thread #0 Crashed:
0 CoreFoundation 0x18049111c __exceptionPreprocess + 0xa0
1 libobjc.A.dylib 0x180084128 objc_exception_throw + 0x34
2 Foundation 0x180ccfc70 -[NSRLEArray objectAtIndex:effectiveRange:] + 0xa4
3 Foundation 0x180cce708 -[NSMutableAttributedString removeAttribute:range:] + 0x50
4 UIFoundation 0x184686a54 __NSConcreteTextStorageLockedForwarding + 0x3c
5 UIFoundation 0x184686f00 -[NSConcreteTextStorage removeAttribute:range:] + 0x44
6 XPLAT_1_Framework 0x129788cc0 __83-[RCTTextLayoutManager processTruncatedAttributedText:textContainer:layoutManager:]_block_invoke (RCTTextLayoutManager.mm:153)
7 UIFoundation 0x184658798 -[NSLayoutManager enumerateLineFragmentsForGlyphRange:usingBlock:] + 0x1a4
8 XPLAT_1_Framework 0x129788b0c -[RCTTextLayoutManager processTruncatedAttributedText:textContainer:layoutManager:] (RCTTextLayoutManager.mm:137)
9 XPLAT_1_Framework 0x12978876c -[RCTTextLayoutManager drawAttributedString:paragraphAttributes:frame:drawHighlightPath:] (RCTTextLayoutManager.mm:87)
10 XPLAT_1_Framework 0x128338144 -[RCTParagraphComponentView drawRect:] (RCTParagraphComponentView.mm:136)

cc @zhongwuzw


BUG: gpu_predictor in Python

Hello,
I am getting similar behavior to #2965, but in Python.
Environment info
Operating System: linux (aws p2.xlarge)
Compiler: gcc
Package used (python/R/jvm/C++): python
xgboost version used: 0.7
If installing from source, please provide

The commit hash (git rev-parse HEAD) - a1b48afa41f888

Logs will be helpful (If logs are large, please upload as attachment).

If you are using jvm package, please

add [jvm-packages] in the title to make it quickly be identified
the gcc version and distribution

If you are using python package, please provide

The python version and distribution: Python 3.6.4 Anaconda (default Jan 16 2018, 18:10:19)

The command to install xgboost if you are not installing from source - Installed from source

If you are using R package, please provide

The R sessionInfo()
The command to install xgboost if you are not installing from source

Steps to reproduce
gpu_params = {'tree_method':'gpu_hist',
              'predictor':'cpu_predictor',
              'n_jobs': -1,
              'seed': 123
             }
m = xgb.XGBRegressor(**gpu_params).fit(X_ts, y_ts)
m.score(X_ts, y_ts)
m.score(X_test, y_test)

Then do exactly the same thing changing only "cpu_predictor" to "gpu_predictor". Test score changes dramatically, predicted values change dramatically. With cpu, the values I get are sensible and verified.

@dangoldner I need your complete script including dataset to reproduce this.

That's fair. Data are proprietary-I'll see if I can cook up some data that do the same thing.

Still happening for me but I can't find a vanilla reproduction. I'll reopen if I can find a good example.

Ok got it:
Complete script is at https://gist.github.com/38a8c1d16d26283c9e7759f06be0fcd5.
It seems to be related to the size of the problem: If m, n = 10000, 7 and tr_size = 6000, the bug does not occur. With larger sizes as shown in the gist, it does.
Also note that the problem appears starting with the second prediction, not the first.

I pulled and rebuilt xgboost, but the behavior persists.
Commit hash 00d9728
I ran the same script (below), from the terminal:

import numpy as np
import xgboost as xgb

# *Note:* If `m, n = 10000, 7` and `tr_size = 6000`, the bug does _not_ occur.

# Data are arbitrary but structured so good predictions are possible.
m, n = 1500000, 14
tr_size = 250000
X = np.random.rand(m,n)
y = 200*np.matmul(X,np.arange(-3,-3+n))
X_train, y_train = X[:tr_size,:], y[:tr_size]
X_test, y_test = X[tr_size:,:], y[tr_size:]

# First with cpu_predictor
gpu_params = {'tree_method':'gpu_hist',
             'predictor':'cpu_predictor',
             'n_jobs': -1,
             'seed': 123
            }
m = xgb.XGBRegressor(**gpu_params).fit(X_train, y_train)
print(m)
print(m.score(X_train, y_train))
print(m.score(X_test,y_test))

# Now with gpu_predictor
gpu_params = {'tree_method':'gpu_hist',
              'predictor':'gpu_predictor',
              'n_jobs': -1,
              'seed': 123
             }

m = xgb.XGBRegressor(**gpu_params).fit(X_train, y_train)
print(m)
print(m.score(X_train, y_train))
print(m.score(X_test, y_test))

Ok I will have another look. A problem I am having in debugging this is that the problem goes away sometimes.

Thanks!


syncer(dm): refine codes to prepare combine location recorder

Signed-off-by: lance6716<EMAIL_ADDRESS>
What problem does this PR solve?

Issue Number: ref #6319
What is changed and how it works?
some renaming, split functions and simple unit tests
Check List
Tests

Unit test

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
 `None`.

/run-dm-integration-test

CI passed (except for a linter error)
/cc @D3Hunter @GMHDBJD @buchuitoudegou

ptal @D3Hunter

/run-dm-integration-test

CI seems well, will merge it later
https://ci2.pingcap.net/blue/organizations/jenkins/dm_ghpr_integration_test/detail/dm_ghpr_integration_test/8720/pipeline

/merge


Fix code scanning alert #1

Tracking issue for:

[x] https://github.com/broadinstitute/dig-dug-portal/security/code-scanning/1

#461 included fix for this


Update deps for Elixir 1.3

This PR closes #44 and updates:

Plug to 1.2
Chronos to 1.7
Yamerl to 0.4.0

I had to switch the Plug test to not be async to stop a random failure, but other than that all tests are green.

Hey @cjbell - sorry for being so slack with Obelisk.
Thanks for your contribution. There's another PR around upgrading dependencies so I'll evaluate both before deciding which to merge. I also plan to jump to Elixir 1.4.x shortly so it's likely some of these dependencies will change again.
Thanks again for your contribution