[DATA CONTRIBUTION] GAGES II

Basin prefix
gages-ii
Zenodo DOI
TBD
Number of catchments
~9,000
Location of catchments
United States
For which periods are streamflow records available in your dataset?
1900-present
Please list any sources of the data you contributed.
The GAGES II dataset consists of gages which have had either 20+ complete years (not necessarily continuous) of discharge record since he GAGES II dataset consists of gages which have had either 20+ complete years (not necessarily continuous) of discharge record since 1950, or are currently active, as of water year 2009, and whose watersheds lie within the United States, including Alaska, Hawaii, and Puerto Rico. Reference gages were identified based on indicators that they were the least-disturbed watersheds within the framework of broad regions, based on 12 major ecoregions across the United States. Of the 9,322 total sites, 2,057 are classified as reference, and 7,265 as non-reference. Of the 2,057 reference sites, 1,633 have (through 2009) 20+ years of record since 1950. Some sites have very long flow records: a number of gages have been in continuous
service since 1900 (at least), and have 110 years of complete record (1900-2009) to date.
License
CC0
Additional context
Is there interest in adding USGS's GAGES II dataset of ~9000 sites. We could easily pull the polygons from the National Hydrology Dataset (NHD). Data summary below. Of note, these are long-term streamgages but they may have data gaps, so you may prefer a subset: only reference, only complete, etc.
Checklist

[ ] I have uploaded my dataset on Zenodo, where it is accessible under the DOI provided above.
[ ] I used a basin prefix that is not yet used by any other Caravan sub-dataset (you can check this via the Data Contributions discussion thread, where all accepted Caravan contributions are listed).
[X] Permissive License: My data is available under a license that is compatible with the Caravan CC-BY-4.0 license (the easiest way to be sure about this is if your data uses CC-BY-4.0, too).

Given the size, I thought it best to inquire first.

HYSETS claims 14,425 North American watersheds, which makes me think they include all of GAGES II. Yet, Caravan only includes 4621 HYSETS watersheds. Perhaps you've filtered the other GAGES locations based on some other criteria?

Hi Timothy,
thanks for reaching out and suggesting to add GAGES-II. Last things first: Regarding HYSETS, not sure if they used GAGES-II or not. From a quick glance at their paper they simply grabbed all station data from the USGS streamflow portal. We only included 4621 basins (so far), because we initially only considered basins smaller than 2000km2 for Caravan. This will likely change soon and we could add all of HYSETS (and the other datasets).
That being said, I don't see a problem why we should not have a dedicated GAGES-II extension, since GAGES-II is an established dataset and having a dedicated extension for GAGES-II gauges would facilitate people to run e.g. global models on all stations in GAGES-II without the need to make sure which stations from CAMELS-US/HYSETS are in GAGES-II and which are not.
Also: I have a slight tendency of extensions from the data providers directly, rather than taking data from other published datasets, as it has a stronger signal to the community (at least this is my thought). So "USGS" creating a Caravan extension has a different meaning than "me" grabbing data from a different published dataset and republishing the data in Caravan.

9000 gauges though is a lot to process and even with the provided code still takes some effort (as you would need to download hourly data in csv format from Earth Engine and process these with the second provided notebook locally). I offered this to other groups that are interested in publishing these large amounts of stations, so I will offer the same to you: I can get all meteorological forcings + catchment attributes for you, if you would go ahead and merge the data with streamflow + upload it. If that would be of interest for you, reach out to me via email (I think you should have my mail).


feat(volume state) Add field ready showing whether the volume is read…

…y for workload
image: wangsiye/longhorn-ui:8de351f
https://github.com/longhorn/longhorn/issues/1260
Signed-off-by: Siye Wang<EMAIL_ADDRESS>

[ ] Update NO or YES in the volume detail page to Ready and Not Ready


The blog can not be viewed in english

When on the blog, if you attempt to change the language from German to English, it takes you back to the home page. When you go back to the blog it is again in German.

This looks like it could be a bug with the English/German toggle in general where it takes you back to the home page

I tried http://lale.help/home_en and the News link in the top banner goes to http://lale.help/blog which is in German and a heading of Tutorials.

The slug on the 'tutorials' page is '/blog' since that what is was originally. I did not want to break external links so we kept it.
The problem with EN/DE for the blog is that we have not found a good way to make it properly i18n. Most posts for now are targeted to DE audience so we kept it as German only. We decided to have it appear in the EN nav for completeness. We might also post EN content as we go forward.
The issue with the language toggle is know, but I do not know how to build it in webflow in a way that it is part of the re-usable header element and also jumps to the EN version of the respective page. Any ideas on how to do this?

I think for now the blog remains DE only, until we do further investment in the site. Thanks for bringing it up though!

My pleasure! Best of luck with the project. I think it has a lot of potential :)


German localization

Create German localization for node's UI and help texts.

Implemented with release 1.2.0.


[Bug] Popup Dismiss passing an object back crashes unless invoked on main thread iOS only

Dismiss will crash with a UI View error on  iOS, android seems to work fine
Dismiss(result);
Steps to Reproduce

Download my example app here https://github.com/stephenhauck/ZXingPopup
Change this code  MainThread.BeginInvokeOnMainThread(() =>              {                  Dismiss(result);              });

To          Dismiss(result);

Run app on iOS device

Running on latest stable everything ...

When they cancel I pass back null and all is well ...

The title of this bug says it only works on the main UI thread for iOS. The popups are required to operate on the main UI thread, any exceptions caused because it is not operating on the main UI thread is an expected behavior. There is no trick or workaround to this as the popup operation will need to be marshaled from a background thread to the main UI thread. Blindly marshaling all threads to the main UI thread can cause issues with the thread pool which may slow the app down or cause other performance issues.
cc: @pictos

ok but it's not our job to call "invoke on main thread" right ?
That should be handled in the "Dismiss" ?
When I "invoke on main thread" a blink occurs and it's just not right

@ahoefling this is a tricky one... Normally frameworks don't do the work to invoke things in the UI thread. Is the responsibility of the mobile dev to make sure the UI changes are happening in the UI thread. CollectionView had an issue because of that
I would say that is not the job of the lib to force it to be on the UI thread because doing this in best way possible will be very hard.

but it's not our job to call "invoke on main thread" right?

