Modified the copyright date 2021 -> 2022

Ⅰ. Describe what this PR does
Completed Task 28:
This PR is to modify the Copyright Date in the license of file "./cmd/dataset/app/version.go" corresponding to line 2.
Ⅱ. Does this pull request fix one issue?
NONE
Ⅲ. List the added test cases (unit test/integration test) if any, please explain if no tests are needed.
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

/lgtm


Modify action bar above datagrid removing tab bar and use separate buttons

@lweitzman commented on Tue Mar 06 2018
Modify the action bar above datagrids to use buttons. Use icons for add, edit, delete (remove). In terms of language, use "Delete" when deleting objects and "Remove" when removing a relationship (e.g., removing a user from a project).

mostly fixed but "Delete" should be renamed to "Remove"

@ninjadq Please change the text 'Delete' to 'Remove'


Name template

Allow the name parameter to accept template for better customization.
Possible value that can be inserted in the name :

$value : render into the value
$max : render into the maximum value
$percentage: render into value/max * 100 rounded

Note: I use $ as prefix, but it will probably depend on the template engine used.
Examples :
- name: My super progress bar [$value / $max]
- value: 10
- max: 100

My super progress bar [10 / 100]

- name: My tasks ($percentage %)
- value: 10
- max: 50

My tasks (20 %)

sound great! let me work on it this weekend.


CI_Config class - feature request

Can we add the following code to the CI_Config class?
It would allow us to do things like $this->config->property_key instead of $this->config->item('property_key') and $this->config->property_key = 'stuff' instead of $this->config->set_item('property_key', 'stuff')
class CI_Config {

	...

	public function __get($item)
	{
		return $this->item($item);
	}

	public function __set($item, $value)
	{
		return $this->set_item($item, $value);
	}

	public function __isset($item)
	{
		return !is_null($this->item($item));
	}

	public function __unset($item)
	{
		$this->set_item($item, NULL);
	}
}

