End-to-end test for XRootD

@turetske - not sure if this is helpful but I was tinkering with testing xrootd while on the airplane and cobbled together this PR.
Now, the tests shouldn't pass for the exact same thing you're struggling with -- waiting on the new release of scitokens-cpp.  But perhaps the approach is interesting for you?
One item we'll need to think through: How do we want to approach Mac OS X?  The homebrew-packaged version of XRootD comes without SciTokens, meaning that maintaining a test there would be fairly difficult.

Looking at this further, I was under the impression you didn't want this to be a unit test and instead a test that ran during integration testing. At least that what issue #170 seems to imply. Yet the TestOrigin code will run as part of the go test ./... command workflow. Is that how you want it implemented?

@bbockelm It passes! I can't request a review from you as it's your own PR originally, but if you could take a look at my changes, that would be appreciated.

Merging PR as both @turetske and I are happy with it.


Fixing pre-commit building component READMEs

The pre-commit was failing due to missing dependencies.

Thanks @mrchtr, I think we should add PyYAML as a core dependency of Fondant though, since we use it explicitly in fondant.core


DNS and Storage addons not ready but ready

I have been struggling with a fresh installation of microk8s.
The command used for installation:
snap install microk8s --classic
I enabled the dns and storage addons using:
microk8s.enable dns storage
I get the following when I check all the namespaces (kubectl get all --all-namespaces):
NAMESPACE     NAME                                        READY   STATUS    RESTARTS   AGE
kube-system   pod/coredns-9b8997588-2nc67                 0/1     Running   0          3m5s
kube-system   pod/hostpath-provisioner-7b9cb5cdb4-c6bgq   1/1     Running   3          2m58s
iptables is used as the firewall and ufw is disabled.
Please assist with resolving this issue as the link: https://microk8s.io/docs/troubleshooting#common-issues doesn't provide any solutions to the problem.
inspection-report-20200107_163326.tar.gz

Hi @Moeletji17 could you create a new microk8s.inspect tarball and attach it to the issue? The one already attached is with the cluster empty. Thanks.

Apologies for the oversight. I had been reinstalling it multiple times trying out multiple releases.
Please find the updated inspection file attached.
inspection-report-20200108_143527.tar.gz

I see in the logs of the coredns pod:
E0108 12:35:11.773577       1 reflector.go:134] pkg/mod/k8s.io/client-go@v10.0.0+incompatible/tools/cache/reflector.go:95: Failed to list *v1.Endpoints: Get https://<IP_ADDRESS>:443/api/v1/endpoints?limit=500&resourceVersion=0: dial tcp <IP_ADDRESS>:443: i/o timeout

This means the pod cannot reach the api server. Can you share the output of sudo iptables -S and/or sudo iptables -L.
I see also you are following the latest stable track but your cluster is not an ephemeral one. The latest stable track may be introducing backwards incompatible changes overtime. For non-ephemeral clusters you could consider following a specific track with for example sudo snap install microk8s --classic --channel=1.17/stable.

The X.X.X.X is the host.
I had the same issue with the stable release but let me try it again.
iptables-latest.txt

I see in the logs of the coredns pod:
E0108 12:35:11.773577       1 reflector.go:134] pkg/mod/k8s.io/client-go@v10.0.0+incompatible/tools/cache/reflector.go:95: Failed to list *v1.Endpoints: Get https://<IP_ADDRESS>:443/api/v1/endpoints?limit=500&resourceVersion=0: dial tcp <IP_ADDRESS>:443: i/o timeout

This means the pod cannot reach the api server. Can you share the output of sudo iptables -S and/or sudo iptables -L.
I see also you are following the latest stable track but your cluster is not an ephemeral one. The latest stable track may be introducing backwards incompatible changes overtime. For non-ephemeral clusters you could consider following a specific track with for example sudo snap install microk8s --classic --channel=1.17/stable.

I tried following the installation for non-ephemeral clusters as suggested using v1.17 and I still had the same issue

I see in the logs of the coredns pod:
E0108 12:35:11.773577       1 reflector.go:134] pkg/mod/k8s.io/client-go@v10.0.0+incompatible/tools/cache/reflector.go:95: Failed to list *v1.Endpoints: Get https://<IP_ADDRESS>:443/api/v1/endpoints?limit=500&resourceVersion=0: dial tcp <IP_ADDRESS>:443: i/o timeout

This means the pod cannot reach the api server. Can you share the output of sudo iptables -S and/or sudo iptables -L.
I see also you are following the latest stable track but your cluster is not an ephemeral one. The latest stable track may be introducing backwards incompatible changes overtime. For non-ephemeral clusters you could consider following a specific track with for example sudo snap install microk8s --classic --channel=1.17/stable.

Would I need to add a rule to the iptables for the pods to connect to the apiserver?

The IPtables rules for pod connections are in place but their priority might need to be raised:
ACCEPT     all  --  <IP_ADDRESS>/16          anywhere             /* generated for MicroK8s pods */
ACCEPT     all  --  anywhere             <IP_ADDRESS>/16          /* generated for MicroK8s pods */
ACCEPT     all  --  <IP_ADDRESS>/16          anywhere
ACCEPT     all  --  anywhere             <IP_ADDRESS>/16

I am a bit skeptical about the DOCKER-ISOLATION chain. Can you try re-adding the <IP_ADDRESS>/16 rules at the top of the forward chan? See https://www.cyberciti.biz/faq/linux-iptables-insert-rule-at-top-of-tables-prepend-rule/ for example.

I've applied the suggested solutions to the cluster(with the 1.17/stable channel):

Moving the IPtables rules for pod connections to the top of the FORWARD chain and then stop and start microk8s, but the result is still the same.

Additionally I removed the DOCKER ISOLATION chain to resemble a test environment where I configured Microk8s using ufw then disabled it and used iptables but the same result as the initial post.

Is there a well documented reference for Microk8s networking so I can get a better understanding which may help me understand my problem better?
I've been struggling with this issue for a while. It seems the best way for configuring Microk8s is using ufw because

I enabled ufw and reset microk8s and enabled the addons again then disabled ufw which allowed the pods to startup correctly


Fix bug in etcd backend when connecting to etcd2

etcd & client instead of the etcd2 object and client2 objects were being used read from the server.  This caused a panic making the use of registrator against an etcd2 backend impossible.

:+1: for this


Remaining APIs

https://api.studentiunimi.it/
Issue overview
Add and use these apis with relative service.

Services (unimia.studentiunimi.it) - single endpoint for 3 objects:

[ ] Redirects;
[ ] Guides;
[ ] Internal services.

Groups (single endpoint for 3 objects):

[x] University groups;
[x] Announcements groups;
[x] Students associations).

[ ] University redirects on /university.

We'll consider this in the frontend-v2
@Mroik


Fix pre-release trigger for update-bundle action

This PR switches the update-bundle release trigger from prereleased to published because the former has been documented not to work.
From https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#release:

Note: The prereleased type will not trigger for pre-releases published from draft releases, but the published type will trigger. If you want a workflow to run when stable and pre-releases publish, subscribe to published instead of released and prereleased.

Merge / deployment checklist

[x] Confirm this change is backwards compatible with existing workflows.
[x] Confirm the readme has been updated if necessary.
[x] Confirm the changelog has been updated if necessary.

cc @henrymercer


Coloration issue

VSCode Version: Code 1.9.0 (27240e71ef390bf2d66307e677c2a333cebf75af, 2017-02-02T08:23:30.856Z)
OS Version: Darwin x64 16.4.0
Extensions:

Extension
Author
Version

Steps to Reproduce:

Create a file
Add a bunch of lines of code (or don't)

You may be able to notice that the coloration isn't quite correct across the editor. There are rectangles of a darker shade of gray around any lines of code you wrote, so if there is a long line of code, there is a long rectangle of darker gray. There is also a rectangle around the lines that you currently are typing in. However, the rest of the background behind the code is an ever so slightly lighter shade of gray. The darker shade is 1e1e1e and the lighter shade is 212121. The difference is extremely apparent to me whenever I am using the software.

The top half is of 1e1e1e and the bottom half is of 212121 in this particular screenshot

#12473


winget fails : Failed in attempting to update the source: winget

Brief description of your issue
run
winget upgrade --all
returns
Failed in attempting to update the source: winget
Then it returns
Microsoft Visual C++ 2015-2022 Redistributable (x64) -… Microsoft.VCRedist.2015+.x86 14.36.32532.0 14.38.32919.0 winget
1 upgrades available.
1 package has a version number that cannot be determined. Using "--include-unknown" may show more results.
winget has installed Microsoft Visual C++ 2015-2022 Redistributable (x64)  6x before.
winget never gets the other updates
Steps to reproduce
winget upgrade --all
Expected behavior
install all new apps
Actual behavior
fails with
Failed in attempting to update the source: winget
Name                                                    Id                           Version       Available     Source
Microsoft Visual C++ 2015-2022 Redistributable (x64) -… Microsoft.VCRedist.2015+.x86 14.36.32532.0 14.38.32919.0 winget
1 upgrades available.
1 package has a version number that cannot be determined. Using "--include-unknown" may show more results.
(1/1) Found Microsoft Visual C++ 2015-2022 Redistributable (x86) [Microsoft.VCRedist.2015+.x86] Version 14.38.32919.0
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://download.visualstudio.microsoft.com/download/pr/02a6d5c5-3e10-47de-8025-d97a1321d3e3/AD573D3198853FC71137A88E51ABDE844B84F29B0CE6DD91BBEC661BC0143B36/VC_redist.x86.exe
██████████████████████████████  13.2 MB / 13.2 MB
Successfully verified installer hash
Starting package install...
Successfully installed
Environment
winget --info
Windows Package Manager v1.3.2091
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.19045.3636
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.18.2091.0

Logs: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir

Links
---------------------------------------------------------------------------
Privacy Statement   https://aka.ms/winget-privacy
License Agreement   https://aka.ms/winget-license
Third Party Notices https://aka.ms/winget-3rdPartyNotice
Homepage            https://aka.ms/winget
Windows Store Terms https://www.microsoft.com/en-us/storedocs/terms-of-sale

This is an older version of WinGet. Please update to a current version. You can either check in the Microsoft Store for updates, or use https://aka.ms/getwinget.

thank you


Investigate queue not properly updating

It appears like the queue stops to update at some point.
Perhaps when an error is encountered while updating? We should add a try catch there.

Looks like #169 fixed this problem.


Can't find Position

I just updated to 0.0.25 and now I'm getting this error in tsc:
node_modules/eventstore-node/index.d.ts(10,18): error TS2304: Cannot find name 'Position'.
Typescript 2.1.5
If I add an exported Position class in index.d.ts everything is fine.

Testing it right now, but it should be fixed in npm package 0.0.26.

Fixed in 0.0.26


Allow adding & removing node neighbors directly

See commit msgs.
TODO:

[x] Implement removing node neigh
[x] Test removing node neigh from the CLI
[x] Ensure that all the API errors for inserting and removing make sense (I simply copied them from another API endpoint)
[x] Consider whether we should refactor insertNeighbor() / deleteNeighbor() to return errors so that we can surface it back to the user in the API. Currently, no error is shown to the user if an insert or remove fails; only an agent log msg.

Fixes https://github.com/cilium/cilium/issues/14203

test-me-please

test-me-please

@christarazi do we have any plans to take this forward or is this ok to close? It seems like there hasn't been any activity in quite some time

I think we can close this.


Move action execution options to the robot definition

This moves the ExecutionOptions for actions away from the action interface and into the robot definitions. In brief:

The TaskAction objects and ROS Messages no longer have action execution options
The Robot object now accepts a dictionary of execution options, and this is configurable via the world YAML specification

Closes #231

@dcconner FYI


feat: get sources in answers

Followed this method for including sources in responses. Response quality seems to have decreased significantly.

I know what the issue is re Vercel deployment. Three of the YT urls are corrupted. Running into wifi issues atm. Will address bug in the morning.


For very large / small numbers, use formatting standard to epidemiologists

When extreme range selections are made, the default notation for axes labels used by plotly is not standard in the field of epidemiology

Plotly defaults: 100n, 1u, 10u etc…
Ideal formatting: 1.5 x 10-5, 4.6 x 1010, etc
Also acceptable: 1.5e-5, 4.6e10, etc

To reproduce (after log scale and related axis work has been completed for https://github.com/VEuPathDB/web-eda/issues/1228 and https://github.com/VEuPathDB/web-eda/issues/1157):
GEMS1

Scatter plot
Put "Household wealth, numerical on either axis (and choose another variable for the other axis)
Choose logs for the household wealth axis
Modify its lower range to 0.00000005 or thereabouts.

I have looked at plotly.js API docs and tested something. From my understanding, this is doable but will wait for the implementation as indicated in the ticket. For a record, here is a solution:
layout.yaxis.showexponent: 'all',
layout.yaxis.minexponent: 4,
layout.yaxis.exponentformat: 'power',
note) exponentformat of 'power' displays the above ideal format like 1.5 x 10^-5, 4.6 x 10^10, etc
minexponent determines when we will show exponent. Its input is absolute value, meaning that if 4 (power), then values with power of (+/-5) or larger (> 10^5) / smaller (< 10^-5) will start to show the exponent.

Hi @moontrip it seems like this can happen on any axis where the user can both (i) select log scale and (ii) set either a very small value for minimum or very large value for the maximum of the axis range
this is not a priority for b59 so i am moving the ticket to "Backlog"

@moontrip this is very low priority, i will let you know when you should work on it. i've moved it back to Backlog

@danicahelb Thank you for your information. I think that it is close to the end as there already exists PR with a couple of reviews.

closing due to merges: https://github.com/VEuPathDB/web-components/pull/384 & https://github.com/VEuPathDB/web-eda/pull/1348

Functionality works. Confirmed using both GEMS 1 example (scatter plot) and a line plot in MAL-ED
<img width="553" alt="Screen Shot 2022-10-21 at 10 44 48 AM" src="https://user-images.githubusercontent.com/62298921/197226027-12d0fd3f-9a9a-4408-b308

-20c46c80ab2f.png">


pendingchannels rpc gives wrong htlc stage and sweeps in 2 separate transactions after turning on lnd

Background
Describe your issue here.
i made a channel 800k sats and keysended 50k sats to the other side. there were no pending HTLCs at this point in time and remote balance was 50k sats. then, i made 2 HTLCs of 50k sats each (with a swap), turned off my node and gave the remote party the preimage of 1 of the 2 swaps (by redeeming on-chain). the other party will try to fulfill the HTLC but i am not online, so force closed the channel before it times out to claim it on chain.
when i turned the node back on, it rescanned the chain and obviously saw the force close, it directly swept the local output (:3), it took some time before it swept the timed out HTLC (:2) and in between a block was mined (dont know it this matters though)
before the timed out HTLC was swept the pendingchannels rpc said it was on stage 2 (after the sweep confirmed it wasnt pending anymore)
{
    "total_limbo_balance": "749730",
    "pending_open_channels": [
    ],
    "pending_closing_channels": [
    ],
    "pending_force_closing_channels": [
        {
            "channel": {
                "remote_node_pub": "03f060953bef5b777dc77e44afa3859d022fc1a77c55138deb232ad7255e869c00",
                "channel_point": "23e8ac05ab5e50977e65224efaf66a228bd2115814afafb86bf22c84d526e022:1",
                "capacity": "800000",
                "local_balance": "649730",
                "remote_balance": "0",
                "local_chan_reserve_sat": "0",
                "remote_chan_reserve_sat": "0",
                "initiator": "INITIATOR_LOCAL",
                "commitment_type": "STATIC_REMOTE_KEY",
                "num_forwarding_packages": "0",
                "chan_status_flags": ""
            },
            "closing_txid": "de55d4e3b8c8d541b85cc51666f19b5acedb8a31dd308e9bc6b3ee1e899e028f",
            "limbo_balance": "749730",
            "maturity_height": 2196616,
            "blocks_til_maturity": -46,
            "recovered_balance": "0",
            "pending_htlcs": [
                {
                    "incoming": false,
                    "amount": "50000",
                    "outpoint": "de55d4e3b8c8d541b85cc51666f19b5acedb8a31dd308e9bc6b3ee1e899e028f:1",
                    "maturity_height": 2196625,
                    "blocks_til_maturity": -37,
                    "stage": 2
                },
                {
                    "incoming": false,
                    "amount": "50000",
                    "outpoint": "de55d4e3b8c8d541b85cc51666f19b5acedb8a31dd308e9bc6b3ee1e899e028f:2",
                    "maturity_height": 2196625,
                    "blocks_til_maturity": -37,
                    "stage": 2      <-- this
                }
            ],
            "anchor": "LIMBO"
        }
    ],
    "waiting_close_channels": [
    ]
}

after a block, the fulfilled HTLC (:1) had stage 0 for some reason, nothing happened to that output in this block, also the local sweep got mined, the timed out HTLC sweep wasnt made yet, note the recovered balance == the local balance
{
    "total_limbo_balance": "50000",
    "pending_open_channels": [
    ],
    "pending_closing_channels": [
    ],
    "pending_force_closing_channels": [
        {
            "channel": {
                "remote_node_pub": "03f060953bef5b777dc77e44afa3859d022fc1a77c55138deb232ad7255e869c00",
                "channel_point": "23e8ac05ab5e50977e65224efaf66a228bd2115814afafb86bf22c84d526e022:1",
                "capacity": "800000",
                "local_balance": "649730",
                "remote_balance": "0",
                "local_chan_reserve_sat": "0",
                "remote_chan_reserve_sat": "0",
                "initiator": "INITIATOR_LOCAL",
                "commitment_type": "STATIC_REMOTE_KEY",
                "num_forwarding_packages": "0",
                "chan_status_flags": ""
            },
            "closing_txid": "de55d4e3b8c8d541b85cc51666f19b5acedb8a31dd308e9bc6b3ee1e899e028f",
            "limbo_balance": "50000",
            "maturity_height": 2196616,
            "blocks_til_maturity": -47,
            "recovered_balance": "699730",
            "pending_htlcs": [
                {
                    "incoming": false,
                    "amount": "50000",
                    "outpoint": "de55d4e3b8c8d541b85cc51666f19b5acedb8a31dd308e9bc6b3ee1e899e028f:1",
                    "maturity_height": 2196616,
                    "blocks_til_maturity": -47,
                    "stage": 0
                },
                {
                    "incoming": false,
                    "amount": "50000",
                    "outpoint": "de55d4e3b8c8d541b85cc51666f19b5acedb8a31dd308e9bc6b3ee1e899e028f:2",
                    "maturity_height": 2196625,
                    "blocks_til_maturity": -38,
                    "stage": 2
                }
            ],
            "anchor": "LIMBO"
        }
    ],
    "waiting_close_channels": [
    ]
}

another block was mined with the timed out HTLC sweep, and the channel was fully closed on my side
Your environment

version of lnd lnd version 0.14.2-beta commit=v0.14.2-beta
which operating system (uname -a on *Nix) Linux node 5.16.14-arch1-1 #1 SMP PREEMPT Fri, 11 Mar 2022 17:40:36 +0000 x86_64 GNU/Linux
version of btcd, bitcoind, or other backend Bitcoin Core version v22.0.0
any other relevant environment details
on testnet

Steps to reproduce
Tell us how to reproduce this issue. Please provide stacktraces and links to code in question.
what i did in 'Background', for the swap i used https://testnet.boltz.exchange/
Expected behaviour
Tell us what should happen

correct stage and blocks_til_maturity
one sweep tx

Actual behaviour
Tell us what happens instead

the strange this with the stage and blocks_til_maturity of de55d4e3b8c8d541b85cc51666f19b5acedb8a31dd308e9bc6b3ee1e899e028f:1
the local p2wpkh output was swept separately from the timed out HTLC, which were both spendable when i turned on lnd

Also, what's going on with blocks_til_maturity? The first HTLC changed from -37 to -47.

Also, what's going on with blocks_til_maturity? The first HTLC changed from -37 to -47.

i dont know, it was already spent on chain when i booted up my lnd. maybe it was trying to time it out and found out later it has been spent by the remote party

This is because the htlc's are sent to the utxonursery which report that everything is in stage 2. The change in stage is because the utxonursery requires a block confirmation to clean-up its entries (seen in graduateClass). I don't think this will get addressed since it is:

cosmetic
the utxonursery may get deleted (see https://github.com/lightningnetwork/lnd/issues/3688)
also, static-remote-key channels are on the way towards deprecation


Copy action from share sheet should copy actual image file to clipboard

Tap on an image
Pick "Copy" action
Go to another app like GroupMe or Messages
Paste from clipboard

Result: Pastes a dropbox link to the gif
Expected: Pastes the actual gif

Thanks for opening this @erindotio. I think copying the link is still important. I would vote for the native copy action to copy the GIF like you say and at the same time introduce a custom copy action that allows the user to copy the GIF link.


RE: THEEEE GLAASSS THEMEEE IS REAAALLL

Description
#11359 yeah sooo exact same this as mentioned post.
Steps To Reproduce
#11359
Steps to fix
#11359 just look at that one.
Files Version
#11359 just look at that one.
Windows Version
#11359 just look at that one.
Log file
#11359 just look at that one.

Don't spam I'm currently wring on the other issue

what is your problem Josh-65? start learning how to read a issue before uuhhh i dont know either sennding a comepletly unrelated link, or closing immediately.


Possible fix for virtualenv references

I spent some time thinking about how to solve the virtualenv issues with gunicorn installing on the host vs the virtualenv associated with the (django) application.
If we modify the resource to support a symbol argument we can use that symbol to identify another resource in the application resource. As an example you could specify a virtualenv of :django to install to the same virtualenv as that resource.
Check my commit here:
https://github.com/BNOTIONS/application_python/commit/a65a9e6fa613b3b31e02c186136e46573160f971

This should all be corrected now, gunicorn is installed into which python environment the app is using.


segmentation fault (core dumped)

Describe the bug
Segmentation fault (core dumped)
Helpful additional information
(Please click check boxes AFTER submitting ticket)

[ Y] Did VAPOR crash?
[N ] Did you get wrong results?

Impact

[x] High - User productivity significantly degraded
[ ] Medium - User productivity partially degraded
[ ] Low - User productivity trivially degraded

To Reproduce
Steps to reproduce the behavior. For example:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Additionally, please attach a session file to this ticket to easily reproduce (use File->Save Session).
Expected behavior
Whenever iso tab is clicked to be enabled, vapor is crashed.
Attachments

Can you reproduce the bug on our test data?

If so, which file?
If not, access to your data would be very helpful. If the data set is small, please zip and upload it as an attachment. If it is large, please provide instructions for how we can contact you to obtain this data.

Please attach a session file to easily reproduce (use File->Save Session).
Please attach any screenshots relevant to understanding the issue.

Desktop

OS and version: [e.g. Ubuntu 16.04]
Version: [e.g. Vapor 2.6.0]

Additional context
Unable to load library icui18n "Cannot load library icui18n: (icui18n: cannot open shared object file: No such file or directory)"

Hi, we are sorry to hear this is causing you trouble, however the current release is version 3.1 and we are no longer actively supporting version 2.6. These new versions can be downloaded at https://www.vapor.ucar.edu/. Please give it a try and it should fix the issue for you.

Hi
I downloaded the latest version. However I am getting this issue
Unable to load library icui18n "Cannot load library icui18n: (icui18n: cannot open shared object file: No such file or directory)"
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
Major opcode: 62 (X_CopyArea)
Resource id:  0x0
So the file is imported but no data is seen on the screen after enabling also.

I would like to update on the previous issue that was raised by me.

X Error: BadDrawable (invalid Pixmap or Window parameter) 9
Major opcode: 62 (X_CopyArea)
Resource id: 0x0

The above one is solved by issuing the command
export QT_GRAPHICSSYSTEM=native
However, there seems to be a problem
The variable is still not appearing on the image rendering window when the file is loaded. Also the histogram is seen. (The file loaded is the sample file given in the vapor webpage). Also the image is loading (base map topography), but while clicking other options like volume or iso, histogram is loaded but nothing appears on the image rendering window.

Which sample dataset are you using? Could you please attach a screenshot of vapor showing the problems you described?

Dataset used : SAMPLE DATA DUKU (WRF Model) from Vapor Website


Wireui should have a functionality for showing/setting indicator lights

this should not be done by doing boilerplate code every time you need it

as discussed in the discord, this is already possible


Store PeerId for Cfd in the database

fixes https://github.com/itchysats/itchysats/issues/1993
In the model the PeerId is optional because we cannot always predict it.
For the maker it is impossible to map old taker identities to peer-ids.
For the taker we can only map known maker-ids to peer-ids.
In the database we use a placeholder PeerId to indicate if the peer-id of the counterparty is known.
This is allows to add the NOT NULL constraint to the new counterparty_libp2p_identity column.
When loading the counterparty_libp2p_identity from the database for the taker, if the placeholder is loaded we default known maker peer-ids based on a mapping to from the legacy network identity.
This allows new takers to use the new rollover protocol for positions that were opened with a previous taker version.
We introduce HelloV3 message.
New takers connects to the maker with HelloV3.
The maker treats the taker's peer-id as optional field when passing on incoming messages; making the maker backwards-compatible.
Co-authored-by: Mariusz Klochowicz<EMAIL_ADDRESS>

[snip]

Couldn't we achieve the same with just defaulting to either the testnet/mainnet maker peer id and leaving the taker peer id empty (or dummy) for the time being. Eventually we will move TakeOrder to a libp2p protocol and will have this value available. Then we can drop the default values.

Basically yes, but it might be hard to test it then, and it might be hard to get proper stats from the maker logs.
I bounced several solutions in my head when implementing it and all have up and downsides. I think this solution brings us closest to what it should be in the future, because all newly added Cfd know both identities and at the same time the taker is able to rollover previously opened positions with the new protocol.

My understanding of this change is that this is only needed because TakeOrder comes over the old connection where we don't have the libp2p details available but it is needed for rollover which will be on the new connection.
Couldn't we achieve the same with just defaulting to either the testnet/mainnet maker peer id and leaving the taker peer id empty (or dummy) for the time being. Eventually we will move TakeOrder to a libp2p protocol and will have this value available. Then we can drop the default values.
I'm not sure if my line of thinking is fully thought through, and I don't want to block you neither, so please move on :)

unfortunately we need to pull it through to make existing actor tests pass (they start by taking order) and running makers locally (including dev-maker)....

bors ping

bors retry

bors r-

bors r+

bors r+


only getting the numeric part back

Hi jduff,
This gem looks pretty interesting.  Thanks for sharing!
I tried it out on rails console.  The results I get are different from what you have in the documentation.  I just get the numeric part; the unit and exponent are missing.  I even made a call to Alchemist to make sure it was loaded.  Here is the spool from my run:
ruby-1.9.2-p290 :013 >   Herbalist.parse("a quarter cup")
=> 0.25
ruby-1.9.2-p290 :014 > Alchemist
=> Alchemist
ruby-1.9.2-p290 :015 > Herbalist.parse("a quarter cup")
=> 0.25
ruby-1.9.2-p290 :016 >
Am I doing something incorrectly?
Thanks,
Tabrez

Thanks John!


Fix selection of default config filename for rollup

This seems to have been missed when moving the other bits in https://github.com/driftyco/ionic-app-scripts/commit/df38cb4fd2117d37e99a5b0a1aa94b50dc7ebeba

Obsolete


Add simple client implementation

Has majorly common code with mediator agent.
It's in essence one hybrid, with code organized separately.
This is in anticipation of splitting client into separate binary.
Then again, Aries agents are meant to be horizontal (p2p). So perhaps a multifunctional agent isn't all that odd.

Codecov Report

Merging #977 (8f36114) into nain/mediator (4adc7dd) will increase coverage by 5.91%.
The diff coverage is n/a.

:exclamation: Current head 8f36114 differs from pull request most recent head f619fab. Consider uploading reports for the commit f619fab to get more accurate results

@@                Coverage Diff                @@
##           nain/mediator     #977      +/-   ##
=================================================
+ Coverage          29.22%   35.13%   +5.91%
=================================================
  Files                414      413       -1
  Lines              26246    27471    +1225
  Branches            5365     5811     +446
=================================================
+ Hits                7671     9653    +1982
+ Misses             16263    14776    -1487
- Partials            2312     3042     +730

Flag
Coverage Δ

unittests-aries-vcx
35.13% <ø> (+5.91%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
see 159 files with indirect coverage changes

Hi @nain-F49FF806 note that all of the commits must be DCO signed

@Patrik-Stas Yes. This PR is currently WIP. (Specifically the unsigned commit)
I was using the (absence of) DCO as an automatic block. :sweat_smile:

Mediator now supports mediator-coordination protocol. Also included e2e tests of functionality.
Todo(later/soon): Use "did:key" formatting/encoding as per this recommendation of Aries RFC0360

@nain-F49FF806 I've left another round of comments. I think we could get initial version merged after these, and we can keep bigger improvements in a todo list externally

For now, I am merging this as is~ The outstanding comments shall be addressed in subsequent PRs


Prepare API docs

Here's nice example of API documentation using GH wiki:
https://github.com/ourbricks/ourbricks-api-examples
let's use it as a reference.

Here is an exmaple how to generate api docs and show in the browser.
npm i httpster apidoc -g
git checkout api-docs
npm run docs

Go to that link


Improve task latency metrics

What changed?
Change how task_latency metric is calculated

Why?
Previously the time during which task is waiting to be submitted to task ch is not part of the task_latency metrics. This means task_latency metric doesn't measure the total in-memory latency for a task

How did you test it?
Tested in staging

Potential risks
N/A

Coverage decreased (-0.6%) to 67.067% when pulling 78b9be018ae81d3bfc38e7c6327b569da3a47b86 on yycptt:improve-task-metrics into 6fcee79ea3a6be7e33dff3ab15cfe3f31eef4b89 on uber:master.


Scalar function support

This is a tracking issue for all scalar functions:
https://github.com/penberg/limbo/blob/main/COMPAT.md#scalar-functions

Hey! I would work on abs  scalar function.

I would pick upper and lower case, and after that min and max functions.

I am interested in contributing to scalar functions. I took hex and unhex under my lens.


[stable/sonatype-nexus] Fix trailing white space trimming in service template

Is this a new chart
no
What this PR does / why we need it:
templates/service.yaml is not rendered correctly (can be tested by setting service.enabled: true), because a trailing white space trimming pulls the following line into the wrong context. Helm bails out with:
Error: YAML parse error on sonatype-nexus/templates/service.yaml: error converting YAML to JSON: yaml: line 18: mapping values are not allowed in this context
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @tsiddique

/ok-to-test
/assign

/lgtm


Please submit the book in Goodreads.com

Thank you, currently we don't have PDF or epub edition of book.
But in future we want create pdf and epub edition for submit.


[Prototype] Generating grouped update PRs

⚠ This is an experimental spike ⚠
The purpose of this is spike is to create an isolated code line to reimplement Dependabot::Update#run  without taking on the need to verify our prototype work as strictly as the production implementation.
It is important to fail-fast on our proposed strategy and test our service's assumptions about PRs without investing more time in refactoring the existing code to make way for a new architecture that we can't be sure will actually work out.
This should not be considered indicative of the final architecture
The Approach
This spike explores grouping in a naive, ecosystem-agnostic way by using the Dependabot::Updater class to drive collecting up the Dependency changes required by a particular group rule - for now we assume a rule of '*', i.e. group everything - and then executing a single FileUpdater and PR creation invocation on the aggregate changes.
For purposes of simplicity, we have disabled concerns around managing the lifecycle of PRs, i.e. superseding and rebasing existing PR, as well as set aside Security-only update strategies since they are already special-cased.
Goals

Flush out general refactors required in the updater/ code to improve quality, test coverage, etc
Determine architectural changes required to Dependabot::Updater to better isolate the UpdateChecker and FileUpdater steps to break the assumption they are always 1:1
Provide a walking skeleton we can attach further experiments within common/lib to in order to test our hypothesis without waiting on (1) and (2) to ship

Non-goals

Write production quality-code

This is a highly experimental spike, if we do eventually merge it for continued testing it will remain behind an experiment flag and remain isolated in such a way it cannot impact existing code.
This should also be considered a throw-away prototype, so using this in our own scripts is highly discouraged and will not be supported.

Address the dry-run script

https://github.com/dependabot/dependabot-core/pull/5867 spikes out this strategy in the dry-run script as part of an earlier experiment
We might further the #5867 spike to do some more exploration, but it should be considered a feed-in to this work which will take priority
Once we have settled the Dependabot::Updater architecture we will figure out how to best maintain the dry-run script as the two overlap heavily

Closing this out as superseded by https://github.com/dependabot/dependabot-core/pull/6663


Doc: UserInfo -> identifier required

this param becomes non-nullable because it is required for iOS, even if Android allow nulls here
Originally posted by @miquelbeltran in https://github.com/MindscapeHQ/raygun4flutter/pull/15#r681229111

Ok, but what still works is this, right?

Raygun.setUserId('1234');
Call with id null to clear the user identifier.
It seems that passing in null there will on iOS do this:  RaygunUserInformation.anonymousUser
Is there a reason why the same doesn't happen if no identifier is passed into a RaygunUserInfo object?

the iOS Swift implementation does not support a RaygunUserInfo with a null ID, for example something like:
RaygunUserInfo (
  id: null,
  firstname: 'Max',
  // etc
)

If a user wants to set the user back to anonymous they can either call Raygun.setUserId(null); or Raygun.setUser(null); which is handled the same internally.


KAKU devices types

Hello, I have found some types of kaku devices, so maybe you can add it in future releases:
deviceType=13 Kaku doorbell
deviceType=6 doorbell button
deviceType=4 PIR outdoor sensor
deviceType=14 ambient light sensor

Thank you for the information! Anyone with other device types, please leave them in the comments. A link to the product would help!
I will make a list of all the device with the device types and capabilities. In a future release, I will put this device types on a blacklist.

deviceType=36, is a zigbee (ledvance) dimmable and cool to warm white adjustable spot
deviceType=41 & 33, is a zigbee (ledvance) smart plug

DeviceType 43 = smoke detector: https://klikaanklikuit.nl/product/slimme-draadloze-rookmelder/

Als dit helpt heb ik hier trouwens de volledige lijst van types die in de app staan:
"SWITCH", 1
"DIMMER", 2
"ACTUATOR", 3
"MOTION_SENSOR", 4
"CONTACT_SENSOR", 5
"DOORBELL_ACDB_7000A", 6
"WALL_CONTROL_1_CHANNEL", 7
"WALL_CONTROL_2_CHANNEL", 8
"REMOTE_CONTROL_1_CHANNEL", 9
"REMOTE_CONTROL_2_CHANNEL", 10
"REMOTE_CONTROL_3_CHANNEL", 11
"REMOTE_CONTROL_16_CHANNEL", 12
"REMOTE_CONTROL_AYCT_202", 13
"CHIME", 14
"DUSK_SENSOR", 15
"ARC_REMOTE", 16
"ARC_CONTACT_SENSOR", 17
"ARC_MOTION_SENSOR", 18
"ARC_SMOKE_SENSOR", 19
"ARC_SIREN", 20
"DOORBELL_ACDB_7000B", 21
"AWMT", 22
"SOMFY_ACTUATOR", 23
"LIGHT", 24
"WALL_SWITCH_AGST_8800", 25
"WALL_SWITCH_AGST_8802", 26
"BREL_ACTUATOR", 27
"CONTACT_SENSOR_2", 28
"ARC_KEYCHAIN_REMOTE", 29
"ARC_ACTION_BUTTON", 30
"ARC_ROTARY_DIMMER", 31
"ZIGBEE_UNKNOWN_DEVICE", 32
"ZIGBEE_SWITCH", 33
"ZIGBEE_DIMMER", 34
"ZIGBEE_RGB", 35
"ZIGBEE_TUNABLE", 36
"ZIGBEE_MULTI_PURPOSE_SENSOR", 37
"ZIGBEE_LOCK", 38
"ZIGBEE_LIGHT_LINK_REMOTE", 39
"ZIGBEE_LIGHT", 40
"ZIGBEE_SOCKET", 41
"ZIGBEE_LEAKAGE_SENSOR", 42
"ZIGBEE_SMOKE_SENSOR", 43
"ZIGBEE_CARBON_MONOXIDE_SENSOR", 44
"ZIGBEE_TEMPERATURE_AND_HUMIDITY_SENSOR", 45
"ZIGBEE_LIGHT_GROUP", 46
"ZIGBEE_FIREANGEL_SENSOR", 47

DeviceType 43 = smoke detector: https://klikaanklikuit.nl/product/slimme-draadloze-rookmelder/

i like to have this one.

@thephantom What do mean?

Thanks all for the device types. I will make a markdown file containing all this info a well with product urls. Thanks @Stijn-Jacobs for all the info, I will add this info to the device configs file

@thephantom What do mean?

i like to have the smokedetector in the system. i can make an automation then: "if there is an fire then turn on the light" for example.

@thephantom since I don't have a smoke detector, I can't make it working. When I ever own one or something similar, I will try to add it, but can't make any promises. Beside, this plugin doesn't work 100% perfect so I wouldn't trust it. But you can make this possible in the official KAKU app using rules (can be found in the 'more' tab).

I like to have the Zigbee temperature and humidity sensor; ID 45.
https://klikaanklikuit.nl/product/temperatuur-en-luchtvochtigheidssensor/ or https://www.expert4house.com/en/smart-home/sensors-and-detectors/tuya-zigbee-temperature-and-humidity-sensor. Both devices work with the KAKU app.

Don’t have either of the devices, nor any other sensor, so can’t really make it work unfortunately.

I also would like to request the asun-650 to be added only the one that I got looks different.
https://www.gebruikershandleiding.com/KlikaanKlikuit-ASUN-650/preview-handleiding-639966.html
This is just a Manuel I found online but it seems to be correct. Also I would love to help do anything but all I can do is  print('hello world'). So if you can think of anything tell me.

I am new here, thaks for the plug in. Works great except for 1 issue:  the KAKU dimmers. In Apple HomeKit I can switch them off and on but cannot set the value higher than 4 -9%. The real value is different however(between 0-100%). In the KAKU app it works OK. I have a ICS2000 and homebridge working on a Raspberry Pi4

I would like to have the ASUN-650 as well.

Hi Youri, Thank you for your great plug-in. I am looking for a way to control the KAKU Asun-650. No idea what device number this is (how to find out?), but it’s a control unit for sun screens. Here hou can find it: https://klikaanklikuit.nl/product/inbouwschakelaar-voor-zonwering/

I would also really appreciate if the Asun-650 would be supported. So far really love the work you’ve down for this plugin :))