I would say if you, as a mobile dev, are doing some work on the background thread is it your job to return to the main thread. Like
void Do() {
Task.Run( ( ) => async {
    string result = await httpClient.GetString("SomeUrl").ConfigureAwait(false);
    label.Text = result;
}

If you try to do this on XF today, probably it will fail, because you are changing the label.Text in a background thread... So at the end of the day, the framework can't do this for devs.

I agree with @pictos evaluation, I don't believe this is a bug. The popup control is built tightly around the native implementations and it is expected to used from the main UI thread. Your application code can perform processing off the main thread, but when it is time to perform UI operations you will need to go back to the main UI thread.


Code analysis with static analysers

Description
Update of PR #2351, decided to start again.
Fixed multiple messages with static analysers, your IDE should be cleaner with Errors, Warnings and Information.
IDE0029 Null check can be simplified.
IDE0016 Null check can be simplified
IDE0019 Use pattern matching.
IDE0034 'default' expression can be simplified.
IDE0054 Use compound assignment.
IDE1005 Delegate invocation can be simplified.
S2971 Drop 'Where' and move the condition into the 'Count'.
S2971 Drop 'Where' and move the condition into the 'FirstOrDefault'.
S2971 Drop this useless call to 'ToList' or replace it by 'AsEnumerable' if you are using LINQ to Entities.
S1125 Remove the unnecessary Boolean literal(s).
S1116 Remove this empty statement.

Hi @nohwnd or @Haplois is this something you could look at?


Add FakePrague Egret R1 to fake backends

Summary
Adds the Prague device to the fake backends
Details and comments
Pulse defaults is not included as there is an error importing them.  However, this adds a new system with cz entangling gates, and thus is a nice addition to the fake backends.

Ok, hopefully that addresses those issues.

@Mergifyio requeue


feat: add new permission.

Hello @Bidaya0! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file dongtai_common/migrations/0026_auto_20230919_1233.py:

Line 200:80: E501 line too long (95 > 79 characters)
Line 201:80: E501 line too long (95 > 79 characters)
Line 206:80: E501 line too long (92 > 79 characters)


Update job-submission healthcheck page

Current steps are:

creates a project with name test_{random_integer};
creates a dataset, with the provided zarr directory;
creates a workflow;
if not existing, creates a non-parallel task with a source named job_submission_health_check, with command_non_parallel="echo".
adds the task to the workflow;
submits the workflow;
if all up to here was successful, redirects to the workflow page; if anything failed, stops the procedure and displays an error.

Step 4 must be replaced with something like:

if not existing, creates a non-parallel task with name=__TEST_ECHO_TASK__ and version=9.9.9, and with command_non_parallel="echo".

This will be required as of v2.7.0a5, to avoid errors like

Another useful change:
Let's not expose the zarr_dir prompt, since that is not actually used. Let's always set it to something like /invalid/zarr/dir/not/to/be/used/

All now works as expected, thanks.
Minor change: let's fix the second point in the description ("create a dataset with zarr_dir=ACTUAL_PATH")


Unstable results

Hi! Great work!!! very usefull.
One question: is it possible that I have different results in the same image on several occasions? maybe because the interpolation or resize method in transform?

Thank you for your question. I made a simple attempt and found that there are very subtle differences on several runs. However, the fluctuation is negligible, e.g., the difference value is around 0 ~ 1e-5 within multiple runs, whereas the depth output is larger than 1e2.


idk if u see this

but it says my ip adress got blacklisted from discord so yeah

Hello, can you send a screenshot?

Also Discord is apparently half-down

It says "Your IP Adress is currently blacklisted from our CloudFare"

It says "Your IP Adress is currently blacklisted from our CloudFare"

did you spam reload or something?

It says "Your IP Adress is currently blacklisted from our CloudFare"

did you spam reload or something?

i dont think so, but however when i was inside my account i restarted it about 4 times

It says "Your IP Adress is currently blacklisted from our CloudFare"

did you spam reload or something?

i dont think so, but however when i was inside my account i restarted it about 4 times

Just wait.


Move rust-workspace to rust/workspace

Move the rust-workspace directory to rust/repo.

Current dependencies on/for this PR:

main

PR #12   👈

PR #13

This comment was auto-generated by Graphite.


slow typeclass synthesis: takes 19000 heartbeats in to fail in AddMonoidHomClass (ℂ →*₀ ℝ) ℂ ℝ

import Mathlib

open Complex in
/--
error: failed to synthesize
  AddMonoidHomClass (ℂ →*₀ ℝ) ℂ ℝ
(deterministic) timeout at 'typeclass', maximum number of heartbeats (19000) has been reached (use 'set_option synthInstance.maxHeartbeats <num>' to set the limit)
-/
#guard_msgs in
set_option synthInstance.maxHeartbeats 19000 in
example (z : ℂ) : normSq (-z) = normSq z := by simp

This then gets slightly worse after https://github.com/leanprover/lean4/pull/3807, and thereafter causes the simpNF linter to fail on Complex.normSq_neg.

Also fixed by leanprover/lean4#4085


maintain DNS records not tied to a particular peer

To be able to put flux service addresses (arbitrary name -> arbitrary, floating IP address) in Weave's DNS, we need to add records that will only be removed explicitly.
It's possible to add a DNS record that is not tied to the lifetime of a particular container. But it is not presently possible to add a DNS record that is not tied to the lifetime of a peer.

I reckon we should re-purpose weave dns-{add,remove} <ip_address> ... -h <fqdn> for this since I cannot think of a compelling use case for wanting peer-tied non-container records, with the exception of weave expose, which is already taken care of with the -h option for that.
We need to decide what consistency and durability guarantees to provide.


Add expressions to JS AST. Fixed imports in all files by adding paths…

Added JS Expression function and standardized imports

Added all paths for imports in js_main so imports work as expected in files in nested files. Added rest of JS AST functions to translate folder


Add jest

Closes #61.
Also runs tests on pre-commit.

@tdeschryver thank you so much for your effort we really appreciate it .

If`you would like to support us in our mission please give us a start


Metrics for golang filter don't clean when filer removed from LDS configurations

If you are reporting any crash or any potential security issue, do not
open an issue in this repo. Please report the issue via emailing
<EMAIL_ADDRESS>where the issue will be triaged appropriately.
Title: Metrics for golang filter don't clean when filer remove from LDS configurations
Description:

What issue is being seen? Describe what should be happening instead of
the bug, for example: Envoy should not crash, the expected value isn't
returned, etc.

When I'm implementing golang filters with metrics, I found the metrics defined under LDS http_connection_manager via ConfigCallback (https://github.com/envoyproxy/envoy/blob/main/contrib/golang/common/go/api/filter.go#L312 ) is a global metrics.
I expect it to:

Have listener as metrics name, e.g. "listener.<IP_ADDRESS>_19001.opa_total_requests: 0".
Will be removed and reset along with filter configurations.

But the real behavior is:

The metrics name is just what we defined in the function: "opa_total_requests: 0"
The metrics is always there even when I remove the go filter, when I added it back, the counter number is still the old value which not being reset.

This seems to me is a potential bug that causing memory leak.
Repro steps:

Include sample requests, environment, etc. All data and inputs
required to reproduce the bug.

I'm using go filter via httn, the way I used is described in this PR: https://github.com/mosn/htnn/pull/827
After plugin built, what I'm doing is:

Update LDS with new golang filter that registered metrics via ConfigCallback.
Request the filter related LDS and corresponding path to generate metrics.
Check ":/status" to see metrics
Remove the golang filter from LDS.
Check the metrics that we can see the metrics is still there.
Add golang filter back, requesting, we were able to see the metrics are increasing again based on the old value.

Note: The Envoy_collect tool
gathers a tarball with debug logs, config and the following admin
endpoints: /stats, /clusters and /server_info. Please note if there are
privacy concerns, sanitize the data prior to sharing the tarball/pasting.

Admin and Stats Output:

Include the admin output for the following endpoints: /stats,
/clusters, /routes, /server_info. For more information, refer to the
admin endpoint documentation.

Note: If there are privacy concerns, sanitize the data prior to
sharing.

Config:

Include the config used to configure Envoy.

Logs:

Include the access logs and the Envoy logs.

Note: If there are privacy concerns, sanitize the data prior to
sharing.

Call Stack:

If the Envoy binary is crashing, a call stack is required.
Please refer to the Bazel Stack trace documentation.

cc @doujiang24

Have listener as metrics name, e.g. "listener.<IP_ADDRESS>_19001.opa_total_requests: 0".

okay, inherit the stat_prefix seems more reasonable.

Will be removed and reset along with filter configurations.

Seems there isn't a way remove a stats.
@StarryVae Could you please take a look?

Have listener as metrics name, e.g. "listener.<IP_ADDRESS>_19001.opa_total_requests: 0".

i also think it is more reasonable to inherit the stat_prefix, and i will submit a PR to support it.

Will be removed and reset along with filter configurations.

AFAIK, the metric is just removed with LDS update when you remove the golang filter, and there will be a new metric when you bring the filter back, maybe you can just wait for several time like 30s or more to ensure the old golang filter config is deleted by envoy. cc @wonderflow

@StarryVae Thanks for helping.

the metric is just removed with LDS update when you remove the golang filter

The issue is not only when I removed golang filter with LDS and metrics is still there, but also when I add the golang filter back with a second LDS updates, the metrics number increased from the old one instead of from zero.


Simon bowtie2 db

Hey @jeffkaufman .
Here is the complete build_bowtie2_db.py. I marked this PR as a draft pull request. Some things to consider:

I tried running gimme-taxa.py and ncbi-genome-download on the first ten viruses in human-viruses.tsv. This took a long time, so I stopped the process and skipped to the next step of the script: bowtie2-build.
bowtie2-build worked successfully on a smaller subset of .fna files and created .bt2 files.

I will let build_bowtie2_db.py run overnight and see how far it gets during that time. I will report back on how that goes. In the meantime, feel free to review the code and the README, and assign the PR back to me once you found time to review it.

Successfully ran the entire script throughout the night, though the combined_genomes.fna file seems too short?
[ec2-user@ip-172-31-32-232 bowtie]$ wc -l detailed-taxids.txt
127639 detailed-taxids.txt
[ec2-user@ip-172-31-32-232 bowtie]$ wc -l ../human-viruses.tsv
28017 ../human-viruses.tsv
[ec2-user@ip-172-31-32-232 bowtie]$ grep -o '>' combined_genomes.fna | wc -l
41925
[ec2-user@ip-172-31-32-232 bowtie]$

Successfully ran the entire script throughout the night, though the combined_genomes.fna file seems too short?

That looks right to me? I ran this a while ago, and got 39445 genomes.
The number of human viruses isn't that high, and genbank still has some barrier

Ok good to know. will merge.


Support TF 0.12 with pinned GitHub provider 3.0.0

what

Support TF 0.12 with pinned GitHub provider 3.0.0
Temporarily revert TF 0.13 requirements

why

Dependent modules were broken because of GitHub provider issues. Fix them before abandoning TF 0.12 support

references
https://github.com/cloudposse/terraform-aws-ecs-web-app/issues/63

/test all

/test all

/test all

/test all


The reaction can't save to MDL RXN V3000 (returns RXN V2000 instead)

Reproduced on 2.26
As per @AliaksandrDziarkach this is because Ketcher doesn't pass version to Indigo
Steps to Reproduce

Add reaction to the Canvas
The reaction can't save to MDL RXN V3000 .ket.zip

save to MDL RXN V3000

Actual behavior
file is saved as V2000

RXNActualResult.zip
Expected behavior
file is saved as V3000

RXNExpectedResult.zip
Environment details:

Ketcher Version 2.25.0-rc.2 Build at 2024-09-30; 09:14:32
Indigo Version 1.25.0-dev.2.7-g6118db71-wasm32-wasm-clang-12.0.0
MacOs 15
Version 129.0.6668.71 (Official Build) (arm64)

Please, pay attention, that we have the same problem for RDF V3000, it should be fixed as well:

Environment Details:

Ketcher [Version 2.26.0-rc.1] Build at 2024-10-04; 18:45:04
Version 1.25.0-rc.1.0-g704673fcb-wasm32-wasm-clang-19.0.0
Desktop, Windows 11 Enterprise
Chrome Version 129.0.6668.90 (Official Build) (64-bit)

Verified.

Ketcher Version 2.26.0-rc.2 Build at 2024-10-14; 19:59:03
Indigo Toolkit Version 1.25.0-rc.2.0-g867ae250b-wasm32-wasm-clang-19.0.0
Chrome Version 129.0.6668.101 (Official Build) (64-bit)
Win10


Error executing 'yo react-webpack' -> Unexpected sctrict mode reserved word

I'm new to JS and React, and I'm trying to start with your generator in a Koding VM. I just installed nodejs and npm with ubuntu's apt-get, and then installed yo, grunt-cli, karma and react-webpack from npm just as you suggest in your blog post http://newtriks.com/2013/12/31/automating-react-with-yeoman-and-grunt/
Then, when I execute the command:
$ yo react-webpack
I get the following:
/usr/local/lib/node_modules/generator-react-webpack/generators/app/index.js:2
let generator = require('yeoman-generator');
^^^
SyntaxError: Unexpected strict mode reserved word
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object._storeAsPath.Object.defineProperty.get [as react-webpack:app] (/usr/local/lib/node_modules
/yo/node_modules/yeoman-environment/lib/store.js:40:23)
at Store.get (/usr/local/lib/node_modules/yo/node_modules/yeoman-environment/lib/store.js:64:35)
at Environment.get (/usr/local/lib/node_modules/yo/node_modules/yeoman-environment/lib/environment.j
s:243:16)
at Environment.create (/usr/local/lib/node_modules/yo/node_modules/yeoman-environment/lib/environmen
t.js:261:24)
How to proceed?

+1
Exactly the same problem

Hi,
seems like the version of node.js you are using is too old. You have to use a version of greater than 4.0 to run the generator. Older node versions (like 0.12) are not going to work because it is built using ES2015. If updating is not an option for you, you could try to use the --harmony flags of node 0.12. However, I have not tried that yet.
The engine is also specified in package.json, so it should warn you when installing with an older node version.

@weblogixx Thank you, Chris for clearing that.
Yes, I have to use nodejs-legacy to fix this problem](http://blog.legacyteam.info/2014/12/getting-yeoman-work-ubuntu/) under ubuntu 14.04`.

Using nodejs-legacy didn't worked out for the Ubuntu version being used in Koding virtual machines. I also tried adding ppa:chris-lea/node.js repository and go with nodejs after an apt-get update to achieve it. The result is the same error.
The strange thing is that nodejs -v reports 0.10.37 yet, even with the PPA. I'll try to update in a different way nodejs to solve it

@nepalez: Debian and Ubuntus versions of node are always quite old, even in unstable/testing Debian versions. A more simple way to use it would be nvm (https://github.com/creationix/nvm) which gives you the possibility to use multiple node versions on the same machine. You can always switch or set the default with it, so node updates get a lot easier (at least unter unix based systems, on Windows you will need another software to do this).
If you can live without the apt installation, its a viable (and highly recommended) option.

new attempt:
$ wget -qO- https://deb.nodesource.com/setup_4.x | sudo bash -
$ sudo apt-get install nodejs
$ nodejs -v
-> 4.1.2
$ npm -v
-> 1.4.3
The error is still happening though

I cannot see any errors happening with any version from 4.0.0 onwards (just tested it on all available ones). Still seems like an installation error. Would you mind installing via nvm? It wont set the default version if it is not explicitly told to do so.
Just install via wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash, install a new node version (via nvm install 4.1.2) and then use it in this shell (via nvm use 4.1.2). It should then use the nvm ecosystem for THIS shell only. Try again to run it.
I don`t know the installer-package from nodesource.com, maybe it does not set the node version application wide?

@weblogixx Thank you. I've installed nvm and it just works :)

@nepalez: You are welcome. Glad I could help.

I know this issue probably has been solved, but I still have similar issue. I'm using npm -v 3.5.3 and node -v v.0.10.32 Should I do any updates on them? I think I updated to the newest version. Thanks


Windows IP bug?

Trying to use the windows-dev-tools to setup a local windows cluster but the pod tries to query the API server and gets:
time="2021-09-30T12:57:02-07:00" level=error msg="could not get api group resources: Get \"https://<IP_ADDRESS>:443/api?timeout=32s\": dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond."

When I just exec into the container, the curl command also fails. I thought this was due to the networking being wrong but I checked where it was getting the IP from and saw:
$ kubectl cluster-info
Kubernetes control plane is running at https://<IP_ADDRESS>:6443

And when I tried to curl to that IP/port from the container things worked fine.
So are we grabbing the wrong IP? Investigation needed.

Sonobuoy is using what client-go is gives it which is using the in-cluster config based on the env vars: KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT.
So why is Sonobuoy unable to curl the api at that?

hmhmmmmmmm interesting ...

<IP_ADDRESS> is the INTERNAL service IP of the apiserver, so
sonobuoy CANT connect to the k8s APIServer over the internal endpoint ,
i WONDER if , in GENERAL we have a bug in the dev-tools around the internal service endpoint not working?

That SPECIFIC service is forwarded through kube proxy on the linux node.
So i guess the question would be
is kube proxy running on the linux ontrol plane when sonobuoy starts up ?

kube-proxy is running and working but only from containers on the linux node.
I launched this pod:
apiVersion: v1
kind: Pod
metadata:
  name: pause
spec:
  nodeSelector:
    kubernetes.io/os: linux
  containers:
  - name: pause
    image: ubuntu
    command: [ "sh", "-c", "echo 'Sleeping; exec here to run stuff' && sleep 99999" ]
  tolerations:
  - effect: NoSchedule
    key: node-role.kubernetes.io/master
    operator: Exists
  - key: CriticalAddonsOnly
    operator: Exists
  - key: kubernetes.io/e2e-evict-taint-key
    operator: Exists

Another would be a better choice; I had to do all the apt-get update/install sudo/ install curl etc
But then
kubectl exec pause -- curl -k https://<IP_ADDRESS>:443/api
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0{
  "kind": "Status",
  "apiVersion": "v1",
  "metadata": {

  },
  "status": "Failure",
  "message": "forbidden: User \"system:anonymous\" cannot get path \"/api\"",
  "reason": "Forbidden",
  "details": {

  },
  "code": 403

I know the 403 isn't an issue; I'm not actually setting the right headers and such. But the 403 is indicative that the API server was responding there.
When I do the same from the sonobuoy pod it just times out since it can't resolve that IP/port

kube-proxy description here:
$ kubectl describe pod kube-proxy-mcgml -n kube-system
Name:                 kube-proxy-mcgml
Namespace:            kube-system
Priority:<PHONE_NUMBER>
Priority Class Name:  system-node-critical
Node:                 controlplane/<IP_ADDRESS>
Start Time:           Thu, 30 Sep 2021 13:00:03 -0500
Labels:               controller-revision-hash=5668795b7d
                      k8s-app=kube-proxy
                      pod-template-generation=1
Annotations:          <none>
Status:               Running
IP:                   <IP_ADDRESS>
IPs:
  IP:           <IP_ADDRESS>
Controlled By:  DaemonSet/kube-proxy
Containers:
  kube-proxy:
    Container ID:  docker://78957c2019e1ffa704c9f6119c5c09427699d7f92825db943a45ce22974a8dfe
    Image:         gcr.io/k8s-staging-ci-images/kube-proxy:v1.22.0-alpha.3.31_a3abd06ad53b2f
    Image ID:      docker-pullable://gcr.io/k8s-staging-ci-images/kube-proxy@sha256:bdc77e13fe8243193cf83ed3e24531e04894165128a37d03abec2d3cccb7136a
    Port:          <none>
    Host Port:     <none>
    Command:
      /usr/local/bin/kube-proxy
      --config=/var/lib/kube-proxy/config.conf
      --hostname-override=$(NODE_NAME)
    State:          Running
      Started:      Thu, 30 Sep 2021 13:00:03 -0500
    Ready:          True
    Restart Count:  0
    Environment:
      NODE_NAME:   (v1:spec.nodeName)
    Mounts:
      /lib/modules from lib-modules (ro)
      /run/xtables.lock from xtables-lock (rw)
      /var/lib/kube-proxy from kube-proxy (rw)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-7dt7l (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             True
  ContainersReady   True
  PodScheduled      True
Volumes:
  kube-proxy:
    Type:      ConfigMap (a volume populated by a ConfigMap)
    Name:      kube-proxy
    Optional:  false
  xtables-lock:
    Type:          HostPath (bare host directory volume)
    Path:          /run/xtables.lock
    HostPathType:  FileOrCreate
  lib-modules:
    Type:          HostPath (bare host directory volume)
    Path:          /lib/modules
    HostPathType:
  kube-api-access-7dt7l:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   BestEffort
Node-Selectors:              kubernetes.io/os=linux
Tolerations:                 op=Exists
                             CriticalAddonsOnly op=Exists
                             node.kubernetes.io/disk-pressure:NoSchedule op=Exists
                             node.kubernetes.io/memory-pressure:NoSchedule op=Exists
                             node.kubernetes.io/network-unavailable:NoSchedule op=Exists
                             node.kubernetes.io/not-ready:NoExecute op=Exists
                             node.kubernetes.io/pid-pressure:NoSchedule op=Exists
                             node.kubernetes.io/unreachable:NoExecute op=Exists
                             node.kubernetes.io/unschedulable:NoSchedule op=Exists
Events:
  Type     Reason            Age                  From     Message
  ----     ------            ----                 ----     -------
  Warning  DNSConfigForming  15m (x189 over 20h)  kubelet  Nameserver limits were exceeded, some nameservers have been omitted, the applied nameserver line is: <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS>

and the proxy config settings:
kubectl exec kube-proxy-mcgml -n kube-system -- cat /var/lib/kube-proxy/config.conf
apiVersion: kubeproxy.config.k8s.io/v1alpha1
bindAddress: <IP_ADDRESS>
bindAddressHardFail: false
clientConnection:
  acceptContentTypes: ""
  burst: 0
  contentType: ""
  kubeconfig: /var/lib/kube-proxy/kubeconfig.conf
  qps: 0
clusterCIDR: <IP_ADDRESS>/16
configSyncPeriod: 0s
conntrack:
  maxPerCore: null
  min: null
  tcpCloseWaitTimeout: null
  tcpEstablishedTimeout: null
detectLocalMode: ""
enableProfiling: false
healthzBindAddress: ""
hostnameOverride: ""
iptables:
  masqueradeAll: false
  masqueradeBit: null
  minSyncPeriod: 0s
  syncPeriod: 0s
ipvs:
  excludeCIDRs: null
  minSyncPeriod: 0s
  scheduler: ""
  strictARP: false
  syncPeriod: 0s
  tcpFinTimeout: 0s
  tcpTimeout: 0s
  udpTimeout: 0s
kind: KubeProxyConfiguration
metricsBindAddress: ""
mode: ""
nodePortAddresses: null
oomScoreAdj: null
portRange: ""
showHiddenMetricsForVersion: ""
udpIdleTimeout: 0s
winkernel:
  enableDSR: false
  networkName: ""
  sourceVip: ""%

Putting a pin in this as it seems this is more about the config of those clusters and is being worked on currently.

Putting a pin in this as it seems this is more about the config of those clusters and is being worked on currently.


upgrade: check for control-plane node role

"master" node role is deprecated and will be removed around 1.24. "control-plane", introduced in 1.20, should be used.
I've duplicated the check:

first get "control-plane" nodes
if above fails, look for legacy "master" role

"master" check could be removed in the future, when there are no clusters older that 1.20 to upgrade.

Thanks for the PR - I addressed this in https://github.com/k3s-io/k3s-upgrade/pull/57


feat: stops creation of log files by default

tested on windows

👍 some comments -

feel free to commit direct to v6 branch without PRs because that should improve dev speed, unless there are some changes which you want me to review or discuss first.. Then PR, or whatsapp etc, whichever is the easiest for your workflow.

There's a section in readme with Click to show info on automation logs (.log, .js, .raw), and how to run tagui from any directory which also talks about the default logging files, that section also requires updating. And because the tutorial doc is base on readme, these changes also have to copy there. Which is very 🤦♂.... right....

In tagui file, recommend to change to below. Both works, just that below is consistent with the style in the existing script when not is used, for readability -

if ! [ -f tagui_logging ]; then

I think it's better for you to at least eyeball the changes per PR/feature. Or else, it may be difficult to review all the changes together. I still work on other PRs/features while waiting for your review so no worries.

Oh wow I never knew about the RPA Workshop.md. Have updated.

Have updated.

Ok great, let's do it this way then!

The readme, following section was moved but the 2nd sentence onwards not relevant to that collapsed section. For the note on terminal I think it's good to have somewhere (I've seen too many people using default font sizes on Mac and Windows, which is ridiculously hard to view what's going on with the automations, and maybe they don't know that terminal font size can change) -

For the RPA Workshop file, I saw that there are many formatting changes in the markdown, but visually the rendered file looks the same. Eg changing * to - for italic, lots of empty spaces in tables, removing indentation in collapsed section. Is it because these changes are done by auto-formatter in your IDE? Below is the diff with these formatting changes -
https://github.com/kelaberetiv/TagUI/pull/652/files#diff-a2a8f9fcfbbee4cead7fd329245dee56

Hi @siowyisheng I added some inputs to above commits -

Ah ok I'll edit.
Yup it was the auto-formatting from vscode.


Configure Idea project generator per module

This PR is a first sketch how to skip some modules in Idea project generator.
The motivation is simple:

Idea cannot handle multiple projects with the same base directory
When working with Cross to enable cross compile projects of any kind, Idea selects one of the cross versions (almost) randomly per directory, which is undesired

This is a quickly hacked PR to sketch one possible solution to tackle the need to customize project generation. I'm open for input / change requests. If we can reach a consensus about the general direction, we can beautify, e.g. move the IdeaConfigModule into it's own file. Also tests would be nice, but I'm not familiar with the integration test setup of mill yet.

What about "grouping" idea related def's by trait JavaModule extends IdeaConfigModule?

Currently idea-related defs aren't standalone; they live mixed in with the JavaModule defs, as bits and pieces refactored out to be conveniently consumed by intellij. Maybe in future when we have more idea-related stuff we can extract it out into it's own trait


Is there mod compatibility?

Is there mod compatibility? Like will it automatic add eg. axe heads for other mods? Or only vanilla stuff is covered?

Yes. All resources, materials, gems and schematics can be added by other mods in data packs. If a mod adds a new material, Forgero will automatically add all tool parts for this material.
I have only tested adding materials from other mods, with support for most materials added by Mythic Metals as a test, but I haven't added unique properties for them yet. In theory all resources from mods that are tagged properly should be picked up and generated by Forgero, the mod includes a datapack that covers the vanilla stuff by default.
I am also working on support for being able to create unique tools and tool parts using datapacks and the, but that is wip.

Ok, i did some quick testing. Forgero is creating a new tool, but keeps the old ones also in REI. So i have now two wooden pickaxes, 2 stone, 2 iron.
Is there anyway to fix this quickly? Without needing me to hide them all haha

Also there is the need for, Forgero to dont add new tools only. Also recipes that contain the old tools (eg. AIOTS) should get replaced.

Example of my problem:
Vanilla:

Forgero:

Forgero's base tools looks almost identical to vanilla, but the functionality is completely different from vanilla tools. The tools are used as a container, which changes when nbt's change.
I could create a new tag for stone tools, like stone pickaxes, stone shovels etc, and use it for schematic recipes. That would remove the duplicated recipes.
I probably won't remove/override the vanilla tools, as that would probably break a lot of other mods/functionality. I might remove forgero's tools from the creative menu, if that does not cause inconvenience for me when developing

So is it possible for you to copy Uses (recipe) of a tool, to the new Forgero tool?

If a recipe uses a tag for tools, like "tag":"c:stone_pickaxe", then I can integrate my tools with the tag, but if a recipe specifies the item, then I can't really do anything. Forgero tools use the identifier forgero:stone_pickaxe, and the vanilla uses minecraft:stone_pickaxe. It is possible to override all recipes to use tags, but that would be quite some work

Which mods did you use in your examples? I'll have a look at them and see what I can do. Removing recipe dupes would be really nice.

A lot of mods: https://www.curseforge.com/minecraft/modpacks/deathdusk

KubeJS have this:   // In all recipes, replace Stick with Oak Sapling in output items    event.replaceOutput({}, 'minecraft:stick', 'minecraft:oak_sapling')

That looks promising, I'll have a look at it soon!

It seems like the event.replaceInput() method from KubeJs has some issues. When using this method, it will replace all recipes that use the targeted identifier, even recipes that includes it as a tag. This invalidates all recipes that uses a tag which includes the desired item. I have been experimenting with this script, and numerous variations:
priority: 0

settings.logAddedRecipes = true
settings.logRemovedRecipes = true
settings.logSkippedRecipes = true
settings.logErroringRecipes = true

onEvent('recipes', event => {

    let vanillaMaterials = ['wooden', 'stone', 'iron', 'golden', 'diamond', 'netherite'];
    let vanillaTools = ['pickaxe', 'shovel', 'hoe', 'sword', 'axe'];

    for (let i = 0; i < vanillaMaterials.length; i++) {
        for (let j = 0; j < vanillaTools.length; j++) {
            event.replaceInput({type: 'minecraft:crafting_shapeless'}, 'minecraft:'.concat(vanillaMaterials[i], '_', vanillaTools[j])), '#c:'.concat(vanillaMaterials[i], '_', vanillaTools[j])
             event.replaceInput({type: 'minecraft:crafting_shaped'}, 'minecraft:'.concat(vanillaMaterials[i], '_', vanillaTools[j])), '#c:'.concat(vanillaMaterials[i], '_', vanillaTools[j])

        }
    }
})

You could also add true to the exact parameter, but then I can't get it to apply to any recipes. For some reason, it does not want to recognise recipes that uses e.g. minecraft:wooden_pickaxe. And this messes up my recipes because it overrides all recipes which uses a tag including the targeted identifier. It seems like it only works when the targeted item is included in another tag, which messes up all recipes using this tag. I couldn't get it to apply to recipes which only uses the items identifier (minecraft:stone_pickaxe -> #c:stone_pickaxe)  only this works: (#fabric:pickaxes -> #c:stone_pickaxe). This really just seems like a bug to me.
I have added the #c:stone_pickaxe, #c:stone_sword, etc.. tags, and configured all the vanilla tools and forgero's to be included in these. This way, you can use #c:material_tool in recipes to target all tools, there's probably nobody using these tags, but at least they are available. I'll probably revisit this later for a fix, but I have spent far to much time debugging this now.

If any mods doesn't have compatibility/forgero doesn't add them. Where should I report this issue here or at the modauthors page?

Most mod authors probably don't care that much about compatibility. You can suggest they create a recipe which uses the common tag, but they would have to make sure that they add the tag as well.
The best scenario would be to get the KubeJs script to work, and the second best would probably be a KubeJs script that replaces entire specific recipes with one that uses common tags. I wouldn't mind bundling this script along with Forgero in this repo, but I can't keep track of all of the recipes that needs changing. If you provide the recipes that needs to be overridden, I can probably create some scripts for converting them to common variants.

Closing in favor of #211


Force a playlist to start when enabling the "playing" state

Hello,
I have an issue, but probably more related to Volumio than the plugin, but maybe it would be possible to "do something" to bypass it.
I have actually 4 Volumio zones, used mostly with Airplay devices, but I also made some ESP32 based circuit in my wall switchs to control the volume functions and play/stop. In that circuit, I force a play of a precise webradio.
The idea was to be able to force that webradio play through the play feature of the plugin.
But actually, If i run an airplay stream, stop it, the plugin play/stop function is useless, it plays nothing :/
Would it be possible to set a precise function for the play state (in that case: force a certain playlist or item to start).
In that case, I would be capable to play an airplay stream through my devices, or force a radio stream through the Home app.
Thanks for your help & work 🙂
Kind regards

Hmmm... That could be interesting, but complicated. Thinking out load...
This plugin just takes whatever state Homekit sends, and passes it through to Volumio. I believe those states are usually Play and Pause, though there is a value for Stop. I'm just not sure if anything in Homekit actually sends that state.
It may be possible to do a check before sending the Play value to see if the Volumio server is in a Paused or Stopped state. If it's stopped, then it could send a different command first to load a playlist/web radio/whatever, then send the play command afterward. Not sure how much lag this would add to the interaction though. That would take some testing.
This might have a weird side effect on pausing/playing web radio though, since Volumio can't actually "pause" radio, but rather just stop it. Without doing some more testing, I'm not totally sure how it currently behaves given this post https://community.volumio.org/t/control-volumio-with-api-problem/12495/8
Any other thoughts? I'd love for this to just work like a regular Airplay target, but that is dependent on getting an open source Airplay 2 implementation working first. Speakers in Homekit only expose pause/play. Anything like media loading or even volume setting require Airplay

Hmmm... That could be interesting, but complicated. Thinking out load...
This plugin just takes whatever state Homekit sends, and passes it through to Volumio. I believe those states are usually Play and Pause, though there is a value for Stop. I'm just not sure if anything in Homekit actually sends that state.
It may be possible to do a check before sending the Play value to see if the Volumio server is in a Paused or Stopped state. If it's stopped, then it could send a different command first to load a playlist/web radio/whatever, then send the play command afterward. Not sure how much lag this would add to the interaction though. That would take some testing.
This might have a weird side effect on pausing/playing web radio though, since Volumio can't actually "pause" radio, but rather just stop it. Without doing some more testing, I'm not totally sure how it currently behaves given this post https://community.volumio.org/t/control-volumio-with-api-problem/12495/8
Any other thoughts? I'd love for this to just work like a regular Airplay target, but that is dependent on getting an open source Airplay 2 implementation working first. Speakers in Homekit only expose pause/play. Anything like media loading or even volume setting require Airplay

It's been a while, and this request is a little out of scope for what I was planning to do for this plugin. I'm going to close for now. Hopefully we get full AirPlay 2 control in the future.


Add basic automated tests

Firstly, I wanted to say the tau-prolog is awesome! It is a testament to amazing work from all of its contributors. I would love to contribute in anyway I can!
To help me better understand the implementation of the library I found it helpful to write units tests for code examples from the documentation. It occurred to me that it could be helpful to include them in the main repository to encourage code quality and prevent software regressions as features are added to the library.
In this PR I have included a suite of basic unit tests based on the Node.js code examples
from the tau-prolog manual http://tau-prolog.org/manual/compatibility-with-nodejs. I tried to follow the general JavaScript style I could infer from the library's source code. I installed jest for running the tests via npm and added configure the npm test command to run the tests.
It is totally understandable if you do not want to add any external dependencies to the library even if only for testing purposes. Either way I hope this example of testing the code is useful. If it is not added in the main repository maybe it can be incorporated in some way for future development of the project.
Excited to get your feedback!

Hi @jtorreggiani,
First of all, thank you very much for your contribution! We usually write unit tests with jUnit, although we still lack tests for many of the built-in predicates and libraries.
I don't know much about npm. Would it be possible running our jUnit tests via npm? It'd be great if you could configure the tests that we already have, and then add new tests from these if you want.
Thanks again for your time. I await your reply.

@jariazavalverde, are you referring to the Java based jUnit (https://junit.org/junit5) or the JavaScript based jUnit (https://github.com/ysmood/junit)? If you are referring to the Java library you should be able to run them from the command-line. I believe you can run arbitrary bash commands as an npm script. Could look something like this:
"scripts": {
  "example:fruit": "node examples/nodejs/fruit",
  "test:jest": "node_modules/.bin/jest spec/jest",
  "test:junit" : "java -jar junit-platform-console-standalone-1.3.2.jar spec/junit"
}

If they are written in the javascript library it would be even easier to setup. Either way if you share the tests you already have I would be happy to try to configure them in this repository. We would just want to note in the documentation that future contributors need to have Java installed in order to run the all the tests.

Thanks, @josegarciaclm95. I will take a look and see what I can do!

Okay then @jtorreggiani, I'm going to close this pull request so you can fork the repo again and add the tests, yours and ours. Please open a new pull request when you're done!


review-03: Landing.jsx and AccountSettings.jsx

Overview
In a separate document create a list in accordance with the checklist of issues you find. It may be helpful to link the code and include the checklist section it falls under. This is due Monday preferably at the start of our designated class time. Do not post the comment before then!
Example
Review Branch
review-03
Files to review
Landing.jsx
AccountSettings.jsx
Checklists
Design
JS
Due date
9/30/24
For more information
The review process is documented at: http://courses.ics.hawaii.edu/ics414f24/morea/review/reading-idpm-review.html

Landing.jsx
Design-01 maybe refractor button-rendering
https://github.com/visualizing-your-future/visualizing-your-future/blob/9634de29cf4f2f5f278524f049439d9ac6836fb0/app/imports/ui/pages/Landing.jsx#L99
Design-02 could be rewritten
https://github.com/visualizing-your-future/visualizing-your-future/blob/9634de29cf4f2f5f278524f049439d9ac6836fb0/app/imports/ui/pages/Landing.jsx#L176
Design-08
Button rendering can be improved
JS/ESLINT looks fine I can't see any issues
AccountSettings.jsx
Design-03 can probably take out then or don't make JSDoc
https://github.com/visualizing-your-future/visualizing-your-future/blob/9634de29cf4f2f5f278524f049439d9ac6836fb0/app/imports/ui/pages/AccountSettings.jsx#L41
Design-04 does it need to be JSDoc?
https://github.com/visualizing-your-future/visualizing-your-future/blob/9634de29cf4f2f5f278524f049439d9ac6836fb0/app/imports/ui/pages/AccountSettings.jsx#L90
Design-07 | JS-01 can't it just be userName?
https://github.com/visualizing-your-future/visualizing-your-future/blob/9634de29cf4f2f5f278524f049439d9ac6836fb0/app/imports/ui/pages/AccountSettings.jsx#L81
JS-04 Can be
const submit = ({ firstName, lastName, email, oldPassword, newPassword, verifyNewPassword }) => {};
https://github.com/visualizing-your-future/visualizing-your-future/blob/9634de29cf4f2f5f278524f049439d9ac6836fb0/app/imports/ui/pages/AccountSettings.jsx#L97
ESLINT-01 no errors

Landing.jsx

JS-08: Use JSDoc comments appropriately — JSDoc comments could be added to describe the purpose of the Landing page and its functionality to display content based on roles.
Design-08: Ensure code is DRY — Code around renderButtonsForAdmin looks very similar, is there a way to add the buttons to import client data, input data, and view client projections more concisely?
https://github.com/visualizing-your-future/visualizing-your-future/blob/9634de29cf4f2f5f278524f049439d9ac6836fb0/app/imports/ui/pages/Landing.jsx#L99

[will add AccountSettings.jsx comments]

Review Issue - 03
Landing.jsx
Design-01: Can you refactor to reduce duplication

Line 99: renderButtonsForAdmin & Line 131: renderButtonsForUser both share a lot of common code. I would try combining them and adding a condition to the code parts that differ like you did previously.
Design-02: Avoid deeply nested conditionals.
You have a few nested if/else statements that I would just be cautions about adding anything to that would make it any deeper.

FileInput.jsx
Design-08: Ensure comments are appropriate

I would add in  a few one line comments to explain parts of the code quickly

AccountSettings.jsx

No real comments on how this was done.
Design-05: /** */ should be used for multi-line instead. Maybe use // instead

Landing Page

Design-02: consider the user role checks be reduced

Landing.jsx
Design-01 - isLoading is redundant. Replace with:
let ready;
and in the if statement, ready = profile.ready
AccountSettings.jsx
Design-03 - Lines 41-46 need to be deleted.
Design-05 - Some comments are not necessary.  The var name is sufficient.


Make zipsWith short-circuit

Make zipsWith stop running effects in the second stream
if the first is empty. This makes mplus satisfy the left
catch MonadPlus law.

Take advantage of any purity in the streams to avoid
inserting Effect constructors or performing monadic
operations unnecessarily.

Remove the now-unnecessary Functor f and Functor g constraints
from zipsWith. I have verified that I can write an equivalent
version of zipsWith for FreeT without those, so there shouldn't
be any compatibility issues.

Remove the unnecessary Functor constraint from inspect. This
too is unnecessary for the (almost trivial) FreeT version.

Fixes #38

By the way: yes, I'd love to see a simpler version. If you have any ideas, let me know.


[Bug] Wrong title property set, should use backticks

Is this a regression?
Yes
Description
When upgrading to v18 (seems really promising!), I had an error with the generated title property. It was set like this by the page-wrapper.component.nunj:
const routes: Routes = [{
  path: '',
  component: PageWrapperComponent,
  title: `Gestion d'erreur`,
  children: [
    {
      path: '',
      loadChildren: () => import('./index/page'),
      title: 'Gestion d', erreurs, ',:
      data: {
        icon: '',
      }
    },
  ]
}]

When remove quotes (for example, using english), the error disappeared.
const routes: Routes = [{
  path: '',
  component: PageWrapperComponent,
  title: `Error handling`,
  children: [
    {
      path: '',
      loadChildren: () => import('./index/page'),
      title: 'Error handling',
      data: {
        icon: '',
      }
    },
  ]
}]

Shouldn't we have only one title property? And this can be set using backticks instead, to avoid this kind of error ?
Thank you in advance :smile:
Please provide the exception or error you saw
No response
OS
Unix (Linux, macOS, etc.)
Browser
Chrome
Node version
20.17.0
Anything else?
I tried using backticks directly in the ng-doc.page.ts. Is it the way to go ?

Hey thanks for the ticket, yeah that was a type, I'll release a fix in a moment

:tada: This issue has been resolved in version 18.2.0 :tada:
The release is available on:

v18.2.0
GitHub release

Your semantic-release bot :package::rocket:


Postgres Connection left in OPEN transaction when autoCommit=false and maxLifetime is reached

Hi,
We noticed our connection pool becomes unusable after maxLifetime has been reached with runtime exception PSQLException: Cannot change transaction isolation level in the middle of a transaction when trying to set the isolation level the first time after getting the connection from the datasource. We are using exposed 0.51 in kotlin.
We have autoCommit=false and default schema set on the hikari datasource.
Attached are the postgres logs for when autoCommit=false and autoCommit=true and you can see the connection init for both the first time and when maxLifetime is reached. Notice that the transaction is left open when autoCommit=false when maxLifetime is reached.

auto_commit_false.txt
auto_commit_true.txt

potentially a duplicate of https://github.com/brettwooldridge/HikariCP/issues/2144

potentially a duplicate of #2144

It's a duplicate and should fixed at PostgreSQL JDBC Driver side, see https://github.com/pgjdbc/pgjdbc/issues/3005

This is disturbing. I do suspect it is caused by the referenced pgjdbc issue. I'm not sure what the pool can do to compensate for this behavior; I don't want to automatically Connection.commit() every time the connection is returned to the pool or the schema is changed.
@kevinchan-rl Can you post your pool configuration?


Fix settings bug

Fixes #96. The settings for the module name are exclusively stored in the browser memory. The language is stored as follows:

If opening a blank pipeline:

If there is a language stored in the browser memory, use that language
Else use English

If opening an existing pipeline:

If there is a language specified in the pipeline, use that language
Else use rules from first bullet

@marthacryan can you rebase on main to solve the conflicts?


feat: Firebase 8.1 compatible version

Is your feature request related to a problem? Please describe:

Is there a Firebase 8.1 compatible version you can provide? Or is it too much work?
Describe alternatives you've considered:

Hi @mesqueeb,
unfortunately I can only support one Firebase version in my main branch. I would need to create a second branch with a new web implementation. However, keeping these two branches in sync would be too much effort in the long run.
For this reason, I am closing this Issue.
Have you already tried to update to Firebase v9 compat? Should be little effort and you do not need major code changes.

@robingenz I was able to upgrade the other dependencies to use v9 compat for now! Now I will continue to upgrade the main app to v9 compat and see how it goes.
Thank you very much for your continued support.
BTW, does your library already use modular Firebase v9 code? Or does it also still rely on the compat build?
Best regards

Great!
This plugin already uses the Firebase v9 modular style.


npm ERR! ENOTEMPTY: directory not empty

Getting the error on running npm install.
Using symlink to point to node_modules form previous build to avoid package installation everytime
ln -s /var/jenkins_home/softwares/angular/node_modules .
Packages ad versions:
npm: 7.19.1
angular: 9
+ npm install
npm ERR! code ENOTEMPTY
npm ERR! syscall rename
npm ERR! path /var/jenkins_home/workspace/AmpliSeqUI-Dev2-Build-And-Deploy-Angular9_GitHub/code/amplisequi-angular/amplisequi-angular/node_modules/acorn
npm ERR! dest /var/jenkins_home/workspace/AmpliSeqUI-Dev2-Build-And-Deploy-Angular9_GitHub/code/amplisequi-angular/amplisequi-angular/node_modules/.acorn-ssxUwlor
npm ERR! errno -39
npm ERR! ENOTEMPTY: directory not empty, rename '/var/jenkins_home/workspace//node_modules/acorn' -> '/var/jenkins_home/workspace//node_modules/.acorn-ssxUwlor'
FYI, This was working fine before

This error occurred while installing packages. .acorn-ssxUwlor was no where found in node_modules. Is this something not related to acorn?
npm ERR! path /var/jenkins_home/workspace/AmpliSeqUI-Dev2-Build-And-Deploy-Angular9_GitHub/code/amplisequi-angular/amplisequi-angular/node_modules/acorn
npm ERR! dest /var/jenkins_home/workspace/AmpliSeqUI-Dev2-Build-And-Deploy-Angular9_GitHub/code/amplisequi-angular/amplisequi-angular/node_modules/.acorn-ssxUwlor
npm ERR! errno -39
npm ERR! ENOTEMPTY: directory not empty, rename '/var/jenkins_home/workspace//node_modules/acorn' -> '/var/jenkins_home/workspace//node_modules/.acorn-ssxUwlor'

What makes you think this is in any way related to node-sqlite3?

I'm not sure this is related to node-sqlite3 but if you still suspect otherwise, please let me know 🙂


Error starting Synctrayzor

Version: <IP_ADDRESS>; Variant: Installed; Arch: Amd64
Path: C:\Program Files\SyncTrayzor\SyncTrayzor.exe
System.FormatException: Input string was not in a correct format.
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at SyncTrayzor.Services.Config.ConfigurationProvider.Initialize(Configuration defaultConfiguration) in C:\projects\synctrayzor\src\SyncTrayzor\Services\Config\ConfigurationProvider.cs:line 105
   at SyncTrayzor.Bootstrapper.Configure() in C:\projects\synctrayzor\src\SyncTrayzor\Bootstrapper.cs:line 114
   at Stylet.BootstrapperBase.Start(String[] args) in c:\projects\stylet\Stylet\BootstrapperBase.cs:line 81
   at System.Windows.Application.OnStartup(StartupEventArgs e)
   at System.Windows.Application.<.ctor>b__1_0(Object unused)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Can you give me some context? Have you used SyncTrayzor in the past? Did you upgrade? Anything else that might be vaguely relevant?
Can you paste the contents of C:\Program Files\SyncTrayzor\InstallCount.txt?
Delete or rename  C:\Program Files\SyncTrayzor\InstallCount.txt to fix the issue, although I'd love to understand what caused it.

Yes, I've been using it for more than a year, at least.
I didn't upgrade recently. I only restarted the computer after a crash (screen frozen, don't know what caused it)
InstallCount.txt is attached. There are only two "NUL" characters on it.
Renaming it did work. Thank you.
InstallCount.txt