(I would create a pull request, but it's just something I though of and I'm lazy. I can create a pull request if that's easier)

No.
And now you'll probably ask why ... I just don't see any benefit in this.

No prob, I'll just add them with MY_Config. Thanks


HACKTOBERFEST 2020

Hacktoberfest 2020

 Hacktoberfest 2020 🎉
So, the festive season for OPEN SOURCE is back guys and we are here to help you contribute (and grab the swags :tada: ).
🗣 Hacktoberfest encourages participation in the open source community, which grows bigger every year. Complete the 2020 challenge and earn a limited edition T-shirt.
📢 Register here for Hacktoberfest and make four pull requests (PRs) between October 1st-31st to grab free SWAGS 🔥.

GOAL
To help you contribute to OPEN SOURCE REALM.
WHAT YOU NEED TO DO

Go and open README.
Follow the steps there :rocket: :tada:.

Hey @avats-dev I would like to contribute to this project as a part of Hacktoberfest. Could you please assign it to me


plan9port: 2015-06-29 -> 2015-11-10

Motivation for this change
Changes: https://github.com/NixOS/nixpkgs/pull/18141/files?w=1
Updated to latest upstream.
Fixed build warning about deprecated flags.
Ported chording patches from 9front.
Fixed up fontsrv for system fonts access (DejaVu in acme \ sam \ 9term should be possible now).
Things done

[x] Tested using sandboxing
(nix.useChroot on NixOS,
or option build-use-chroot in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] OS X
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Tested normal acme operations and sam's patched chroding.
Tested 9 fontsrv & 9 9p ls font to see fontstv lists system fonts correctly (See 9 man fontsrv for fontsrv instructions).

Thanks!

I'm glad I'm not the only one that uses plan9port.


Completions for method overrides in @code blocks don't include the return type, braces, and access level modifier

Completions for method overrides in @code blocks don't include the return type, braces, and access level modifier.
Repro steps:

Create a new Blazor app
In a component .razor file add a @code block
Type override  and then complete with OnInitialized

Actual result:
override OnInitialized()

Expected result:
protected override void OnInitialized()
{
    base.OnInitialized();
}

@NTaylorMullen

The gist is that the insertions are occurring in the C# projection buffer and aren't being mapped correctly back to Razor. Depending on how the edits are formed this may or may not be fixable by us.

@NTaylorMullen could you investigate and figure out if a fix for this can go in 16.4?

Investigated and it wasn't what I initially thought. Roslyn doesn't support complex completions in projected scenarios. Basically here they end up looking for information about the current document (they only allow C#) and fail because the "current" document happens to be Razor. To make this work Roslyn would need to expand their custom completion support to work in Razor scenarios by re-mapping the completion trigger location (Razor) to the active subjectBuffer (C#). This also assumes that manual completions "just work" after doing this.
@dpoeschl is this a known limitation / any thoughts on the above?

Thank you for investigations and explanations, @NTaylorMullen ! I have created an issue on the Roslyn side: https://github.com/dotnet/roslyn/issues/38596 Let us see what we can do.

This was fixed externally for 16.4-preview2 with a slight caveat that formatting is slightly broken after completing an override statement. Closing for now since the core blocker of this is fixed.
Also to note, re-formatting the document will fix the miscellaneous formatting bug.


Hive SyncSet GenevaActions

Implements:

Geneva Action to list selectorsyncsets for a given hive instance
Geneva Action to retrieve an individual selectorsyncset on a given hive instance
Geneva Action to list syncsets for a cluster defined by resource id in a hive instance
Geneva Action to retrieve an individual syncsets on a given hive instance

How to call:
List selector/syncsets - /admin/hivesyncset?namespace={namespace}?isSyncset
Get a selector/syncset   - /admin/hivesyncset/syncsetname/{syncsetname}?namespace={namespace}?isSyncSet
Notes:

namespace should be "" for selectorsyncsets
namespace cannot be "" for syncsets
isSyncSet can be true/false, setting it changes from using default selectorsyncset to syncset

Which issue this PR addresses:

Fixes
What this PR does / why we need it:

Test plan for issue:

Testing is underway., below is the plan.,

Connect to shared AKS cluster's hive
Create a cluster and Syncset in CD namespace and SelectorSyncSet with hive
Run admin GA using curl via localrp

Is there any documentation that needs to be updated for this PR?

How do you know this will function as expected in production?

It would be better to refactor like https://github.com/Azure/ARO-RP/pull/3665/files first to focus on the actual change.

I have added my comments mostly for enhancement. However I'd like to request changes for the usage of HTTP 403 Forbidden status as I've specified. HTTP 400 Bad Request should be the right response for client requests that lack parameters or wrong parameters.

Resolved, made the changes.

/azp run ci


Eww Magic Variables

Eww Magic Variables
To avoid useless commands, magic variables should replace manual polling.
To migrate:

[ ] EWW_CMD (especially in scripts)
[ ] EWW_DISK
[x] EWW_BATTERY
[ ] EWW_NET
[ ] EWW_TIME

scripts/workspaces  must use default eww config location, since it is revoked by hyprland and not eww


toolVersion ignored when trying to check SpotBugs with another SpotBugs version

Hello,
I am trying to set up a test environment for my own SpotBugs modifications. Among the test projects there is SpotBugs itself. However, I need a stable base to correclty compare the results of my branch to the master so I want to have a SpotBugs which is only used as a test project and both the master version and my branch analyze it (they are published into the local Maven repository). However, I have some problems with this setup which I could not manage to solve until now. What I tried is to enter toolVersion into java.gradle:
spotbugs {
...
toolVersion = '4.2.3-SNAPSHOT'
...
}
I added the local Maven repository in build.gradle:
allprojects {
repositories {
mavenCentral()
mavenLocal()
}
...
}
To avoid confusion, I changed the version number in the test project, also in build.gradle:
...
version = 4.2.3-TEST
...
(Actually, I did this first after I did not find the bugs reported by my own checker.)
However, if I run it using ./gradlew spotbugsMain, the test project is executed instead of the one in the Maven local repository. The second line of the main.xml (oh yes, I also changed the format to xml, but it should not matter at all):
This is incorrect, the first version should be 4.2.3-SNAPSHOT instead of 4.2.3-TEST. If I change toolVersion to an invalid value, e.g. UNKNOWN then the analysis sometimes fails, sometimes not.
The strange thing is that if I try to analyze another project, e.g. microMathematics from GitHub, which is also a Gradle-based project, the toolVersion option works correctly:
If I change toolVersion to an earlier one, which is also in my local repository, then this line changes correctly. If I set some invalid value, e.g. UNKNOWN then the analysis fails, because it cannot find it in any of the repositories.
What do I wrong? How could I force Gradle to execute the SpotBugs version described by toolVersion from my local repository instead of the version under test?
I also posted this earlier: https://github.com/spotbugs/spotbugs/issues/1493, but maybe this is the better place for it, because this seems to be a Gradle plugin issue.

As per our Contributing guidelines (https://github.com/spotbugs/spotbugs-gradle-plugin/blob/master/.github/CONTRIBUTING.md#before-reporting-a-problem) please create a minimum and complete example

Here you go:
Files.zip
In this zip you can find my build.gradle, gradle/java.gradle and also the generated spotbugs/build/report/spotbugs/main.xml file.
Please tell me if you need anything more.

That isn't a complete project.

OK, step by step then:

Check out SpotBugs from GitHub: git clone https://github.com/spotbugs/spotbugs.git
cd spotbugs
Build SpotBugs: ./gradlew build
Install SpotBugs: ./gradlew install
Publish SpotBugs to Maven local repository: ./gradlew publishToMavenLocal
Copy build.gradle from the attached zip file into the SpotBugs root directory: cp _<unpacked zip>_/build.json .
Copy java.gradle from the attached zip file into the gradle subdirectory: cp _<unpacked zip>_/java.json gradle
Analyze SpotBugs with SpotBugs: ./gradlew spotbugsMain
Check the generated XML file in ./spotbugs/build/report/spotbugs/main.xml. The second line shows that version used was 4.2.3-TEST instead of 4.2.3-SNAPSHOT. That is the problem.

Of course, if you whish, I can attach the whole SpotBugs with the two files I modified. Please tell me if you need it or you need any more information to reproduce the issue.

Do you need more information to reproduce the issue? Should I upload the whole SpotBugs project with the two files I modified?

I think this is limitation of Gradle itself. If the project depends on itself, the current project is always used in the build.
I faced similar case #424 previously.
I'm going to close this issue.


On laptop with small screen not all countries are selectable due to size on screen

On windows 11, Firefox, 15 inch display

Fixed


Calico in eBPF mode doesn't forward traffic from AWS NLBs properly

Motivating Scenario
After creating a Kubernetes Service of type "LoadBalancer" annotated with "service.beta.kubernetes.io/aws-load-balancer-type" with value "nlb," the Kubernetes AWS cloud provider creates an EC2 Network Load Balancer. My Service has an external traffic policy of "Cluster," in a Kubernetes cluster with three worker machines striding three subnets in three availability zones, so in this simple case the NLB winds up with a listener per Service port each forwarding to a target group with three targets (arriving at the corresponding node port). Since our external traffic policy is "Cluster," all these worker machines are eligible targets, regardless of whether a pod selected by the Service is running there.
I have one pod running that's selected by this Service. Calico is in eBPF mode, with BIRD as the backend (for now, per kops issue kubernetes/kops#10168), and my lone IP pool is using VXLAN in cross-subnet mode.
The network ACLs in play are all wide open, allowing everything, and the security group rules protecting the worker machines are also now wide open, allowing all traffic on all protocols from everywhere, for the sake of discerning what could be responsible for the blocking here.
Expected Behavior
Connections established with and traffic sent through the NLB should arrive at the target pod, whether the NLB is allowing cross-zone load balancing or not. Even with cross-zone load balancing disabled, each NLB listener should contact worker machine targets in its same availability zone on the node port, and that machine should forward the packets if necessary to a different worker machine that's hosting a target pod.
Current Behavior
My pod only receives this traffic in two cases:

With cross-zone load balancing disabled, requests landing at the NLB listener sitting in the same zone as the target pod's hosting machine reach the target pod.
That is, contacting a listener in a different zone fails, even though the AWS API reports the target group as having three healthy targets—again, one per zone—and includes all three listeners' IP addresses in the NLB's DNS A record.
With cross-zone load balancing enabled, approximately 1/3 of the requests landing at any of the NLB listeners reach the target pod.
Since each listener can contact any target, there's an approximately one in three chance of the listener choosing the machine hosting the target pod.

Presented differently, consider machines M1, M2, and M3 in availability zones Z1, Z2, and Z3, with one pod running on machine M2 in zone Z2 (denoted by 🎯 below).

Machine
Zone
Success with CZB Enabled
Success with CZB Disabled

M1
Z1
~33%
:no_entry_sign: 0%

M2 🎯
Z2
~33%
✅ 100%

M3
Z3
~33%
:no_entry_sign: 0%

I visited each of these three machines and ran tcpdump, isolating different network interfaces, looking to see which telltale traffic arrives. The successful requests' HTTP content appeared on one of the veth-prefixed interfaces, originating from the original client IP address on a random port and destined for the pod IP address on the container port.
Past that, I tried—and I mean reallly tried—to find evidence of this traffic arriving and getting blocked on other interfaces, but to no avail. With cross-zone balancing disabled, I figured that a given NLB listener could only send traffic to one worker machine. Running tcpdump on one of the two worker machines not hosting the target pod, I expected to see traffic arriving and either getting blocked before leaving that machine, or getting forwarded to the machine hosting the pod. There were lots of packets arriving from the NLB listeners—probably the health checks—all of small size with no payload, but I couldn't see any of the HTTP requests arriving.
The VPC flow logs indicate no rejected traffic involving the service port, node port, or container port. I see most—if not all—of my connection attempts present in the flow logs with an "ACCEPT" outcome. If some are not being accepted, though, they're not present in the logs with a "REJECT" outcome.
Variation and Comparison
If I switch from eBBF to using kube-proxy with either iptables or ipvs, with no other changes, all requests succeed.

If I switch from cross-subnet encapsulation to always use encapsulation, the outcome doesn't change.
If I switch from VXLAN to IP-in-IP encapsulation, the outcome doesn't change. (I think. I may need to test that again.)
Steps to Reproduce

Set up Calico using eBPF mode in Kubernetes cluster with machines spread across multiple subnets, and probably across multiple availability zones.
Unfortunately, it is difficult for me to add more subnets in a single zone to see whether it's the zonal or subnet-level separation that makes the difference here.
Create a Kubernetes Service of type "LoadBalancer," annotated to summon an NLB.
I'm not certain that there's anything special about Kubernetes here; this same problem would probably apply to a hand-crafted NLB, and probably outside of a Kubernetes cluster.
Look up the IP addresses of the NLB's listeners using its DNS A record.
Create a pod with a server, such as NGINX running an "echo" handler.
Note which node hosts the pod, and in which availability zone that node's machine sits.
Issue requests against each of the NLB listeners with cross-zone load balancing disabled.
Observe that requests against only one of the listeners succeed.
Issue requests against each of the NLB listeners with cross-zone load balancing enabled.
Observe that all listeners behave similarly, only succeeding approximately 1 / listener count of the time.

Context
We would like to have the option of using NLBs for our Kubernetes Services together with Calico in eBPF mode, partly to take advantage of being able to preserve client IP addresses with external traffic policy "Cluster" without using the PROXY protocol.
Your Environment

Cloud Provider: AWS EC2 ("us-east-2" region, VPC networking)
Calico version: 3.16.4 (as deployed by kops 1.19)
Orchestrator version: Kubernetes 1.19.3
Operating System and version: Flatcar Container Linux

/etc/os-release
NAME="Flatcar Container Linux by Kinvolk"
ID=flatcar
ID_LIKE=coreos
VERSION=2643.1.0
VERSION_ID=2643.1.0
BUILD_ID=2020-10-13-1801
PRETTY_NAME="Flatcar Container Linux by Kinvolk 2643.1.0 (Oklo)"
ANSI_COLOR="38;5;75"
HOME_URL="https://flatcar-linux.org/"
BUG_REPORT_URL="https://issues.flatcar-linux.org"

@hakman, @rifelpet, and @johngmyers, I thought you might be interested in this issue at the interesction of kops, Calico, and NLBs.

Where is the traffic originating from, within the cluster or outside the cluster?
Is the NLB internal or internet-facing?
What error message does the client report when requests fail?
I know you mention wanting to preserve client IP addresses but I would be curious to see if this also happens with targets registered by IP address rather than instance. The built-in AWS cloud controller manager doesn't support this though. The aws-load-balancer-controller supports registering pod IPs as targets but I don't believe it supports registering node IPs, so if your pod IPs aren't routable within the VPC then this may not be an option. I could see that being a reasonable feature request though.
I'm wondering if you're experiencing this NLB limitation.

Where is the traffic originating from, within the cluster or outside the cluster?

From outside the cluster. I tried these experiments both from outside the VPC and from inside on a bastion machine, though, with equivalent results.

Is the NLB internal or internet-facing?

It's internet-facing (public).

What error message does the client report when requests fail?

It times out trying to establish the TCP connection.

I know you mention wanting to preserve client IP addresses but I would be curious to see if this also happens with targets registered by IP address rather than instance. The built-in AWS cloud controller manager doesn't support this though.

Right, these targets are registered by instance ID, which makes them ineligible for hairpin connections, as you noted below.

I'm wondering if you're experiencing this NLB limitation.

I don't think so. Considering a client outside of AWS's network, the connection attempt lands at the NLB listener, which should in turn connect to any of my Kubernetes worker machines. Each of those might in turn establish a connection to a sibling machine, but none of them should go back out to the NLB as a client for any reason.

This issue is quite specific to AWS when the traffic from the backing pods end up being routed through different eni than the eni the incoming traffic arrive on. We are aware of the issue and we have a fix in progress https://github.com/projectcalico/felix/pull/2549 that should land soon.

Thank you, Tomas. I road that issue, but was left uncertain as to whether it pertains to EC2 instances with only one ENI attached. Are the multiple interfaces mentioned there counting the VXLAN interfaces?
The behavior I've observed could also be induced if we were treating our external traffic policy incorrectly, where the health check was acting as if the policy was "Cluster," but the proxying was acting as if the policy was "Local." Is it possible to pass through this portion of (*Syncer).applyDerived for a Service of type "LoadBalancer?" Should that block also apply for the "LoadBalancer" case?

Also, Tomas, am I understanding your description correctly that when you say "traffic from the backing pods," that suggests that the target pod received packets and is now responding. Since I don't see evidence of the HTTP server acting on these requests, are you referring perhaps to packets that arrive ahead of the HTTP request, such that the connection negotiation never completes?
Is there a test I could run with tcpdump to confirm that this is what's happening?

Also, Tomas, am I understanding your description correctly that when you say "traffic from the backing pods," that suggests that the target pod received packets and is now responding. Since I don't see evidence of the HTTP server acting on these requests, are you referring perhaps to packets that arrive ahead of the HTTP request, such that the connection negotiation never completes?

yes, the connection would not set up. If this issue is the same one we are trying to fix, not even the TCP SYN-ACK would return to the client.

Is there a test I could run with tcpdump to confirm that this is what's happening?

You can tcpdump within the backing pod and see whether you get the TCP SYN and you should see the SYN-ACK response
You can tcpdump on the node that hosts the backing pod and you should see a VXLAN packet port 4789 VNI 0xca11co leaving the pod that carries the SYN-ACK but likely being routed different eni than eth0.
Just to be sure, are you using aws cni?

Just to be sure, are you using aws cni?

No, we're not. We're using Calico as the CNI, for both IPAM and policy. Does that change your assumption about what's wrong here?
By the way, 0xca11co is a clever choice.

Just to be sure, are you using aws cni?

No, we're not. We're using Calico as the CNI, for both IPAM and policy. Does that change your assumption about what's wrong here?

It does, it is still likely related, but I will need to look more closely into this. I will let you know once I do.

I did confirm that changing my Service using an external traffic policy of "Local" alleviates this problem.

This is still consistent with what I described :arrow_double_up: as that does not forward packet between nodes and thus avoids the issue  that we are trying to tackle.

An embarrassing but still puzzling update: Calico 3.16.4's calico-node image does work fine—after I've replaced all of the machines in my cluster, even when I've told calico-node to clean up any iptables rules.
In my upgrade scenario, I switch calico-node into eBPF mode, wait for all the replacement pods to become healthy, then stop kube-proxy on all the nodes, then reconfigure calico-node to clean up the iptables rules, and wait for the replacement pods to become healthy again. At this point, I suffer the behavior described above.
Once I replace the worker nodes (or, rather, all the machines registered as targets for the Service load balancer), though, the node port routing works as expected. Perhaps the iptables cleanup procedure is leaving behind something that precludes this routing from working as intended.

Few ideas:

As you said, incorrect cleanup.
Problem with health ports when both kube-proxy and calico are running.  We'll both try to open the health ports.  Perhaps we fail silently without retrying to open the port and then, once kube-proxy is removed, there's no-one listening for health ports?
Some subtle BPF routing issue.

If you can get hte cluster into the bad state again, you can try tcpdump as Tomas described to see if the request or response traffic is lost.  Then we can binary chop from there to find out if it's lost on the ingress node or the backing node, then if it's dropped by BPF program or iptables, etc...

Regarding incorrect cleanup, I compared the iptables-save output from a machine on which kube-proxy had run, but where calico-node had cleaned up, and a rebooted machine in the same cluster on which kube-proxy had never run. The former's rules are a superset of the latter's. Here's what I found (where additions indicate what calico-node did not clean up):
"nat" table
  :KUBE-POSTROUTING - [0:0]
+ :KUBE-PROXY-CANARY - [0:0]
  :cali-POSTROUTING - [0:0]
...
  -A POSTROUTING -m comment --comment "kubernetes postrouting rules" -j KUBE-POSTROUTING
+ -A POSTROUTING ! -d <IP_ADDRESS>/10 -m comment --comment "kubenet: SNAT for outbound traffic from cluster" -m addrtype ! --dst-type LOCAL -j MASQUERADE
+ -A POSTROUTING -s <IP_ADDRESS>/10 -d <IP_ADDRESS>/10 -j RETURN
+ -A POSTROUTING -s <IP_ADDRESS>/10 ! -d <IP_ADDRESS>/4 -j MASQUERADE --random-fully
+ -A POSTROUTING ! -s <IP_ADDRESS>/10 -d <IP_ADDRESS>/24 -j RETURN
+ -A POSTROUTING ! -s <IP_ADDRESS>/10 -d <IP_ADDRESS>/10 -j MASQUERADE --random-fully
  -A KUBE-MARK-DROP -j MARK --set-xmark 0x8000/0x8000

"filter" table
  :KUBE-KUBELET-CANARY - [0:0]
+ :KUBE-PROXY-CANARY - [0:0]
  :cali-to-wl-dispatch - [0:0]
...
  -A FORWARD -j DOCKER-USER
+ -A FORWARD -s <IP_ADDRESS>/10 -j ACCEPT
+ -A FORWARD -d <IP_ADDRESS>/10 -j ACCEPT
  -A OUTPUT -j KUBE-FIREWALL

I'm going to try removing those rules to using the iptables tool to see whether it restores proper routing behavior to this machine.

You can tcpdump within the backing pod and see whether you get the TCP SYN and you should see the SYN-ACK response

Within the serving pod, I see the following pattern play out repeatedly when issuing HTTP requests through a node port on a different machine:

source address → pod address
TPC flag: SYN
pod address →  source address
TPC flag: SYN-ACK
source address → pod address
TPC flag: RESET

None of the HTTP request makes it across. That suggests that the other machine receiving the request on its node port is trying to connect to the pod, but it looks like the other machine then closes the connection instead of sending the ACK packet.
If I run watch -n 1 nestat -a in the serving pod, I can see lots of connections appearing and disappearing frequently, all in state LAST_ACK or SYN_RECV.

You can tcpdump on the node that hosts the backing pod and you should see a VXLAN packet port 4789 VNI 0xca11co leaving the pod that carries the SYN-ACK but likely being routed to a different eni than eth0.

I'll try this next.

I'll try this next.

I can't figure out how to see any of this traffic occurring on the host machine. I started out probing narrowly, and kept backing out until I'm looking at all traffic on all interfaces, and I don't see anything that corresponds to these requests.

I performed another experiment tonight, where after migrating from Flannel to Calico, I replaced all the machines in the cluster, and then transitioned Calico to use eBPF mode. These new machines started out running kube-proxy; I stopped it on all the machines, then restarted calico-node in eBPF mode, telling it to clean up kube-proxy's leftover iptables rules.
Once calico-node had restarted again, I ran my experiment with my Service of type "LoadBalancer" using an NLB, with an external traffic policy of "Cluster." I was unable to reproduce the problem reported here. This suggests that there's some artifact left over from the Flannel-to-Calico migration that prevents eBPF mode from working properly for this scenario. I did try using the ip link delete command to delete the network interfaces that were present after migration, but not present on new machines, to see if those interfaces were the problem. Deleting them didn't change the outcome, though. I am left to wonder what else is left over from migration that could interfere here.
Since I've interpreted my experiments incorrectly before, I'm not trusting this first test yet. I'll report back tomorrow after a second test.

My testing confirms that this problem is fixed by #2589 (and #2588).
Thank you, @tomastigera and @fasaxc!


Errors in train_multi_label.json

Hi,
I wonder how you generated the train_multi_label.json but there seem to be errors in this file. For example, 7a6o has two chains : A and B in pdb but in this file it's labeled as 7a6o_AAA and 7a6o_BBB. This and other similar mislabellings have given me errors. Could you maybe upload the script that generated this json file? Thanks.

I just check the data, and cannot find the problem.
In train_multi_label.json, it has:
    "7a6o_AAA": [
        "7a6o_AAA",
        "7a6o_A"
    "7a6o_BBB": [
        "7a6o_B",
        "7a6o_BBB"

In pdb_labels, it has:
7a6o_A.label.pkl.gz
7a6o_AAA.label.pkl.gz
7a6o_B.label.pkl.gz
7a6o_BBB.label.pkl.gz

In pdb_features, it has:
7a6o_AAA.feature.pkl.gz
7a6o_BBB.feature.pkl.gz

I see. Sorry since downloading the full dataset never worked for us, I prepared all the features by myself and I extracted the chain names from mmcif files, which gave me 7a6o_A and 7a6o_B instead of 7a6o_AAA and 7a6o_BBB. Now it makes sense. Thanks for checking it.

@henrywotton you now can download the full dataset from ByteDance hosted storage, check the README.


Video favourit button

Such a button would be great, to easy find videos, to continue watching:)

I would love this feature, but I need version 2 of the mediathekviewweb API to be released before I am able to implement this. Maybe @bagbag can give some status update / estimate / maintainer status?

There is now a way to implement this based upon the current code base. This feature will be one of the next steps down the road.

This issue is fixed with version 8.0.0


Add dtest to test dynamic namespace updates

Add dtests to ensure dynamic namespaces are created/removed as expected

@prateek Is this done? I know we have a test for dynamic namespace delete.
If its not done, if you could write a brief description of what needs testing I could probably tackle it since I just debugged the namespace delete test and have a sense of that part of the codebase

Nah it's still open. It'll be a good introduction to the m3db e2e testing framework (dtests) we use. The point is to add a test case for namespace addition/deletion to this list ~ https://github.com/m3db/m3db/tree/master/tools/dtest/tests. It's similar to the integration test you fixed, but using a distributed test harness.


Correct mask to be able to control attitude

Pitch desired was not changing with previous mask. Tested with bebop2

I'm confused.  These are "ignore" bits - indicating which axes the vehicle should NOT honour in the message.
This PR seems to be telling the vehicle to ignore roll/pitch - the opposite of the title.
What were you seeing before the patch?
What are you seeing after the patch?
Which firmware is running on the vehicle?

(definitely something I'd like to get sorted before doing a release!)

From what I understood looking at other messages (position and speed), the last two bits correspond to roll and pitch rate, not roll and pitch. In the example roll and pitch rate are set to zero, which I want to ignore.
I was using firmware 3.5.7 (a bit old) and testing without propeller, moving the drone by hand for safety issues for now.
Before the patch, the motors were just turning at the same speed when holding position and when requested to move forward (negative pitch) then backward. I was able to check in the log, that the requested pitch was not changing, which I assumed was due to the confict with 0 pitch rate requested.
After the patch, the motors were changing speed, and I could check in the log that the requested pitch was changing.
I updated today to 3.6.7 to test again and got different results : when I first tested with the version before the patch (00000003.BIN), it worked as expected, which surprised me. However, I repeated the test several times and did not work again. When tested with version after patch it worked every time I tested (00000004.BIN)
0000000.zip


about smooth L1 loss

Appreciate your great work! I found the smooth L1 (huber) loss in losses.py is different from the common huber loss format. I don't know the reason of such modifications.

Hi @JIEMIN1995 , I don't know "common huber loss format", could you attach it? Let me find out what are the differences.

common format :
0.5 * x^2                  if |x| <= d
d * |x| - 0.5 * d^2     if |x| > d     ,   where d is delta and x is the difference between predictions and labels
yours :
f(x) = 0.5 * (sigma * x)^2          if |x| < 1 / sigma / sigma
|x| - 0.5 / sigma / sigma    otherwise

https://github.com/rbgirshick/py-faster-rcnn/files/764206/SmoothL1Loss.1.pdf
This is the official doc.


fortls 2.2.6 upgrade difficulties

Hi
Updating from 2.2.5 to the newest Version is causing some troubles:

Win 11
VS Code 1.65.1
Python 310

Hi @JHenneberg thanks for reaching out. So I was under the impression that this should work on Windows. Does installing something else like this work? e.g. python -m pip install numpy --upgrade.
As for the Modern Fortran error, it would indicate that some of the arguments passed in fortls are not supported. Would you mind posting your arguments here (both settings.json and .fortls, if any)

I also just realised that the installation seems to be completing successfully, which is odd. From what I can tell the command line arguments are not interpreted correctly by the windows command-line shell

In general I update my packages like this including fortls. Before I did not had any iusses. But I realised right now when I am updating pip itself I get the same error. So propbably this is a general problem and not a fortls specific one (-ortls just put me on the wrong track I guess).
Concerning the second error I just have one setting "fortran.fortls.notifyInit": true. I downgraded to 2.2.5 then the error does not appear.

Concerning the second error I just have one setting "fortran.fortls.notifyInit": true. I downgraded to 2.2.5 then the error does not appear.

That is strange, I had a look at the Windows tests and they seem to be correct. I was also unable to replicate on my Linux machine. The only two things that v2.2.6 did was add the autoupdate functionality and deprecate --variable_hover.
If you install again v2.2.6, you might want to try and see if the binary is working, i.e. fortls -v and fortls -h yield any output, and then on a simple fortran file do something like fortls --debug_filepath yourfile.f90 --debug_rootpath . --debug_parser

for 2.2.5:
fortls -v -> 2.2.5
for 2.2.6:
fortls -v ->
Traceback (most recent call last):
  File "C:\Users\He\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\He\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "C:\Users\He\AppData\Local\Programs\Python\Python310\Scripts\fortls.exe\__main__.py", line 4, in <module>
  File "C:\Users\He\AppData\Local\Programs\Python\Python310\lib\site-packages\fortls\__init__.py", line 12, in <module>
    from .langserver import LangServer
  File "C:\Users\He\AppData\Local\Programs\Python\Python310\lib\site-packages\fortls\langserver.py", line 17, in <module>
    from packaging import version
ModuleNotFoundError: No module named 'packaging'

Awesome, that is unfortunate, I was hoping that I wouldn't have to manually update my dependencies and find would just work, but I guess not. You can solve the issue by installing manually https://packaging.pypa.io/en/latest/index.html e.g. pip install packaging
I will fix it in the next release.

what's really puzzling me about this one is that it is a dependency in setuptools so it should be present for all installations. Anyhow, I have gone ahead and fixed it. I will release a version soon. Need to sort out some other things for conda first

what's really puzzling me about this one is that it is a dependency in setuptools so it should be present for all installations.

Maybe the pip packaging machinery makes a distinction between build time and run time dependencies?

I think you are right, but I also think I was wrong saying that packaging was included in setuptools. The SO post . That is simply not true. venvs come with pip and setuptools but not packaging


Fix build

I wrongly thought when we merged #21 that there was Ci to check it builds. This fixes the build and adds CI.

All looks good to me


Access click event navbar in other components

how can I access?

@brunoksato look at the NavBar.js file.  If you are using the provided NavBar you can pass in various props to your routes.  Of note to you, navLeftHandler and navRightHandler are functions that can be passed down.  Is this what you are looking for?

yes, how to access rightButton in other components, i have problem with this, may be some mistake my

Since this is hooked in to redux, you should pass a custom action in to your current routes navRightHandler prop and then respond accordingly in your component.  Does this make sense?  Perhaps if you give me an example of what you want to do, I can try throwing something together over the next few days for you.

closing for now, reopen if you are still having problems


Back-navigation button not visible on Android without Drawer

If Drawer is not created, page back button is not visible on Android.
// tabris.create("Drawer");
tabris.create("Page").open();
tabris.create("Page").open();

This has been fixed on android for the next release.

This has been fixed now.


Update to oteapi-core v0.1.0

Closes #51

Codecov Report

Merging #52 (7b44add) into master (9d42e13) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #52   +/-   ##
=======================================
  Coverage   69.49%   69.49%
=======================================
  Files           8        8
  Lines         295      295
=======================================
  Hits          205      205
  Misses         90       90

Flag
Coverage Δ

pytest
69.49% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9d42e13...7b44add. Read the comment docs.

Will be implemented in #44


Adding n-fold cross validation as an option to PLSR

model_selection.KFold(n_splits=n, shuffle=True, random_state=1)


Restart ESP on ping failure

Description
This PR addresses the WiFi reconnection issue described in #298. If the pinger is unable to ping the gateway, then the ESP is restarted. I'm open to suggestions for a better approach.
How Has This Been Tested?
I have been running this firmware for more than two months without any issues. On average, the device is restarted twice per day. I suspect this may also be related to the behavior of the access point.
Inverter type

[x] Simulated inverter
[X] SPH-6000 BL-UP

Stick type

[ ] Shine X
[X] Shine S
[x] Lolin32
[ ] Nodemcu32

Thank you!


Import logrus as log for readability

This is the recommended way to do this, and improves readability and
reduces cognitive load:
https://github.com/Sirupsen/logrus#example
@sandlerben

Great idea.


Performance Non-blocking parallel

hi Mr.Stil,
it's the Non-blocking requests in parallel compare to others methods Non-blocking requests in parallel  is more fast and better performance?
https://github.com/stil/curl-easy#non-blocking-requests-in-parallel

The performance is the same, but in "non-blocking" method you can do something else while requests are processed. And if you use blocking method, the script just hangs until processed requests are complete.


Adding temperature dependent properties (arrays).

As the title.
Close #151

Let's add a test for this.

@germa89, please make a minor release. This seems to be a needed feature.

@germa89, please make a minor release. This seems to be a needed feature.

Done. https://github.com/pyansys/pymapdl-reader/releases/tag/v0.52.0


ISPN-9009 Add test interrupting conflict resolution

https://issues.jboss.org/browse/ISPN-9009
@danberindei Creating a new PR to see how stable the test is now.

@danberindei 4 runs with no failure, so I think that confirms that the previous problems were caused by the old retry/cancel logic.

Integrated, thanks Ryan!


Potential Jacobian sparsity bug

The tki_zutphen_berkel model by @harm-nomden-sweco runs into some convergence issues, which can be partially be solved by setting sparse = false. This indicates that there is a problem in sparsity.jl. Some investigation of the jacobian from this model might point out where the problem is.

I had a look into this. When comparing the basin storages for sparse = true and sparse = false there are particular basins with notable differences:

However, I have not been able to deduce the cause of this.

One thing that does not solve this problem but might make some models a bit more stable: In sparsity.jl, Outlet belongs in the category of LinearResistance and ManningResistance.
The sparsity structure now is quite highly optimized, which requires maintenance while we might not actually need it. It would make the code much simpler if we just say that any basin depends on itself and the basins it is connected to (possibly via FractionalFlow). This introduces some false positives but I don't think the performance drop will be significant. Extra care is still required for continuous control.

Yeah the simpler approach sounds easier to maintain.


Add module container test

Q
A

Is bugfix?
❌

New feature?
❌

Breaks BC?
❌

This PR will be updated soon. Problems in tests are valid and to be solved.


[Feature Proposal] Alternative way to declare a plugin to optionally accept options

Right now, if a plugin accepts options (other than values that it pulls from the config/theme), instead of directly exporting the plugin function, it needs to export a function that takes options as an argument and returns the real plugin. Which means that even if you don't want to pass any options and just use the defaults, you still have to import the plugin with an extra set of parentheses, e.g.:
plugins: [
  require('tailwindcss-transforms')(),
]

...instead of the simpler, nicer-looking, and more consistent with Tailwind's documentation:
plugins: [
  require('tailwindcss-transforms'),
]

To make this possible, Adam suggested the following PostCSS-inspired syntax before:
tailwindcss.plugin('filters', function (options) {
  return function ({ addUtilities }) {
    // ...
  }
})

This would let us type check on the return value of plugin and know to just invoke the underlying function if no options were passed. Wouldn't be a breaking change either way.

+1 for this

This is supported in master and will be in the next release (#1268)


Unity Core Module

When referencing the project in Program.cs, I'm getting this error.

Hello @Kaspoehh,
Thanks for reporting the issue.
I think you are referencing the Typesvisualizer project in Program.cs, right?
Please understand that TypesVisualizer is an example of how DgmlBuilder can be used. It is not intended as a library that can visualize types of any project. The reason is that I do not fully understand how to load assemblies for just reflection. I think that your case demonstrates that the loading mechanism that I used is not always working. If you happen to know a better implementation, I would welcome a pull request.

Hi,
I fixed it by copying the UnityEngine.Coremodule from the unity data\managed folder in program files in the C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.7 folder. And then just link the project.


timetracking: add timer warning colors and ability to sort timers.

Originally made by @jakewilson
Rebased, added proposed changes and tested.
From my testing I fixed a couple of bugs, for example, timer going to 0 and then starting it over would show in warning color even if it was above the warning threshold.
Also when the timer is stopped in a warning state it shows the same color rather than a darker color.
Lets the user sort by ascending or descending time.
Lets the user choose a time for showing a timer warning in orange.
Closes #7240
Supersedes #7361

Made the requested changes

This should be split into separate commits for each of the features added.

Put them in 2 seperate commits.


Is there a way to configure testing client (or of dynamically changing the default client)?

I know that you can configure multiple clients, but you have to use them differently too (e.g. apollo.clients.defaultClient), so that wouldn't work well for testing.
How are nuxt-apollo users running e2e tests?
The best approach I've been able to consider is dynamically setting all clients to fetch requests from a mock server.
@bjunc  I saw that you opened a PR for multiple clients so maybe you have some thoughts on this

If you're using Apollo for request/response (not subscriptions), then testing is basically similar to how axios/REST would be.  Which is to say, similar techniques/strategies would apply.  Mock servers, stubbing, etc..
Personally, I like my e2e to be as close to an actual request/response as possible (even as far as NightWatch/TestCafe/etc, but that's not 100% necessary in my opinion).  I use mocks / stubs when testing just the front-end.
For instance, I use Vue's store library (Vuex).  My tests set a JWT on the Apollo client config (I don't use a different Apollo client, I just set different auth tokens), then fire the query/mutation store actions, which hit the actual API (but which is using a test db).
I also test the API and front-end in isolation, but that's not e2e.
For testing just the front-end, you have a few options. You could create a test Apollo client that had a baked in mock server by using a custom link.  For instance, swap out the HttpLink with a custom one that returns mock data.  Other mock strategies apply as well, of course.  Since you're testing the API calls in isolation, it should be fine to call the test client explicitly.
There's also the option of the split functionality baked into Apollo 2.  If running in test mode, your client config could have a split that uses a different uri, different auth token, or different HttpLink all-together (per above).
Another testing trick that I use that isn't e2e (but pretty cool) is that I use the eslint-plugin-graphql to compare my front-end query/mutations against the API's introspection results.  You can write tests against that, or simply let eslint do its thing.
Hope that helps.

Thanks for the detailed response.
I'd prefer not using an actual API which is why testing is a bit more difficult.
I had more of a mock server in mind. I had tried using nuxt server middleware to return the mock data but ran into a few problems. I didn't consider using an apollo link (and possibly the split functionality) but that definitely seems like the best approach. Thank for pointing me in the right direction.


Replace CSS govuk classes with nhsuk ones

This brings the interface closer in line to the prototype.

Unfortunately the second commit breaks the JS for the nested checkboxes, as found by the Playwright tests. I'm removing it from this PR.


utils: Fix close conn after starting scope

This fixes the goroutine leak in cri-o.
Signed-off-by: Mrunal Patel<EMAIL_ADDRESS>

LGTM pending tests

LGTM lol

[retest]

Seems like this is breaking systemd cgroup manager

LGTM.  @runcom where are you seeing the break?  The tests seem to be passing.

CI is failing integration tests, probably related to this change in systemd connection I guess. See comment above mine...

Jenkins has been failing with this error since yesterday before this PR. We have to fix jenkins or code that broke it.

retest

[retest]

@runcom This is the failing line in the tests:
 "$CRICTL_BINARY" -r "$CRIO_SOCKET" -i "$CRIO_SOCKET" "$@"

[retest]

this needs a rebase to fix tests I guess

I just rebased this.

Once travis passes, we can restart jenkins.

[retest]


[5.5][Driver] Support for emit-module-separately

The new incremental build mode in the Swift driver, emit-module-separately, offers a more reliable alternative to merge-module. However, it needs some compiler-side improvements and fixes to work reliably with the existing incremental building logic.

Scope of issue: These issues affect incremental compilation in emit-module-separately mode. This mode is still op-in but should be supported in future 5.5 releases.
Origination: Introduction of the emit-module-separately compilation mode.
Risk: Low as the feature is opt-in.
Resolves: rdar://83956908
Cherry-pick of #38211, #38939 and #38966.

@swift-ci Please test

Build failed
Swift Test OS X Platform
Git Sha - 40dc40659dbc938f53df6cfc634f8e77dee704ff

https://github.com/apple/swift-driver/pull/849
@swift-ci Please test macOS

The driver side PR was merged, all tests should be green now.
@swift-ci Please test

@swift-ci Please nominate

Re-testing as the last run is dated.
@swift-ci Please test

Build failed
Swift Test Linux Platform
Git Sha - 40dc40659dbc938f53df6cfc634f8e77dee704ff

error: error opening input file 'lib/libYamsTests.a' (The file was not recognized as a valid object file)
@swift-ci Please test Linux


Input type DOM UI not updated

Ionic version:  (check one with "x")
[ ] 1.x (For Ionic 1.x issues, please use https://github.com/ionic-team/ionic-v1)
[ ] 2.x
[x] 3.x
I'm submitting a ...  (check one with "x")
[x] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:

The input type doesn't updated in UI. It was workable in previous version (4.1.2), my input type change either password/text(for example password to show in cleartext), will change input.type and password able show in cleartext but it doesn't show password in cleartext in version 4.1.3 even try inspect element to check input type already updated to 'text'
Expected behavior:

Input type updated and UI for input updated
Steps to reproduce:

Related code:
insert any relevant code here

--> html
<ion-item no-lines [class.invalid]="!myForm.controls.userPass.valid  && (userPass || submitAttempt)">

<ion-input #inputPass type="password" formControlName="userPass" placeholder="{{ 'PASS' | translate }}">
<button ion-button item-right icon-only clear *ngIf="myForm.controls.userPass.value!==''" (click)="showPassword(inputPass)">

--> typescript
showPassword(input: any): any {
input.type = input.type === 'password' ?  'text' : 'password';
this.showPass = input.type === 'password' ? 'eye' : 'eye-off';
}
Other information:

Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):
insert the output from ionic info here

Cordova CLI: 6.4.0
Ionic Framework Version: 3.4.2
Ionic CLI Version: 2.2.1
Ionic App Lib Version: 2.2.0
Ionic App Scripts Version: 1.3.7
ios-deploy version: 1.9.0
ios-sim version: 5.0.13
OS: macOS Sierra
Node Version: v6.9.2
Xcode version: Xcode 8.3.3 Build version 8E3004b

Hello, thanks for opening an issue with us! Would you be able to provide a plunker that demonstrates this issue? Thanks for using Ionic!

sorry, i m not idea how to create it in plunker

@jeffreytck , i made a plunker here using your code. I may be misunderstanding the issue here, but it seems that the password does show in cleartext.

what is version of ionic-angular using?
The plunker you created is issue that faced, e.g. field is in "PASSWORD" type and beside got a icon to click and change field to "TEXT". You might test it out enter some word in field and click beside icon, the text won't show but if u try focus on field again, the type of field will change to "TEXT" for the version u created. You might try to using ionic-angular 3.3.0, there is working without issue.

Hi @jgw96 , any update for this?

I´m not sure if I am understanding correctly the problem you describe, but I am also facing a problem regarding input fields when upgrading to ionic-angular 3.5.3. Sounds like it might be the same or related.
One case is a field for recovering password. We ask for the email address of the user. By default we give it the value of the email address stored on the device. But, if the user deletes this address, types in a new one, and taps the sending button without losing focus on the email address, the value won't be updated! However, if the user taps outside of the field before tapping the sending button, it works as expected.
This happens as well with other input fields. Is there any fix for this or anyone knows if is it solved in the new version of ionic-angular?
It also seems that it happened only on the iOS version. I hope I explained it enough, unfortunately I can´t provide the code now nor test any further but if it is needed I will do it later.

For me, changing from using blur to ionblur did not solved, so i used the input event and it works again.


Drag photos out of desktop app

Again, adding for posterity

Should be addressed by #37. Which is in WIP until the secure gateway is finalized.

Done, but needs a small tweak for handling files other then jpeg, i.e., you can drag gifs out (and the work), but they have the wrong file extension.


[Question] Form / Field components - Where to find the docs

Hey I was about to start implementing a Form component on my project's lib and noticed park-ui already has a Field recipe which does much, if not all the heavy work regarding the styling. It's based on @ark/ui Field, which makes it even better. However, I can not find it on park-ui.com.
Can you link the docs?

@FranciscoKloganB
Hey mate,
I've kicked off a big initiative focused on form field components, starting with handling invalid states for regular inputs.
Regarding the Field component, here's a simple approach I'm using now:
<Field.Root>
  <Field.Label>Label</Field.Label>
  <Field.Input asChild>
    <Input />
  </Field.Input>
  <Field.HelperText>Some additional Info</Field.HelperText>
  <Field.ErrorText>Error Info</Field.ErrorText>
</Field.Root>

I'm also exploring and simplifying the API to something like this:
<TextField label="" helperText="" multiline={false} />

Visually, this should look like:

But I also want to support this style:

Looking forward to your thoughts when you get a chance.

I'm personally fan of the simplistic approach on top. Appreciate that it easily accept validation/error messages at the Form.Field and the Form.Root level.
The second stylistic approach is interesting and very unique in comparison. I can certainly image some applications that would appreciate the second version. However, on the project I'm working on I would use the second approach only for simple forms where I could anticipate the number of fields is limited, won't grow and, are tighly related. Like the example you gave.
Dunno if this what you were looking for!
Cheers


need to check the repeated pvc name in a project

In GitLab by @luotian-github on Dec 27, 2018, 11:30
delete the service's autoscale rule together with deleted service

In GitLab by @luotian-github on Nov 8, 2019, 08:02
see also #1887

In GitLab by @luotian-github on Nov 8, 2019, 08:02
PR #1933

In GitLab by @sokril on Nov 8, 2019, 08:02
fixed

In GitLab by @sokril on Nov 8, 2019, 08:30
closed

In GitLab by @sokril on Nov 8, 2019, 08:30
assigned to @sokril


Use min_value and max_value on statistics to avoid ExecutionPlan.execute

Describe the bug
Maybe related to #5535, but I couldn't find anything identical, so created a fresh issue.
If this is a known bug and you think the fix might be moderate in scope, I'm happy to have a go at fixing it?
To Reproduce
I have a custom TableProvider and ExecutionPlan, where calling execute is somewhat expensive and I want to avoid calling it if no data will match.
The execution plan can return helpful statistics from .statistics(), including for example, for one column:
...
ColumnStatistics {
    null_count: Precision::Exact(0),
    max_value: Precision::Exact(ScalarValue::Int64(Some(4))),
    min_value: Precision::Exact(ScalarValue::Int64(Some(4))),
    distinct_count: Precision::Exact(1),
},

E.g. "in this column all values are equal to 4". This is successfully used by Datafusion if I query value is null, the execute() function is never alled.
But if I query value > 5 or value < 0, the statistic is ignored and execute() is still called.
Expected behavior
min_value and max_value of ColumnStatistics should be used for pruning and the query plan should not require the "slow" execute method to be called.
Additional context
I can give a fairly minimal example if required, but I thought best to report the issue and check if it was well known before going to that effort?
I've tried this on both main (as of today) and 37.1.0

For anyone else looking for this, the solution is to implement supports_filters_pushdown on the table, then use that to apply filters within scan.
Feel free to close this if you like.

I think using the reported statistics to prune using datafusion::physical_optimizer::pruning::PruningPredicate would be a nice improvement (so each table provider didn't have to apply the basic min/max filters themselves)

Relabed from bug to feature -- thanks @samuelcolvin

@alamb using PruningPredicate makes sense, but please can you point me at where I need to make changes to add this functionality?

@alamb using PruningPredicate makes sense, but please can you point me at where I need to make changes to add this functionality?

I recommend updating the existing though poorly named AggregateStatistics pass
And there you could potentially call ExecutionPlan::statistics() and use PruningPredicate to prove that some predicates can't be true and replace them with PlaceholderRowExec

(Thank you for working on this, bTW)

@samuelcolvin have you already started to write code?

No code yet, if you'd like to work on this, feel free.

Actually I'm on a flight today, so might have some time to work on this.

Progress update, I've got min & max stats pruning "working" in our code, however I immediately ran into #10536, I'll let you know how I get on.

You know it occurs to me that @dmitrybugakov  / @jayzhan211  may be working on a similar feature with a different approach on https://github.com/apache/datafusion/issues/10456 🤔  I


Use ninja instead of make when generator is ninja

在mingw下，CMake使用ninja时使用的CMAKE_MAKE_PROGRAM仍然是mingw32-make，导致如下报错：
-- The C compiler identification is GNU 8.1.0
-- The CXX compiler identification is GNU 8.1.0
-- Check for working C compiler: C:/mingw64/bin/x86_64-w64-mingw32-gcc.exe
CMake Error:
  The detected version of Ninja (GNU Make 4.2.1

  Built for x86_64-w64-mingw32

  Copyright (C) 1988-2016 Free Software Foundation, Inc.

  License GPLv3+: GNU GPL version 3 or later
  <http://gnu.org/licenses/gpl.html>

  This is free software: you are free to change and redistribute it.

  There is NO WARRANTY, to the extent permitted by law.) is less than the
  version of Ninja required by CMake (1.3).

CMake Error at C:/Program Files/CMake/share/cmake-3.14/Modules/CMakeTestCCompiler.cmake:44 (try_compile):
  Failed to generate test project build system.
Call Stack (most recent call first):
  CMakeLists.txt:28 (project)

-- Configuring incomplete, errors occurred!

生成的CMake命令中有-DCMAKE_MAKE_PROGRAM=C:\mingw64\bin\mingw32-make.exe和-G Ninja，与StackOverflow上的问题类似。

thanks


FBI can't recognise a .cia

Hello, I'm aware this issue has been raised before and fixed- using safehax on my 3dsxl i can't get the latest release of FBI to install a particular game backup cia. It just shows as an archive, with the option to delete, rename, copy, etc. In the previous thread you posted a link that seems to have helped people in the past but this is no longer available

Are you on 11.2.0?

Yes

11.2.0 is not officially supported yet by FBI.


[TS migration] Migrate 'PaymentUtils.js' lib to TypeScript

Details

Migrated PaymentUtils.js to TypeScript
Fixed Issues

$ https://github.com/Expensify/App/issues/24889
PROPOSAL: https://github.com/Expensify/App/issues/24889
Tests

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

Offline tests

QA Steps

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

PR Author Checklist

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

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

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

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

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

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

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

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

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

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

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

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

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

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

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://github.com/Expensify/App/assets/39538890/004af768-3610-4479-8181-0ec4f7347aa0

Mobile Web - Chrome

https://github.com/Expensify/App/assets/39538890/6680eb38-5908-469e-a27d-3884478223c5

Mobile Web - Safari

https://github.com/Expensify/App/assets/39538890/0cdfc058-0417-482a-afea-f67939e47589

Desktop

https://github.com/Expensify/App/assets/39538890/233daf79-16cb-4c0a-a5e2-0eca52f52358

iOS

https://github.com/Expensify/App/assets/39538890/ddf1672c-4f70-43bb-bd3e-6ce9052aadc9

Android

https://github.com/Expensify/App/assets/39538890/8be7a1e2-74e8-4841-a90f-60f9c5551e5e

Thanks for clarifying @blazejkustra. I realized, and I will be completing this checklist today.

Reviewer Checklist

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

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

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

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

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

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

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

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

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

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

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

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

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/3069065/7fc053d0-0fce-47cb-aba2-7375e7b1918c

Mobile Web - Chrome
https://github.com/Expensify/App/assets/3069065/d049928e-9fed-4313-8b8d-09c233d8eb49

Mobile Web - Safari
https://github.com/Expensify/App/assets/3069065/acdabf5e-67f0-4779-bd54-aa9add3e8592

Desktop
https://github.com/Expensify/App/assets/3069065/23ca750d-0d06-46d5-abef-0cc4fc2c3035

iOS
https://github.com/Expensify/App/assets/3069065/5d3d437c-049f-4cff-828d-df24445a0536

Android

@blazejkustra @joelbettner All good from my side.

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

🚀 Deployed to staging by https://github.com/joelbettner in version: 1.3.78-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.78-4 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/joelbettner in version: 1.3.79-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/jasperhuangg in version: 1.3.79-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
failure ❌

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/jasperhuangg in version: 1.3.79-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
cancelled 🔪

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/jasperhuangg in version: 1.3.79-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


Add files via upload

Your checklist for this pull request
Author name
Author:

About your game
What is your game about?

How do you play your game?

Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Image (If an image is used)

[ ] The image is in the /games/img directory.
[ ] The name of the image matches the name of your file.

Thanks for your PR!

Please modify this game to differentiate it from the maze starter game.  It requires multiple new mechanics to meet the bar.

Closing this PR due to inactivity.


Processes not reliably killed

I ran with elastic $(OF g) and piped it's non-existent stdout to another program. Fildesh died with an assertion failure and didn't kill the consumer of elastic's output.

The assertion that fails should probably be turned into an error log because it clearly can fail.

Needs more detail and a repro case. Maybe this will do it?
|< zec / "hi" /
|- elastic $(OF a)
|- cat $(XF a) -
|> stdout

Learned some things.

elastic isn't properly closing its unused stdout. That assertion violation is correct.
There's a double-free in teardown code when it's invoked from an early exit... like when the assertion failure is caught.
Kill signals aren't being sent when execfd runs as a thread.


[Feature Request] Automatic handling of 'relationship' field types for LIST, SHOW and MODAL

Feature Request
I have a CUSTOMER table which has relationship with 'COUNTRY' and 'STATE' tables.   I have defined necessary functions in model, foreign keys relationship in migration and everything works fine.  However what I noticed is...
In my setup() function of CRUD Controller, I have below code which helps me fetche the corresponding STATE NAME and COUNTRY NAME - from respective tables.
        CRUD::column('state');
        CRUD::column('country');

However, in SHOW and MODAL extra attributes for state and country getting surfaced because those columns are automatically picked up from the TABLE.
What's the feature you think Backpack should have?
Auto hide them if they are referenced by above notation.
Have you already implemented a prototype solution, for your own project?
The present workaround is to hide those columns explicitly from the user in setup() or corresponding methods.
        //--hide foreign keys
        CRUD::column('state_id')->visibleInShow(false)->visibleInTable(false)->visibleInModal(false);
        CRUD::column('country_id')->visibleInShow(false)->visibleInTable(false)->visibleInModal(false);

Hi @srigurubyo ,
By default both the modal and Show Operation show everything that's inside the List operation. I think that's the most intuitive and useful use case - where you'd want to see EVERYTHING about that entry.
If I understand correctly, you suggest only showing the attributes that have NOT been already shown in the list? If so, I'm afraid I don't agree with you 😄 It might make sense for your use case, but for the overwhelming majority of use cases I think it's best to show everything, otherwise:

if you hit directly the Show operation, you wouldn't have everything, you'd need to go out to the table to see some attributes; bad UX;
when you open the modal, you can see more details about one entry, but since the identifiable attribute for that entry was in the table, you won't see that one so you can forget / not be sure what entry the modal is about;

The solution you have is the one to go, in my opinion. If you want to explicitly not show those columns, you can do that. I'm open to reconsidering this, if more people think I'm wrong - I often am. But until then I'm going to close the issue, since it's not something we plan to do.
Thanks for raising the issue.
Cheers!

Probably I have not articulated the problem well.
Please refer code below:
    public function setup()
    {
        .....
        .....
        CRUD::column('state');
        CRUD::column('country');

        //--hide foreign keys
        CRUD::column('state_id')->visibleInShow(false)->visibleInTable(false)->visibleInModal(false);
        CRUD::column('country_id')->visibleInShow(false)->visibleInTable(false)->visibleInModal(false);
    }

When a table has reference to another table (CUSTOMER belongsTo COUNTRY) essentially you want to add stuff inside SETUP/LIST and CREATE functions of the CRUD controller.  As backpack has inbuilt logic and adheres to Laravel syntax when I declare CRUD::column('country') inside my setup() function, it AUTOMATICALLY adds column to my LIST, SHOW (because the field has been named as per Laravel standard.
However, because my CUSTOMER table has country_id as column it also displays 'country_id' as another column in my LIST/SHOW which I have to manually hide (see above code).
So in nutshell, backpack display the same field twice (1) as per Laravel standard (of having _id) and (2) backpack standard of CRUD::column('country') notation.
So, my humble opinion would be to make some standard to display of those fields which strictly adhere to Laravel standard of _id.
Hope I am clear now.


python310Packages.pg8000: 1.28.0 -> 1.29.1

Description of changes
https://github.com/tlocke/pg8000#version-1282-2022-05-17

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 173477 run on x86_64-linux 1

6 packages built:

datadog-agent
datadog-process-agent
python310Packages.pg8000
python310Packages.testing-postgresql
python39Packages.pg8000
python39Packages.testing-postgresql


Strip makes nothing render

Describe the bug
Adding any strip type to cargo makes nothing happen. No console log, anything
To Reproduce
Add
cargo-features = ["strip"]
and
[profile.release] strip = "symbols"
to Cargo.toml, trunk serve --release
Expected behavior
Page should render as normal, however console logs shouldn't be super helpful
Environment

Sycamore: master
Browser: firefox
OS: windows 10

Additional context
I know strip is an experimental feature in Rust, but it happens the same using the normal strip utility on *nix, so figure it is still applicable.
I'm going to try and look into it, but if it's not a Sycamore thing, and it's wasm-bindgen or something else, I can move the issue there

This appears to be some issue either with the new strip option or with wasm-bindgen. Probably worth opening an issue on their side.

I didn't see you responded, my bad haha, also posting a year later :P I see that issue and no reason to keep this one open as it's just that


⚠ Bofrost.fr has degraded performance

In d1a940e, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 958 ms

Resolved: Bofrost.fr performance has improved in ff4fb21 after 6 minutes.


Change the behavior of arithmetic operations between sparse tensor and scalar

Currently, the sum of a sparse tensor and a scalar is a dense tensor:
In [1]: import mars.tensor as mt

In [2]: import scipy.sparse as sps

In [3]: data = sps.rand(3, 3, density=0.3)

In [4]: a = mt.tensor(data)

In [5]: a.issparse()
Out[5]: True

In [6]: b = a + 1

In [7]: b.issparse()
Out[7]: False

In [8]: a.execute().todense()
Out[8]:
array([[0.59910055, 0.        , 0.        ],
       [0.        , 0.        , 0.        ],
       [0.46227427, 0.        , 0.        ]])

In [9]: b.execute()
Out[9]:
array([[1.59910055, 1.        , 1.        ],
       [1.        , 1.        , 1.        ],
       [1.46227427, 1.        , 1.        ]])

There is no approach to add a scalar to the nonzero entries in the matrix, we should change the arithmetic operators to support this kind of behavior:
In [3]: data = sps.rand(3, 3, density=0.3)

In [4]: a = mt.tensor(data)

In [5]: a.issparse()
Out[5]: True

In [6]: b = a + 1

In [7]: b.issparse()
Out[7]: False

In [8]: a.execute().todense()
Out[8]:
array([[0.59910055, 0.        , 0.        ],
       [0.        , 0.        , 0.        ],
       [0.46227427, 0.        , 0.        ]])

In [9]: b.execute()
Out[9]:
array([[1.59910055, 0.        , 0.        ],
       [0.        , 0.        ,0.        ],
       [1.46227427, 0.        , 0.        ]])

If we want to perform as element-wise operation, the sparse matrix should be convert to dense firstly:
In [1]: import mars.tensor as mt

In [2]: import scipy.sparse as sps

In [3]: data = sps.rand(3, 3, density=0.3)

In [4]: a = mt.tensor(data)

In [5]: b = a.todense() + 1

In [6]: b.issparse()
Out[6]: False

In [7]: b.execute()
Out[7]:
array([[1.59910055, 1.        , 1.        ],
       [1.        , 1.        , 1.        ],
       [1.46227427, 1.        , 1.        ]])

Agreed.


Add new degree type

Adds a new type in preparation for a new option HESA are adding. This was likely a missing one as they had BA but not BSc.

 Add new degree type to reference data gem


add missing ACTIVE_VENTILATION capability

this one is used most likely for cars where VENTILATION can be started from parking(auxiliary) heater

Please fix tests, thanks 👍

Please fix tests, thanks 👍

yeah I didn't realized that I need to update fixtures accordingly


Then I run the example delta-kernel-rs/kernel/examples/read-table-multi-threaded like so:
cargo run -- -e sync ../../../acceptance/tests/dat/out/reader_tests/generated/with_checkpoint/delta

Compiling libc v0.2.155
Compiling arrow-schema v52.0.0
...
Running `/Users/sam/Development/delta-kernel-rs/target/debug/read-table-multi-threaded -e sync ../../../acceptance/tests/dat/out/reader_tests/generated/with_checkpoint/delta`
Reading file:///Users/sam/Development/delta-kernel-rs/acceptance/tests/dat/out/reader_tests/generated/with_checkpoint/delta/
Arrow(
    SchemaError(
        "No such field: deletionVector",
    ),
)

Note that this happens for no_replay, no_stats, stats_as_struct, and with_checkpoint

@nicklan I'm still seeing the same error in ed2b80b127984481adba8e59879f39b9e5f871d1 both when compiled in DuckDB delta and through the above example. I'm a little confused, because in your example in #267 this seemed to work from DuckDB


TransferTransaction.addNftTransfer with NftId as parameter cause TOKEN_ID_REPEATED_IN_TOKEN_LIST

Description
I'm detecting the problem when making a TransferTransaction with nft transfer.
If is used as a parameter the type NftId when are included in the transaction several nfts some of them with same tokenId (different serial_number) and others with different I'm getting an error at executing, TOKEN_ID_REPEATED_IN_TOKEN_LIST.
If I make exactly the same transfer but using the function TransferTransaction.addNftTransfer with params like (String, Number) or (TokenId, Number) all is working as I was expecting.
I think is a possible issue I hope that I'm not misunderstanding something 🙂.
Steps to reproduce
Option failing
const nftId = new NftId(TokenId.fromString(token_id), serial_number);
new TransferTransaction().addNftTransfer(nftId, sender, receiver);

Option working
new TransferTransaction().addNftTransfer(token_id, serial_number, sender, receiver);

Additional context
No response
Hedera network
testnet
Version
v2.10.1
Operating system
Windows

Before anything else I'd suggest updating to the latest SDK as I believe this was fixed somewhat recently.

You are right @danielakhterov it is solved in more recent versions, at least since v2.17.0.
Thank you. And sorry for the inconveniences.

I experienced the same problem also in last version. The use case is, when the serial number of both Nfts are the same.
For example:
const nftsToSend = [
  {
    tokenId: "0.0.47857020",
    serial: 45,
  },
    tokenId: "0.0.47857020",
    serial: 44,
  },
  {
    tokenId: "0.0.47857106",
    serial: 44,
  }
// [...]
let trx = new TransferTransaction()
      .addHbarTransfer(receiverId, -amount)
      .addHbarTransfer(senderId, amount);

nfts.forEach((nft) => {
   const nftId = new NftId(TokenId.fromString(nft.tokenId), nft.serial);
   trx.addNftTransfer(nftId, senderId, receiverId);
});

I confirmed that this situation is also reproducible with the version of addNftTransfer with  4 parameters (tokenId, serial, sender, receiver)
const nftsToSend = [
  {
    tokenId: "0.0.47857020",
    serial: 45,
  },
    tokenId: "0.0.47857020",
    serial: 44,
  },
  {
    tokenId: "0.0.47857106",
    serial: 44,
  }
// [...]
let trx = new TransferTransaction()
      .addHbarTransfer(receiverId, -amount)
      .addHbarTransfer(senderId, amount);

nfts.forEach((nft) => {
   trx.addNftTransfer(nft.tokenId, nft.serial, senderId, receiverId);
});

I attach a capture of the printed transfer before been executed.

I have always managed to reproduce the problem, as my partner Fran says, this occurs when more than 1 different Token ID is sent and some of those Token IDs have the same serial.

This may be an issue with the transaction validation (precheck) on Hedera itself rather than an SDK issue. I'll look into it.

@danielakhterov
Ok, so this looks like Hedera is behaving as expected, when multiple serial numbers for the same token are transferred, they should be included in the same TokenTransferList
TokenTransferList should include repeat NftTransfer, one for each serial.
NftTransfer is sender, receiver and serial (+ approval optionally)
So instead of transfer
{tokenId1, [{from, to, serial1}]
{tokenId1, [{from, to, serial2}]
the transaction should be setup as follows
{tokenId1, [{from, to, serial1}, [{from, to, serial2}]
The repeated tokenId error is because there are two or more TokenTransferList with the same TokenId.
https://github.com/hashgraph/hedera-protobufs/blob/main/services/basic_types.proto

@gregscullard thanks for looking into this. We do merge the token transfers already, but perhaps we're not merging the NFT transfers and/or we're incorrectly merging when the tokenId is within a NftId. I haven't had the chance to look into this further as I was focusing on the #1152 , but I will try and get this fixed before the upcoming release.

Hey, just wanted to mention this was a great find. We did in fact have a bug in the SDK when it came to multiple NFT IDs were added which our test didn't catch as only a couple NFTs. I was able to reproduce this issue and I believe it's fixed. Will be released later today.


chore(main): release 0.8.9

:robot: I have created a release beep boop
0.8.9 (2023-12-08)
Bug Fixes

change cosign command (57659e8)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/kevinah95/hacienda/releases/tag/v0.8.9 :sunflower:


system/script/args is a block if called from the command line

Create a simple script as follows:
Rebol []
print type? system/script/args

then from the command prompt enter rebol3-base-windows-x64.exe "script.r" "1".
system/script/args is a block! instead of the expected string!. It is a string! if called from another script with do/args.

But when you use do/args the-script ["a" 1], you will get block!.

That system boot is also using these arguments, not just the script and so are being parsed in the native part.
When building a custom Rebol based app, one may use RAW_MAIN_ARGS define, so the arguments would be converted to block of strings and leaved on interpreter to process it. That is what I do in the Siskin Builder utility here and there.
But if you have an idea, how to improve it, let me know. But remember, that it is more complex than it may look on first sight.


Certain chromeOptions cause code to be unreachable for all following statements.

Like others here, I am having the code unreachable problem.  Mine is directly related to using "add_experimental_option" for Chrome Options.  I have tried it this evening with a few different options, and all are leading to the grayed lines.
I am guessing something on my machine updated, because it was fine this morning, and then not fine this afternoon.  Actually, in some of my Python files, it is still not an issue, and in others, the exact same setup and approach has grayed out lines.  The file runs fine, and opens the browser and outputs as expected, but the grayed text is terribly annoying. Please help!
To simplify, below is a code snippet showing an example.  If I comment out the line that lets Chrome run detached so it does not close when the script is done, then everything becomes normal and reachable.  But with that "add_experimental_option" line in there, the rest goes gray.

Thanks for filing the issue.
For future bug reports, it would be helpful if you pasted the code sample as text so we don't need to retype it from a screen shot. For reference, here's the relevant part of the sample:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options as ChromeOptions

chromeOpts = ChromeOptions()
chromeOpts.add_experimental_option("detach", True)
driver = webdriver.Chrome(options=chromeOpts)

I'm not able to repro the problem as reported. Could you confirm that you're running the latest version of pylance (v2022.5.1)?

The symptom you're seeing indicates that the add_experimental_option method raises an exception or otherwise does not return. If you right click on add_experimental_option and choose "Go To Declaration", where does it take you? For me, it takes me to the file "ms-python.vscode-pylance-2022.5.1/dist/typeshed-fallback/stubs/selenium/selenium/webdriver/chrome/options.pyi".
Which version of the selenium library do you have installed in your Python environment? I have version 4.1.5 installed.

Sorry about the screenshot.
I am using VSCode 1.67.1
I am running Pylance v2022.5.1
I am running Selenium 4.1.3
"Go To Declaration" took me to /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/selenium/webdriver/chromium/options.py
I see that function is defined with -> NoReturn, so I guess that's the issue. Do I just change that to None and save it?

@erictraut
I am sorry about the screenshot - I am new to this.  Thank you for your help.
I am using VSCode 1.67.1
I am running Pylance v2022.5.1
I am running Selenium 4.1.3
"Go To Declaration" took me to /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/selenium/webdriver/chromium/options.py
I see that function is defined with -> NoReturn, so I guess that's the issue. Do I just change that to None and save it?

Ah, then it's a bug in that version of selenium. It looks like they've fixed it in newer versions. So if you are able to upgrade to 4.1.5, that's probably best. If you're stuck using 4.1.3 for some reason, then you could edit the code to replace NoReturn with `None.

How do I update selenium for this?

pip install selenium --upgrade should do it.

I upgraded it, but still see the gray lines of code

You will need to restart the language server. You can either close the project window and reopen it or use the "Python: Restart Language Server" command from the Commands menu in VS Code.

I did both of those options, and still see unreachable gray code

If you choose "Go To Declaration", where does it take you now? If you have 4.1.5 installed, it should look like this:

Are you sure you installed the new version of selenium in the same python environment that you have selected in VS Code?

When I open a terminal window in VSCode from the project, and in that same directory I run
python3 -c "import selenium; print(selenium.version)"
It returns: 4.1.5
"Go To Declaration" brings me to /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/selenium/webdriver/chromium/options.py
The function looks like this:
    def add_experimental_option(self, name: str, value: Union[str, int, dict, List[str]]) -> NoReturn:
        """
        Adds an experimental option which is passed to chromium.

        :Args:
          name: The experimental option name.
          value: The option value.
        """
        if name.lower() == "w3c" and (value == "false" or value is False):
            warnings.warn(UserWarning("Manipulating `w3c` setting can have unintended consequences."))
        self._experimental_options[name] = value

I've confirmed that the code you're seeing is from selenium 4.1.3. You have some versioning issue that you'll need to figure out. If you install selenium 4.1.5, the problem will go away.
In any event, Pylance is doing the right thing here.

So VSCode is showing code that is 4.1.3, yet in the VSCode terminal it says it is running 4.1.5.  I have no idea how to fix this, but I understand it is not in your scope.  Thank you for all your help.  Have a great rest of your day.

Thank you @GlacierDan for bringing up this issue, since I had same issue as well. And thanks @erictraut for suggestions, it worked for me after upgrading selenium.

Worked for me too!


add overlay on the sidebar menu

When sidebar menu is in mobile mode, it presses the main body

this is now working


[Question] Where are the plugin logs stored

Hi,
I am using Insomnia REST on Windows.
I installed this plugin https://www.npmjs.com/package/insomnia-plugin-validator and I configured it as explained in the description.
For some reason though - it seems it is not working. I am not sure if my plugin configuration is correct.
I see in the plugin.js of this plugin that it is supposed to log some messages.
Where are these logs stored? The ...\AppData\Roaming\Insomnia\logs directory is empty.
Best regards,
Marin

You can view the logs by opening View > Toggle DevTools > Console

Yes, thanks. That does it