Hey,
I don't know if this helps and if you guys have already seen this topic but I have found the following code on a Tweakers topic from 2020 with a lot of "DeviceTypeClasses"
I thought that maybe this helps adding more devices to the plugin.
  SWITCH = new DeviceType("SWITCH", 1, 1,<PHONE_NUMBER>);     DIMMER = new DeviceType("DIMMER", 2, 2,<PHONE_NUMBER>);     ACTUATOR = new DeviceType("ACTUATOR", 3, 3,<PHONE_NUMBER>);     MOTION_SENSOR = new DeviceType("MOTION_SENSOR", 4, 4,<PHONE_NUMBER>);     CONTACT_SENSOR = new DeviceType("CONTACT_SENSOR", 5, 5,<PHONE_NUMBER>);     DOORBELL_ACDB_7000A = new DeviceType("DOORBELL_ACDB_7000A", 6, 6,<PHONE_NUMBER>);     WALL_CONTROL_1_CHANNEL = new DeviceType("WALL_CONTROL_1_CHANNEL", 7, 7,<PHONE_NUMBER>);     WALL_CONTROL_2_CHANNEL = new DeviceType("WALL_CONTROL_2_CHANNEL", 8, 8,<PHONE_NUMBER>);     REMOTE_CONTROL_1_CHANNEL = new DeviceType("REMOTE_CONTROL_1_CHANNEL", 9, 9,<PHONE_NUMBER>);     REMOTE_CONTROL_2_CHANNEL = new DeviceType("REMOTE_CONTROL_2_CHANNEL", 10, 10,<PHONE_NUMBER>);     REMOTE_CONTROL_3_CHANNEL = new DeviceType("REMOTE_CONTROL_3_CHANNEL", 11, 11,<PHONE_NUMBER>);     REMOTE_CONTROL_16_CHANNEL = new DeviceType("REMOTE_CONTROL_16_CHANNEL", 12, 12,<PHONE_NUMBER>);     REMOTE_CONTROL_AYCT_202 = new DeviceType("REMOTE_CONTROL_AYCT_202", 13, 15,<PHONE_NUMBER>);     CHIME = new DeviceType("CHIME", 14, 13,<PHONE_NUMBER>);     DUSK_SENSOR = new DeviceType("DUSK_SENSOR", 15, 14,<PHONE_NUMBER>);     ARC_REMOTE = new DeviceType("ARC_REMOTE", 16, 16,<PHONE_NUMBER>);     ARC_CONTACT_SENSOR = new DeviceType("ARC_CONTACT_SENSOR", 17, 17,<PHONE_NUMBER>);     ARC_MOTION_SENSOR = new DeviceType("ARC_MOTION_SENSOR", 18, 18,<PHONE_NUMBER>);     ARC_SMOKE_SENSOR = new DeviceType("ARC_SMOKE_SENSOR", 19, 19,<PHONE_NUMBER>);     ARC_SIREN = new DeviceType("ARC_SIREN", 20, 20,<PHONE_NUMBER>);     DOORBELL_ACDB_7000B = new DeviceType("DOORBELL_ACDB_7000B", 21, 21,<PHONE_NUMBER>);     AWMT = new DeviceType("AWMT", 22, 22,<PHONE_NUMBER>);     SOMFY_ACTUATOR = new DeviceType("SOMFY_ACTUATOR", 23, 23,<PHONE_NUMBER>);     LIGHT = new DeviceType("LIGHT", 24, 24,<PHONE_NUMBER>);     WALL_SWITCH_AGST_8800 = new DeviceType("WALL_SWITCH_AGST_8800", 25, 25,<PHONE_NUMBER>);     WALL_SWITCH_AGST_8802 = new DeviceType("WALL_SWITCH_AGST_8802", 26, 26,<PHONE_NUMBER>);     BREL_ACTUATOR = new DeviceType("BREL_ACTUATOR", 27, 27,<PHONE_NUMBER>);     CONTACT_SENSOR_2 = new DeviceType("CONTACT_SENSOR_2", 28, 28,<PHONE_NUMBER>);     ARC_KEYCHAIN_REMOTE = new DeviceType("ARC_KEYCHAIN_REMOTE", 29, 29,<PHONE_NUMBER>);     ARC_ACTION_BUTTON = new DeviceType("ARC_ACTION_BUTTON", 30, 30,<PHONE_NUMBER>);     ARC_ROTARY_DIMMER = new DeviceType("ARC_ROTARY_DIMMER", 31, 31,<PHONE_NUMBER>);     ZIGBEE_UNKNOWN_DEVICE = new DeviceType("ZIGBEE_UNKNOWN_DEVICE", 32, 32,<PHONE_NUMBER>);     ZIGBEE_SWITCH = new DeviceType("ZIGBEE_SWITCH", 33, 33,<PHONE_NUMBER>);     ZIGBEE_DIMMER = new DeviceType("ZIGBEE_DIMMER", 34, 34,<PHONE_NUMBER>);     ZIGBEE_RGB = new DeviceType("ZIGBEE_RGB", 35, 35,<PHONE_NUMBER>);     ZIGBEE_TUNABLE = new DeviceType("ZIGBEE_TUNABLE", 36, 36,<PHONE_NUMBER>);     ZIGBEE_MULTI_PURPOSE_SENSOR = new DeviceType("ZIGBEE_MULTI_PURPOSE_SENSOR", 37, 37,<PHONE_NUMBER>);     ZIGBEE_LOCK = new DeviceType("ZIGBEE_LOCK", 38, 38,<PHONE_NUMBER>);     ZIGBEE_LIGHT_LINK_REMOTE = new DeviceType("ZIGBEE_LIGHT_LINK_REMOTE", 39, 39,<PHONE_NUMBER>);     ZIGBEE_LIGHT = new DeviceType("ZIGBEE_LIGHT", 40, 40,<PHONE_NUMBER>);     ZIGBEE_SOCKET = new DeviceType("ZIGBEE_SOCKET", 41, 41,<PHONE_NUMBER>);     ZIGBEE_LEAKAGE_SENSOR = new DeviceType("ZIGBEE_LEAKAGE_SENSOR", 42, 42,<PHONE_NUMBER>);     ZIGBEE_SMOKE_SENSOR = new DeviceType("ZIGBEE_SMOKE_SENSOR", 43, 43,<PHONE_NUMBER>);     ZIGBEE_CARBON_MONOXIDE_SENSOR = new DeviceType("ZIGBEE_CARBON_MONOXIDE_SENSOR", 44, 47,<PHONE_NUMBER>);     ZIGBEE_TEMPERATURE_AND_HUMIDITY_SENSOR = new DeviceType("ZIGBEE_TEMPERATURE_AND_HUMIDITY_SENSOR", 45, 46,<PHONE_NUMBER>);     ZIGBEE_LIGHT_GROUP = new DeviceType("ZIGBEE_LIGHT_GROUP", 46, 48,<PHONE_NUMBER>);     ZIGBEE_FIREANGEL_SENSOR = new DeviceType("ZIGBEE_FIREANGEL_SENSOR", 47, 49,<PHONE_NUMBER>);     CAMERA_MODULE = new DeviceType("CAMERA_MODULE", 48, 241,<PHONE_NUMBER>);     LOCATION_MODULE = new DeviceType("LOCATION_MODULE", 49, 242,<PHONE_NUMBER>);     SYSTEM_MODULE = new DeviceType("SYSTEM_MODULE", 50, 243,<PHONE_NUMBER>);     ENERGY_MODULE = new DeviceType("ENERGY_MODULE", 51, 238,<PHONE_NUMBER>);     WEATHER_MODULE = new DeviceType("WEATHER_MODULE", 52, 244,<PHONE_NUMBER>);     DeviceType deviceType = new DeviceType("SECURITY_MODULE", 53, 240,<PHONE_NUMBER>);