Weird, something has corrupted it. That file is only ever edited by the installer, and SyncTrayzor itself doesn't have permission to edit it.
I'd check the health of your disk - sounds like it's killing files.

According to CrystalDiskInfo it is fine.

Weird, I've no idea how that file ended up with NULLs in then. Pretty confident it's not SyncTrayzor though, so I'll blame goblins.

Closing as suspect disk corruption


setup.py is useless probably

i don't think it's actually doing anything...
further investigation needed

This may help: https://packaging.python.org/en/latest/guides/modernize-setup-py-project/


Require help in integrating with facebook page

Hello Guys
I am developing bot with MS Bot framework in node js after using ngork i am able to send message to FB messenger and its working but when session is closed and when i tired to send message again to initate the session i am getting error in ngork as 404 not found and bot also not responding to messenger with any message.
Please correct me what i am wrong?

which session are you referring to?

Hello Dan
Let consider scenario that i have to maintain two different user session with bot
first i tried with facebook messenger but with only one user account i can send and receive message from bot and for another user i didnt get any response.
second,  how to test the same scneario in Stimulator ?
My requirement : Let us consider one user requesting to contact members who located in one location, once user provide the location then i have to send a message to the use facebook users who was located in that location.
Please provide your assistance

From the Facebook documentation:

When your app is in Development Mode, your bot will work for admins, developers and testers of the app. After your app is approved and public, it will work for the general public.

oh, thanks for response, could you please provide your assistance to achieve my requirement.

As for the Emulator, you can change the userid to simulate a group conversation.

For your requirement, you will need to back your bot application with your own storage. Then once a user provides a location to your bot, you would query against your own storage.

myself fine with storage i will make http request  to store and retrieve location but here my question how i can send the message to only selected users?

Are you using Node.js or C# ?

Please find the "Create New Conversation" examples from https://github.com/Microsoft/BotBuilder-Samples

I am using node Js

Thanks for your response, even i added one of m friend facebook id as admin in Facebook page but still my bot is not reponding to his facebook id , Bot is responding to only my facebook id.

They have to accept the request to make them an admin


NERDTree show large error message and becomes unusable

Environment

Operating System: Ubuntu 18.04
Vim version: NVIM v0.2.2 (also happens on vim 8.0)
NERDTree version git rev-parse --short HEAD: 9bedadd
NERDTree settings applied in your vimrc, if any: none

Process

just run :NERDTree anywhere

Current Result
Shows this error message
Error detected while processing function 188[2]..189[21]..234[1]..255[36]..131[1]..132[18]..1
51[3]..27[4]..28:
line   14:
E874: (NFA) Could not pop the stack !
E874: (NFA) Could not pop the stack !
... (many more lines of this)

