docker login reg2host vs docker login reg2host:443 vs docker login https://reg2host makes a difference?

It seems like docker login behaves differently depending on how the private registry URL is specified.
docker login reg2host:443 is the only one that works correctly allowing docker push and docker pull while the others don't albeit all seem to succeed logging in to the private registry (logs not attached but they show 401 followed by 200 on GET /v2/ as expected).
My private registry sits on a closed network with hostname nb-docker-reg
Here are both docker-compose.yml I tried so far:
The older is using nginx as reverse proxy in front of registry:2 per tutorial https://www.digitalocean.com/community/tutorials/how-to-set-up-a-private-docker-registry-on-ubuntu-14-04
The newest is using registry:2 straight up reusing htpasswd and certs according to tutorial above but without nginx reverse proxy.
diff --git a/registry/docker-compose.yml b/registry/docker-compose.yml
index c2f05ed..1217f1b 100644
--- a/registry/docker-compose.yml
+++ b/registry/docker-compose.yml
@@ -13,32 +13,35 @@ services:
   registry:
     restart: always
     image: registry:2
-#    ports:
+    ports:
 #      - 5000:5000
-  #  environment:
-  #    REGISTRY_HTTP_TLS_CERTIFICATE: /certs/domain.crt
-  #    REGISTRY_HTTP_TLS_KEY: /certs/domain.key
-  #    REGISTRY_AUTH: htpasswd
-  #    REGISTRY_AUTH_HTPASSWD_PATH: /auth/htpasswd
-  #    REGISTRY_AUTH_HTPASSWD_REALM: Registry Realm
+      - 443:443
+    environment:
+      REGISTRY_HTTP_ADDR: <IP_ADDRESS>:443
+      REGISTRY_HTTP_TLS_CERTIFICATE: /certs/domain.crt
+      REGISTRY_HTTP_TLS_KEY: /certs/domain.key
+      REGISTRY_AUTH: htpasswd
+      REGISTRY_AUTH_HTPASSWD_PATH: /auth/registry.passwords
+      REGISTRY_AUTH_HTPASSWD_REALM: Registry Realm
     volumes:
       - /home/$USER/registry:/var/lib/registry
-      # - /path/certs:/certs
-      # /path/auth:/auth
+      - ./domain.crt:/certs/domain.crt
+      - ./domain.key:/certs/domain.key
+      - ./registry.passwords:/auth/registry.passwords
     networks:
       - net

-  nginx:
-    image: nginx:alpine
-    volumes:
-      - ./docker-reg-nginx.conf:/etc/nginx/conf.d/docker-reg-nginx.conf
-      - ./registry.passwords:/etc/nginx/registry.passwords
-      - ./domain.key:/etc/nginx/domain.key
-      - ./domain.crt:/etc/nginx/domain.crt
-    ports:
-      - 443:443
-    networks:
-      - net
+#  nginx:
+#    image: nginx:alpine
+#    volumes:
+#      - ./docker-reg-nginx.conf:/etc/nginx/conf.d/docker-reg-nginx.conf
+#      - ./registry.passwords:/etc/nginx/registry.passwords
+#      - ./domain.key:/etc/nginx/domain.key
+#      - ./domain.crt:/etc/nginx/domain.crt
+#    $ports:
+#      - 443:443
+#    networks:
+#      - net

 networks:
   net:

Ideas/suggestions?
It seems like all examples show private register on explicit port number (5000 or 5043) but none on standard ssl 443.
me@nb-docker-reg:~/Docker/registry$ docker version
Client:
 Version:	17.12.0-ce
 API version:	1.35
 Go version:	go1.9.2
 Git commit:	c97c6d6
 Built:	Wed Dec 27 20:11:19 2017
 OS/Arch:	linux/amd64

Server:
 Engine:
  Version:	17.12.0-ce
  API version:	1.35 (minimum version 1.12)
  Go version:	go1.9.2
  Git commit:	c97c6d6
  Built:	Wed Dec 27 20:09:53 2017
  OS/Arch:	linux/amd64
  Experimental:	false

me@nb-docker-reg:~/Docker/registry$ docker info
Containers: 3
 Running: 1
 Paused: 0
 Stopped: 2
Images: 3
Server Version: 17.12.0-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 89623f28b87a6004d4b785663257362d1658a729
runc version: b2567b37d7b75eb4cf325b77297b140ea686ce8f
init version: 949e6fa
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.4.0-112-generic
Operating System: Ubuntu 16.04.3 LTS
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.85GiB
Name: nb-docker-reg
ID: ENUI:F52B:2HZW:CCDL:IX6O:I5SL:USWX:IFFT:4Z52:22PL:HELD:7A2D
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 <IP_ADDRESS>/8
Live Restore Enabled: false

WARNING: No swap limit support

me@nb-docker-reg:~/Docker/registry$ docker exec registry_registry_1 registry --version
registry github.com/docker/distribution v2.6.2

FWIW: Both docker-compose.yml files work identically and produce the same end result I mentioned above.

Typically, the :443 port number on a registry is not required, unless that is the way you do login.
For example, if you login with myreg:443, we won't rewrite that to the correct myreg.
To have this working correctly with moby/docker, you need to use myreg end to end. Don't specify the port.

Thanks @stevvooe,
I just tried excluding the port number and I wasn't able to push/pull images onto/from my private registry deployed on a different machine within our intranet (The registry has the images I am trying to pull - btw)
I am unsure if this is a distribution issue or a docker-credential-helpers issue though.
Here is a bash session showing what happens when I try logged on without port number.
me@NBPLANDEV-HP:~$ pass
Password Store

me@NBPLANDEV-HP:~$ docker login nb-docker-reg
error getting credentials - err: exit status 1, out: `pass store is uninitialized`

me@NBPLANDEV-HP:~$ docker login nb-docker-reg:443
error getting credentials - err: exit status 1, out: `pass store is uninitialized`

me@NBPLANDEV-HP:~$ gpg2 --list-keys
/home/me/.gnupg/pubring.kbx
-----------------------------------
pub   rsa2048/YYYYYYY 2018-02-02 [SC]
uid         [ultimate] Henddher Pedroza<EMAIL_ADDRESS>sub   rsa2048/XXXXXX 2018-02-02 [E]

me@NBPLANDEV-HP:~$ pass init XXXXXX
Password store initialized for XXXXX

me@NBPLANDEV-HP:~$ docker login nb-docker-reg
error getting credentials - err: exit status 1, out: `pass store is uninitialized`

me@NBPLANDEV-HP:~$ pass
Password Store
└── docker-credential-helpers
    └── docker-pass-initialized-check

me@NBPLANDEV-HP:~$ pass docker-credential-helpers
docker-credential-helpers
└── docker-pass-initialized-check

me@NBPLANDEV-HP:~$ pass docker-credential-helpers/docker-pass-initialized-check
pass is initialized

me@NBPLANDEV-HP:~$ docker login nb-docker-reg
Username: hpedro
Password:
Login Succeeded

me@NBPLANDEV-HP:~$ pass
Password Store
└── docker-credential-helpers
    └── XXXXXXXXXXXXX
        └── hpedro

me@NBPLANDEV-HP:~$ docker pull nb-docker-reg/pyramid_app:latest
Error response from daemon: pull access denied for nb-docker-reg/pyramid_app, repository does not exist or may require 'docker login'

me@NBPLANDEV-HP:~$ docker pull nb-docker-reg/pyramid_app:1.0.5
Error response from daemon: pull access denied for nb-docker-reg/pyramid_app, repository does not exist or may require 'docker login'

me@NBPLANDEV-HP:~$ pass
Password Store
└── docker-credential-helpers
    └── XXXXXXXXXX
        └── hpedro

me@NBPLANDEV-HP:~$ docker pull nb-docker-reg/pyramid_app:1.0.5
Error response from daemon: pull access denied for nb-docker-reg/pyramid_app, repository does not exist or may require 'docker login'

me@NBPLANDEV-HP:~$ docker images ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

me@NBPLANDEV-HP:~$ cd docker/

me@NBPLANDEV-HP:~/docker$ docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
1be7f2b886e8: Pull complete
6fbc4a21b806: Pull complete
c71a6f8e1378: Pull complete
4be3072e5a37: Pull complete
06c6d2f59700: Pull complete
Digest: sha256:e27e9d7f7f28d67aa9e2d7540bdc2b33254b452ee8e60f388875e5b7d9b2b696
Status: Downloaded newer image for ubuntu:latest

me@NBPLANDEV-HP:~/docker$ docker push ubuntu
The push refers to repository [docker.io/library/ubuntu]
8600ee70176b: Layer already exists
2bbb3cec611d: Layer already exists
d2bb1fc88136: Layer already exists
a6a01ad8b53f: Layer already exists
833649a3e04c: Layer already exists
errors:
denied: requested access to the resource is denied
unauthorized: authentication required

me@NBPLANDEV-HP:~/docker$ docker push nb-docker-reg/ubuntu
The push refers to repository [docker.io/nb-docker-reg/ubuntu]
An image does not exist locally with the tag: nb-docker-reg/ubuntu
me@NBPLANDEV-HP:~/docker$

Here is another example:

me@NBPLANDEV-HP:~/docker$ docker login nb-docker-reg
Username (hpedro):
Password:
Login Succeeded