Here is also a link to the topic https://gathering.tweakers.net/forum/list_messages/1698039

I also would like to request the asun-650 to be added only the one that I got looks different.
https://www.gebruikershandleiding.com/KlikaanKlikuit-ASUN-650/preview-handleiding-639966.html
This is just a Manuel I found online but it seems to be correct. Also I would love to help do anything but all I can do is print('hello world'). So if you can think of anything tell me.

I think the asun650 has the following class line. So the device type is 23, I don't really know what the other numbers mean.
SOMFY_ACTUATOR = new DeviceType("SOMFY_ACTUATOR", 23, 23,<PHONE_NUMBER>);`


Xonsh might be the answer

The proper thing to do would be to abandon *sh altogether, and instead use a scripting language with a proper library for defining a command line interface. Can anyone think of one?

I think that Xonsh (http://xon.sh/) might be able to do that.

Thanks for the suggestion! I'll have to check it out. The answer I had in mind for my (admittedly rhetorical) question was of course Python, but the more the merrier!

I think Xonsh is a superset of Python.
Sent from my mobile phone.
On Feb 19, 2016 3:45 PM, "Noah Hoffman"<EMAIL_ADDRESS>wrote:

Thanks for the suggestion! I'll have to check it out. The answer I had in
mind for my (admittedly rhetorical) question was of course Python, but the
more the merrier!
—
Reply to this email directly or view it on GitHub
https://github.com/nhoffman/argparse-bash/issues/7#issuecomment-186438953
.


Post Loaders don't work correctly (Webpack v3)

I was trying to use Babili as a "post" loader for Webpack. This would make it very easy - bundled with the new cache-loader to actually get very fast cached production builds while being ES6/ES7 capable.
This is the config I was triying to use:
...

// Transpile our own JavaScript files using the setup in `.babelrc`.
{
  test: /\.js$/,
  exclude: /node_modules/,
  use: [
    "cache-loader",
    "babel-loader"
  ]
},

// Compression on all JS files - in a common postprocessing step
{
  test: /\.js$/,
  enforce: "post",
  use: [
    "cache-loader",
    {
      loader: "babel-loader",
      options: {
        babelrc: false,
        presets: "babili",
        plugins: [ "syntax-dynamic-import" ]
      }
    }
  ]
},

...

Unfortunately I figured out that the babili step is being executed only on the files which are not processed by the first loader. This means in the end everything is super fast, but as it does not compress my own implementation files, it's still no way to go.
If I understand the documentation right this should probably work even if the documentation here is pretty lightweight on how to actually use this feature.
It would be great if it would work that way.
https://webpack.js.org/configuration/module/#rule-enforce

@jhnns Is this more of an issue with Conditions/Rules or loader-runner etc.

@swernerx problem still exists?

I am not working on that project anymore. So I actually can't say.

@swernerx thanks for answer.
Closing due to inactivity. Please test with latest version and feel free to reopen if still regressions. Thanks!


Error debugging py_binary: "More than 1 executable was produced when building don't know which one to debug"

Description of the issue. Please be specific.
I have a bazel repo with simple python app and lib projects.   I can run my app.py file using right-click run.  When I try to debug, I get failure popup on the debug tab that says "More than 1 executable was produced when building don't know which one to debug"
Not clear what other executable it is referring to?
I wonder if its because it produces a exe and zip file for the py_binary,  which is default behaviour for windows , no?
Target //projects/appA:main up-to-date:
  bazel-bin/projects/appA/main.exe
  bazel-bin/projects/appA/main.zip

Version information
IdeaUltimate: 2022.1.2
Platform: Windows 10 10.0
Bazel plugin: 2<IP_ADDRESS>.1-api-version-221
Bazel: 5.3.1

Hello @maxhillaert, Can you share the code example used in reproducing the above issue. Thanks!

Checked in my bazel POC here:
https://github.com/maxhillaert/bazel-issue

Unfortunately, Windows is not officially supported by the plugin. However, I created PR https://github.com/bazelbuild/intellij/pull/4062 that may fix this problem. If you can build the plugin (instructions) from this PR and confirm that it fixes your issue, we can merge it.

ping @maxhillaert


designspaceLib: Allow a epsilon value which nudges an xvalue attribute by +1 or -1 (normalized int16)

It will be convenient to allow designspace locations in a given dimension to be specified in terms of the smallest possible offset from a given value. There is such a value because normalized axis coordinates are an integer fraction of 16384, namely -16384/16384 to 16384/16384. Our desired epsilon is therefore 1/16384 or -1/16384 in normalized coordinates.
This is particularly useful in setting <mappings> locations, where the propagation of a mapping can be blocked by an additional mapping that is offset by a tiny amount, which may be called epsilon (named after Number.EPSILON and similar concepts).
The difficulty in specifying these locations is the magnitude of the "tiny value", epsilon, in user coordinates is dependent on the minimum, default and maximum of the associated axis specification, and thus needs to be calculated individually each time it is specified.
I propose that a new attribute, epsilon is introduced with expected values "1" and "-1" (although any integer is allowed). These integers specify values in 1/16384 normalized font units, that are to be added to the associated xvalue in the same element. The value of epsilon defaults to zero.
Example without epsilon. Note that the value 70.0263635 must be calculated by the user or tool generating the designspace, which can be inconvenient, and it adds information that could be misleading.
  <mapping>
    <input>
      <dimension name="Weight" xvalue="900"/>
      <dimension name="Width" xvalue="70.0263635"/>
    </input>
    <output>
      <dimension name="Weight" xvalue="900"/>
      <dimension name="Width" xvalue="70.0263635"/>
    </output>
  </mapping>

Example using epsilon:
  <mapping>
    <input>
      <dimension name="Weight" xvalue="900"/>
      <dimension name="Width" xvalue="70" epsilon="1"/>
    </input>
    <output>
      <dimension name="Weight" xvalue="900"/>
      <dimension name="Width" xvalue="70" epsilon="1"/>
    </output>
  </mapping>

+1!
Just a nit: There's separate xvalue and yvalue for anisotropic interpolation, with yvalue being unused in the OpenType model. Donno, if we need separate xepsilon / yepsilon or not. It looks ugly.
https://fonttools.readthedocs.io/en/latest/designspaceLib/xml.html#dimension-element

I propose that a new attribute, epsilon is introduced with expected values "1" and "-1" (although any integer is allowed)

For simplicity's sake, I'd be in favor of limiting the epsilon value to "-1" and "1". Is there a use case for any other integer?

Is there a use case for any other integer?

It can serve as a backdoor to specify things in normalized coordinates directly. Eg. xvalue="0" epsilon="1024" to get 1/16th.

It can serve as a backdoor to specify things in normalized coordinates directly. Eg. xvalue="0" epsilon="1024" to get 1/16th.

I wouldn't expect the .designspace format to be facilitating such hackery.
I'm seeing <mappings> as already plenty challenging to create a GUI for. Tricks like this make it harder than necessary, if there isn't a compelling use case.
The "epsilon" idea allows us to express which side of the value the designer is interested in: we have two "pins" at the same location, and we need to distinguish between "left" and "right": "to the left, take this output location, to the right, take this other location".
In tent terminology, "left" means the tent slopes to the left, but abrubtly stops to the right.
Btw. I don't think we need this idea for output locations. Output locations don't need to be unique, only input locations.

Btw. I don't think we need this idea for output locations. Output locations don't need to be unique, only input locations.

In the example above (which "pins" a particular location to itself) it’s necessary to have output location match input location exactly, so I believe epsilon is needed in both input and output.

I’m happy to restrict it to -1 and 1 for now. If there’s a compelling use case for specifying normalized values, we can open it up.

In OpenType Feature File Specification Additions for Variable Values: Public Review Adobe uses the concise suffixes "+" and "-" to indicate the smallest possible value above and below.

When the unit letter is followed by a plus sign (+) like this:
wght=600d+, opsz=0n+
the axis position specified will be the minimum F2dot14 increment above the position specified with the number and unit. This makes it easier to specify locations that are “right next to each other”. Following the unit letter with a minus sign/hyphen (-) similarly yields the minimum F2dot14 decrement position.

From Guide to variable features

@behdad ptal :)

Thanks. Interesting.
I think in XML I prefer to avoid things like "600+" and have an integer field plus something else still. The only question now is do we make the values of the proposed epsilon attribute be just + / -? I'm fine with that.


Add settings to indices

Adds a settiings config for the resources index
This hopefully means that the errors on "complex" queries disappear without interfering with other functionality

Does not seem relevant since it is a year old


Allow configuring observation registry directly

This changes allows configuring the observation registry directly, instead of it being fetched from the application context. This is to allow observability when KafkaTemplate/KafkaMessageListenerContainer are used without an application context.

@ cfredri4 I think this needs more discussion. These changes modify the behavior of setting the default NOOP observation registry for both KafkaTemplate and the listener container. Why do you need to provide the ObservationRegistry as a non-bean, and why is the application context absent? Since there are some design changes in the PR, we will discuss this internally soon, but you can just give some more context around the changes. Thanks.

@cfredri4 I think this needs more discussion. These changes modify the behavior of setting the default NOOP observation registry for both KafkaTemplate and the listener container.

This was for simplicity's sake as the registry is nullable and null and NOOP are treated the same. But I can change back to NOOP if desired.

Why do you need to provide the ObservationRegistry as a non-bean, and why is the application context absent? Since there are some design changes in the PR, we will discuss this internally soon, but you can just give some more context around the changes. Thanks.

I have two situations where this change would be beneficial:

We sometimes use Spring Kafka in applications which are not Spring applications, i.e. they do not have a Spring application context. Here we need to create a mock ApplicationContext which implements getBeanProvider to return the registry; this is messy and fragile as it's dependent on internal logic in how KafkaTemplate/KafkaMessageListenerContainer works.

We sometimes have the need to use a different observation registry for Spring Kafka than what is in the application context. Here we need to do similar to # 1 above but then also make sure that this is done after Spring has already initialized KafkaTemplate/KafkaMessageListenerContainer as this time they are Spring beans.

Both of these situations would be trivial had it been possible to configure the observation registry directly.
Exactly the same thing can already be done for the KafkaAdmin, so to me it makes sense to allow it also for the observation registry.

@cfredri4 We are ok with the changes. However, could you re-work your solution so we don't break any existing behavior? Specifically, the default ObservationRegistry.NOOP should be restored in both KafkaTemplate and KafkaMessageListenerContainer. Thanks!

Also, please add the author tag with your name in all the classes you changed. Thanks!

Fixed.


JBPM-5266: Jobs: Type validation fails during new job creation

@cristianonicolai  can you review? thanks!

jenkins retest this


Effects field editor not wide enough

Effects drop-down menu cuts off some options (Warm/Cool Radial)

Edge only

Closing Edge only P2 bugs.


Handle mongo disconnections

Using a single session means that if the connection to mongo is
disrupted, the app will need restarting to work again. This change means
that multiple connections are used, and it will attempt to autoconnect
if there is a problem with mongo.

@jabley: Thanks :heart_decoration:
I'd been meaning to look into why the app disconnects whenever Mongo is rebooted and stays broken. I don't know if I understand enough about what this code does though.

OK, will add a better commit message.

I saw this behaviour in Preview; the /healthcheck endpoint fails to respond if the connection to Mongo is lost. It looks like that endpoint is panicking if the Mongo connection has dropped.
mattbostock@preview-backend-1:~$ curl -v http://localhost:3097/healthcheck
* About to connect() to localhost port 3097 (#0)
*   Trying <IP_ADDRESS>... connected
> GET /healthcheck HTTP/1.1
> User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/<IP_ADDRESS> libidn/1.23 librtmp/2.3
> Host: localhost:3097
> Accept: */*
>
* Empty reply from server
* Connection #0 to host localhost left intact
curl: (52) Empty reply from server
* Closing connection #0
mattbostock@preview-backend-1:~$ sudo service event-store restart
event-store stop/waiting
event-store start/running, process 20134
mattbostock@preview-backend-1:~$ curl -v http://localhost:3097/healthcheck
* About to connect() to localhost port 3097 (#0)
*   Trying <IP_ADDRESS>... connected
> GET /healthcheck HTTP/1.1
> User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/<IP_ADDRESS> libidn/1.23 librtmp/2.3
> Host: localhost:3097
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Fri, 19 Jun 2015 09:42:38 GMT
< Content-Length: 15
< Content-Type: text/plain; charset=utf-8
<
{"mongo":true}
* Connection #0 to host localhost left intact
* Closing connection #0
mattbostock@preview-backend-1:~$

@mattbostock: Yep, I observed this too. Would you mind reviewing @jabley's change (thanks for the longer commit message)? I think I understand it but you know more Go than I do.

Old behaviour:
vagrant@development:/var/apps/event-store$ ./event-store
2015/06/22 16:35:31 event-store: listening for events on 3097
^Z
[1]+  Stopped                 ./event-store
vagrant@development:/var/apps/event-store$ bg
[1]+ ./event-store &
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":true}
vagrant@development:/var/apps/event-store$ sudo service mongodb stop
mongodb stop/waiting
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":false}
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":false}
vagrant@development:/var/apps/event-store$ sudo service mongodb start
mongodb start/running, process 3185
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":false}
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":false}

New behaviour:
vagrant@development:/var/apps/event-store$ ./event-store
2015/06/22 16:35:31 event-store: listening for events on 3097
^Z
[1]+  Stopped                 ./event-store
vagrant@development:/var/apps/event-store$ bg
[1]+ ./event-store &
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":true}
vagrant@development:/var/apps/event-store$ sudo service mongodb stop
mongodb stop/waiting
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":false}
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":false}
vagrant@development:/var/apps/event-store$ sudo service mongodb start
mongodb start/running, process 3192
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":true}
vagrant@development:/var/apps/event-store$ curl http://localhost:3097/healthcheck
{"mongo":true}

Cool, thanks for this :+1:

Sorry I didn't get chance to look at this @alexmuller. I found this post useful to understand the behaviour: https://groups.google.com/d/msg/mgo-users/XM0rc6p-V-8/wcFS9ZthXuEJ


New Contribution - Active

Contributor: dayger
SSH Public key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILed81sfkioXPt82Z2FqalYDFNEYW/TllSMkACF27/RW
Attestation: dayger

I have started building contribution

(waiting for ur message)

with docker

im ready

im ready

I'm ready

im readyyyy

oh..
ready now

im ready

ok, waiting

i'm ready now

readyyy

ready now

I want to contribute

waiting

im starting

still in progress

almost done

sftp -i ./id_ceremony<EMAIL_ADDRESS>Welcome to Zircuit Mainnet Ceremony
Connected to sftp.ceremony.zircuit.com.
sftp> put ./contributions/0000000028.csrs
Uploading ./contributions/0000000028.csrs to /0000000028.csrs
0000000028.csrs                                              100%   16GB 105.0MB/s   02:36
sftp> quit

@zvorcuit can you check pls

Hi!
0x850d53571E16DFc741Dbddd8ad27CF84e6E971a0
Thanks
пт, 28 июн. 2024 г. в 17:17, zvorcuit @.***>:

Dear @Dayger666 https://github.com/Dayger666,
We would like to reward your efforts in the ceremony by sending you
Zircuit Points!
If you're interested, please provide an Ethereum address within 7 days. We
will then transfer the Zircuit Points to the address you provide in the
following days.
Thanks once more for your participation in the ceremony!
—
Reply to this email directly, view it on GitHub
https://github.com/zircuit-labs/ceremony/issues/22#issuecomment-2197161479,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BJAZTUFP4HKLC43CNGNPSYLZJV5CPAVCNFSM6AAAAABI7B2KK6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOJXGE3DCNBXHE
.
You are receiving this because you commented.Message ID:
@.***>

0x850d53571E16DFc741Dbddd8ad27CF84e6E971a0
Thanks


NVIDIA GTX TITAN X (GM200) doesn't work in any game with dxvk 2.0+

Arch Linux / Nvidia proprietary drivers.
My problem is that i can not launch any game using dxvk 2.0+, despite it seems to meet all the outlined requirements. (it made me sad when 2.0+ came out like that...but i had no idea that my GPU would be affected, it's far from being dinosaur).
That also means i can't use wine / proton fixes that come out with wine newer wine versions higher than 7.1...
Perhaps my particular GPU requires some extra-special treatment or fixes that was forgotten during bumping requirements of dxvk code?
Software information
Any game that is not DirectX 12, which is not scope of DXVK.
System information

GPU: NVIDIA GeForce GTX TITAN X (GM200)
Driver: 545.29.06
Wine version: any 7.1+
DXVK version: any 2.0+

Lutris logs (Runner options -> Output debugging info -> Enabled):
Started initial process 1035383 from /home/x133/.local/share/lutris/runners/wine/8.25-wine-ge/bin/wine /home/x133/.PlayOnLinux/wineprefix/Batman_Arkham_knight/drive_c/Games/Batman Arkham knight/Binaries/Win64/BatmanAK.exe -nologo
Start monitoring process.
esync: up and running.
wine: Using setpriority to control niceness in the [-10,10] range
002c:fixme:winediag:LdrInitializeThunk wine-staging 8.0 is a testing version containing experimental patches.
002c:fixme:winediag:LdrInitializeThunk Please mention your exact version when filing bug reports on winehq.org.
0074:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
0074:err:plugplay:enumerate_new_device Unable to install a function driver for device L"WINEBUS\\VID_845E&PID_0001\\0&0000&0&0&0".
0074:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
0074:err:plugplay:enumerate_new_device Unable to install a function driver for device L"WINEBUS\\VID_845E&PID_0002\\0&0000&0&0&0".
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\user32.dll") not found
0024:err:module:import_dll Library user32.dll (which is needed by L"C:\\windows\\syswow64\\gdi32.dll") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\gdi32.dll") not found
0024:err:module:import_dll Library gdi32.dll (which is needed by L"C:\\windows\\syswow64\\shell32.dll") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\user32.dll") not found
0024:err:module:import_dll Library user32.dll (which is needed by L"C:\\windows\\syswow64\\gdi32.dll") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\gdi32.dll") not found
0024:err:module:import_dll Library gdi32.dll (which is needed by L"C:\\windows\\syswow64\\shlwapi.dll") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\gdi32.dll") not found
0024:err:module:import_dll Library gdi32.dll (which is needed by L"C:\\windows\\syswow64\\user32.dll") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\user32.dll") not found
0024:err:module:import_dll Library user32.dll (which is needed by L"C:\\windows\\syswow64\\shlwapi.dll") not found
0024:err:module:import_dll Library shlwapi.dll (which is needed by L"C:\\windows\\syswow64\\shell32.dll") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\gdi32.dll") not found
0024:err:module:import_dll Library gdi32.dll (which is needed by L"C:\\windows\\syswow64\\user32.dll") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\user32.dll") not found
0024:err:module:import_dll Library user32.dll (which is needed by L"C:\\windows\\syswow64\\shell32.dll") not found
0024:err:module:import_dll Library shell32.dll (which is needed by L"C:\\windows\\syswow64\\start.exe") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\gdi32.dll") not found
0024:err:module:import_dll Library gdi32.dll (which is needed by L"C:\\windows\\syswow64\\user32.dll") not found
0024:err:module:import_dll Library win32u.dll (which is needed by L"C:\\windows\\syswow64\\user32.dll") not found
0024:err:module:import_dll Library user32.dll (which is needed by L"C:\\windows\\syswow64\\start.exe") not found
0024:err:module:LdrInitializeThunk Importing dlls for L"C:\\windows\\syswow64\\start.exe" failed, status c0000135
Initial process has exited (return code: 13568)
00ec:err:ole:com_get_class_object class {ff48dba4-60ef-4201-aa87-54103eef594e} not registered
00ec:err:ole:com_get_class_object no class object {ff48dba4-60ef-4201-aa87-54103eef594e} could be created for context 0x1
00ec:err:tabtip:create_uia_event_handler Failed to create IUIAutomation interface, hr 0x80040154
Monitored process exited.
Exit with return code 13568

That GPU is a Maxwell 2.0 card, so it's still supported and your driver looks reasonably recent.
Please provide logs, there's no way we can help you without more information to go by.

@K0bin
Which kind of logs would be helpful to debug?

Do things run with dxvk disabled?
Those errors dont look like dxvk's fault. Its rather wine dying immediately.

@Riesi
Huh...You're right. It actually dies same way with dxvk disabled as well, sorry for false alarm then...
Although, i have to admit it looks weird, because it perfectly aligns with new requirements, no wine / proton version higher than 7.1+ works for me....and i've tried all kinds of versions. With 7.1- and dxvk v2.0- everything works... :thinking:

Which kind of logs would be helpful to debug?

DXVK logs. But it doesn't look like DXVK even gets loaded.

Are you reusing the same prefix? Maybe upgrading broke somehow.
Try a fresh one by simply changing the path under "Game options"-> "Wine prefix"

@Riesi

Are you reusing the same prefix?

Of course, i would get insane if i'd need to create wineprefix every time wine hits major version!
I've thought...
But  you were absolutely right, it works perfectly with freshly squeezed prefix, 8.25-wine-ge + dxvk 2.3!
Thank you so much for your help! :clown_face:  :frog:
Now i'll have to figure out if i need to manually recreate 60 prefixes or there is a way to unf*ck process of updating wine 6 to 7 or 8 without breaking it... :thinking:

Great that things seem to work now! :frog:
I am not sure if there is an extra command to regenerate only parts of a prefix, since wine should do the right thing on version changes already. But that didnt work for you it seems :(
I hope you can figure something out!

@Riesi
Most of my prefixes were created back in 5.x wine era...
So far i've tried to do gradual upgrade on one of prefixes, 5 -> 6 -> 7 -> 8, with usual winecfg method...seems to work although during specifically 6 ->7 step i've noticed that in terminal:
warning: Your version of wine 5.12-13990-g10209e2e433 is no longer supported upstream. You should upgrade to 6.x

I wonder where exactly does it gets this version string from, given it's already upgraded to 6 by then. :thinking:


rl.question isn't working on Git for Windows

Hi, thanks for making this great library. :smile:
I recently ran into a problem while using Git for Windows (which uses the MSYS2/MinTTY shell if I recall correctly) to run my Node.js script. For some reason, when I run this code in that shell, which uses question:
var rl = require('readline-sync');

function loginUser() {
    console.log('Please enter your GitHub credentials.');
    username = rl.question('Username: ');
    password = rl.question('Password: ', { hideEchoBack: true }); // don't echo for password
    saveCredentials(username, password);
}

then nothing actually happens. Instead of printing Username: and then waiting for input, it looks like it just hangs there and won't respond no matter how many times Enter is pressed. When you finally Ctrl + C out of the process, it will flush out all of the input you had typed as if they were commands.
Screenshot

The repro script for this can be found here: https://github.com/jamesqo/git-delete
And yes, I tested and it seems to be working fine with regular old CMD.

Hi @jamesqo, thank you for your report.
As an experiment, insert this line before readlineSync#question, then try to run it:
process.stdin.isTTY = process.stdout.isTTY = true;

For example, this code works fine in mintty:
const readlineSync = require('readline-sync');
process.stdin.isTTY = process.stdout.isTTY = true;
var userName = readlineSync.question('May I have your name? :');
console.log(`Hi ${userName}!`);

Note that this doesn't become a solution to the root of the problem even if your program works.
Important points:

Since readlineSync is a module to read/write TTY, of course it doesn't work in environment that has no TTY.
mintty actually does not have TTY, it emulates TTY and it gives pseudo terminal device.

Run this command in mintty:
node -p -e "Boolean(process.stdout.isTTY)"

A result false means that it does not have TTY. This command will return true in Windows CMD.
Therefore, many interactive programs don't work in mintty. That is very well known.
See: http://mintty.googlecode.com/svn/branches/1.1/docs/mintty.1.html#29
https://github.com/nodejs/node/issues/3006
Also, there is a wrapper "winpty" to solve that:
https://code.google.com/archive/p/mintty/issues/56
Remember, overriding process.std*.isTTY is no good. At least you should use this way only when your program is called from command line directly.
So, readlineSync might not work completely. Some methods and options such as hideEchoBack might be not able to get raw-mode.
Then, usually mintty should be not used for interactive programs. If you don't like Windows CMD, you can try Console2, ConEmu, Cmder, etc. (I didn't check readlineSync in those yet.)

No reply came, and I close this issue.

Hi @chung-leong, thank you for the comment.
So, could you show me the script that has problem and the commands that ran the script? And your environment?
That is, the Node.js doesn't start via a shebang in Windows, as you said.

Here's the script:
https://github.com/chung-leong/trambar-cli/blob/master/bin/index.js
In normal usage, it's trigger by npm. Here's the line in package.json:
https://github.com/chung-leong/trambar-cli/blob/master/package.json#L5
I was making changes to the script for Windows. When I ran bin/index.js install from within the Git bash  shell, the prompt wouldn't appear. It works when I do node bin/index.js install. For some reason, process.stdout.isTTY is undefined in the first case where as it's true in the second.

I see.
Since readlineSync is a module to read/write TTY, of course it doesn't work in environment that has no TTY.
See https://github.com/anseki/readline-sync/issues/33#issuecomment-212849534 .
That may work fine in CMD because NPM will set up the PATH for the bin field. Therefore you can execute this:
npm install trambar
trambar

The trambar command works fine.

Just realized why I was confused by this. I didn't know that "node" is aliases to "winpty node" in the Git bash shell:
$ node -p -e "Boolean(process.stdout.isTTY)"
true

$ node.exe -p -e "Boolean(process.stdout.isTTY)"
false

$ env node -p -e "Boolean(process.stdout.isTTY)"
false

Your script works fine via the trambar command without Git bash and winpty and a shebang.
See https://github.com/anseki/readline-sync/issues/33#issuecomment-387051826

Adding
process.stdin.isTTY = process.stdout.isTTY = true;
fixed it in gitbash for windows.


[SPARK-20487][SQL] Display serde for HiveTableScan node in explained plan

What changes were proposed in this pull request?
This was a suggestion by @rxin at https://github.com/apache/spark/pull/17780#issuecomment-298073408
How was this patch tested?

modified existing unit test
manual testing:

scala> hc.sql(" SELECT * FROM my_table  where name = ''  ").explain(true)
== Parsed Logical Plan ==
'Project [*]
+- 'Filter ('name = )
   +- 'UnresolvedRelation `my_table`

== Analyzed Logical Plan ==
user_id: bigint, name: string, ds: string
Project [user_id#13L, name#14, ds#15]
+- Filter (name#14 = )
   +- SubqueryAlias my_table
      +- CatalogRelation `default`.`my_table`, Some(org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe), [user_id#13L, name#14], [ds#15]

== Optimized Logical Plan ==
Filter (isnotnull(name#14) && (name#14 = ))
+- CatalogRelation `default`.`my_table`, Some(org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe), [user_id#13L, name#14], [ds#15]

== Physical Plan ==
*Filter (isnotnull(name#14) && (name#14 = ))
+- HiveTableScan [user_id#13L, name#14, ds#15], CatalogRelation `default`.`my_table`, Some(org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe), [user_id#13L, name#14], [ds#15]

Test build #76283 has started for PR 17806 at commit ffaec4d.

Maybe get rid of the Some? If it is not defined, we probably just shouldn't show anything.

updated the PR to get rid of Some

Test build #76284 has started for PR 17806 at commit 08f6a35.

Test build #76283 has finished for PR 17806 at commit ffaec4d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/76283/
Test PASSed.

@gatorsmile i will let you merge ...

Test build #76284 has finished for PR 17806 at commit 08f6a35.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/76284/
Test PASSed.

Merged build finished. Test PASSed.

LGTM. Merging to master/2.2

Thanks! @rxin @tejasapatil


Fix unclean ffmpeg.exit()

This fixes #242 while retaining all other behaviors.

Please note, this is not a solution, due to this order of events:
Core = null;
[...]
Core.exit(1);

reference to core is nulled out first, meaning you are later calling .exit() on null, which is a no-op.

@ArmelChesnais  Yeah you are right.
Meanwhile, I found there's already another patch for this.
Closing in favour of #274


[Source]: Database of Genotypes and Phenotypes (dbGaP)

Source Name
Database of Genotypes and Phenotypes (dbGaP)
Source URL
https://www.ncbi.nlm.nih.gov/gap/
Source Description
The database of Genotypes and Phenotypes (dbGaP) was developed to archive and distribute the data and results from studies that have investigated the interaction of genotype and phenotype in Humans. Such studies include genome-wide association studies, medical sequencing, molecular diagnostic assays, as well as association between genotype and non-clinical traits. The individual level data hosted at the dbGaP is distributed through a controlled access system. The types of data distributed through the dbGaP include phenotype data, association (GWAS) data, summary level analysis data, SRA (Short Read Archive) data, reference alignment (BAM) data, VCF (Variant Call Format) data, expression data, imputed genotype data, image data, etc
Source Abstract
Database of Genotypes and Phenotypes (dbGaP) is a NIH supported IID repository that includes multiomic data.
Source Genre
IID
Source Access
No access issue, account not needed for public access records. Study-level records may be treated as Dataset records the way SRA is handled. FTP for public accessible records: https://ftp.ncbi.nlm.nih.gov/dbgap/studies/
conditionsOfAccess and usageInfo
https://www.ncbi.nlm.nih.gov/books/NBK570260/#Cntnt_IndivLvlData.can_you_tell_me_what
Example records

A study record via their browser: https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=phs000001.v3.p1
xml version from FTP: https://ftp.ncbi.nlm.nih.gov/dbgap/studies/phs000001/phs000001.v3.p1/GapExchange_phs000001.v3.p1.xml

Note - This issue may need to be addressed along with https://github.com/NIAID-Data-Ecosystem/nde-crawlers/issues/150 to avoid duplication
Source Funding
NIH/NLM
Source Relevance
This resource was prioritized by the NIAID/ODSET team
Related WBS task

[ ] Check here if this repository is funded by NIAID
[ ] Check here if this repository only has IID data
[X] Check here if this is a generalist repository with IID data (https://github.com/NIAID-Data-Ecosystem/nde-roadmap/issues/12)

For internal use only. Assignee, please select the status of this issue

[ ] Not yet started
[ ] In process
[ ] Blocked
[ ] Will not include

Status Description
No response
Source to-do list

[X] License check- Can this source be included?
[X] Class check- Does this source have the right class of research output for inclusions?
[X] NIAID Review- Does NIAID approve of the inclusion of this source?
[X] Data access check- Have data access issues been resolved?
[X] Structured data check- Does this source have structured data?
[ ] Mapping check- Has the properties from this source been mapped to the schema?
[ ] Parser check- Has the parser been written?
[ ] Parsed data check- Has a sanity check on the data obtained from this source been performed?
[ ] Merge data- Has the crawler/plugin been successfully integrated with the system?
[ ] Issues could not be resolved - Add as a single record via the DDE

Upon investigating COVID RADx and dbGAP:

The same record appears on the dbGaP website, but the corresponding files do not exist in the ftp folder
A top 50 lookup of COVID-RadX records by Jason found that only 3 of the records appeared in dbGaP's FTP
An inspection of those records in the dbGaP portal indicated that these are records with publicly accessible data
In dbGaP the record appears to have less information, for this reason, RADx should supercede dbGaP when merging

Based on these findings, we assume that metadata records in the ftp only cover studies that have publicly accessible data
Metadata records that are browsable in dbGaP, but require authorization to access the data, are not available via the FTP. For this reason, COVID RADx and dbGAP will require separate parsers and COVID RADx cannot be treated as just a subset of dbGAP.


Fix non-functional spec files

Name conflicts and missing type declarations.
Contribution checklist:

[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[ ] The OpenAPI Hub was used for checking validation status and next steps.

Automation for azure-sdk-for-python

Automation for azure-sdk-for-go

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: onalant sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Can one of the admins verify this patch?


use goimports in pre-commit hook

resolve #321

files are updated in place and re-added before committing (if needed)

I don't re-add the file because it may only be partially added. So if the script adds the whole change to the git stage, it is probably unexpected behavior from the committer standpoint.

Could we make a best effort and re-add any fully staged files, and then if it is a detected partially staged file, log the list of those files so they can be partially staged as needed again?
For reference, we are using pretty-quick which I would like to follow the same behavior.
We are currently also leveraging husky as a means of handling git hooks and we will need to integrate it into that since the .git/pre-commit already exists as generated by husky.

PR here to update husky to run pretty-quick again and allow us to shim in the golang pre-commit formatting https://github.com/shapeshift/unchained/pull/333
unchained/.husky/pre-commit can be updated to run the goimports script as well

great, with husky it would be a simpler script. I will wait for #333 to merge then update the PR

@trungtin https://github.com/shapeshift/unchained/pull/333 has been merged. Also note that this PR combined both of the reverse proxy docker-compose files at unchained/go/docker-compose.yaml and unchained/node/docker-compose.yaml into unchained/docker-compose.yaml just so you are aware for any future local development.

thank you @kaladinlight
I updated the PR with the usage of git-format-staged

thank you @kaladinlight I updated the PR with the usage of git-format-staged

I am a little hesitant to add another language dependency for this to occur. Is the partial commit a very important part of your workflow specifically? After looking at the different options listed in the git-format-staged readme, I kind of like the look of lint-staged instead. While there may be a bit of extra manual effort to restage partial changes, I think the tradeoff using a node script instead would be worth it.
I am wondering if we can also just set it up to be used for both prettier and goimports, allowing us to get rid of pretty-quick. Thoughts?

I have considered lint-staged but I thought that python is available on more systems than nodejs, that is why I went with git-format-staged. But if you are sure that most shapeshift developers have nodejs installed, I could replace git-format-staged with lint-staged as suggested Will add lint-staged install script to go makefile as well.

Considering unchained is a node project as well, I think this makes the most sense. Thank you for updating!

updated again with lint-staged @kaladinlight


Hope to reconsider supporting append function

Is your feature request related to a problem? Please describe.
I know that previous attitude was not to support it, but Alibaba Cloud OSS recently launched a new feature, that is, append upload.
English version https://www.alibabacloud.com/help/doc-detail/31851.htm
Chinese version https://help.aliyun.com/document_detail/31851.html
I believe that more and more object stores will support this feature in the future. It will be very convenient if alluxio can support append for hdfs and aliyun oss
Describe the solution you'd like
support append upload for hdfs and aliyun oss
Describe alternatives you've considered
Urgency
take your time
Additional context
you are good men

thanks @adol001 for this proposal. Append will be a big feature to add as it breaks a lot of assumption of Alluxio design.
do you have particular applications in mind to be benefited from this feature?

thanks @adol001 for this proposal. Append will be a big feature to add as it breaks a lot of assumption of Alluxio design.
do you have particular applications in mind to be benefited from this feature?

In spark streaming and flink job, append may be used frequently. Otherwise, in object storage filesystem, a large number of small files will be generated. Over the days, a directory may reach 10w+ small files.
Because of the existence of real-time jobs are long running, it is not convenient to merge small files when the directory is being read. This requires a special time window to stop the real-time job to operate the small file merging periodically, which is troublesome.
So, is it necessary to cache a data file that can be appended, or a file that is constantly increasing? Yes, for example, recent data files for  time window calculation

thanks @adol001 for this proposal. Append will be a big feature to add as it breaks a lot of assumption of Alluxio design.
do you have particular applications in mind to be benefited from this feature?

@apc999
In spark streaming and flink job, append may be used frequently. Otherwise, in object storage filesystem, a large number of small files will be generated. Over the days, a directory may reach 10w+ small files.
Because of the existence of real-time jobs are long running, it is not convenient to merge small files when the directory is being read. This requires a special time window to stop the real-time job to operate the small file merging periodically, which is troublesome.
So, is it necessary to cache a data file that can be appended, or a file that is constantly increasing? Yes, for example, recent data files for  time window calculation

thanks @adol001 for this proposal. Append will be a big feature to add as it breaks a lot of assumption of Alluxio design.
do you have particular applications in mind to be benefited from this feature?

@apc999
In spark streaming and flink job, append may be used frequently. Otherwise, in object storage filesystem, a large number of small files will be generated. Over the days, a directory may reach thousands of small files.
Because of the existence of real-time jobs are long running, it is not convenient to merge small files when the directory is being read. This requires a special time window to stop the real-time job to operate the small file merging periodically, which is troublesome.
So, is it necessary to cache a data file that can be appended, or a file that is constantly increasing? Yes, for example, recent data files for  time window calculation


[networks] Change probe responsible for sending HTTP notifications

What does this PR do?
Changes the kprobe responsible for checking the status of HTTP batches and notifying userspace when they're complete and ready to be consumed. This greatly reduces the latency between the time a HTTP batch fills up on Kernel side and the time userspace is notified of it which in turn reduces the chance of data loss, because delayed notifications could arrive in userspace after a batch was no longer available.
The problem stems from the fact that we were previously using the probe tcp_sendmsg to send such notifications, but those don't correlate with the execution of a socket filter program (in other words, a socket filter program can be executed in one CPU and tcp_sendmsg would be executed in another CPU). Since we have essentially one HTTP buffer per CPU, it could take too long for the "right" tcp_sendmsg probe be executed.
We're now hooking into the sk_filter_trim_cap function instead, which is in the same "call stack" of a socket filter program execution.
Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes
Changes are cover by our unit tests in http/monitor_test.go and the impact can only be measured through a performance test which was already done.
For purposes of documentation, though, this is how a simple load test can be done:

Start system-probe;
Install vegeta on your agent-dev VM;
Start a nginx server via docker run --rm -p 8080:80 nginx:latest
Issue 1000 requests/s for 30s using the following command:

echo "GET http://<IP_ADDRESS>:8080/" | vegeta attack -rate=1000 -duration="30s" | vegeta report && curl -s --unix /opt/datadog-agent/run/sysprobe.sock http://unix/network_tracer/debug/http_monitoring > /dev/null

You should see the following output from vegeta:
Requests      [total, rate, throughput]  30000, 1000.08, 1000.04
Duration      [total, attack, wait]      29.998933334s, 29.997564863s, 1.368471ms
Latencies     [mean, 50, 95, 99, max]    830.5µs, 721.974µs, 1.575169ms, 2.520016ms, 13.15698ms
Bytes In      [total, mean]              18450000, 615.00
Bytes Out     [total, mean]              0, 0.00
Success       [ratio]                    100.00%
Status Codes  [code:count]               200:30000

And the following output from system-probe:
022-08-02 18:57:33 UTC | SYS-PROBE | DEBUG | (pkg/network/http/telemetry.go:87 in reset) | http stats summary: requests_processed=60000(1132.08/s) requests_missed=0(0.00/s) requests_dropped=0(0.00/s) requests_rejected=0(0.00/s) requests_malformed=0(0.00/s) aggregations=80

(Note that the total amount of requests captured by system-probe (60000) will be 2x the number reported by vegeta because of the traffic forwarding of this setup (<IP_ADDRESS>:client_port -> <IP_ADDRESS>:8080 and veth-pair:8080 -> 80)
Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

nice find / fix @nplanel and @p-lambert :)

I tried several other probes but ended up using one suggested by @usamasaqib (security_sock_rcv_skb) which seems to work on all Kernels tested by CI and has the same properties we're interested (eg. being on the same call stack of a socket filter program execution)


Modify phone and email icons

We have the new SVGs but they need to be set on a gris that is in line with our other SVGs (viewboxes of 0 0 24 24). Once we have that, we can replace the current ones with the new ones (and ensure they get changed in Contact.V2 as they are currently PNGs).

@rcantin-w can you check if these are the right size? I've saved them myself but not sure how to check the viewbox grid:

@DominiqueMarshall you can look at them here against other icons, and in the ContactV2 component.
It looks ok to me so far! The email icon is thicker than it was in the image, and now that the phone and the email are within the same viewbox, they now have a more similar width/height
Before

After

Should we make a decision on the Contact V2 component and decide if we're officially replacing the current version with it?

Now in production; next steps would be to check if we want the new Contact component to be made official, but it's not really part of this ticket so I'll close it. Convo to be had with @DominiqueMarshall and @jennpb


simplified progress bar CSS for easier styling

Fixes #2393
The simplifies the progress bar CSS so that it is more ergonomic to style using part. It is slightly different than it used to be, fading out instead of sliding up, but given its small default height, I'd say most people will be unlikely to notice the difference. @maciekglowka does this look like a reasonable change?  I verified that your initial CSS works as expected now.

It's hard to say definitely by only looking at the code, but if we have to use only one CSS selector than for sure it is the way to go.
I am not bothered either by the opacity fade instead of sliding up. (and I actually use much thicker bar)


data.py throws undefined errors

I was attempting to use train.py to create a lora. train.py calls data.py and on line 96 it checks to see if it should keep raw resolution. If we enter the if statement, there are several variables that are undefined. output_image and pixal_values. I was able to finish training by setting the if to False manually and commenting out the rest of the line. It's possible that output_image should be output_images and pixel_values should be all_pixel_values. I'm not sure. Thanks!
        if not self.keep_raw_resolution:
            output_image = torch.cat(output_image, dim=0)
            if len(pixel_values) > 0:
                all_pixel_values = torch.cat(all_pixel_values, dim=0)
            else:
                all_pixel_values = None

Edit: I set output_image to output_images and pixel-values to all_pixel_values. It is training. I am no expert at this topic (still pretty new to models and AI) so I'm just saying I tried this and it's training. No idea if it was the correct way to go.

@TerminatedProcess , thanks for your feedback! I have fixed this bug. You can clone the latest code.

Thank you I'll update and give it a shot!


healthcheck fails on diego-api node after a time causing issues

In our large deployment (700Cells) the bosh-dns-healthcheck in the diego-api ends up with many of the following errors ...
[healthServer] 2019/05/02 06:38:56 ERROR - Failed to read healthcheck data . error: open /var/vcap/instance/health.json: too many open files
[healthServer] 2019/05/02 06:38:56 ERROR - Failed to read healthcheck data . error: open /var/vcap/instance/health.json: too many open files
[healthServer] 2019/05/02 06:38:56 ERROR - Failed to read healthcheck data . error: open /var/vcap/instance/health.json: too many open files
[healthServer] 2019/05/02 06:38:56 ERROR - Failed to read healthcheck data . error: open /var/vcap/instance/health.json: too many open files

This has the impact of causing the BBS convergence time to go through the roof as it looks like all the cells are having issues connecting and checking the health.
When this occurs we simply monit restart the bosh-dns-healthcheck and things recover.
But it needs to be investigated

Why do we run out of file handles in this?
Why does this cause issues in the diego-api?

Can you please investigate this to know how this is supposed to work and how we could run out of FDs.

@andrew-edgar Have you seen this recently? If so, please feel free to re-open.


Pycharm plugin 0.9.0 not support for Python 3.10.6 On M2

Describe the bug
When I run the orange button, occurs error:
It seems like your platform or Python version are not supported yet.
Windows, Linux, macOS and Python 64 bit >= 3.7 (>= 3.9 for M1) <= 3.10 are currently supported.
Desktop (please complete the following information):

OS: MacOS
OS version: 12.5.1
M1 chip: M2
Reloadium package version: None
PyCharm plugin version: 0.9.0
Editor: pycharm
Python Version: 3.10.6

Fixed in reloadium 0.9.6 and PyCharm plugin 0.9.1