Then, when I hit q to dismiss the message, NERDTree has opened and shows the current directory and its contents. When I try to open a subdirectory with , I get this error message:
Error detected while processing function nerdtree#ui_glue#invokeKeyMap[1]..78[26]..77[3]..<SN
R>29_activateDirNode[7]..134[3]..168[8]..157[8]..150[1]..151[3]..27[4]..28:
line   14:
E874: (NFA) Could not pop the stack !
E874: (NFA) Could not pop the stack !

repeated 6 times with various numbers of "pop the stack" lines in between. When I dismiss this message. all the subdirectories have disappeared in the sidebar. Pushing ? also shows the same error.
Expected Result
NERDTree is usable
I'm sure this is some issue with my personal setup, but I can't think of what it could be and I don't know how to debug further. Please help

~ is a special character in regular expressions, and it needs to be escaped. Line https://github.com/arlopurcell/dotfiles/blob/master/.vimrc#L196 needs to be:
let NERDTreeIgnore=['\.pyc$', '/\~$', '.egg-info[[dir]]']

Notice the backslash before the tilde.


Profile menu is sending too many events

The problem
Whenever you are changing your appearance or name there are multiple events sent. Also just by opening the menu, such a call (ParticipantUpdated) is triggered.
We should investigate if reducing the number of calls is feasible/desirable.