me@NBPLANDEV-HP:~/docker$ docker image ls
REPOSITORY                      TAG                 IMAGE ID            CREATED             SIZE
pyramid_app                     latest              cf63c06bfea4        20 hours ago        1.44GB
pyramid_app                     1.0.5               88824dd44449        24 hours ago        743MB
<none>                          <none>              d9c3f87bdc4d        24 hours ago        743MB
<none>                          <none>              20c7ad72161d        25 hours ago        636MB
<none>                          <none>              a50763030c3b        25 hours ago        636MB
<none>                          <none>              aa8d8f891b9a        8 days ago          743MB
<none>                          <none>              bb9b9ad4b7f0        8 days ago          226MB
<none>                          <none>              1d83b2fce7d2        8 days ago          139MB
<none>                          <none>              665cd7bc19d5        8 days ago          226MB
nb-docker-reg:443/pyramid_app   1.0.5               1a39133676c1        8 days ago          800MB
<none>                          <none>              23b2f571b9d5        8 days ago          743MB
<none>                          <none>              ac5357ff5d0f        10 days ago         743MB
<none>                          <none>              68aef1d0efc6        10 days ago         743MB
<none>                          <none>              5b61c7495081        10 days ago         743MB
<none>                          <none>              d785e11a7e0c        10 days ago         743MB
<none>                          <none>              5ad5326e0b22        10 days ago         743MB
<none>                          <none>              48e662f793a7        10 days ago         743MB
<none>                          <none>              ee3b6c473ccc        11 days ago         743MB
<none>                          <none>              ac571fbf5c4e        11 days ago         715MB
<none>                          <none>              b1cab0c3a741        11 days ago         715MB
<none>                          <none>              d8ed41b0154b        11 days ago         715MB
<none>                          <none>              7843952ce4ca        11 days ago         715MB
<none>                          <none>              aeec3dcdc1b7        11 days ago         715MB
<none>                          <none>              75bc2a86f501        11 days ago         715MB
ubuntu                          latest              0458a4468cbc        12 days ago         112MB
nb-docker-reg:443/ubuntu        latest              0458a4468cbc        12 days ago         112MB
<none>                          <none>              a960d76169c5        12 days ago         715MB
<none>                          <none>              c2350f706d1b        13 days ago         226MB
<none>                          <none>              b69f1c89c7bd        2 weeks ago         167MB
ubuntu                          16.04               2a4cca5ac898        3 weeks ago         111MB
nginx                           alpine              bb00c21b4edf        3 weeks ago         16.8MB
alpine                          latest              3fd9065eaf02        3 weeks ago         4.15MB
busybox                         latest              807fd4df40d1        4 weeks ago         1.14MB
friendlyhello                   latest              65ce3faa20ca        4 weeks ago         148MB
nginx                           latest              3f8a4339aadd        6 weeks ago         108MB
rabbitmq                        management          6cb6e2f951a8        6 weeks ago         151MB
rabbitmq                        latest              d53246bdedd1        6 weeks ago         127MB
redis                           latest              1e70071f4af4        8 weeks ago         107MB
python                          2-slim              4fd30fc83117        8 weeks ago         138MB
python                          2.7-slim            4fd30fc83117        8 weeks ago         138MB
postgres                        latest              ec61d13c8566        8 weeks ago         287MB
hello-world                     latest              f2a91732366c        2 months ago        1.85kB

me@NBPLANDEV-HP:~/docker$ docker tag ubuntu nb-docker-reg/ubuntu

me@NBPLANDEV-HP:~/docker$ docker image ls
REPOSITORY                      TAG                 IMAGE ID            CREATED             SIZE
pyramid_app                     latest              cf63c06bfea4        20 hours ago        1.44GB
pyramid_app                     1.0.5               88824dd44449        24 hours ago        743MB
<none>                          <none>              d9c3f87bdc4d        24 hours ago        743MB
<none>                          <none>              20c7ad72161d        25 hours ago        636MB
<none>                          <none>              a50763030c3b        25 hours ago        636MB
<none>                          <none>              aa8d8f891b9a        8 days ago          743MB
<none>                          <none>              bb9b9ad4b7f0        8 days ago          226MB
<none>                          <none>              1d83b2fce7d2        8 days ago          139MB
<none>                          <none>              665cd7bc19d5        8 days ago          226MB
nb-docker-reg:443/pyramid_app   1.0.5               1a39133676c1        8 days ago          800MB
<none>                          <none>              23b2f571b9d5        8 days ago          743MB
<none>                          <none>              ac5357ff5d0f        10 days ago         743MB
<none>                          <none>              68aef1d0efc6        10 days ago         743MB
<none>                          <none>              5b61c7495081        10 days ago         743MB
<none>                          <none>              d785e11a7e0c        10 days ago         743MB
<none>                          <none>              5ad5326e0b22        10 days ago         743MB
<none>                          <none>              48e662f793a7        10 days ago         743MB
<none>                          <none>              ee3b6c473ccc        11 days ago         743MB
<none>                          <none>              ac571fbf5c4e        11 days ago         715MB
<none>                          <none>              b1cab0c3a741        11 days ago         715MB
<none>                          <none>              d8ed41b0154b        11 days ago         715MB
<none>                          <none>              7843952ce4ca        11 days ago         715MB
<none>                          <none>              aeec3dcdc1b7        11 days ago         715MB
<none>                          <none>              75bc2a86f501        11 days ago         715MB
ubuntu                          latest              0458a4468cbc        12 days ago         112MB
nb-docker-reg/ubuntu            latest              0458a4468cbc        12 days ago         112MB
nb-docker-reg:443/ubuntu        latest              0458a4468cbc        12 days ago         112MB
<none>                          <none>              a960d76169c5        12 days ago         715MB
<none>                          <none>              c2350f706d1b        13 days ago         226MB
<none>                          <none>              b69f1c89c7bd        2 weeks ago         167MB
ubuntu                          16.04               2a4cca5ac898        3 weeks ago         111MB
nginx                           alpine              bb00c21b4edf        3 weeks ago         16.8MB
alpine                          latest              3fd9065eaf02        3 weeks ago         4.15MB
busybox                         latest              807fd4df40d1        4 weeks ago         1.14MB
friendlyhello                   latest              65ce3faa20ca        4 weeks ago         148MB
nginx                           latest              3f8a4339aadd        6 weeks ago         108MB
rabbitmq                        management          6cb6e2f951a8        6 weeks ago         151MB
rabbitmq                        latest              d53246bdedd1        6 weeks ago         127MB
redis                           latest              1e70071f4af4        8 weeks ago         107MB
python                          2-slim              4fd30fc83117        8 weeks ago         138MB
python                          2.7-slim            4fd30fc83117        8 weeks ago         138MB
postgres                        latest              ec61d13c8566        8 weeks ago         287MB
hello-world                     latest              f2a91732366c        2 months ago        1.85kB

me@NBPLANDEV-HP:~/docker$ docker push nb-docker-reg/ubuntu
The push refers to repository [docker.io/nb-docker-reg/ubuntu]
6f4ce6b88849: Preparing
92914665e7f6: Preparing
c98ef191df4b: Preparing
9c7183e0ea88: Preparing
ff986b10a018: Preparing
denied: requested access to the resource is denied

As you can see at the end, it's trying to push the image onto docker.io instead of my intranet registry.

As you can see at the end, it's trying to push the image onto docker.io instead of my intranet registry.

This is the key. Apologies for missing this. Because of the way docker parses image names, it thinks that nb-docker-reg is hub org and prepends docker.io/ to the image name. If you use a domain name with a component, like nb-docker-reg.local (or whatever makes sense), it should work.

Thank you @stevvooe

it thinks that nb-docker-reg is hub org and prepends docker.io/ to the image name

Indeed :(
Hence this issue as the overall behavior would differ depending on how the URL is given.
Wouldn't it be better to somehow force the syntax of the URL of the registry to be a real URL?
... Instead of some parsing that may produce different results based on hostname and hostname w/o domain, port, etc?
I.e.
docker login https://docker.io
vs
docker login https://nb-docker-reg
vs
docker login https://localhost:5000
For us, we are perfectly fine with using hostname:port :)

Wouldn't it be better to somehow force the syntax of the URL of the registry to be a real URL?

Unfortunately, the syntax is heavily overloaded. There isn't a solution here that can be done without breaking others.

For us, we are perfectly fine with using hostname:port :)

I'd really recommend dropping the port from this case. Specifying the port explicitly may make it connect to 443 without TLS under certain circumstances.
Just add second component to your hostname.

Thanks again @stevvooe
I understand - backward compatibility conundrum :(

Just add second component to your hostname.

I naively added ".local" and didn't work as DNS has no such thing.
Adding domain components or whatnot "open" a can of worms for me as DNS and network changes would be required :P

... make it connect to 443 without TLS under certain circumstances.
How so? I thought the client and registry are both guaranteed to use TLS always.

(BTW - feel free to close this issue or label it "Not Applicable" or whatever is appropriate)

How so? I thought the client and registry are both guaranteed to use TLS always.

For the most part, yes, but side effects and bugs can happen. Typically, when a port is declared, it removes the ability for the client to change that port depending on context. I would say that the best practice would be to leave the port off.
The other option here is to add an extra level of hierarchy to the naming scheme. For example, use nb-docker-reg/myorg/ubuntu instead of nb-docker-reg/ubuntu.
We can do one more round then we'll close.

Thanks @stevvooe
I just tried excluding the port number and adding an extra component to the image name and it didn't work either.
As you see, I'm not logged on to my private registry using 443 (see my config.json). I am only logged on to my private registry without a port number (443 by default and reverse-proxied by nginx - in theory).

me@NBPLANDEV-HP:~/docker/p2server$ docker logout nb-docker-reg:443
Not logged in to nb-docker-reg:443

me@NBPLANDEV-HP:~/docker/p2server$ cat ~/.docker/config.json
{
	"auths": {
		"nb-docker-reg": {}
	},
	"HttpHeaders": {
		"User-Agent": "Docker-Client/17.12.0-ce (linux)"
	},
	"credsStore": "pass"
}

me@NBPLANDEV-HP:~/docker/p2server$ docker tag ubuntu nb-docker-reg/hp/ubuntu

me@NBPLANDEV-HP:~/docker/p2server$ docker image ls
REPOSITORY                      TAG                 IMAGE ID            CREATED             SIZE
pyramid_app                     latest              cf63c06bfea4        45 hours ago        1.44GB
pyramid_app                     1.0.5               88824dd44449        2 days ago          743MB
<none>                          <none>              d9c3f87bdc4d        2 days ago          743MB
<none>                          <none>              20c7ad72161d        2 days ago          636MB
<none>                          <none>              a50763030c3b        2 days ago          636MB
<none>                          <none>              aa8d8f891b9a        9 days ago          743MB
<none>                          <none>              bb9b9ad4b7f0        9 days ago          226MB
<none>                          <none>              1d83b2fce7d2        9 days ago          139MB
<none>                          <none>              665cd7bc19d5        9 days ago          226MB
nb-docker-reg:443/pyramid_app   1.0.5               1a39133676c1        9 days ago          800MB
<none>                          <none>              23b2f571b9d5        9 days ago          743MB
<none>                          <none>              ac5357ff5d0f        12 days ago         743MB
<none>                          <none>              68aef1d0efc6        12 days ago         743MB
<none>                          <none>              5b61c7495081        12 days ago         743MB
<none>                          <none>              d785e11a7e0c        12 days ago         743MB
<none>                          <none>              5ad5326e0b22        12 days ago         743MB
<none>                          <none>              48e662f793a7        12 days ago         743MB
<none>                          <none>              ee3b6c473ccc        12 days ago         743MB
<none>                          <none>              ac571fbf5c4e        12 days ago         715MB
<none>                          <none>              b1cab0c3a741        12 days ago         715MB
<none>                          <none>              d8ed41b0154b        12 days ago         715MB
<none>                          <none>              7843952ce4ca        12 days ago         715MB
<none>                          <none>              aeec3dcdc1b7        12 days ago         715MB
<none>                          <none>              75bc2a86f501        13 days ago         715MB
ubuntu                          latest              0458a4468cbc        13 days ago         112MB
nb-docker-reg/hp/ubuntu         latest              0458a4468cbc        13 days ago         112MB
nb-docker-reg/ubuntu            latest              0458a4468cbc        13 days ago         112MB
nb-docker-reg:443/ubuntu        latest              0458a4468cbc        13 days ago         112MB
<none>                          <none>              a960d76169c5        13 days ago         715MB
<none>                          <none>              c2350f706d1b        2 weeks ago         226MB
<none>                          <none>              b69f1c89c7bd        2 weeks ago         167MB
ubuntu                          16.04               2a4cca5ac898        3 weeks ago         111MB
nginx                           alpine              bb00c21b4edf        4 weeks ago         16.8MB
alpine                          latest              3fd9065eaf02        4 weeks ago         4.15MB
busybox                         latest              807fd4df40d1        4 weeks ago         1.14MB
friendlyhello                   latest              65ce3faa20ca        4 weeks ago         148MB
nginx                           latest              3f8a4339aadd        6 weeks ago         108MB
rabbitmq                        management          6cb6e2f951a8        6 weeks ago         151MB
rabbitmq                        latest              d53246bdedd1        6 weeks ago         127MB
redis                           latest              1e70071f4af4        8 weeks ago         107MB
python                          2-slim              4fd30fc83117        8 weeks ago         138MB
python                          2.7-slim            4fd30fc83117        8 weeks ago         138MB
postgres                        latest              ec61d13c8566        8 weeks ago         287MB
hello-world                     latest              f2a91732366c        2 months ago        1.85kB

me@NBPLANDEV-HP:~/docker/p2server$ docker push nb-docker-reg/hp/ubuntu
The push refers to repository [docker.io/nb-docker-reg/hp/ubuntu]
6f4ce6b88849: Preparing
92914665e7f6: Preparing
c98ef191df4b: Preparing
9c7183e0ea88: Preparing
ff986b10a018: Preparing
denied: requested access to the resource is denied

As shown in the last command, it tried to push the image to docker.io still :(
So far, after all the tests I've done, it seems like declaring the port number is the only way that makes docker realize that the first component of the image name is a private registry.
Missing port number automatically assumes it's all part of the image name and hence pushed to docker.io.

@wjehenddher Ok, now that is a bug. Could you file a bug in https://github.com/moby/moby? Reference this one, as it may require a fix in packages here, but we need to discuss change in docker.
cc @thaJeztah

Isn't that case still the same? nb-docker-reg/hp/ubuntu - there's no . (or a :port) in the first component, so it becomes docker.io/nb-docker-reg/hp/ubuntu (note that although the registry specs allow more than two components, Docker Hub does not, so pushing will always fail if there's more than two components).

@thaJeztah That is really dependent on the namespace. We have ambiguity with two items, but not three, because the docker.io namespace only every has two following components.

Thank you @stevvooe and @thaJeztah
IMHO, it would seem that it's an issue stem from ambiguity whenever hostname (1st component) has no domain nor port number.
I will file the issue against  moby as suggested by @stevvooe
Thanks!

As @stevvooe mentioned earlier

Unfortunately, the syntax is heavily overloaded. There isn't a solution here that can be done without breaking others.

Perhaps is worth considering breaking backward compatibility for few lost souls like me that are using private registries within closed networks without full domain names nor mDNS? I would not mind using https:// in front of my hostname - I don't mind using :443 anyways as that seems to be the only way to push/pull at the moment.

considering breaking backward compatibility

Never. ;)
If you don't mind, I think we should take discussion over to moby/moby#36263 and work from there.
I am closing this issue (if you have a problem with that, please let me know).


how to upload multiple images without zip files

It is not implemented with this sample.
If you'd like, you can enhance it on you end with that extra functionality.

Closing due to lack of response. Feel free to reopen if needed.


Error running the docker on Windows

Hello,
I need to change the port that the MAX-Audio-Classifier docker is running on from 5000 to 5040, I changed the port on all the files including the dockerfile, the app.py, and the max-audio-classifier.yaml and the docker run statement as below, but the docker is still running on port 5000 and refuses to connect, can you help me in this regard?
docker run -it -p 5040:5040 max-audio-classifier

Have you tried leaving everything as is and running docker run -it -p 5000:5040 max-audio-classifier?


Cuffable/Handcuff ECS

About the PR

predicted
ECS
cleanup
makes the brain tingle
i tested it bro trust me

Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

no cl no fun

merge master

linter error


FAST Library: add access to hub position and velocity

Feature or improvement description
Adds a subroutine to access the hub position, velocity, and orientation DCM through the FAST Library for use in AMR Wind.
cc @psakievich @ndevelder @andrew-platt
Related issue, if one exists
None
Impacted areas of the software
Added a subroutine to FAST Library

@ndevelder just checking in again before I merge this - everything good here for your use in AMR Wind?

Hi @rafmudaf! We're finally getting around to implementing this. One thing we found was a spelling inconsistency in "HubPosition" in the .h file. I'll try to keep updating here as we test.

Thanks for pointing this out @ndevelder, I've fixed it

I've added a unit test for this in the last commit as well as a method to get the hub position through the Python interface. However, the test is currently running in the automated system because it litters the repository with extra files. For GH Actions, this is not a problem, but during day to day development and running tests it will get cumbersome.
It is located in openfast/modules/openfast-library/tests/test_openfast_library.py and you can run it with this command:
python test_openfast_library.py ../../../reg_tests/r-test/glue-codes/openfast/5MW_OC4Jckt_ExtPtfm/5MW_OC4Jckt_ExtPtfm.fst

It simply initializes the NREL 5MW turbine model and compares the position, rotational velocity and orientation from the initial conditions.
def test_hub_position(library_path, input_file):
    openfastlib = openfast_library.FastLibAPI(library_path, input_file)
    openfastlib.fast_init()
    absolute_position, rotational_velocity, orientation_dcm = openfastlib.get_hub_position()

    # Initial hub position is at -5, 0, 90.55
    np.testing.assert_allclose(
        absolute_position,
        np.array([-5.0, 0.0, 90.55]),
        rtol=1e-5,
        atol=1e-8,
        verbose=True
    )

    # This case is initially still
    # Velocities should be 0 and the DCM should be identity
    np.testing.assert_array_equal( rotational_velocity, np.zeros(3) )
    np.testing.assert_array_equal( np.reshape( orientation_dcm[:], (3,3) ), np.eye(3) )

And lastly, I've added the same to the C++-based FastLibAPI. This is not the one used to integrate with external CFD codes. It is primarily a close copy of the Python interface, and it is mostly for testing the FAST_Library header file.


Investigate libjpeg-turbo

Investigate libjpeg-turbo as a replacement for OpenJPEG.  Currently we provide JPEG2000 support via OpenJPEG but the processing is slow.  libjpeg-turbo may provide what we need and perform better.

if I am not mistaken, libjpeg-turbo is the turbo version (SIMD compliant) of libjpeg. Not heard of it supporting wavelet transform or open standards same as of jpeg2000:
https://wiki.linuxfoundation.org/en/Libjpeg and hence the compression may not be lossless. However jpeg2000 could be lossy or lossless.
May be we need to focus on getting test data to this group:
http://www.openjpeg.org/2017/04/27/Faster-OpenJPEG-is-on-track
We could test their intermediate builds do comparisons and set goals what would be ideal for us regarding the performance.
something like this:
http://www.fastcompression.com/products/jpeg2000/benchmarks-j2k.htm

What a timely update
OpenJPEGv2.2.0 is releases and its worth a try given the whole focus was performance improvements in this release.
https://github.com/uclouvain/openjpeg/releases/tag/v2.2.0


Many to many relation

In the following pull request I

introduced many to many relations
added additional tables

Project Status: INVALIDATED :red_circle:
Hi @DjibrilM ,
While you made a great effort in this project, I can't go ahead and review your code.

Invalid Code Review Request

This is because you have submitted a project, that doesn't have the screenshot of your queries added to the pull request summary kindly add them as stated in the project requirements  :wink:

Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers, and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me @NahnahAJ in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.


Getting an Update without a Diff on BucketReplicationConfig when update package from v5 to v6

What happened?
When attempting to run Pulumi Up after updating from v5 to v6 BucketReplicationConfig gives an update without a diff.
Example
Example Code
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws" // Update to v6 after up to see the issue
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/iam" // Update to v6 after up to see the issue
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/s3" // Update to v6 after up to see the issue

	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		srcBucket, err := s3.NewBucket(ctx, "srcBucket", &s3.BucketArgs{
			Versioning: &s3.BucketVersioningArgs{
				Enabled: pulumi.Bool(true),
			},
		}, pulumi.IgnoreChanges([]string{"replicationConfiguration"}))
		if err != nil {
			return err
		}
		destBucket, err := s3.NewBucket(ctx, "destinationBucket", &s3.BucketArgs{
			Versioning: &s3.BucketVersioningArgs{
				Enabled: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}

		role, err := iam.NewRole(ctx, "myRole", &iam.RoleArgs{
			AssumeRolePolicy: pulumi.String(`{
				"Version": "2012-10-17",
				"Statement": [
					{
						"Action": "sts:AssumeRole",
						"Principal": {
							"Service": "s3.amazonaws.com"
						},
						"Effect": "Allow"
					}
				]
			}`),
		})
		if err != nil {
			return err
		}

		callerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}

		_, err = s3.NewBucketReplicationConfig(ctx, "replication", &s3.BucketReplicationConfigArgs{
			Role:   role.Arn,
			Bucket: srcBucket.ID(),
			Rules: s3.BucketReplicationConfigRuleArray{
				s3.BucketReplicationConfigRuleArgs{
					Id:     pulumi.String("rule1"),
					Status: pulumi.String("Enabled"),
					Filter: s3.BucketReplicationConfigRuleFilterArgs{},
					Destination: s3.BucketReplicationConfigRuleDestinationArgs{
						Account: pulumi.String(callerIdentity.AccountId),
						Bucket:  destBucket.Arn,
					},
					DeleteMarkerReplication: s3.BucketReplicationConfigRuleDeleteMarkerReplicationArgs{
						Status: pulumi.String("Enabled"),
					},
				},
			},
		})
		if err != nil {
			return err
		}

		// Export the name of the bucket
		ctx.Export("bucketName", srcBucket.ID())
		return nil
	})
}

Example Output
     Type                               Name         Plan
     pulumi:pulumi:Stack                aws-go-dev
 ~   └─ aws:s3:BucketReplicationConfig  replication  update