we actually once had a PR for this: https://github.com/inovex/scrumlr.io/pull/2809. I think it was almost finished too, not sure but happened to it 😅


use the github asset url information

use the github asset url information
Use the github asset url information so we only download things it claims to have
Test Plan:
cargo test
local run and check the download and cache still work, notice the fetching message on first run
# Download
$ USE_BUCK2_VERSION=2023-07-15 cargo run -- --version
    Finished dev [unoptimized + debuginfo] target(s) in 0.03s
     Running `target/debug/buckle --version`
buckle: fetching buck2-x86_64-unknown-linux-gnu.zst 2023-07-15
buck2 22862e81827fad189f124d677c623d7ec1772cc6 <local>

# see its cached
$ USE_BUCK2_VERSION=2023-07-15 cargo run -- --version
Sat 22 Jul 19:23:14 BST 2023
    Finished dev [unoptimized + debuginfo] target(s) in 0.04s
     Running `target/debug/buckle --version`
buck2 22862e81827fad189f124d677c623d7ec1772cc6 <local>
Sat 22 Jul 19:23:14 BST 2023 [Exit: 0] alex@fridge:~/loca

Stack created with Sapling. Best reviewed with ReviewStack.

-> #8
#18
#9

closing, looks like OSS dotslash covers the usecases I was interested in


limit SMB zero temps to 60m

Per https://github.com/openaps/oref0/issues/781 and other feedback, and my own experience, it seems that 120m SMB zero temps may be doing more harm than good.
This PR caps SMB zero temps to 60m, while allowing zero temps based on minGuardBG or eventualBG to still extend to 120 minutes.  This should minimize the situations in which really long zero temps are set where unneeded, while preserving the ability to set them when BG predictions actually justify.

If no objections, I'd like to go ahead and merge this to dev.


Get raw sentences

How can I get a list of raw sentences from a piece of text after using sentence splitting 'ssplit' ?

There's no ssplit function in NLTK. Please do take a look at https://www.nltk.org/book/ch03.html
E.g.
import nltk
from nltk import sent_tokenize

nltk.download('popular', quiet=True)

text = "This is a string with multiple sentences. Yes there are two sentences."
sent_tokenize(text)

Closing issue as resolved. Please re-open if the issue is still relevant/unresolved.


Consider decoupled weight decay optimizers?

Hi! I'm a big fan of this project and I noticed that MUP has some wrappers for common optimizers MuAdam, MuAdamW, and MuSGD. Given the focus on hyperparameter stability and tuning, I was wondering if you might be interested in adding / experimenting with the decoupled weight decay optimizers from this paper (https://arxiv.org/abs/1711.05101)?
For context, PyTorch's implementations of SGD, Adam, and even AdamW all scale the weight decay by the learning rate in their update step, and I've found that this makes it tough to tune the two values independently (if you increase LR, you also silently increase the effective WD). This is due to PyTorch's scheduler implementation which only updates an Optimizer's LR, and so they schedule the WD in sync by multiplying the two values together.
E.g. here is Pytorch's AdamW code, which shows why it is not really decoupled: https://github.com/pytorch/pytorch/blob/11231b0f935c092598c994a4bab686485aac1856/torch/optim/adamw.py#L248
The "correct" way to decouple LR, WD is described in the paper, and we have some PyTorch-ready implementations here (code, docs) in MosaicML's Composer library. Though I haven't seen any examples in MUP yet of tuning the WD across model sizes, I feel like this could be a common hparam that users want to tune and that DecoupledSGDW or DecoupledAdamW could help make it more stable :)