Resources:
    ~ 1 to update
    4 unchanged

Do you want to perform this update? details
  pulumi:pulumi:Stack: (same)
    [urn=urn:pulumi:dev::aws-go::pulumi:pulumi:Stack::aws-go-dev]
    ~ aws:s3/bucketReplicationConfig:BucketReplicationConfig: (update)
        [id=srcbucket-def88ff]
        [urn=urn:pulumi:dev::aws-go::aws:s3/bucketReplicationConfig:BucketReplicationConfig::replication]
        bucket    : "srcbucket-def88ff"
        role      : "arn:aws:iam::redacted:role/myRole-f1e7743"
        rules     : [
            [0]: {
                deleteMarkerReplication: {
                    status    : "Enabled"
                }
                destination            : {
                    accessControlTranslation: {
                        owner     : "Destination"
                    }
                    account                 : "redacted"
                    bucket                  : "arn:aws:s3:::destinationbucket-c3d0fe0"
                }
                filter                 : {
                }
                id                     : "rule1"
                status                 : "Enabled"
            }
        ]

Output of pulumi about
CLI
Version      3.105.0
Go Version   go1.21.6
Go Compiler  gc

Plugins
NAME  VERSION
aws   6.22.1
go    unknown

Host
OS       darwin
Version  14.2.1
Arch     arm64

This project is written in go: executable='/opt/homebrew/bin/go' version='go version go1.21.6 darwin/arm64'

Current Stack: zbuchheit-pulumi-corp/aws-go/dev

TYPE                                                    URN
pulumi:pulumi:Stack                                     urn:pulumi:dev::aws-go::pulumi:pulumi:Stack::aws-go-dev
pulumi:providers:aws                                    urn:pulumi:dev::aws-go::pulumi:providers:aws::default
aws:iam/role:Role                                       urn:pulumi:dev::aws-go::aws:iam/role:Role::myRole
aws:s3/bucket:Bucket                                    urn:pulumi:dev::aws-go::aws:s3/bucket:Bucket::destinationBucket
aws:s3/bucket:Bucket                                    urn:pulumi:dev::aws-go::aws:s3/bucket:Bucket::srcBucket
aws:s3/bucketReplicationConfig:BucketReplicationConfig  urn:pulumi:dev::aws-go::aws:s3/bucketReplicationConfig:BucketReplicationConfig::replication

Found no pending operations associated with dev

Backend
Name           pulumi.com
URL            https://app.pulumi.com/zbuchheit-pulumi-corp
User           zbuchheit-pulumi-corp
Organizations  zbuchheit-pulumi-corp,
Token type     personal

Dependencies:
NAME                                 VERSION
github.com/pulumi/pulumi-aws/sdk/v6  6.22.1
github.com/pulumi/pulumi/sdk/v3      3.105.0

Additional context
It seems to have to do something with the DeleteMarkerReplication and Filter fields. I don't get this behavior when those fields are not set.
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Thanks for opening an issue @zbuchheit. Just to clarify, is the update persistent or does it go away if you actually run the update once?

it goes away after you run the update once. It does result in some changes in the state when I checked the diff from before and after.


Error during gradle sync

implementation 'com.commonsware.cwac:security:0.8.0'
url "https://s3.amazonaws.com/repo.commonsware.com"
Error occured during sync
ERROR: Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve com.commonsware.cwac:security:0.8.0.

You need to add the Maven repo:
repositories {
    maven {
        url "https://s3.amazonaws.com/repo.commonsware.com"
    }
}

Sir. All links you include in the Bust coder guide to android development
are not work. May be aws is down
https://s3.amazonaws.com/repo.commonsware.com is not working in Uganda
Africa. Please maybe you check on the permissions you have on the
documents
[image: commonsware.JPG]
[image: Makerere University]
Simon Peter Ojok
Student | Makerere University | SCIT
phone: +256754140200
mobile: +256772241709
email<EMAIL_ADDRESS>address: Kampala-Uganda
http://pysimonojok/
http://pysimonojok/
http://pysimonojok/
http://<IP_ADDRESS>/
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail&utm_term=icon
Virus-free.
www.avast.com
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail&utm_term=link
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
On Thu, Jul 11, 2019 at 3:16 PM Mark Murphy<EMAIL_ADDRESS>wrote:

You need to add the Maven repo:
repositories {
maven {
url "https://s3.amazonaws.com/repo.commonsware.com"
}
}
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/commonsguy/cwac-security/issues/22?email_source=notifications&email_token=ALPF76TJYICM72XVUKSYQMDP64QA3A5CNFSM4IAYFQC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZWQJLY#issuecomment-510461103,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ALPF76XUICEVJ3EGUGKKBODP64QA3ANCNFSM4IAYFQCQ
.

Try visiting https://s3.amazonaws.com/repo.commonsware.com/ in your Web browser. Then, try visiting http://repo.commonsware.com/ in your Web browser.

If they both return an XML document, then AWS S3 access is fine in Uganda

If the second link returns an XML document, and the first does not, then SSL access to AWS is unavailable in Uganda, and you would need to set your repo to point to http://repo.commonsware.com/

If neither link works, then AWS S3 is unavailable in Uganda

Thanks this is working
[image: Makerere University]
Simon Peter Ojok
Student | Makerere University | SCIT
phone: +256754140200
mobile: +256772241709
email<EMAIL_ADDRESS>address: Kampala-Uganda
http://pysimonojok/
http://pysimonojok/
http://pysimonojok/
http://<IP_ADDRESS>/
On Thu, Jul 11, 2019 at 6:16 AM Mark Murphy<EMAIL_ADDRESS>wrote:

Try visiting https://s3.amazonaws.com/repo.commonsware.com/ in your Web
browser. Then, try visiting http://repo.commonsware.com/ in your Web
browser.

If they both return an XML document, then AWS S3 access is fine in
Uganda
If the second link returns an XML document, and the first does not,
then SSL access to AWS is unavailable in Uganda, and you would need to set
your repo to point to http://repo.commonsware.com/
If neither link works, then AWS S3 is unavailable in Uganda
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/commonsguy/cwac-security/issues/22?email_source=notifications&email_token=ALPF76XHQJGVYZB7BN7ZZJTP64XCZA5CNFSM4IAYFQC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZWVDOY#issuecomment-510480827,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ALPF76VDTCF3RGVD4K6TDR3P64XCZANCNFSM4IAYFQCQ
.

Great! Thanks for letting me know!

Please i don't know but i have found out that most of people learning
android development and following ur book are have similar problems you
have just fixed with me.
I suggest that maybe u find a way of providing alternative link to starter
project for embu lite as well. The link you gave is also not working. I had
to get if from github and try to find the project that match the tutorial 5
and i started from there. We are having big challage with amaozon web
service actually.
May be in the next version of the book you publicize the alternative link
for dependencies
[image: Makerere University]
Simon Peter Ojok
Student | Makerere University | SCIT
phone: +256754140200
mobile: +256772241709
email<EMAIL_ADDRESS>address: Kampala-Uganda
http://pysimonojok/
http://pysimonojok/
http://pysimonojok/
http://<IP_ADDRESS>/
On Thu, Jul 11, 2019 at 6:35 PM Mark Murphy<EMAIL_ADDRESS>wrote:

Closed #22 https://github.com/commonsguy/cwac-security/issues/22.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/commonsguy/cwac-security/issues/22?email_source=notifications&email_token=ALPF76SOSHUHGIU6HDOFSE3P65HNJA5CNFSM4IAYFQC2YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOSONKAYQ#event-2476384354,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ALPF76XJSR4II6P6SKDB5FLP65HNJANCNFSM4IAYFQCQ
.

Please i don't know but i have found out that most of people learning
android development and following ur book are have similar problems you
have just fixed with me.

I am going to guess that you are referring to only developers in Uganda.

May be in the next version of the book you publicize the alternative link
for dependencies

The Busy Coder's Guide to Android Development is no longer being updated.
More generally, has the Ugandan developer community published a report outlining what is and is not working? For example:

Which artifact repositories work? Maven Central? JCenter? Jitpack? Others?

Which project repositories work? GItHub? GitLab? Bitbucket? Others?

Which file hosting services work? (apparently not Amazon S3)

Which VPS providers work? (apparently not Linode)


How to access parent URL while processing Child URLs?

I add seed URLs into a Colly Queue and then I process them but I require the parent URLs of the child URLs inside c.OnHTML("a[href]", func(e *colly.HTMLElement){..}. So how can I access it?
c := colly.NewCollector()
c("a[href]", func(e *colly.HTMLElement) {
	link := e.Attr("href")
        // I WANT TO ACCESS PARENT URL HERE
	fmt.Println(e.Request.AbsoluteURL(link))
})

q.Run(c)

Any solution yet?

Looks like you are expected to keep track of this within your app. Here's an example of async with parallelism and using ctx:
package main

import (
	"fmt"

	"github.com/gocolly/colly/v2"
)

func main() {
	// Instantiate default collector
	c := colly.NewCollector(
		colly.Async(true),
		colly.MaxDepth(2),
	)

	c.Limit(&colly.LimitRule{DomainGlob: "*", Parallelism: 2})

	// Before making a request put the URL with
	// the key of "url" into the context of the request
	c.OnRequest(func(r *colly.Request) {
		r.Ctx.Put("url", r.URL.String())
	})

	// After making a request get "url" from
	// the context of the request
	c.OnResponse(func(r *colly.Response) {
		fmt.Println("Referring URL:", r.Ctx.Get("refUrl"))
		fmt.Println("\t↪ Current URL:", r.Ctx.Get("url"))
		fmt.Println()
	})

	c.OnHTML("a[href]", func(e *colly.HTMLElement) {
		e.Request.Ctx.Put("refUrl", e.Request.URL.String())
		e.Request.Visit(e.Attr("href"))
	})

	// Start scraping on https://en.wikipedia.org
	c.Visit("https://www.mozilla.org/en-US/privacy/websites/")
	c.Wait()
}


Library not loaded: @rpath/Charts.framework/Charts

Library not loaded: @rpath/Charts.framework/Charts
Referenced from: /private/var/mobile/Containers/Bundle/Application/D054D8D8-EF3A-41E6-8861-59CB7D26E8E4/Weex.app/Weex
Reason: image not found
Dyld Version: 353.12

You should follow the instructions in the README carefully.


feat: integrate with FLB as an external load balancer

Don't want to merge FLB features to release-v0.1 for the time-being, as it depends on Calico CNI to broadcast POD IPs, not a common case.
We want to keep it in a feature branch unless there's better solution.


persistence-dynamodb release

vote has passed

@raboof if you have time, could you review this? I would like to get this in before announcing the release.


Api items/wishlist #2

search by category is needed for specific type items too, not only for all items.
e.g.: items/wishlist/start_cat_id=3 or else if better solution found.

I'll change this call a little bit to make it simpler for me and equal for you ;)
Instead of having items/wishlist or items/x/y/start_cat_id or cat_id  where x is the status of the items that you want to retrieve (as a reminder: 1 -> stock, 2 -> pending, 3 -> wishlist), and y is the stock_identifier.
@matpuz81 tell me what you think about this

ok perfect

@matpuz81 do you need both start_cat_id and cat_id ?

i think start_cat_id should be enough


[v1alpha3] study and migration

Cluster API v1alpha3 is on its way and we need to study what it brings along and how these changes are migrated to CAPBM.

I think we can call this "done". If it isn't done, the work is ongoing in the new git repo.


Replace hardcoded radial center cross marker for TextureProgressBar with internal Marker2D child node

This is proof of the concept showing how https://github.com/godotengine/godot-proposals/issues/11225 may work.
Implementation details:

If the code is executed in the editor, an additional internal Marker2D child node will be added when TextureProgressBar is created.
When setting fill_mode, Marker2D node visibility changes. It becomes visible if mode is radial and texture_progress is valid. Also these is check if Marker2D node is valid as it could be freed (to cover issues https://github.com/godotengine/godot/issues/46266 and https://github.com/godotengine/godot/issues/96859).
When drawing, position of Marker2D node is updated.
Previously position of hardcoded radial center marker was rounded to the largest whole number. Now this rounding is removed and position of Marker2D is real radial center position.
Visibility of Marker2D is also changed inside set_progress_texture().
Changes are reflected in TextureProgressBar node description in docs.

Also I suppose that checks added in if statements will be not fully correct. And if the original proposal is accepted, I will need help making them proper. For now it is just minimal working code in basic use cases.
Closes https://github.com/godotengine/godot-proposals/issues/11225
Resolves https://github.com/godotengine/godot/issues/46266 and https://github.com/godotengine/godot/issues/96859

The simplest way will be just to add properly to show/hide this reference cross. But this reference cross will stay hardcoded (which is not good IMO) and this property will be present in release builds (please correct me if there is possibility to make editor-only properties).
I'm not saying that current pr is best that could be done, it's just possible option. First of all this is just concept of how it may be changed to gather any feedback. Most likely this pr will be stalled and I'll close it later.

and this property will be present in release builds (please correct me if there is possibility to make editor-only properties).

There are precedents. For example:
https://github.com/godotengine/godot/blob/0c45ace151f25de2ca54fe7a46b6f077be32ba6f/scene/main/scene_tree.h#L140-L144
https://github.com/godotengine/godot/blob/0c45ace151f25de2ca54fe7a46b6f077be32ba6f/scene/main/scene_tree.h#L350-L368
Notice how in every other build other than debug the getters always return false (which the compiler likely optimises out). Yeah, the property should still be bound, but its getter and setters can be coded to do nothing.
I do find that reusing Marker2D for this is kind of clever but my personal concern still stands.

Also, wait. Wouldn't Node.is_part_of_edited_scene() also solve the original issue?

Also, wait. Wouldn't Node.is_part_of_edited_scene() also solve the original issue?

I'll look into it, thanks!

I do find that reusing Marker2D for this is kind of clever but my personal concern still stands.

What do you think if Marker2D still will be used, but its visibility will be controlled by Node.is_part_of_edited_scene() or editor-only property?

@Mickeon thank you so much for referencing to Node.is_part_of_edited_scene().
This solves issue as expected.

So, this PR is now just showcase for replacing hardcoded reference cross with Marker2D (i.e. possible solution for feature request), nothing more.
This one will not close (is not targeting to close) mentioned issues with reference cross.
I'll open separate PR to replace Engine::get_singleton()->is_editor_hint() with is_part_of_edited_scene() which will close original issues.
And then update first comment of this PR with some gifs and then close it.
Sounds like a plan.

Updated OP with some clarifications and gif, closing now.
Still could be tested (at least for now) by downloading PR artifacts if anyone is interested (click Commits -> Artifacts)


git rebase error log history

Hello, I have a error order history when I use the last tag in main tab.

Here we have main that is a few commits ahead of branches one two and three. For whatever reason, we need to update these three other branches with modified versions of the last few commits on main.

Blow is my git command:
$ git rebase C2 three
$ git checkout one
$ git cherry-pick C4 C3 C2
$ git checkout two
$ git cherry-pick C5
$ git rebase two one

The history of branch one should be:
C2``->C3``->C4``->C5`->C1->C0

to repro:
https://learngitbranching.js.org/?NODEMO&command=level advanced3; git rebase C2 three; git checkout one; git cherry-pick C4 C3 C2; git checkout two; git cherry-pick C5; git rebase two one
I think this is because we have some code that tries to understand the order of the commits when rebasing, and that unfortunately assumes the chronological order (what you see above) vs the other in the rebase target
I dont think it applies to most lessons because most of the time we arent rebasing out of order

Ok, I don't think this is a general problem, the rebase order of other courses is normal.
Thansks for your reply.


Cover Coverage Reports with SonarQube

Is there a way to integrate Code Coverage & Code Analysis reports generated by Platforms Like SonarQube especially it mentions it doesn't cover other platforms as as Codacy and Code Climate?

Hey @sherifkozman CodeClimate is supported and so is Coveralls. I recommend CodeClimate though.

Thanks @idancali however I was asking about SonarQube we its mostly used in Enterprise and private installations


fix: correct typo in evaluation settings comment

Corrected the spelling of "doen't" to "doesn't" in the comment explaining the evaluation settings for skipping the first and last frames. This improves the clarity and accuracy of the code documentation.

Thanks! We addressed this in #218


Fix broken links and minor grammar error

There were two broken links to the "buffers" section of API
"putted" -> "put"

Thanks for fixes! Highly appreciated. 🎉


getType() with detect sensor type

OK, I will review again ...

Looks good!

I think that
  if (_type == 0) read();
is fine. read() knows how to handle situation when _type == 0


process check thresholds require ceiling

as per the example config, the process check allows configuring thresholds based on a min/max value:
thresholds: (optional) Two ranges: critical and warning
  warning: (optional) List of two values: If the number of processes found is below the first value
    or above the second one, the process check will return WARNING.
  critical: (optional) List of two values: If the number of processes found is below the first value
    or above the second one, the process check will return CRITICAL.

I do not wish to monitor on a ceiling of processes. e.g. I do not care if the process count reaches a higher number, I only care if it reaches a lower number (like 0).

Also, if the process is not found, and thresholds are not configured, it reports as "WARNING" rather than "CRITICAL" ?
    process (1.7.0)
    ---------------
      Instance ID: process:concourse_worker:647b51edbf1534c7 [WARNING]
      Total Runs: 161
      Metric Samples: Last Run: 1, Total: 2,143
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 161
      Average Execution Time : 0s

      Warning: No matching process 'concourse_worker' was found

init_config:

instances:

- name: concourse_web
  search_string: ['/opt/consul-template/bin/consul-template -config=/opt/consul-template/config/concourse-web\.conf']
  exact_match: False
  collect_children: true

Thank you for the feedback! The documentation was updated, you can set the upper bound to .inf in order to make an semi-unbounded interval. Feel free to reach us if you have any other question!

Thanks. It looks like it wasn't just a documentation change but an actual code change. I don't see a new release for the process integration or an agent release that would contain the update. How do I consume the change?

@eedwards-sk Actually, no code change is required. You can do this now:


Error on pre-existing databases with new images if it was initialized with PostGIS 2.1

When updating/rebuilding images with the latest versions (which has PostGIS 2.2 instead), queries fail with "OperationalError: could not access file "$libdir/postgis-2.1": No such file or directory" on pre-existing databases created before #8 was in place.
Per upgrading information from http://postgis.net/install/, you need to execute more commands for each database so you can complete the upgrade to 2.2:
-- Upgrade PostGIS (includes raster)
ALTER EXTENSION postgis
 UPDATE TO "2.2.1";
-- Upgrade Topology
ALTER EXTENSION postgis_topology
 UPDATE TO "2.2.1";

-- Upgrade US Tiger Geocoder
ALTER EXTENSION postgis_tiger_geocoder
 UPDATE TO "2.2.1";

While this can be done manually by admins, wouldn't it perhaps be better if this was included in the startup if it detects the default database is not yet upgraded from 2.1 to 2.2?
If not, it would really be better to have a version pin for 2.1. Looking at #8 where 2.2 was introduced, this may seem hard, but since that issue is closed, I've made this new one so this can be tracked separately.

@alvingonzales Were you able to follow those instructions successfully? If so, I think the best that can be done is to document what needs to be done when upgrading.
It may also make sense to go back to including the PostGIS version number in the tags on Docker Hub, but that was a bit of a pain to configure when I had it before. It isn't isn't straightforward to retroactively create "2.1" tags for existing builds with an automated build as far as I know.

@md5 , Yes, following the additional upgrade instructions fixed the OperationalError, and made the database work again for PostGIS related queries.
I'm not very familiar with docker hub automated builds yet (since we host our images privately with our CI server), But I guess yes, it might be best to update README.md to add a note regarding the upgrade for now.

Same issue but this time for postgis 2.3
We need to run:
-- Upgrade PostGIS (includes raster)
ALTER EXTENSION postgis
 UPDATE TO "2.3.0";

-- Upgrade Topology
ALTER EXTENSION postgis_topology
 UPDATE TO "2.3.0";

-- Upgrade US Tiger Geocoder
ALTER EXTENSION postgis_tiger_geocoder
 UPDATE TO "2.3.0";

@AdrianRibao Were you able to make this approach work? If so, how were you able to run the command?
I'd be happy to document a recommended procedure for dealing with updates or even providing a script of some sort the help streamline that procedure (assuming it's either opt-in or has strong guarantees about not corrupting the user's database).
Does anyone know how this is handled when updating the postgis packages in a non-container scenario?

Answering my own question perhaps, it looks like the failure actually happens at query time, so it should be pretty straightforward to include a script that can be run with docker exec that can detect the version difference and run the update command.

@md5 yes, it works running that commands on the databases that use postgis.

I had the same issue today - upgrading 2.2 to 2.3.
Running commands fixed problems for me.
Thanks @AdrianRibao and @alvingonzales for sharing!

I've created #54 to provide a way to handle that case...


Removing an app should look at app.info files

When removing/updating an outdated app, the list of files on the device might no longer match the list in apps.json
See for example #215, where gbridge.app.js was changed to gbridge.settings.js.
I think removing an app should get app.info from the device to determine which files to remove.

Good point - I think that data should already be in appsInstalled.

I just thought of some complications:

If you just opened the page, appsInstalled stays empty until you refresh from My Apps, but you can just install apps, overwriting whatever was on the device.
What about settings files like app.settings.json?

Fresh install: might include a default settings.json file?[1]
Update: we don't want to overwrite settings already on the watch
Uninstall: settings file should also be cleaned up
(I think "real" data like gps/heartrate recordings should be kept though)

[1] But you need to put defaults in the code anyway, or adding more settings in a newer version becomes problematic.
So I think it would need to do something like this:

Add a way to indicate apps contain a settings file, something like this:

"storage": [
  {"name":"app.settings.json","type":"storage"},

Files with type=="storage" are allowed to have no url/contents/evaluate, in which case nothing is actually uploaded to the device.
Install:

If app.info is already on the device, perform update instead (confirm first?)
If a file has type:"storage", add it to the app.info files list, even if it has no contents (then don't actually upload anything)

Update:

Get app.info from device
Check app.info files: delete all files not listed in app.storage (others get overwritten anyway)
If a file has type:"storage", do not overwrite if it already exists on the device

Remove:

Get app.info from device, delete all listed files.

Thanks -  what you propose above looks good, but I'm a bit iffy about the PR itself. Creating new RegExp and then serialising it and sending it over to run on Bangle.js seems a bit dodgy... Also it's unquoted, so a.foo.js will match the file abfoocjs.
I'd also really prefer to keep things like listFiles out of the upload process if at all possible. I'd imagine that given the settings files are tiny, it might be worth actually just changing the upload text to something more like: if (require("Storage").read(filename)===undefined) require("Storage").write(...)
My concern is that I'm not sure it actually solves the problem completely. It keeps the settings, but for heart rate, pedometer, gps recorder, stopwatch that create files it won't actually be able to remove those as they tend to have different names (eg with the date in them). I think we might need a separate list of regexp for data files rather than just a tag on the stuff in storage.
If we just ensured that whenever you click upload, the app list (appsInstalled) was first grabbed from the device I think that would make life a lot simpler. There's then no need to get app.info from the device on update because it's already in appsInstalled.

Created a cleaner PR for just looking at appid.info: #242
I'll open a new issue for keeping data/storage/settings files, as I think it'll benefit from some more discussion without entangling it with this.


Make Profile Page for posters

Basic Information
Create a profile page for the posters (frame 1582) which is very similar to the one already made for the bidders.

Other Information
Can be made reusing profile page tag components from the bidders' profile page: #75 #81

This one will be done in #157


WFLY-13849 Decouple version.org.infinispan.server from version.org.in…

…finispan
Resolves
https://issues.redhat.com/browse/WFLY-13849

@pferraro FYI

@rhusar JIRA is down now so I can't resolve the JIRA after merging, so please take care of that. Thanks!

@bstansberry Will do. Thanks.

Resolved in Jira now as well (Jira was out longer than they planned for).


multiple file types functionality

Hello! I'm a college student and stumbled upon this repo. I thought it would be helpful for a project I'm doing, and it ended up being IMMENSELY helpful! However, I needed it to output a json file instead of a csv file. For my own project, I just changed everything related to csv to json, but thought that as a fun side-project and to show my appreciation, I would add the functionality to specify file types.
This pull request includes the ability to output either a csv or json file with the default being a csv. I think I've ensured that everything works as intended! I made a detailed commit message which you can see below to help in reviewing this pr, as well as example json outputs.
Let me know if there's anything you're unhappy about or want changed. Hope this is helpful. Thanks again for providing this wonderful tool for all to use! :D
cli.py:
added new argument - "-ofe" or "--output_file_extension"
str, default is ".csv"
changed veriage from 'csv' to 'file'
main.py:
added passing of new arg 'output_file_extension' to ListScraper creation
added variable to end message to specify what kind of file type can be found in ./scraper_outputs/
checkimport_functions.py:
new function 'checkimport_output_output_file_extension()' (called in instance_class, init)
makes sure that '-ofe' passed in is either ".json" or ".csv", allows for exemption of comma
added 'output_file_extension' parameter to 'checkimport_outputname()' to ensure name has the proper file extension
instance_class.py:
new class field - 'output_file_extension'
added import of 'checkimport_functions' and call to make sure the extension is valid
passing of 'self.output_file_extension' to List creation
modified 'scrape_all_and_writeout()' to output to json if ".json" (imported json for this)
'indent=4' makes for well formatted output
'ensure_ascii=False' makes sure special characters (including stars) aren't converted to unicode
python's 'None' is converted to null with 'json.dumps'
changed verbiage from 'csv' to 'file'
list_class.py:
new class field - 'output_file_extension'
'self.output_file_extension' passing to 'checkimport_outputname()'
'self.output_file_extension' passing to 'scrape_list()'
modified 'write_to_file()' to output to json if ".json" (imported json for this)
'indent=4' makes for well formatted output
'ensure_ascii=False' makes sure special characters (including stars) aren't converted to unicode
python's 'None' is converted to null with 'json.dumps'
changed verbiage from 'csv' to 'file'
scrape_functions.py:
'scrape_list()' and 'scrape_page()' take output_file_extension param now
in 'space_page()', it's used to see what should be used for 'not_found', np.nan (import added) or None
'np.nan' switched with 'not_found'
utility_functions.py:
removed numpy import (handled in scrape_functions.py)
added parameter 'not_found' to functions
json can't handle 'np.nan' - None instead!
README.md:
changed verbiage from 'csv' to 'file'
added sample flag that notifies specification of file extension
modified 'TODO' to be "further options for output" instead of "add options for output"
example_output/csv & example_output/json & *.json files:
created folders for file extensions, moving csv examples into the 'csv' folder
made examples for json output

This is great! I'm very happy to read you were able to utilize the program for your project :) and thankful for the work you put into creating this extra functionality.
I've looked through your code and everything looks fine and clean. I also very much appreciate the refactoring of the inline comments and the README + adding an example json file to the repository! So thank you for that as well.
I've merged the it with the main branch!

I'm glad you're happy with it! Was my pleasure. :D


Additional parameters.

Hey.
--set /Config/CONFIG/isLowViolence 1 --set /Config/CONFIG/isLowResParticles 1 is a thing from what I can gather from forums. Any interest in adding them to the launcher?

I haven't worked on this in a long time (basically since QC moved to Steam), and wasn't sure if either of these flags actually did anything back when I first wrote this utility so I probably won't get around to adding them. However, I did design the application in such a way that you can specify additional parameters that I have not specifically included in the UI.
If you want to use isLowViolence and/or isLowResParticles, check the README under the section:

New game options have been found since the last QCLauncher release, how can I try these new options?

Since version 1.01, it has been possible to pass custom Quake Champions start-up options to QCLauncher with the --customargs flag. For example, create a shortcut to QCLauncher or start QCLauncher in this manner:

qclauncher.exe --customargs="--set /Config/CONFIG/isLowViolence 1 --set /Config/CONFIG/isLowResParticles 1"

QCLauncher will then pass these options to Quake Champions on launch.


WIP okd-packages: don't install glusterfs

These are no longer needed, as GlusterFS tests are now being skipped

Not entirely though :/


Pic 3280 aws key refactor

Removal of programmatic setting of access id and secret to force the use of WebIdentityTokenFileCredentialsProvider which is used under the cover when using IAM Roles for Service Accounts (IRSA)

Looks good.


Review UTXO caching logic

We recently experienced flaky tests related to the optional UTXO caching that happens on the Provider class.
This logic was added to solve an issue that was happening on the test net (beta-3?).
Now that we are moving to a new test net, and have identified that something might be wrong with how the UTXOs are being cached, we need to reevaluate this logic and validate if it needs to be updated or if we could remove it enterely.

What have we identified that might be wrong?

@arboleya I am unsure about what was causing this one.
I would need to investigate this further. I can take a look at it this week.


Return ring cells in order by using Array<> instead of Set<>

Preserves the order of the cells in the ring allowing it to be used for traversing the ring cells in order.

Thanks for proposal but Set is used intentionally. Mainly because of major performance difference but also because uniqueness of elements is guaranteed in Set.


maybe_single throws an error when there are 0 rows in the DB

Describe the bug
maybe_single on an empty database throws the following error:
none is not an allowed value (type=type_error.none.not_allowed)
To Reproduce
Create a simple table that has 0 rows and a maybe_single select.
    data = (
        supabase.table("test_table")
        .select("*")
        .eq("url_hash", url_hash)
        .maybe_single()
        .execute()
    )

Expected behavior
Should return an object where the data variable is None
Additional context
execute() goes to if e.details and "Results contain 0 rows" in e.details:  after which it tries to create a SingleAPIResponse with data: None. All of this looks right, but after this pydantic throws an error because it doesnt allow None values in SingleAPIResponse.
Is this an issue with Postgrest? or am I missing something?

No you're spot on, the SingleAPIResponse expects a dict for it's data field so pydantic rejects the None. I think we should modify the .execute method on MaybeSingleRequestBuilder to return an Optional[SingleAPIResponse] instead.

Yes that fixed the issue. Thanks!


NoneType ERROR

I'm trying runnig the script on my Linux server, everything worked fine for 10mins and then I got following Error Message.
2022-11-20 14:10:27,421 - get_session in ebAlert.crud.base - ERROR - 'NoneType' object has no attribute 'replace'
ERROR:ebAlert.crud.base:'NoneType' object has no attribute 'replace'
Do you guys had the error as well and how do you fixed it?
I tried to solve by myself but its kinda strange. On my windows computer it totally works without any issues.

Yes, since updating to bullseye, I get a similar error when running the bot using Kubernetes:
File "/usr/local/lib/python3.9/site-packages/ebAlert/main.py", line 78, in add_post
for post in posts:
TypeError: 'NoneType' object is not iterable
I was not able to fix the error.

Hi,
@tablesturn your error is not necessarly the same as @Keyser0512.
Could you both tell me which python is installed in your system.

@tablesturn
I look like that your are using an old version of the ebAlert.

@Keyser0512
Fixed the problem by handling exception when fetching the link fails for any reason.

@tablesturn I look like that your are using an old version of the ebAlert.

Indeed, a closer look revealed that the docker container randombyte/ebay-kleinanzeigen-alert is a fork and not maintained any more. The easiest solution for me was to use the software natively.


Session sticky for weight based routing

The requests from the same IP are distributed to different destination services based on the weight if weight-based routing rule is applied. Let's say if I set a rule like this
apiVersion: config.istio.io/v1alpha2
kind: RouteRule
metadata:
  name: reviews-default
spec:
  destination:
    name: reviews
  precedence: 1
  route:
  - labels:
      version: v1
    weight: 50
  - labels:
      version: v2
    weight: 50

The requests from the same IP are dispatched to V1 and V2 of reviews services randomly, of course,
each version gets roughly 50% of the requests.
I'm wondering should we keep the requests from the same user/client get a consistent result?  The user will be confused if the system behaves like this if we use Istio in a canary deployment.
I posted a topic on the Istio Developers Google group to discuss 'Session sticky for weight based routing'.  @ZackButcher mentioned that Envoy already support this feature and we need to reflect it in the Istio config.

So work here would be to add the ring hash LB policy to Istio's destination policy resource.

@ZackButcher do you know if this has been added to 0.8?

No. Need to add.

Does, with new version of envoy, this feature will be covered? https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/route/route.proto#route-routeaction-hashpolicy-cookie

@jsenon - yes, this is exactly what we are implementing now.

Hi there @ZackButcher @rshriram , after reading this issue and the PR, I'm a bit confused of the requested feature and the implementation. If you guys could take some time to help me clear my confusion, it would be much appreciated.
So I'm using Envoy directly, not through istio. And the scenario @zhaohuabing described is exactly what we need. But reading through Envoy Documentation and the code of PR, I got a bit confused whether these two are the same.
So the ideal scenario is when a request of a client comes in the first time, it could either go to v1 or v2 cluster according to weights. Let's say it's routed to v2. So the second request from that client will be routed to v2, assuming we're using ip as the hash policy.
Q: So did the second request just bypass the phase of routing according to weights, and was directly routed to one particular host of v2?
Also, reading through Envoy documentation (link above), I see it says
route.RouteAction.HashPolicy
[route.RouteAction.HashPolicy proto]

Specifies the route’s hashing policy if the upstream cluster uses a hashing load balancer.

Q: My understanding of this is this config supports clusters that support hashing -- in this case, ring hash. But it's keeping session between clients and a particular host, but not with a cluster. This PR which fixed this issue is https://github.com/istio/istio/pull/6742, which has the title support hash based routing for soft session affinity. But somehow I just have some difficulties putting these two things together.
If you guys could help answer my questions I will really really appreciate it.

@ken-experiment I posted a question on Envoy's repo https://github.com/envoyproxy/envoy/issues/8167.

@ken-experiment What you ask in https://github.com/istio/istio/issues/1703#issuecomment-451007330 is not supported by Envoy. See envoyproxy/envoy#8167 (comment):

This isn't currently possible. Weighted clusters are chosen based on a random value selected at request time. I'll go ahead and label this as an enhancement request.


flux operator submit library

I'm working on a small set of scripts that will make it easy to bring clusters up/down for different clouds (starting with GCP for our experiments) and I'm not sure where to put it yet - since I can't make repos here I'll likely put it under rse-ops for the time being. It might have integration with cloud-select so I might also put it under the converged computing organization. Some prototype thinking (shared on slack):
$ flux-cloud cost-estimate experiments.yaml
_The N experiments will have an estimated cost of X/unit_

$ flux-cloud submit -c google experiments.yaml

And the underlying submission could be the operator or possibly the setup that Ward is working on (that I haven't tried yet!) This might also be in scope for the playground https://github.com/converged-computing/playground but I don't want to tangle two slightly different projects if they aren't similar enough.

Yep this is done - this is https://github.com/converged-computing/flux-cloud.


Update to node16

fix #18

Looks good, I assume things are still compatible.
Thanks for the PR!

Released as v2.0.9! Thanks again!


Feature/questions user flow

Codecov Report

Merging #70 (2e505f9) into main (567fb54) will decrease coverage by 5.29%.
The diff coverage is 35.49%.

@@            Coverage Diff             @@
##             main      #70      +/-   ##
==========================================
- Coverage   91.95%   86.65%   -5.30%
==========================================
  Files          93       96       +3
  Lines        3132     3447     +315
  Branches      239      269      +30
==========================================
+ Hits         2880     2987     +107
- Misses        142      345     +203
- Partials      110      115       +5

Impacted Files
Coverage Δ

src/MentorBot.Functions/AzureFunctions/Commands.cs
21.10% <0.00%> (-53.10%)
:arrow_down:

src/MentorBot.Functions/AzureFunctions/Queries.cs
63.74% <0.00%> (-27.86%)
:arrow_down:

...tions/Models/ViewModels/QuestionAnswerViewModel.cs
0.00% <0.00%> (ø)

...ctions/Services/AzureStorage/TableClientService.cs
95.34% <0.00%> (-2.28%)
:arrow_down:

src/MentorBot.Functions/Services/StorageService.cs
73.33% <0.00%> (-14.67%)
:arrow_down:

...entorBot.Functions/Services/TableStorageService.cs
75.00% <0.00%> (-15.33%)
:arrow_down:

...c/MentorBot.Functions/Services/CognitiveService.cs
77.04% <7.14%> (-20.83%)
:arrow_down:

...Functions/Processors/UserFlow/UserFlowProcessor.cs
72.52% <72.52%> (ø)

...ntorBot.Functions/Models/Domains/QuestionAnswer.cs
88.88% <88.88%> (ø)

...ions/App/Extensions/ServiceCollectionExtensions.cs
98.46% <100.00%> (+0.02%)
:arrow_up:

... and 4 more

Continue to review full report at Codecov.

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


x86/libopenvr_api.so and x86/libopenvr_api.so.dbg has no meta filebut it's in an immutable folder. The asset will be ignored.

Hello, i am new and try to using steamvr and encountered these errors:
Asset Packages/com.valvesoftware.unity.openvr/Runtime/x86/libopenvr_api.so has no meta file, but it's in an immutable folder. The asset will be ignored.
Asset Packages/com.valvesoftware.unity.openvr/Runtime/x86/libopenvr_api.so.dbg has no meta file, but it's in an immutable folder. The asset will be ignored.
i was thinking maybe unity not generated the meta files, but have no understanding from me how to regenerate meta file.
Thank you for helping.

Hello @muraqqi, this issue is already being tracked at #1107. Closing as a duplicate.


Use (or add) firefox version as docker tag value

Why are you using your project's internal versioning scheme, as tag values on docker hub, for an image whose entire purpose is to encapsulate Firefox. No one cares if they are using 1.17.01 if there isn't a deterministic means of choosing the, uh, version of Firefox they want to target.

Closing this issue.  Please reopen if needed.


Echo Gen 4. with Clock / Modell B7W644

Checklist

[X] I have filled out the template to the best of my ability.
[X] This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
[X] This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.
Add Echo dot Gen 4 with clock model B7W644
Describe the solution you'd like

Describe alternatives you've considered

Additional context

Fixed with #1566. Will be in next release.


Function return type with variadic tuple does not allow empty tuple

TypeScript Version:  4.1.0-insiders.20200910

Search Terms: Variadic tuple empty return
Code
function foo<T extends [] = []>(): [...T, string] {
  return [""];
  // Error: Source has 1 element, but target requires 2
}

const bar = foo();
//    ^ has expected type [string];

Expected behavior: No error
Actual behavior: Error on the return statement. Even if I change the constraint to extends any[], it does not work.
Playground Link: https://www.typescriptlang.org/play?ts=4.1.0-insiders.20200910#code/GYVwdgxgLglg9mABMOcA8AVRBTAHlbMAEwGdEBtAXUQF4LKA+ACgEoAuCgOm4wBpESUAE4wwAc2oBvAFCJEQ7FBBCk5AERrKAblmIA9HsQBRIULhCOAZTjKI2RAAsAhmQCMOADbYAtoSj8AIxAoRCgnITFFeWwARxAYBTIAJmkAX2lpCARBRADw2mRUVh0DOTkAPUcXHFwAB2xobCJQgE96ikERcW0gA
Related Issues: A bunch related to variadic tuples, but none seemed to match this case

@ahejlsberg

For extends any[], this is the correct behavior:
function foo<T extends any[]>(): [...T, string] {
  // Let's assume this works?
  return [""] as any;
}

const bar = foo<[1, 2]>();
// Crash
bar[0].toFixed();

For extends tuple_like, this works as long as you actually spread in an appropriate value:
// All correct implementations of 'foo' look like this
function foo<T extends [unknown]>(arg: T): [...T, string] {
  return [...arg, ""];
}

// Works
const bar = foo([1]);

For the specific case of extends [], what's being suggested here then is that we specifically special-case a zero-length tuple to allow it to be skipped in the output position, but it really doesn't seem like there's any reason whatsoever to write a constraint like except as an accident, so I'm calling this working as intended.

@RyanCavanaugh okay, let's give it something to spread:
function foo<T extends any[]>(arg: T): [...T, string] {
  return [...arg, ""];
}

const test1 = foo([]);
//    ^ has type string[], expected [string]
console.log(JSON.stringify(test1)); // [""]

const test2 = foo([1]);
//    ^ has type (string | number)[], expected [number, string]
console.log(JSON.stringify(test2)); // [1, ""]

Maybe I'm missing the point, but shouldn't I be able to say "this function returns a tuple where the last element is a string"?

function foo<T extends readonly any[]>(arg: T): [...T, string] {
  return [...arg, ""];
}

const test1 = foo([] as const);
//    ^ has type [string]
console.log(JSON.stringify(test1)); // [""]

const test2 = foo([1] as const);
//    ^ has type [number, string]
console.log(JSON.stringify(test2)); // [1, ""]

@AlCalzone  - how did you make that playground URL? all the playground URLS have X.Y.Z-dev not X.Y.Z-internal

@AlCalzone  - how did you make that playground URL?

I was confused too, but I just clicked 'next'.
@RyanCavanaugh Thanks


varfish-annotator database only contains chr1 for gnomAD tables

Describe the bug
The varfish-annotator database only contains chr1 entries for the gnomAD tables.
To Reproduce
Use the new db-stats command to varfish-annotator to see the problem.
Expected behavior
Data should be present for all chromosomes.
Additional context

https://github.com/bihealth/varfish-server/issues/546

Root Cause Analysis
The rules result_grch37_varfish_annotator_db only depend on the "stripped" file for chr1. They should depend on all.

Resolution Proposal
Adjust the rules such that they explicitely use all "stripped" gnomad files.
Affected Components
VarFish DB Downloader
Affected Modules/Files
snakefiles/out/varfish_annotator.smk
Required Architectural Changes
None
Required Database Changes
None
Backport Possible?
Shared data with anthenea branch
Resolution Sketch
See above


Fix puppeteer tests setup

Being new to the CAS's functional tests based on Puppeteer, I'm trying to find some reasonable way of how to work with them. This PR contains some fixes and improvements as I dig deeper into this area. Feedback to individual changes and ideas is welcome.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks for the proposal.
I don't really see anything in here that we'd like to include and merge. If these changes work for you locally, it's best to keep them as local changes. We'd like puppeteer to be automatically installed and updated via CI, without the gradle daemon running and all docker contains shut down after the test is complete.

@mmoayyed, OK, but can you please explain, as it must be confusing for new contributors:

Why do you want to launch a separate Gradle daemon for every test run. There is a clear performance penalty with this, isn't it? So what are the pros?
Why do you shutdown docker in this script when you don't start the docker at the very first place? I've noticed that you run docker within CI tests, but those seem quite unrelated to the puppeteer tests.

Please post questions to the dev mailing lists. If there time, folks will respond.

The script is run primarily via CI. Daemon is always off in CI. Performance is not a concern.
Certain tests are docker-based. Those that do not run it will simply exit and move on.


[RFC] stm32: Move prescaler from pwm binding to timers binding

stm32: Move prescaler from pwm binding to timers binding
Prescaler is misplaced in pwm binding. It should be in timers binding instead.
For example, TIM6/TIM7 doesn't have PWM capability, but have a prescaler.
Also prescaler is common to all PWM channels of the same timer.
So prescaler should not be in pwm binding.
This change also prepares the introduction of timer based counter
(which requires prescaler at timer level, as it is the same than for pwm)
For compatibility reason temporarily keep pwm binding to avoid
breaking boards out of tree.

Lest' be more specific about "timer level".
It can be replaced by "binding of parent timer node" or something similar

Done

Move this change to initial driver change commit

Done

Why mentioning LPTimer if property is not available for those ?

Initially it was common to LPTIM. Now this property is blocked for LPTIM.
So you are right it should be removed. Done

Don't remove this "};"

In fact it is removed but now, it is done in the right commit.

Rebase to fix buildkite issue (linked to uart).
Temporary increase buildkite timeout.

@galak, @cfriedt, @MaureenHelm This one is ready to merge once the temp patch is removed.

CI is passed. Removing Buildkite timeout patch.

Please remove the DNM label if this is indeed ready to merge.

@MaureenHelm, now ready


Replace usage of on-chain function to generate GenesisRoot

Since we are working with 100k leaves we need to use the off-chain function in JS to create the genesis root instead of using the on-chain function.

outdated


Should FileResponse be #[non_exhaustive]?

Currently tauri_plugin_dialog::FileResponse is not #[non_exhaustive] but this means adding fields to tauri_plugin_dialog::FileResponse is braking changes.
Is this fine?

FileResponse was exported in #837 without discussion about non_exhaustive so I feel it might not be expected.

This is about plugin: dialog, not plugin: fs

whoops


Adjust grid width/column count on rotate

Right now, the number of grid columns (3) is fixed. This looks strange when the device is rotated. We should compute the optimal column count and update this dynamically when the phone is rotated.

this should have been "solved" by locking orientation to Portrait for Android, same as in iOS. if you see landscape in android still/ever let me know


Make danger detect if its not on a PR commit

a commit build should not run danger, but it shouldn't raise

it shouldn't run and it shouldn't raise?


setup.py - fixed url following relocation to 'requests' org.

Closing and re-opening once more to trigger a new merged build


Intellisense and Toolbox snippet for Scene.setBackground image

is this: scene.setBackgroundImage(Image())
which is invalid
Can we change to scene.setBackgroundImage(img``)
as the default snippet?

And with the right image dimensions

dupe of https://github.com/microsoft/pxt-arcade/issues/2067, this was fixed and just regressed in the last build


Error running show_labels.py

When I execute show_labels.py, I get following warning and error:
show_labels.py:15: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working
from collections import Iterable
usage: show_labels.py [-h] [-i IMAGE] [--image-dir IMAGE_DIR] -l LABEL
[-s SCALE] [--no-attr] [--no-lane] [--no-drivable]
[--no-box2d] [-o OUTPUT_DIR] [--instance] [--drivable]
[--target-objects TARGET_OBJECTS] [--format FORMAT]
show_labels.py: error: the following arguments are required: -l/--label
I am assuming the warning can be ignored as my Python version is 3.7. Please help with the error.

with the below command :
python3 show_labels.py --image-dir train/ -l data/bdd100k_labels_images_train.json
The Images are in train directory and json is present in data directory. Im in urgent need to resolve this please.
I get following error:
show_labels.py:15: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working
from collections import Iterable
Image: 0000f77c-6257be58.jpg
Traceback (most recent call last):
File "show_labels.py", line 881, in
main()
File "show_labels.py", line 877, in main
viewer.view()
File "show_labels.py", line 547, in view
self.show()
File "show_labels.py", line 560, in show
self.show_image()
File "show_labels.py", line 667, in show_image
if 'cali' in frame['intrinsics']:
KeyError: 'intrinsics'

Thanks for letting us know the error. It is fixed in #67


feat(transport): Disable the CRAM-MD5 AUTH feature dy default

Codecov Report

Merging #279 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #279   +/-   ##
=======================================
  Coverage   91.07%   91.07%
=======================================
  Files          11       11
  Lines        1109     1109
=======================================
  Hits         1010     1010
  Misses         99       99

Continue to review full report at Codecov.

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


add payloads to Action

The main goal of this PR is to support users that want to send and receive more comple payloads, when executing a Tree (arguments and return values).
A single string is used for both, since the majority of the users can use JSON to store any argitrary set of arguments.
The return value of onTreeExecutionCompleted has been changed to support a return value.
Also, about this code :
  // return success or aborted for the action result
  if(status == BT::NodeStatus::SUCCESS)
  {
    RCLCPP_INFO(kLogger, "BT finished with status: %s", BT::toStr(status).c_str());
    goal_handle->succeed(action_result);
  }
  else
  {
    action_result->error_message = std::string("Behavior Tree failed during execution "
                                               "with status: ") +
                                   BT::toStr(status);
    RCLCPP_ERROR(kLogger, action_result->error_message.c_str());
    goal_handle->abort(action_result);
  }

I don't think that a FAILURe shoult trigger a  goal_handle->abort since, from a technical point of view, the tree has been executed.

@MarqRazz check my latest changes


Alarm.com Error

Hi -
I'm getting this error when arming my system via HA:
"Alarm.com Error
Your Alarm.com user does not have permission to armstay your partition. Please log in to Alarm.com to grant the appropriate permissions to your account."
Any ideas on how I can fix it?
Thank you in advance,
n.

Would you mind running the integration for a few days with debugging enabled? This will provide more detailed logs next time you run into this problem. Add the following to configuration.yaml.
logger:
  default: warn
  logs:
    custom_components.alarmdotcom: debug
    pyalarmdotcomajax: debug

When the error pops up again, check your Home Assistant logs for details.

Closing as stale.


Add something like Google Resizer

link: http://design.google.com/resizer/
React Storybook is awesome! I just integrated react storybook in one of my apps! I think one thing is missing is the ability to see my components on different devices. It would be awesome if there is a way toggle device like Google Resizer.

Yeah. That'd a great feature.
For now you can resize your browser :)

BTW: Is there any open source we can use.

you mean something like this? demo.

Yeah. That one looks nice.

@arunoda , I'm currently working on viewport resizer and other stuffs for my team. I have a partially working viewport resizer. I might put in a PR this weekend or next week.

Some features that I will be adding:

manual resizer
'hay' resize
random resize
a set of preset viewport sizes

Awesome. Looking forward to that.
I could may help it to go with the styling as well.

I'd definitely want the ability to see multiple sizes at once. Here's what it looks like in my (now way too similarly named) ReactStoryboard project:

PS. I'd be stoked to merge these two projects if there's an interest.

@D1plo1d , that looks awesome! You already have all the features that I want to implement. If you're gonna do a PR then I will stop working on mine and work on yours later.

@D1plo1d this looks great.
I think as the start we can go with a simpler solution just like with Google Resizer.
First we have ways to see it in different resolutions. For multiple windows, we may need to work bit on data communication layer. Since the compoenet actually render on the iframe.
So, let's first go with the @sammkj 's way.
Then once we have it, we can step into the multi window view.
Can't wait to integrate these cool features.

@sammkj thanks!
I'm not sure if you should stop working on your component right away. I think @arunoda's got a point: The more I'm reading react-storybook's src the more I'm seeing implementation differences that would make cherry picking features difficult without larger changes.
I've got some ideas on how a merge could be done. @arunoda I don't want to step on any toes, could we have a quick skype call next week some time to discuss this?
PS. forgot the first time, here's a link to my project: https://github.com/D1plo1d/react-storyboard

@D1plo1d yes sure. I am happy to.
Drop me an email to<EMAIL_ADDRESS>and let's schedule a time.

@arunoda, regarding multiple windows, can we just duplicate the iframe in the layout component? I don't understand the data communication part.

@sammkj we can. We get data into the admin panel via the iframe and admin panel actions like selected story back to the iframe.
With multiple iframes things may go wrong. I didn't tested that.
But fixing that would be straight forward too.
I will work on that.

You can point Google Resizer to localhost:9001

Check this comment: https://github.com/kadirahq/react-storybook/pull/17#issuecomment-217112876
I'm going to close this in favour of the PR comments thread.
And we won't have a built-in resizer, but users could use browser tools and existing stuff with the FullScreen API.


User friendly span duration on reload

Feature:
User friendly span duration on reload
Rational
Right now if you set a minimum duration in let's say seconds and then reload, the search bar converts seconds into microseconds (e.g. 5s into 5000000ms). I believe searchbar should be as friendly as possible.

Do you mean in the URL? It seems the classic UI does use what the user enters in the URL (e.g. 5s), but Lens does convert to microseconds and use that in the URL with no units.

Yeah, si I believe lens can easily detect that 300000 is divisible by 1000
but not by 10000000 and hence show 300ms.
tir. 28. mai 2019, 18:02 skrev Tommy Ludwig<EMAIL_ADDRESS>
Do you mean in the URL? It seems the classic UI does use what the user
enters in the URL (e.g. 5s), but Lens does convert to microseconds and
use that in the URL with no units.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/apache/incubator-zipkin/issues/2612?email_source=notifications&email_token=AAXOYAWY4EGTM3ZMB5V32V3PXVJQTA5CNFSM4HPJWJC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWMTOXI#issuecomment-496580445,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXOYAQPHJNLZECK7LAIUSDPXVJQTANCNFSM4HPJWJCQ
.