Hi Abhi,
Thanks for the kind words. For such decoupled optimizers, you can comment out this line https://github.com/microsoft/mup/blob/main/mup/optim.py#L68 for Adam to scale properly, and https://github.com/microsoft/mup/blob/main/mup/optim.py#L113 and https://github.com/microsoft/mup/blob/main/mup/optim.py#L116 for SGD to scale properly.
While I agree with you that this weight decay decoupling makes more sense to me than the way it's done right now, practically speaking I don't have a sense how common it is for people to use it. So I'll have to think about the right interface to expose this kind of flag.

Hi Greg,
Thanks for the quick response! So if I'm reading this right, were those lines written to basically "undo" the PyTorch scaling?

Yep you can think of it like that.

Hey @abhi-mosaic, we have added a flag for decoupling weight decay now. See https://github.com/microsoft/mup/blob/main/mup/optim.py#L47. I'll close the issue now but feel free to reopen if there's any further problems.

hi guys, i'm a huge fan ot MuP too.
glad to see this issue, but i cant understand what decoupled_wd flag do.
when user want to use AdamW, should decoupled_wd be activated?
if it's right, following @abhi-mosaic 's comment and mosaicml/composer's adamw impl,
i think default pytorch adamw is like
param = (1 - default_lr*lr_schedule_multiplier*weight_decay) * param

and it cause scaling weight_decay factor depending on width because default_lr for this param group is already scaled by 1/width_mult.
so i think it's fair to set weight_decay = original_weight_decay*width_mult or weight_decay = original_weight_decay/lr*width_mult if we want to use truly decoupled adamw like @thegregyang did for naive Adam optim class

@SeunghyunSEO
A late reply, but in case anyone else was confused like me, decoupled_wd flag should only be set if the underlying optimizer (impl argument here) you're using is decoupled. (i.e. You're setting impl=DecoupledAdamW)


Add prettier formatting

I am definitely on board with this. I use prettier in my other projects, and I also use the same githooks you are. Big 👍  from me


SBD still showing in return from Hive Keychain after a single payment

This is the answer I get after a single transaction from Keychain paying one amount of HBD:
{
  "success": true,
  "error": null,
  "result": {
    "id": "905ba395d3a9976baa4e0912b4af7894b6f3b118",
    "block_num": 52351529,
    "trx_num": 15,
    "expired": false,
    "ref_block_num": 53783,
    "ref_block_prefix":<PHONE_NUMBER>,
    "expiration": "2021-03-22T07:18:45",
    "operations": [
      [
        "transfer",
        {
          "from": "pod2hive",
          "to": "flyingboy",
          "amount": "0.004 SBD",
          "memo": "#FfiephvLrQSU2KXtjCENJdvVtx31YGVRsUbeeShsVF6eiesAjZVmER5aWMqobUo8sJPfoSkiwb9QMvgnqz7TjpLmUTbhXyzVGub5Be2yefS4fyeQTCFN4EDUVTvxP5vLU"
        }
      ]
    ],
    "extensions": [],
    "signatures": [
      "1f56e15f5571f8b6d390209bea19226d22a9529dd76cb276b36d2a903ac561100752bbb0e3bb430117169f3c51c4881a8777fcd46a0d2d0c0404e036d8c516167e"
    ]
  },
  "data": {
    "request_id": 4,
    "type": "transfer",
    "username": "pod2hive",
    "to": "flyingboy",
    "amount": "0.004",
    "memo": "#goat - @v4vapp",
    "enforce": true,
    "currency": "HBD"
  },
  "message": "Successfully transfered 0.004 HBD from @pod2hive to @flyingboy.",
  "request_id": 4,
  "returnTo": "producer.dashboard"
}

The amount in the transfer is listed in SBD.
I only notice this because I'm now doing multiple payments in a single request (which works) and that gives back the following result in the relevant part:
{
  "success": true,
  "error": null,
  "result": {
    "id": "d397189829a21921fcaaa11247ef1b968dc8fd21",
    "block_num": 52351318,
    "trx_num": 0,
    "expired": false,
    "ref_block_num": 53572,
    "ref_block_prefix":<PHONE_NUMBER>,
    "expiration": "2021-03-22T07:08:09",
    "operations": [
      [
        "transfer",
        {
          "from": "pod2hive",
          "to": "brianoflondon",
          "amount": "0.170 HBD",
          "memo": "#FfiephvLrQSU2KXtjCENJdvVtx31YGVRsUbeeShsVF6eieLSmUBvmbbnhVUsRfdPm8zKonJtSeV1GKqVr29DM1F6PhrHxFmyL9udHpzQ9kXqjFArXE95PpCqBL2gFrsVW"
        }
      ],

Hmm, are you sure the issue doesn't come from the dApp itself?
Keychain doesn't change the broadcast content

I'm writing the dApp right now and I've never typed SBD into anything.
I'm generating a pay button in python and when that is pressed it tells Keychain to ask the user to make a transfer, that block of json is the answer I get back from Keychain and pass back into my Python back end. It's a complete mystery where SBD comes in but I've handled it.... inelegantly :-)

So, just to make sure, if you check the broadcast showing on the extension popup, it shows SBD? Or only in the result?

I can't remember what the UI interface said but I captured the response direct from the javascript and I have that in my debugger right now. The version on the blockchain is HBD, it only appears in the response I got back from the call to keychain.
If it helps this is the javascript I've written which is called when the button is pressed. The destination and amounts are passed in from Python via a hideous templating system.
function hivePay(account, payTo, token, amt, returnTo='podcaster.dashboard'){
    const keychain = window.hive_keychain;
    keychain.requestHandshake(function() {
        console.log("Handshake received!");
    });
    let memo = document.querySelector("input#donationMessage").value;
    let priv = document.querySelector("input#privateMemo").checked;
    if (priv) {
        memo = "#" + memo
    }
    memo += " - @v4vapp";
    console.log(memo)
    // new Audio(karmaSound).play();
    token = token.toUpperCase();
    amt = round(amt, 3);
    console.log("Account = "+ account);
    console.log("payTo = " + payTo);
    console.log("ReturnTo = " + returnTo);
    console.log("token = " + token); // Token name must be all uppercase
    console.log("amt = " + amt);
    keychain.requestTransfer(
        account = account,
        to = payTo,
        amount = amt,
        memo = memo,
        token = token,
        response => {
            console.log(response);
            if (!response.success) { return; }
            response['returnTo'] = returnTo;
            console.log(response);
            axios.post("/podcaster/payment_made", response).then((res) =>{
                console.log(res)
                let paymentSuccess = res.data;
                sessionStorage.setItem("paymentSuccess", JSON.stringify(paymentSuccess));
                window.location.href = `${paymentSuccess.loadPage}`;
            }).catch((err) => {
                console.log(err);
            });
        }, enforce = true);
    };

Doesn't seem to be coming from your code.
I see it correctly shows HBD in hiveblocks, so I m assuming that the transaction was sent correctly :
https://hiveblocks.com/tx/d397189829a21921fcaaa11247ef1b968dc8fd21
And the result is returned as-is from the blockchain. Might be an error with an RPC node.
Pretty sure it's not a Keychain issue, I ll close for now, feel free to reopen if you find hints that it is.

OK I'll live with my if statement for now!

Sorry about that, you were right and I dismissed the issue too quickly. My bad


Added hint for windows export options

rcedit fails if "File version" or "Product version" is wrong as pointed by @akien-mga in #29569. The optimal solution would be to restrict these fields to accept only "." and numbers but i couldn't figure out how to do that so I just added hints.

Thanks!


Downgrade to tensorflow 2.10.1 and tensorboard 2.10.1

close #19

$ sudo docker run --rm --gpus all \
  -v "./work:/work" \
  -v "./cache/huggingface/hub:/home/user/.cache/huggingface/hub" \
  aoirint/sd_scripts:commit-8edf1b7 \
  finetune/tag_images_by_wd14_tagger.py \
  /work/my_dataset-20230715.1/img
2023-11-08 10:24:10.893986: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX2 FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-11-08 10:24:11.031521: E tensorflow/stream_executor/cuda/cuda_blas.cc:2981] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered
2023-11-08 10:24:11.713056: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer.so.7'; dlerror: libnvinfer.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /home/user/.local/lib/python3.10/site-packages/cv2/../../lib64:/usr/local/nvidia/lib:/usr/local/nvidia/lib64
2023-11-08 10:24:11.713152: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer_plugin.so.7'; dlerror: libnvinfer_plugin.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /home/user/.local/lib/python3.10/site-packages/cv2/../../lib64:/usr/local/nvidia/lib:/usr/local/nvidia/lib64
2023-11-08 10:24:11.713162: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properly.
downloading wd14 tagger model from hf_hub. id: SmilingWolf/wd-v1-4-convnext-tagger-v2
/home/user/.local/lib/python3.10/site-packages/huggingface_hub/file_download.py:1104: FutureWarning: The `force_filename` parameter is deprecated as a new caching system, which keeps the filenames as they are on the Hub, is now in place.
  warnings.warn(
Downloading keras_metadata.pb: 100%|██████████| 654k/654k [00:00<00:00, 5.86MB/s]
Downloading saved_model.pb: 100%|██████████| 5.71M/5.71M [00:00<00:00, 11.1MB/s]
Downloading (…)in/selected_tags.csv: 100%|██████████| 254k/254k [00:00<00:00, 536kB/s]
Downloading (…).data-00000-of-00001: 100%|██████████| 388M/388M [00:33<00:00, 11.5MB/s]
Downloading variables.index: 100%|██████████| 22.6k/22.6k [00:00<00:00, 24.4MB/s]
2023-11-08 10:25:00.856537: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:00.879939: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:00.880206: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:00.880598: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX2 FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-11-08 10:25:00.881043: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:00.881265: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:00.881426: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:01.014995: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:01.015246: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:01.015475: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:980] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2023-11-08 10:25:01.015673: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1616] Created device /job:localhost/replica:0/task:0/device:GPU:0 with 10530 MB memory:  -> device: 0, name: NVIDIA GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1
WARNING:tensorflow:No training configuration found in save file, so the model was *not* compiled. Compile it manually.
found 51 images.
  0%|          | 0/51 [00:00<?, ?it/s]2023-11-08 10:25:14.956011: I tensorflow/stream_executor/cuda/cuda_dnn.cc:384] Loaded cuDNN version 8700
2023-11-08 10:25:15.023555: I tensorflow/core/platform/default/subprocess.cc:304] Start cannot spawn child process: No such file or directory
2023-11-08 10:25:15.024181: I tensorflow/core/platform/default/subprocess.cc:304] Start cannot spawn child process: No such file or directory
2023-11-08 10:25:15.024200: W tensorflow/stream_executor/gpu/asm_compiler.cc:80] Couldn't get ptxas version string: INTERNAL: Couldn't invoke ptxas --version
2023-11-08 10:25:15.024728: I tensorflow/core/platform/default/subprocess.cc:304] Start cannot spawn child process: No such file or directory
2023-11-08 10:25:15.024806: W tensorflow/stream_executor/gpu/redzone_allocator.cc:314] INTERNAL: Failed to launch ptxas
Relying on driver to perform ptx compilation.
Modify $PATH to customize ptxas location.
This message will be only logged once.
100%|██████████| 51/51 [00:17<00:00,  2.95it/s]
done!


Feature Request: TimestampStart

MAPL History names time-averaged files with mid-point datetime by default, and has the capability to use end datetime instead (https://github.com/GEOS-ESM/MAPL/issues/602). This feature request is for implementation of using start datetime in time-averaged History filenames. Like TimestampEnd, TimestampStart would be an optional setting.
This request is for use in GCHP. We are going to recommend usage of the monthly average for collections. Monthly output files are timestamped with start datetime in the filenames. Having a TimestampStart option for all time-averaged output, not just monthly, would allow GCHP output files to have consistent format. An added benefit is they would then match the format of GEOS-Chem Classic.

Yes, it is related. I'll fix both

Actually the code is still doing what it supposed to do, but it is plain messy. I'll fix  it anyway, but the issue was a "red" herring

Do you mean TimestampStart was already an option in History?

@lizziel I made a mistake and my comment went to the wrong issue. But at the moment I am working on a branch that should address both issues (#790) the TimeStampStart and (#784) the incorrect time increment for monthly. I'll send you email once it is ready

Thanks @atrayano for implementing this so quickly. I manually added the feature to GCHP (uses MAPL v2.6.3) and it all looks good.


Add option for no python on jupyter launch

Describe your changes
A user had an issue where they were using launch with a Dockerfile, and installing python in the Dockerfile in /usr/bin. We were installing python in /usr/local/bin which was taking precedence over their installation. This allows users to not require a python installation

Hm, I wonder why we're using ubuntu as the base image here, and then requiring an add_python, instead of using debian_slim (or even a Python image based on debian_chonk) so that --add-python could be null by default.

Also kinda weird that modal launch vscode doesn't haven an equivalent CLI

I think this isn't needed, they can just run --add-python ""

Hm, I wonder why we're using ubuntu as the base image here, and then requiring an add_python, instead of using debian_slim (or even a Python image based on debian_chonk) so that --add-python could be null by default.

I think it might have to do with the fact that I wanted it to be easy for people to use arbitrary images. If add_python is specified by default, it helps with that.

Ok great since there's a workaround I think we can close this, can revisit if this is an issue for more people


Heap corruption when reading npz under MSVC

Microsoft Visual Studio Community 2017
Version 15.9.14
cl Version 19.16.27032.1 for x64
Compile the following trivial program a.cc
#include "xtensor-io/xnpz.hpp"

void f() { auto npz = xt::load_npz("test8.npz"); }

int main() {
  try {
    std::cout << "enter\n";
    f();
    std::cout << "leave\n";
  } catch (std::exception &ec) {
    std::cout << ec.what() << std::endl;
  }
}

with command
cl /EHsc /MDd /DEBUG /Od /I <your-miniconda-envs-envs>\Library\include <your-miniconda-envs-envs>\Library\lib\z.lib a.cc

Create a file test8.npz with more than 8 arrays, one of which larger than 50x50 under the current directory, then run a.exe

The file test\files\uncompressed.npz is too small for revealing this.  We need about 10 entries.
Both load_npz overloads encounter the same issue.
The heap corruption is real.  If you replace /MDd (Debug CRT) with /MD (Release CRT), the program crashes.
The issue may have something to do with detail::npy_file (or some intermediate adapters) lifetime.  I rewrote a specialized function to immediately cast the return value of detail::load_npy_file and assign it to an xarray, that works fine.

I should elaborate a little bit if it helps: although I titled the issue "heap corruption," but the root cause is more likely to be a stack corruption on a heap pointer.  In MSVC, if an object on stack finishes its lifetime (a temporary object, for example), other objects can overwrite its stack storage.  Other compilers do not do this but this is legal.  I suspect that a sanitizer can tell you more.

This is an unrelated issue to your PR, right?

Yes.  I couldn't figure this out in an hour, so I went ahead writing my own load_npz, which uses a vtable to map array names to callbacks that directly do my_struct.member = detail::load_npy_file(stream).cast<double>();, which doesn't have the issue.

Now I know why my version works.  Only when npy_file is a (p)rvalue, cast takes away its buffer ownership, and xbuffer adaptors faithfully deallocates with std::allocator<char>::deallocate rather than delete operator...


Add unit tests for com.nepxion.discovery.common.entity.InstanceEntity…

I've analysed your codebase and noticed that com.nepxion.discovery.common.entity.InstanceEntityWrapper is not fully tested.
I've written some tests for the methods in this class with the help of Diffblue Cover.
Hopefully, these tests will help you detect any regressions caused by future code changes. If you would find it useful to have additional tests written for this repository, I would be more than happy to look at other classes that you consider important.

Hi @HaojunRen may I ask why you closed the PR? :)

Sorry, you just add only one test case, how about others? just so many...


A little advice for a friend who wants to reappear himself.

Refer to the following figure for details.

Thanks. By "reappear", I think you meant "reimplement".


[BEAM-11968] Bump com.google.cloud:libraries-bom to 19.0.0

Missing the isMtls() in google-http-client. Looks like it has been added since 1.38.0:
https://github.com/googleapis/google-http-java-client/blob/master/google-http-client/src/main/java/com/google/api/client/http/HttpTransport.java#L136
Original stacktrace:
java.lang.RuntimeException: Encountered checked exception when constructing an instance from factory method DataflowRunner#fromOptions(interface org.apache.beam.sdk.options.PipelineOptions)
at org.apache.beam.sdk.util.InstanceBuilder.buildFromMethod (InstanceBuilder.java:233)
at org.apache.beam.sdk.util.InstanceBuilder.build (InstanceBuilder.java:158)
at org.apache.beam.sdk.PipelineRunner.fromOptions (PipelineRunner.java:55)
at org.apache.beam.sdk.Pipeline.create (Pipeline.java:154)
...
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:64)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:282)
at java.lang.Thread.run (Thread.java:832)
Caused by: java.lang.NoSuchMethodError: 'boolean com.google.api.client.http.HttpTransport.isMtls()'
at com.google.api.services.storage.Storage$Builder.chooseEndpoint (Storage.java:11151)
at com.google.api.services.storage.Storage$Builder.<init> (Storage.java:11184)
at org.apache.beam.sdk.extensions.gcp.util.Transport.newStorageClient (Transport.java:97)
at org.apache.beam.sdk.extensions.gcp.util.GcsUtil$GcsUtilFactory.create (GcsUtil.java:104)
at org.apache.beam.sdk.extensions.gcp.util.GcsUtil$GcsUtilFactory.create (GcsUtil.java:93)
at org.apache.beam.sdk.options.ProxyInvocationHandler.returnDefaultHelper (ProxyInvocationHandler.java:605)
at org.apache.beam.sdk.options.ProxyInvocationHandler.getDefault (ProxyInvocationHandler.java:546)
at org.apache.beam.sdk.options.ProxyInvocationHandler.invoke (ProxyInvocationHandler.java:171)
at com.sun.proxy.$Proxy41.getGcsUtil (Unknown Source)
at org.apache.beam.sdk.extensions.gcp.storage.GcsPathValidator.verifyPathIsAccessible (GcsPathValidator.java:83)
at org.apache.beam.sdk.extensions.gcp.storage.GcsPathValidator.validateOutputFilePrefixSupported (GcsPathValidator.java:53)
at org.apache.beam.runners.dataflow.DataflowRunner.fromOptions (DataflowRunner.java:291)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:64)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.apache.beam.sdk.util.InstanceBuilder.buildFromMethod (InstanceBuilder.java:217)
at org.apache.beam.sdk.util.InstanceBuilder.build (InstanceBuilder.java:158)
at org.apache.beam.sdk.PipelineRunner.fromOptions (PipelineRunner.java:55)
at org.apache.beam.sdk.Pipeline.create (Pipeline.java:154)
...
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:64)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:282)
at java.lang.Thread.run (Thread.java:832)

Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Choose reviewer(s) and mention them in a comment (R: @username).
[x] Format the pull request title like [BEAM-11968] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[x] Update CHANGES.md with noteworthy changes.
[x] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Most of the failures appear to be a mocking situation that is checking how many times a trivial method is called. Probably the mocking should be more flexible or we could find a non-mock way to test. Do you feel able to go and adjust the mocks?

@kennknowles I tried to debug the logs, I think it has to do with some missing licenses, but didn't get it running locally.
@pabloem do you have any pointers? :)

sorry that I missed this. Rerunning things...

Run Java PreCommit

Run Java_Examples_Dataflow PreCommit

I have https://github.com/apache/beam/pull/14527 that brings google-http-client 1.39.2

ok closing for the 20.0.0 update instead. @Fokko I hope that's fine ^^'


⚠ Bofrost.at has degraded performance

In 7f44807, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1322 ms

Resolved: Bofrost.at performance has improved in 05bf49f after 1 hour, 47 minutes.


dse-mesos-storage-url-fix

Changed storage url to use master.mesos as zk host.
Previously was localhost. This did not work on clusters where ZK is not installed on each node.
Please merge.

Thanks!