[tracker] AuxPoW <-> BIP9 Compatibility

This is a tracking issue for making AuxPoW compatible with BIP9. See #1334 for a problem description.
Prerequisites

[x] tag and release alpha-1 to mark where the fork code starts coming in and to relieve people that need other functionality from this release desperately (there are no other high-risk changes.)

To decide

[ ] whether to hard-fork on block height or date
[ ] agree on a height/date for the hard-fork

Milestone: BETA-1

[x] remove CBlockVersion and re-implement logic inside CBlock => #1339
[x] make the built-in miner mine a virtual parent chain => #1347

[x] make getauxblock a standard test => #1342

[x] remove getblocktemplate rpc call => #1347
[ ] v4 soft-fork to become AuxPoW-only, introduce chainId inside CBlock.nNonce

[x] convert bool Consensus::Params.fAllowAuxPow into int nAuxPowVersion =>  #1344

[x] backport soft-fork status report RPC call from Bitcoin => #1343

Milestone: BETA-2

[ ] conditional hard-fork based on v4 soft-fork that removes the nVersion abuse and "Aux POW parent cannot have our chain ID" constraint.
[x] command-line argument allowing node operators to enforce protocol version post-hard-fork (to not get eclipsed with traffic from non-updated nodes.) => #1345

Milestone: RC-1

backport CLTV into a v5 soft-fork
command-line argument allowing miners to explicitly not mine v5.

Non-committed / optional

[ ] integration test script over different releases, to do qa on the forks

If I forgot anything, feel free to suggest :-)

Added prerequisite of tagging and releasing alpha-1, to have a clear mark before deep fork changes

I've removed CLTV to make this plan more atomic. We can softfork for CLTV later.

@patricklodder What's the latest on this? We need to have this conversation as Litecoin are activating segwit and I don't have confirmation (yet) about how they plan to. If they use BIP-9 then I believe we're going to have a problem?

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Jackson Palmer:

@patricklodder What's the latest on this? We need to have this
conversation as Litecoin are activating segwit and I don't have
confirmation (yet) about how they plan to. If they use BIP-9 then I
believe we're going to have a problem?

My understanding is that as long as Litecoin isn't using a BIP9 bit
that Dogecoin thinks is the AuxPoW bit, and as long as the top 16 bits
of Litecoin's nVersion don't look like the Dogecoin chain ID, whatever
Litecoin does won't harm Dogecoin.  By far the bigger problem is if
Dogecoin tries to do a softfork using BIP9.
Bitcoin has already done one BIP9 softfork, and Namecoin wasn't
affected due to neither of the above scenarios occurring.  However,
Namecoin can't activate that softfork until we hardfork to fix BIP9
compatibility.
(Disclaimer: I'm not an expert on what Dogecoin and Litecoin have done
differently from Namecoin and Bitcoin, and Daniel Kraft is the expert
on the Namecoin issue here.  So, any of the above could plausibly be
mistaken.)
-----BEGIN PGP SIGNATURE-----
iQIcBAEBCgAGBQJZD/q/AAoJELPy0WV4bWVwexQP/AzSkK3O1NE9Tyx2uHlu5QAm
SD/rCAc9gmVMavYT16FeD590YK7vwA0aVrCsDdSZT67q7g74vS5S+0hZu/dtVGoJ
B2DjGAhe02C2P0EmJ+csIyjisVm4HOlVn00wgQz7fiFuhddEBkjJM7Wx8qqwHudP
b6NklDFGa313lL6Q+C7XohQBFgTOYnDxIgNP+5C7rDEUl6x3kTo8BNKTtmSw1/3h
FX6ry+BPMWDyTZrKI989XypyQvcCuy/EjDVRlkH982bBSS8MGnDP2Gvn8zq8dZu4
W574TBOC5TfhgHBhMVG1VCZYItQoqEzpol9U6sg5X9QYZ+2+XN1F7YNbPU1btEhp
th5e+/m50BZs3MBw0PspLVAZLniBB1eaS607DkfGG+/8baideIbCIkYBW27zieZw
UQwvabf7Cr7selIprhkFEPwjsxBzVWgmb6u7y36vLzMP6CWXcuQPlp3S9Hlh+6rU
hG9EePVKsn6metId+P5mXa3x3C/vvlOH+IZUvk3sgypFu2KheroKuy5wv129CyHn
Vb4CV1JxIT28R3CUBXzW8bXJXndytQtFCpv+pBxt9P522SpSQRxXJ9eY7jkFh4Fl
UChI8pFctYlk3nB8SXTvtgRI7N/f28VwblBcc5YMZcP08TtfRMIF7WsM2HIop0LU
SVtmuPGM/alYnwAdBSZA
=My/O
-----END PGP SIGNATURE-----

Just to chime in, I've talked about it with @rnicoll too and we came to the same conclusion as you @JeremyRand. Also given our chainId is 0x62 we'd have an even harder time hitting the above conditions than Namecoin has if I understand the issue correctly with their chainId being 0x1.

@ummjackson : same state as is documented here in the task progress.
@langerhans : did you guys already walk through the validation steps? I'd have to look into if we do things like (version & 0x62) == true or (version & 0x62) == 0x62 as that kind of matters towards whether it's harder or easier to hit the scenario. If you didn't then I'll do an analysis this week.

@patricklodder I've not built a test case yes, which yes ideally we should.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
If I understand correctly (and I might not, this is something I was
told in IRC long ago), BIP9-compliant nVersion fields always set the
highest bit to 1.  So since the highest bit of 0x0062 isn't 1 (nor is
the highest bit of 0x0001, which is Namecoin's chain ID), I don't
think the failure mode of Litecoin nVersion appearing to have the
Dogecoin chain ID is possible.  (The AuxPoW bit being used by Litecoin
nVersion is a possible failure mode still.)
(Please verify this by checking the BIP9 spec or something, don't take
my word for it.)
-----BEGIN PGP SIGNATURE-----
iQIcBAEBCgAGBQJZEQaeAAoJELPy0WV4bWVwgYwP/2lewysw1zDYGK9MimqAePuC
HL7no5CNxCSAFMVMXaAxkMfYcU7St86dUXYSTlwMfd/JGvDdu7RAD0HEMEzaBL1X
0ZOBNMpQs657TkYM1o1wjNES7msK5nNuqpNXvcforOTFdJGEsCercYNDZG0JLvD1
Rq9TfL1PXd4BK5YCEnbGbo1jajGnihaKIvjaEzUIm0nzy4IxDR5NsmDyU/JiLPPo
G0LjJfAB2fbgEj5MdnkVw8gKsU5K0RWGWqI74sxLaxQjcU15rDMpO3HtWTl6LfAB
o/b8JslPUxQjJoYogVkHK8xvA9Uqy4JNwp15t0a6un5nNqF9MXSqQGRJ0yx/4iCD
XSQECBKM8GH/g6T0g6zG/J4ZnOfCfQvLWxCZWwOgLGInCYotmFPCeY6AJgVE+Phn
7hfnWyB6fD8BW4qdNfy4eLWuY+RkPK+1J6FzR+edAnxyLd6U6qNQBm8H+niuWaib
L6IiQvNTzoS6BiO5NITSDjdzxML2U6AXSIwbNN5oOrjTWi5w64q5rGVURhHX9XsZ
KYeAJOmlS/GLGhlNwYvVAWWEa87I4r5fy/MmYG8ixO8jgQY3A4OzWmmyy540gl2S
19GKDfA74acEL0ppbhChvZBmQGQ48C9y+Mjvfz6lfEfEn5nVavqe1w+0vbljlg1k
OVJD3UDv3aYh+Ek1LYHm
=XMWQ
-----END PGP SIGNATURE-----

Considering if we can simplifying a bit:

Dogecoin Core 1.18 would introduce a new block version (v5), which is always-AuxPoW, sets the chain ID as before (so it looks like a softfork), enables SegWit on supermajority.
Dogecoin Core 1.20/1.21 would then encode SegWit activation height as when the V5 supermajority kicked in, at which point from our perspective it's not an ongoing maintenance pain.
BIP9 version bit for SegWit is never used on Dogecoin
If we want BIP9 later, it's a new (V6) block, which makes the v5 fork a hard fork. The hope is this is far enough in the future that the few people left behind are a minor subset.

Considering if we can simplifying a bit:

Dogecoin Core 1.18 would introduce a new block version (v5), which is always-AuxPoW, sets the chain ID as before (so it looks like a softfork), enables SegWit on supermajority.
Dogecoin Core 1.20/1.21 would then encode SegWit activation height as when the V5 supermajority kicked in, at which point from our perspective it's not an ongoing maintenance pain.
BIP9 version bit for SegWit is never used on Dogecoin
If we want BIP9 later, it's a new (V6) block, which makes the v5 fork a hard fork. The hope is this is far enough in the future that the few people left behind are a minor subset.

Agreed. Parking this is for now the best option we have.

Agreed. Parking this is for now the best option we have.


onSuccess typo fix

Noticed this typo as I was working with the repo, wanted to share a quick fix

thanks


sdist too large

When maturin builds a source distribution, it includes the venv directory, which means the .tar.gz includes a bunch of junk it doesn't need. Maybe we put the venv a level above, or in a temp directory so it's not dragged in by maturin.

ping


Introduce <stampboard />

@seveibar @imrishabh18 I want to give this issue a shot but I can't figure out what symbols it should have and what props. Do you have any idea?


Add Keepers examples

Add new Keepers example
Change "Utility Contracts" to "Example Contracts"

Rebased to main


Docker leaks container netns netlink sockets to forked docker-proxy processes, preventing netns cleanup after container is stopped

I have been debugging a networking issue when using Weave networking, where Weave overlay networking addresses associated with Docker containers continue to respond to pings even after the Docker container has been destroyed. This causes issues when the Weave overlay networking address is re-allocated for use by a different container, as both the legit container and the undead zombie container continue to respond got ARP queries for the IP address. Clients are randomly unable to connect to services when their traffic ends up at the zombie container: https://github.com/weaveworks/weave/issues/2842 https://github.com/weaveworks/weave/issues/2433#issuecomment-265993860
This is fundamentally caused by leaking references to the container's netns. When a Docker container stops, Docker will explicitly delete its own eth0 veth interface pair before unmounting the /run/docker/netns/*. For the Weave ethwe veth pair, we rely on the interfaces being destroyed by the kernel when the last reference to the container's network namespace goes away. Unfortunately, there are multiple cases where these network namespace references can leak, meaning that the container's network namespace does not get destroyed by the kernel after Docker considers the container to be destroyed. With normal Docker networking, these empty network namespaces are harmless, but when using Weave networking, the containers turn into ghosts that continue to haunt the network :ghost:
So far, I have found two cases of this happening:

https://github.com/kontena/kontena/issues/2004 Running cadvisor in a Docker container with the default rprivate mode for the -v /:/rootfs bind-mount will capture any /run/docker/netns/* mounts that exist when the cadvisor container is started, and these may ever not go away when Docker later unlinks the /run/docker/netns/* mountpoint, depending on the kernel version
This issue, where dockerd launching a new docker-proxy process captures references to any running Docker container network namspaces in the form of netlink sockets inherited from the forking parent

Please refer to my earlier issue comments for further background on this issue:

https://github.com/weaveworks/weave/issues/2433#issuecomment-265993860
https://github.com/kontena/kontena/issues/2004
https://gist.github.com/SpComb/9cc2a7ed46ff708547d09854b78c197f#weave-zombie-huntersh

And the debugging for this specific issue:

https://github.com/weaveworks/weave/issues/2842#issuecomment-288054662 onwards
https://gist.github.com/SpComb/f83c53b05aad79c6213185a3da7a7902
https://gist.github.com/SpComb/197cf7c4191dcca261fdfeade0be3c54

Description
It seems that the dockerd process holds open a netlink socket for each running Docker container, associated with the container's network namespace. It also seems that when Docker forks a new docker-proxy process, these netlink socket FDs are inherited by the docker-proxy process: https://github.com/weaveworks/weave/issues/2842#issuecomment-289022778
After Docker stops a container and closes its own netlink socket, that container's network namespace will not be cleaned up by the kernel until the docker-proxy processes for some unrelated container exit, and these leaked netlink sockets are closed by the kernel: https://github.com/weaveworks/weave/issues/2842#issuecomment-288791826
Steps to reproduce the issue
See the gist: https://gist.github.com/SpComb/c8604792fc9d3ba0518d889ff8f89ccb

git clone https://gist.github.com/SpComb/c8604792fc9d3ba0518d889ff8f89ccb docker-netns-leak && cd docker-netns-leak
sudo ./test.sh

Run a victim container, and attach an extra veth pair connected to a br-test bridge, configured with a <IP_ADDRESS> address.
Run a second bystander container, using -p 6379:6379 to publish a port. A new docker-proxy process is forked, which inherits the netlink socket from the victim network namespace.
The victim container is stopped, and the extra veth pair does not get destroyed, and the <IP_ADDRESS> address inside the stopped container continues to respond to pings.
This does not happen unless the docker-proxy process is started while the victim container is running, and the extra veth pair from the victim container goes away once the docker-proxy process is stopped.
Describe the results you received
Stopping the victim container only destroys the Docker veth pair:
80: veth102a2ef@veth84ba9ce: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default
    link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
81: veth84ba9ce@NONE: <BROADCAST,MULTICAST> mtu 1500 qdisc noqueue master docker0 state DOWN group default
    link/ether 6e:25:9f:c2:3c:9e brd ff:ff:ff:ff:ff:ff
Deleted 80: veth102a2ef@NONE: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default
    link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
Deleted 81: veth84ba9ce@NONE: <BROADCAST,MULTICAST> mtu 1500 master docker0 state DOWN
    link/ether 6e:25:9f:c2:3c:9e

The extra veth pair attached to the stopped victim container's network namespace does not get destroyed, while the bystander container is still running with its docker-proxy process:
83: veth0@if82: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-test state UP mode DEFAULT group default qlen 1000
    link/ether b2:3c:93:87:53:20 brd ff:ff:ff:ff:ff:ff
85: veth8897a0a@if84: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP mode DEFAULT group default
    link/ether c6:f9:27:97:fb:b3 brd ff:ff:ff:ff:ff:ff

It also continues to responds to pings:
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from <IP_ADDRESS>: icmp_seq=1 ttl=64 time=0.118 ms
64 bytes from <IP_ADDRESS>: icmp_seq=2 ttl=64 time=0.148 ms

Stopping the bystander container will then stop the docker-proxy process, and the victim container's extra veth pair gets destroyed, as well as the bystander container's Docker veth pair:
Deleted 83: veth0@NONE: <BROADCAST,MULTICAST> mtu 1500 master br-test state DOWN
    link/ether b2:3c:93:87:53:20

84: vethbf7273c@veth8897a0a: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default
    link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff
Deleted 84: vethbf7273c@NONE: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default
    link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff
Deleted 85: veth8897a0a@NONE: <BROADCAST,MULTICAST> mtu 1500 master docker0 state DOWN
    link/ether c6:f9:27:97:fb:b3

Describe the results you expected
If the bystander container with its associated docker-proxy is not running, then stopping the victim container will correctly destroy the Docker veths, release the network namespace and thus also cause the extra veths to be destroyed immediately:
76: veth91821c3@veth0b65d5c: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default
    link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
Deleted 76: veth91821c3@NONE: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default
    link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
Deleted 77: veth0b65d5c@NONE: <BROADCAST,MULTICAST> mtu 1500 master docker0 state DOWN
    link/ether 4e:c3:f5:87:c8:dd

Deleted 79: veth0@NONE: <BROADCAST,MULTICAST> mtu 1500 master br-test state DOWN
    link/ether 8e:44:24:a5:c3:67

Output of docker version:
Client:
 Version:      1.12.6
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   d5236f0
 Built:        Tue Mar 14 21:10:49 2017
 OS/Arch:      linux/amd64

Server:
 Version:      1.12.6
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   d5236f0
 Built:        Tue Mar 14 21:10:49 2017
 OS/Arch:      linux/amd64

Output of docker info:
Containers: 2
 Running: 0
 Paused: 0
 Stopped: 2
Images: 1
Server Version: 1.12.6
Storage Driver: overlay
 Backing Filesystem: extfs
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge null host overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Security Options: seccomp selinux
Kernel Version: 4.9.9-coreos-r1
Operating System: Container Linux by CoreOS 1298.6.0 (Ladybug)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 996.9 MiB
Name: coreos-1gb-ams2-01
ID: HLW2:MFQE:MQHF:UWLC:R6VH:E2HW:7GG2:WEMD:DZSI:GSGS:A5HA:HK5E
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Insecure Registries:
 <IP_ADDRESS>/8

Additional environment details
CoreOS stable 1298.6.0 on DigitalOcean.

Wow, thanks for the detailed analysis!
Ping @docker/core-libnetwork-maintainers

It seems that the dockerd process holds open a netlink socket for each running Docker container, associated with the container's network namespace. It also seems that when Docker forks a new docker-proxy process, these netlink socket FDs are inherited by the docker-proxy process: weaveworks/weave#2842 (comment)

I think your guess is right.The node ids are the same.
They are 16185 and 16186.

[root@localhost ~]# lsof -p 18680 |grep netlink
docker-pr 18680 root    9u  netlink             0t0      16185 ROUTE
docker-pr 18680 root   10u  netlink             0t0      16186 XFRM
[root@localhost ~]# lsof -p 710 |grep netlink
dockerd 710 root    9u  netlink                         0t0      16185 ROUTE
dockerd 710 root   10u  netlink                         0t0      16186 XFRM

Originally was thinking this may be due to https://github.com/vishvananda/netns/blob/master/netns_linux.go#L71 not using O_CLOEXEC, however I still see docker-proxy getting leaked sockets even with setting it.
You can see this with:
# docker run -d --name test` -p 80 busybox top
# docker run -d --name test2 -p 80 busybox top

The docker-proxy for the process for the test1 container will have exactly 3 socket fd's open,  for test2 there will be 4 socket fd's, if you do another 5, so on...
If you do lsof | grep sock, the first docker-proxy will have  entries, 2nd docker-proxy will have a handle to 1, if you do a 3rd it will have 2 handles, etc.
Checking with /proc/net/netlink the 2nd docker-proxy definitely has the netlink handle, and each new docker-proxy inherits all existing netlink handles.

@SpComb Thanks for the detailed report.
@aboch ^^

@aboch The patch works.
No more netlink sockets for the docker-proxy.

[root@localhost docker]# lsof -p 15485
COMMAND     PID USER   FD      TYPE DEVICE SIZE/OFF       NODE NAME
docker-pr 15485 root  cwd       DIR  253,0     4096      15752 /go/src/github.com/docker/docker
docker-pr 15485 root  rtd       DIR  0,103      230        256 /
docker-pr 15485 root  txt       REG  0,103  2530685      83319 /usr/local/bin/docker-proxy
docker-pr 15485 root  mem       REG   0,35               83319 /usr/local/bin/docker-proxy (stat: No such file or directory)
docker-pr 15485 root    0r      CHR    1,3      0t0     122397 /dev/null
docker-pr 15485 root    1w      CHR    1,3      0t0     122397 /dev/null
docker-pr 15485 root    2w      CHR    1,3      0t0     122397 /dev/null
docker-pr 15485 root    4u     sock    0,7      0t0     130509 protocol: TCPv6
docker-pr 15485 root    5u  a_inode    0,9        0       5832 [eventpoll]
docker-pr 15485 root   10r      REG  0,107        0<PHONE_NUMBER> net

[root@localhost docker]# lsof -p 15560
COMMAND     PID USER   FD      TYPE DEVICE SIZE/OFF       NODE NAME
docker-pr 15560 root  cwd       DIR  253,0     4096      15752 /go/src/github.com/docker/docker
docker-pr 15560 root  rtd       DIR  0,103      230        256 /
docker-pr 15560 root  txt       REG  0,103  2530685      83319 /usr/local/bin/docker-proxy
docker-pr 15560 root  mem       REG   0,35               83319 /usr/local/bin/docker-proxy (stat: No such file or directory)
docker-pr 15560 root    0r      CHR    1,3      0t0     122397 /dev/null
docker-pr 15560 root    1w      CHR    1,3      0t0     122397 /dev/null
docker-pr 15560 root    2w      CHR    1,3      0t0     122397 /dev/null
docker-pr 15560 root    4u     sock    0,7      0t0     128226 protocol: TCPv6
docker-pr 15560 root    5u  a_inode    0,9        0       5832 [eventpoll]
docker-pr 15560 root   10r      REG  0,107        0<PHONE_NUMBER> net

Built from the 1.12.x branch, and confirmed the test.sh repro case.
Patched in https://github.com/vishvananda/netlink/pull/209 and confirmed that this fixes the repro case:
+ docker stop victim
victim
+ echo > The victim has been stopped, and the veth should be gone...
> The victim has been stopped, and the veth should be gone...
+ docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                              PORTS                    NAMES
60feaf059e8a        redis               "docker-entrypoint.sh"   4 seconds ago       Up 3 seconds                        <IP_ADDRESS>:6379->6379/tcp   bystander
c17089236328        redis               "docker-entrypoint.sh"   7 seconds ago       Exited (0) Less than a second ago                            victim
+ ip link show veth0
Device "veth0" does not exist.
+ ping -c 2 <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>): 56 data bytes
92 bytes from <IP_ADDRESS>: Destination Host Unreachable
92 bytes from <IP_ADDRESS>: Destination Host Unreachable
--- <IP_ADDRESS> ping statistics ---
2 packets transmitted, 0 packets received, 100% packet loss
+ grep NETLINK
+ pidof docker-proxy
+ lsof -p 12791

strace of dockerd
Confirmed to be using SOCK_CLOEXEC:
[pid 12251] socket(PF_NETLINK, SOCK_RAW|SOCK_CLOEXEC, NETLINK_ROUTE) = 23

Also tested as fixed in docker-ce=17.05.0~ce-0~ubuntu-xenial


Re-land fix for SerializingCommandQueue and enable command queue tests

This commit re-lands #2431 by reverting #2465 and rolling in fixes.

Unfortunately, the test is still timing out using timeline semaphore emulation. I sent https://github.com/google/iree/pull/2912 to disable on Vulkan again.


Samba version

Note that all references on the README to docker run commands are not valid yet as the image is not pushed, so you have to build them locally in order to test it.
Solves #41

Tried this branch last weekend, works great. The only issue is one missing part in the documentation. If you dont use timemachine as the share name you need to update the avahi services config.
Thanks for this :)

I downloaded the .zip and trying to compile the image and run the container for RPI but always get:
docker: invalid reference format.

I downloaded the .zip and trying to compile the image and run the container for RPI but always get:
docker: invalid reference format.

I have to rectify, now everything works but:
My Mac sees the drive mounted (through finder) at the correct smb://Time Capsule of mine/TimeDrive
Time machine app settings displays the hostname address like: smb//raspberrypi.local/TimeDrive
Is this normal?
Anyway, when I add it through time machine settings, and then mount it by finder as a drive on desktop, even in time machine app it Is being loaded the custom HDD icon drive I chose, so this is sign the drive is seen as unique, despite of different smb addresses.
The only thing I noticed, is that accessing the drive through finder, I can see both the smb mounted folder "TimeDrive" and a folder named as the user I created, that is not accessible as it can't find the original position.

Okay, one update regarding the home folder showing along the drive, in the avahi config one line is required to force the shares enumeration by the NetShareEnumAll IOCTL :
_adisk._tcp
  <txt-record>sys=waMa=0,adVF=0x100</txt-record> dk0=adVN=TimeMachine,adVF=0x82


[BUG] Host alias not persistent after reboot / cluster stop & start

What did you do

How was the cluster created?

k3d cluster create k3d --host-alias <localip>:host.docker.internal

What did you do afterwards?

k3d cluster stop k3d
k3d cluster start k3d

What did you expect to happen
Host alias to be persistent in /etc/hosts file (was there before stop & start)
Screenshots or terminal output
root@k3d-k3d-agent-0:/# cd /etc
root@k3d-k3d-agent-0:/etc# more hosts
::1 ip6-localhost ip6-loopback localhost
<IP_ADDRESS> localhost
<IP_ADDRESS> k3d-k3d-server-0
<IP_ADDRESS> host.k3d.internal
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Which OS & Architecture
Windows 10 64bit
Which version of k3d
k3d version v5.3.0
k3s version v1.22.6-k3s1 (default)
Which version of docker
Client:
 Cloud integration: v1.0.22
 Version:           20.10.12
 API version:       1.41
 Go version:        go1.16.12
 Git commit:        e91ed57
 Built:             Mon Dec 13 11:44:07 2021
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.12
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.12
  Git commit:       459d0df
  Built:            Mon Dec 13 11:43:56 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.12
  GitCommit:        7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc:
  Version:          1.0.2
  GitCommit:        v1.0.2-0-g52b36a2
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

  Client:
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc., v0.7.1)
  compose: Docker Compose (Docker Inc., v2.2.3)
  scan: Docker Scan (Docker Inc., v0.16.0)

Server:
 Containers: 4
  Running: 4
  Paused: 0
  Stopped: 0
 Images: 4
 Server Version: 20.10.12
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc version: v1.0.2-0-g52b36a2
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
 Kernel Version: <IP_ADDRESS>-microsoft-standard-WSL2
 Operating System: Docker Desktop
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 3.326GiB
 Name: docker-desktop
 ID: APSX:6YMA:MCDV:EOQG:QT2H:CKS4:FEBE:KFBH:CUUA:BXIT:TIZ6:MKZO
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  <IP_ADDRESS>/8
 Live Restore Enabled: false

WARNING: No blkio throttle.read_bps_device support
WARNING: No blkio throttle.write_bps_device support
WARNING: No blkio throttle.read_iops_device support
WARNING: No blkio throttle.write_iops_device support

Hi @jarihaikonen , thanks for opening this issue!
Just confirming that this is a bug that will be fixed in the next minor release.

Hi @jarihaikonen , as of v5.4.0, k3d will ensure that the hostAliases are present when running k3d cluster start (on clusters created with that version of k3d only).
However, we currently cannot account for host/docker restarts, as k3d doesn't have any daemon or similar running.
Though something like that is planned for the next major release.

Hey @iwilltry42 ,
Docker itself also has the --add-host yourdomain.com:<IP_ADDRESS> flag.
Can't you use this flag when starting the k3d nodes?
This flag is persistent on host/docker restarts so that would fix the problem I assume?

Side note: This only works on Mac, if you shutdown the k3d cluster properly. If you stop Docker Desktop on Mac which also stops the k3d cluster you will again lose the host entries the next time Docker Desktop starts. A more resilient solution would be welcome if possible.


New command - Import-DbaCertificate

Changes proposed in this pull request:

Add cmdlet for Import-DbaCertificate
Can pipe into this from Export-DbaCertificate ($path)

How to test this code:

[ ] Import-DbaCertificate -SqlServer Server1 -Path \Server1\Certificates
Prompts for password and then creates all the certificates in the specified path.

[ ] Import-DbaCertificate -SqlServer Server1 -Path \Server1\Certificates -password (ConvertTo-SecureString -force -AsPlainText GoodPass1234!!)
Passes in password and creates all the certificates in the specified path.

[ ] Import-DbaCertificate -SqlServer Server1 -Path \Server1\Certificates -Certificates "CertTDE"
Creates certificate named 'CertTDE'

[ ] Export-DbaCertificate -SqlServer Server1 -Path \Server1\Certificates -Password $password | Import-DbaCertificate -SqlServer Server2 -Password $password
Exports all certificates from server1 to location both Server1 and Server2 instance accounts have rights to, then creates the certificates on Server2

Has been tested on minimum requirements:

[ ]  Powershell 3
[ ]  Windows 7
[ ]  SQL Server 2000

Has been tested on maximum requirements:

[ ]  SQL Server vNext
[X]  Windows 10
[ ]  Azure Database

Tests for tester:

[ ] Working/useful help content, including link to command on dbatools web site
[ ] All examples work as advertised
[ ] Does not contain template content
[ ] Does not contain excessive/unnecessary amounts of comments
[ ] Works remotely
[ ] Works locally
[ ] Works on lower versions or throws error specifying version not supported
[ ] Works with named instances
[ ] Works with clustered instances
[ ] Handles offline/read only databases
[ ] Supports multiple servers (at the command line or piped from Get-SqlRegisteredServerName)
[ ] No un-handled errors which stop the command working with multiple servers

So awesomeeeee! Thank you! I've been wanting both of these for a while now.


Refactor Layout to Xilems/Flutters BoxConstraints

I did some exploration and came back to the conclusion to use BoxConstraints for a base layouting protocol, used in Flutter and Jetpack Compose. (After trying the SwiftUI layout protocol which, it seems is not as powerful as BoxConstraints, SwiftUI seems to do internal layout magic, that isn't really documented).
BoxConstraints seem to work well in Flutter and Jetpack Compose and are simple to understand.
This cop... ehhm adapts the layouting system to BoxConstraints as used in Xilem. (I think it is time to attribute where most of the code comes from (Adding license and mentions etc.)) This shifts a little bit towards being the xilem TUI implementation (e.g. use kurbo etc. basically the same base as Xilem). But it remains to be seen whether it diverges in the future (e.g. styling or layouting etc.).
It changes the layouting behavior currently (by "hugging"). I expect to add more layout modifiers soon to control the layout behavior.
The WrappedText widget doesn't work anymore, this needs some bigger refactor and rethinking for styling text in general (it was never meant to be more than just a quick'n dirty experiment anyway).

I like the direction🚀. I just started looking into taffy, but it seemed to make things more complicated than necessary. I actually was stuck debugging behavior I didn't understand.
I wondered about the exact purpose of WrappedText but haven't looked into it yet.
If it's about single-line and multiline, I'd combine it with Text and use styling/config to decide what it should do with too long text

just cut it off
cut it off one character short and add ellipsis to indicate it was cut off
wrap the line, ...

When do you plan to merge?

It was just an experiment/hack for softwrapping text not much more (exploring taffy a little bit).
I'm going to merge now, as I think it's better to iterate on top.


fix following 49463

Please provide a description of this PR:
This is accidently introduced in #49463
We always use ServiceEntry for ConfigUpdate, and never use kind.Service.
We may introduce assert  to protect it

We donot have a constructor for ConfigKey

I've thought of assert  that in ConfigUpdate()


Update Timeout to int64 to avoid 'cannot unmarshal number' error

Resolves foogod/go-powerwall#6
Duplicate of foogod/go-powerwall#7

[x] Update Timeout to int64 to avoid 'cannot unmarshal number<PHONE_NUMBER>0' error

@andig Would it be useful to set your default branch of this repo to master seeing that's the branch you're maintaining? Or will that confuse GitHub?

Or will that confuse GitHub?

Not sure- let's try, done.


Claims configured to be "Supported by Default" not show at myaccount

Describe the issue:
Claims configured to be "Supported by Default" at my account profile, not showing when in SCIM extension schema urn:ietf:params:scim:schemas:extension:enterprise:2.0:User
This image show the SCIM schema request responded with department, organization and cpf (a custom claim), but not showing at the page/form

How to reproduce:
Configure any claim that are in SCIM schema urn:ietf:params:scim:schemas:extension:enterprise:2.0:User to be "Supported by Default" at wso2 local claims and go to Profile
Expected behavior:
Show the "Supported by Default" claims that are in SCIM schema urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, like Organization, Department.
Environment information (Please complete the following information; remove  any unnecessary fields) :

Product Version: [e.g., IS 5.11.0-alpha3]
OS: Windows (using Docker)
Database: H2
Userstore: Active Directory (Primary only)

Optional Fields
Related issues:
https://github.com/wso2/identity-apps/issues/261
Suggested labels:
SCIM MyAccount

Related https://github.com/wso2/product-is/issues/8681


Support stream m3u8 playlists

Would it be possible to use IPTV with .m3u8 streams and not .ts?
Then it would be possible to use IPTV of free channels, like the german public law channels providing there livestreams.
for example:

https://www.kodinerds.net/index.php/Thread/56713-Kodinerds-IPTV-Fertige-Liste-mit-freien-IPTV-Kanälen/

https://raw.githubusercontent.com/jnk22/kodinerds-iptv/master/iptv/clean/clean_tv_main.m3u

format of IPTV inside list, e.g.:
<EMAIL_ADDRESS>Would be cool to get that working
Kind regards

Plex has either stopped supporting m3u8 or it is a bug in a recent version of plex.

As @EnorMOZ said, Plex (from what I can see here) is no longer supporting .m3u8 files.
Working on a solution involving ffmpeg/transcoding to .ts so Plex will stream it.

#115


Is recordcount and operationcount always 1000?

Hi,
I'm trying to play with the YCSB benchmark by modifying recordcount and operationcount i.e.
/ycsb/bin/ycsb load cassandra-10 -P /ycsb/workloads/workloada -p hosts=<IP_ADDRESS> -p operationcount=1000000 -p recordcount=1000000
The output I get is the folowing:
...
[INSERT], 991, 0
[INSERT], 992, 0
[INSERT], 993, 0
[INSERT], 994, 0
[INSERT], 995, 0
[INSERT], 996, 0
[INSERT], 997, 0
[INSERT], 998, 0
[INSERT], 999, 0
[INSERT], >1000, 0
I suppose that internally it is really inserting 1.000.000 of records, but I don't understand why I get this output. Is this correct?

@raimonbosch - what version of YCSB are you using? Can you point me towards any guide you are following to do your benchmark?
That output is not the default anymore, I would suggest updating your YCSB version: https://github.com/brianfrankcooper/YCSB/releases, the new default is more readable.
That is the histogram output style. In a nutshell all of the operation times are put into a histogram and output at the end of the workload. So, what you can see from what yo posted is that there were 0 operations that took 991, 992,..., 1000 milliseconds. If you were to look at the beginning of the histogram you would see a lot of counts on the smaller numbers of the histogram.
What version of Cassandra are you working with? The cassandra-10 binding is for older versions of Cassandra, so just want to make sure you are using the correct binding.
Can you send me a link to the guide or tutorial that you are using to do your YCSB benchmark? Thanks a lot.

I see. I didn't understood that this was an histogram. Then it makes sense. Here is the benchmark if you want to check: http://cloudsuite.ch/dataserving/
(haven't found a --version option to check YCSB version)

I don't think there is a version flag, sounds like a good feature request!
I checked out cloudsuite, thanks for the link. I couldn't find any documentation or listing on versions that they are using for Cassandra or YCSB.
Both of them are old versions, that's not necessarily an issue if they work together, just something to be aware of.

we currently print an incorrect version string on every launch, see #320

@raimonbosch The versions aren't listed but the link you provided shows running YCSB from the Docker image cloudsuite/data-serving:client. I can't find the Dockerfile that generated that and the link to their Github account is dead (https://github.com/CloudSuite-EPFL/DataServing/tree/master). If you want to update to the latest release version of YCSB 0.7.0 or Cassandra) then you need to build new Docker images.
For reference it looks like that image is running YCSB 0.3.0:
docker run --rm -it cloudsuite/data-serving:client bash -c 'ls -l /ycsb/lib/core-*.jar'
-rw-r--r-- 1 1000 users 1184196 Aug  8  2015 /ycsb/lib/core-0.3.0.jar

Seems that it is using 0.3.0. Here is the updated Dockerfile: https://github.com/ParsaLab/cloudsuite/blob/master/benchmarks/data-serving/client/Dockerfile

@raimonbosch - The original question about the output always being 1000 was answered by @kruthar here https://github.com/brianfrankcooper/YCSB/issues/638#issuecomment-191014575. Did that help?

Yes, of course. I guess you can close the issue. Thanks!

@raimonbosch great. Feel free to open a new issue if you have more questions.

Furthermore, I was missing information provided by "-s" option. Which gives you information about avg operations/sec during execution.


database disk image is malformed (code: 11)

Hi,
My app has crashes in Crashlytics:
Fatal error: 'try!' expression unexpectedly raised an error: database disk image is malformed (code: 11): file /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang_Fall2018/swiftlang_Fall2018-1000.11.42/src/swift/stdlib/public/core/ErrorType.swift, line 184
Crashed: com.xx.some-queue
0  libswiftCore.dylib             0x56c6594 $Ss15EmptyCollectionVyxGSTsWa + 2101
1  libswiftCore.dylib             0x56fc4a1 swift_unexpectedError + 278
2  (Missing)                      0x6f52646c (Missing)
Build Information

SQLite.swift version: 0.11.4
Mention Xcode:Version 10.1 (10B61)
How do you integrate SQLite.swift in your project?

CocoaPods

iOS: 10.3.3 (14G60)

General guidelines
I cannot reproduce it.
Is there a way somehow to handle the database disk image malformed error?

Hey... did you ever figure out the reason for your diskimage to be malformed? I see the same problem in my logs, but can't reproduce it either... :(

Sorry to ping you again @chichaykin . Can you tell me if you figured out the root cause of the problem? And how did you fix it?
Also... any idea how our database disk image turned malformed? I can also not reproduce it :(

Hey,
Any update on the issue.
This issue has increased for us on latest silicon mac.

For me the issue was that I did replace the database but only the .db file but did not remove the -shm and -wal files...
Maybe that help for you?

Please ask on StackOverflow for this kind of questions (we are tracking bugs on GitHub)


Enable "allowBackup" in the AndroidManifest, so android app data gets backed up by default

Godot version:
Godot 3.1 (the AndroidManifest moved meanwhile to java in the master-branch)
OS/device including version:
Android (Backup is available starting from Android 6.0)
Issue description:
For unknown reason autp-backup is disabled in the Android Manifest:
https://github.com/godotengine/godot/blob/master/platform/android/java/AndroidManifest.xml
with the key/value: android:allowBackup = "false"
I see that this is already the case for a longer time:
https://godotengine.org/qa/8503/godot-games-do-not-show-up-on-android-system-backups
I see no reason why the data of godot apps shouldn't be backed up by default. Users normally expect their data to be backed up when they enable a backup and will be very, very dissapointed if the data is lost after a restore (i.e. when moving to another device).
My proposal: simply remove the key "android:allowBackup" from the Manifest or set it to true.
And yes, naturally, you can do your own android build. But I would consider this as expected default behaviour.

with android:allowBackup, the backed up data will be restored even while developing & testing game.
this will cause some problems.
let's say the game data format is changed while developing.
then uninstall and reinstall on android device, old data is restored and game might be crashed.
need to find a way to ignore or remove old data at starting game.

Thank you for telling me the reason! :-)
Ok, if it is a problem while developing & testing the game then it would be probably helpful to disable the backup only in the debug template.
Apart from that (regarding release versions) I'd think that android would check the game version and only restore (which I thought is only done when the user explicitly restores data) when the game version is same or newer.

I couldn't find about the version related. but i think only restore with same version is useless.
it is more like not backing up.

Yes, i just checked and also couldn't find anything about version checking on restore.
Restoring with the same (or newer) version would make sense. This is the case when you migrate to another device or when you uninstall and re-install an app.
My guess is that google at least assumes that the app will be same or newer version when you restore the data because the play store will normally (!) only offer the newest version for install. But this isn't always true. I.e. when you install a version from the beta channel, uninstall that and install the previous release version.
Ok, so enabling the autobackup "allowBackup" maybe isn't foolproof depending on how people implement their save data. Maybe it'll be easier to enable allowBackup with some plugin in the new 3.2 plugin system ("Custom build") if that allows not only adding lines to the manifest but also changing existing manifest content.

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!


Is it expected to modify the js file without changing the css file, but triggering HMR of the css file?

What problem does this feature solve?
Prevent unnecessary loading for unchanged files.

I'm not find related issue at webpack, but the behavior is right, becasue hotCheck will call __webpack_require__.hmrC.css and __webpack_require__.hmrC.jsonp at https://github.com/webpack/webpack/blob/main/lib/hmr/HotModuleReplacement.runtime.js#L279


Negative Video RAM usage in debugger [3.2.4-rc3]

Godot version:

Godot 3.2.4-rc3
OS/device including version:

MacOSX 10.15.7 (19H2)
Issue description:

I use a lot of big atlases in my project. When they was in Lossless mode debugger showed me Video RAM usage about 1GB. Now I changed all atlases to Video RAM compressed mode and Video RAM usage became negative.

On the graphics Video Mem and Texture Mem went to negative area.
Steps to reproduce:
Minimal reproduction project:

Probably some overflow.
Relevant files to debug:
https://github.com/godotengine/godot/blob/f2ad10f957f7765d9733145112f5df6583b53adf/editor/script_editor_debugger.cpp#L715-L739
https://github.com/godotengine/godot/blob/f2ad10f957f7765d9733145112f5df6583b53adf/scene/debugger/script_debugger_remote.cpp#L45-L63
https://github.com/godotengine/godot/blob/f2ad10f957f7765d9733145112f5df6583b53adf/servers/register_server_types.cpp#L69-L88
and further down that rabbit hole until GLES2 and GLES3 renderers:
drivers/gles2/rasterizer_storage_gles2.h
372:    virtual void texture_debug_usage(List<VS::TextureInfo> *r_info);

drivers/gles3/rasterizer_storage_gles3.h
381:    virtual void texture_debug_usage(List<VS::TextureInfo> *r_info);

But might be good to check first if the issue can be reproduced on master.


bug: Search Results Container Overflow Issue

Describe the bug
When searching returns multiple results, the results list overflows outside its parent container instead of being contained within it.
To Reproduce
Steps to reproduce the behavior:

Navigate to the search bar after login to the https://app.100xdevs.com/ site
Enter a search term that will return many results (e.g., "mono")
Observe how results extend beyond the container boundaries

Expected behavior

Search results should be contained within the container
A vertical scrollbar should appear when results exceed container height
All results should be accessible by scrolling within the container

Suggested Fix

In the src/components/search/SearchResults.tsx
Add an overflow:auto to the div which is having max-h-[40vh]

Screenshots or GIFs

ser-attachments/assets/5372797b-29ca-48a6-bb3f-6663028ad087)

Info (please complete the following information):

Browser :- Chrome
Version 131.0.6778.86

Additional context
Add any other context about the problem here.

if the bug is fixed why the fix is not showing on the website the pr is not merged or what? and if yes please merge it and close the issue

Didn't raise a PR because as per the contributing guidelines "Don't make any pull request for issues you are not assigned to. It will be closed without merging".
https://github.com/code100x/cms/blob/main/CONTRIBUTING.md#dont-while-contributing

is this issue assigned to someone?

The maintainer or moderator can assign the issue accordingly.

okay got it

Didn't raise a PR because as per the contributing guidelines "Don't make any pull request for issues you are not assigned to. It will be closed without merging". https://github.com/code100x/cms/blob/main/CONTRIBUTING.md#dont-while-contributing

Thank you @designed2code for informing. Sorry that I didn't followed the guidelines.
What should I do now, should I close the PR or wait for assign or something else.

i guess don't close the pr rather ask moderators to assign this task to you or close the pr as soon as the task gets assigned to you then again raise a pr

Feel free to take on the issues you find guys. The best written one will be picked and the issue owner will be given the priority


error running Sia-UI-v1.3.1-win32-x64

BUG REPORT
Siad unexpectedly exited. Error log: Sia Daemon v1.3.1
storage folder extension provided for storage folder that does not exist
Stack Trace or error message
Expected Behavior
How to reproduce it (as minimally and precisely as possible)
Environment

Sia version:Sia-UI-v1.3.1-win32-x64
OS:

Duplicate of your previous issue #2698 Please do not open multiple issues with the same error.


stolostron patches

Add OWNERS file
Enable CGO explicitly
Set TLS minimum version to 1.2
Bump to Go 1.21
Update to multi-arch Dockerfile
Workflow to build/push to quay.io
Workflow for Sonarcloud scanning
Address vulnerability scans

(I'm not actually sure the TLS version is required any more, so we might need to remove that.)

/hold to confirm TLS version changes


Check project security

Related issue #23

Thanks for your PR @heggern! I'll review this later in the week 😄

Thanks @heggern but this solved by #31.
The main reason I chose to merge that PR because it was submitted before this PR. It's nothing against your contribution and I hope to see more in the future 😄
That being said, your readme update is 🔑. I would accept a PR with just those changes if you're interested (and you would get closer to a Hacktoberfest shirt if that's something you're interested in).

Thanks @marcusmoore! Totally understand. I'll submit the Readme update in a new PR. Cheers


how can I evaluate on a my own jpg image

hi, I sincerely congratulate you for publishing such an excellent article.
i just wonder can i use my own jpg image to evaluate on pretrained model？

Duplicate of #2


update email regex to meet RFC 5322 requirements

regex borrowed from http://www.regular-expressions.info/email.html, previous regex wouldn't allow valid (and somewhat common) emails like<EMAIL_ADDRESS>

:+1:

@rafaelmaza  can you re make the pull request to the file in the src directory ? The build will occur from there

new pull request created: #489


feat: :alien: update for alacritty 0.13

Fix #3

Will commit and merge this, couldn't go through it all.
Thank you so much.


add redo icon

Description
Add new icon
How has this been tested?
Locally, looks as good as "undo"
Documentation changes
[Do the changes include any API documentation changes?]

[x] Yes, this change contains documentation changes.
[ ] No.

Related Links
AWSUI-18718

Review checklist
The following items are to be evaluated by the author(s) and the reviewer(s).
Correctness

[x] Changes are backward-compatible if not indicated, see CONTRIBUTING.md.
[ ] Changes do not include unsupported browser features, see CONTRIBUTING.md.
[ ] _Changes were manually tested for accessibility, see accessibility guidelines.

Security

[ ] _If the code handles URLs: all URLs are validated through the checkSafeUrl function.

Testing

[ ] Changes are covered with new/existing unit tests?
[ ] Changes are covered with new/existing integration tests?

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Codecov Report

Merging #65 (6cafcb4) into main (a488fe1) will increase coverage by 0.02%.
 Consider uploading reports for the commit 37c5a81 to get more accurate results

@@            Coverage Diff             @@
##             main      #65      +/-   ##
==========================================
+ Coverage   92.31%   92.33%   +0.02%
==========================================
  Files         532      533       +1
  Lines       15448    15492      +44
  Branches     4250     4256       +6
==========================================
+ Hits        14261    14305      +44
  Misses       1102     1102
  Partials       85       85

Impacted Files
Coverage Δ

src/app-layout/index.tsx
92.08% <0.00%> (ø)

src/internal/context/app-layout-context.ts
100.00% <0.00%> (ø)

src/internal/context/form-field-context.ts
100.00% <0.00%> (ø)

src/internal/hooks/dom-context/index.tsx
100.00% <0.00%> (ø)

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 a488fe1...37c5a81. Read the comment docs.


VM Service: Context is documented but not used

The Context type and its corresponding @Context and ContextElement are documented, but not used anywhere in the public service protocol. In addition, it's not documented to inherit from Object, making it kind of confusing what the relationship between @Context and Context is.

The closureContext field for Instance had the wrong type.  Also, yes, Context should extend Object.  Fixing.


Not compiling on version 4.21.2

Plugin refuses to compile on Unreal version 4.21.2
[2019.03.07-15.21.34:217][481]CompilerResultsLog: Error: D:/Unreal Projects/Summer_99_ForIgloo/Plugins/OSC/Source/OSC/Private/Common/OscDataElemStruct.h(7)  : Error: struct: 'OscDataElemStruct' conflicts with another type of the same name defined at D:\Unreal Projects\Summer_99_ForIgloo\Plugins\OSC\Source\OSC\Public\Common\OscDataElemStruct.h(6)

For some reason, you have 2 OscDataElemStruct.h files in the plugin sources. Something went wrong went you installed it.
Remove the Plugins\OSC\Source folder content and download the source again.

It was a direct download and install, I did not modify anything and there was no plugin folder before I created it for this.
Fresh basic project too.
Get Outlook for iOShttps://aka.ms/o0ukef

From: Guillaume Buisson<EMAIL_ADDRESS>Sent: Thursday, March 7, 2019 7:35 pm
To: monsieurgustav/UE4-OSC
Cc: Lawrence Selly; Author
Subject: Re: [monsieurgustav/UE4-OSC] Not compiling on version 4.21.2 (#69)
For some reason, you have 2 OscDataElemStruct.h files in the plugin sources. Something went wrong went you installed it.
Remove the Plugins\OSC\Source folder content and download the source again.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/monsieurgustav/UE4-OSC/issues/69#issuecomment-470663790, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AQ5CCREK3wz07_Ag3G8nLwFc8htk_eEIks5vUWoOgaJpZM4bjeXh.

Did you try?

I have the same issues:
Error	struct: 'OscDataElemStruct' conflicts with another type of the same name defined at D:\UE_4.21Pro\MyProject\Plugins\OSC\Source\OSC\Public\Common\OscDataElemStruct.h(6)	MyProject	D:\UE_4.21Pro\MyProject\Plugins\OSC\Source\OSC\Private\Common\OscDataElemStruct.h	7
with regards AlexG

OscDataElemStruct.h only exists in OSC/Source/OSC/Public/Common/.
Previously, it was in OSC/Source/OSC/Private/Common/.
Your error means you copy pasted the plugin source onto an old version of the plugin. Remove the OSC folder completely and start again!

Thank You -it works now
AlexG


Update Lat/Lon input form layout

Ideally the Lat/Lon form in the node UI would be laid out to match QGIS:
image.png

Updated coordinate input form.


Send error details from service to client in LabVIEW

When the business logic of the service has an error (say an instrument error), then this should be propagated to the client. Looks like the service by default has the capability to send status for each call. If the best practice is to use that, then in LabVIEW we need a capability to send the error wire details to the client using status information.
It will be good to handle this in the service/client gRPC API layer like how LabVIEW does normally.
Note:
https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto

@ccifra  I assume you need to handle this in C code?

@ccifra  This is a request where "when a error in logic like instrument input value out of range", these should be passed to client.

I'll add support for this, especially "the service by default has the capability to send [gRPC] status for each call. If the best practice is to use that, then in LabVIEW we need a capability to send the error wire details".
We ran a small test where we specifically took down the server, and the LabVIEW client call times out yet reports no error. The corresponding error we see from gRPC in our cpp endpoint and a 3rd party grpc testing tool is "14 UNAVAILABLE: failed to connect to all addresses". Our expectation is LabVIEW would also report the gRPC error, with a similar, if not exactly the same, message.

Client calls will now correctly return any gRPC status errors that happen.
There is a new Set Call Status VI which the server can use to indicate an error from the diagram.  This will propagate to the client.
There is still more work to do for errors, but I think this is enough to close the issue.


Patch 1

Hi @Artem13327 please do not remove the release directory from the repository, it will be needed for AutoBuild to work properly.

Hi @Artem13327 please do not remove the release directory from the repository, it will be needed for AutoBuild to work properly.


parser: JSXMemberExpression where property contains hyphens

According to JSX spec, this is legal syntax: <Foo.bar-qux> (because bar-qux is a valid JSXIdentifier).
Currently Oxc transforms this to _jsx(Foo.bar-qux, {}):
https://oxc-project.github.io/oxc/playground/?code=3YCAAICRgICAgICAgICekQl4rrIkZg9c51vDD8rqZZS485A%2Ff3EUAIA%3D
We should transform it to _jsx(Foo["bar-qux"], {}) instead.
NB: Babel just errors out on this input, and SWC gets it wrong the same way we do, so this is not a high priority. But it's probably easier to do it now while we're already making loads of changes to how we handle JSX.

TODO: React transform should throw the same babel error.

Babel throws that error in parser. Babel REPL
I don't think Babel's behavior is correct because (as you pointed out yesterday) it's valid JSX. But it's undefined whether it's valid or not as React JSX.
So yes, we could raise an error in React transform, or we could accept it and transform it to _jsx(Foo["bar-qux"], {}).

This is now a syntax error in oxc:
  × Unexpected token
   ╭─[misc/fail/oxc-5355.jsx:1:6]
 1 │ <Foo.bar-baz />
   ·      ───────
   ╰────


fix #2116 by requiring task return values from typed client

fixes #2116
We now throw a useful error if you have a void-returning method in your TypedHubClient proxy.


deps: updates QUICHE from 2c1f10f46 to 9e8759380

https://github.com/google/quiche/compare/2c1f10f46..9e8759380
$ git log 2c1f10f46..9e8759380 --date=short --no-merges --format="%ad %al %s"

2024-02-15 birenroy Fixes handling of DATA frame padding in OgHttp2Session.
2024-02-15 birenroy Adds a test case demonstrating that OgHttp2Adapter does not consider DATA frame padding as "consumed".
2024-02-14 quiche-dev Fix issues when building more Quiche tests for iOS and Windows
2024-02-14 martinduke Fix test flake in MoqtSubscribeWindows.
2024-02-14 martinduke Remove #ifdef MOQT_AUTH_INFO. Also eliminate an old reference to subscribe_request
2024-02-14 martinduke Fix error in MoQT Relative Location encoding.
2024-02-14 quiche-dev Prospectively fix Chromium build
2024-02-13 quiche-dev No public description

Commit Message: deps: updates QUICHE from 2c1f10f46 to 9e8759380
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
Fixes https://github.com/envoyproxy/envoy/issues/32401

Please update the changelog to mention the fixed issue.

Done, thanks.


support node & nodes directives

need feature like this:
entgql.NewExtension(
	...
	entgql.WithRelayDirective("requireAdmin"),
)

generated graphql file:
node(
    id: ID!
  ): Node @requireAdmin

nodes(
    ids: [ID!]!
  ): [Node]! @requireAdmin

thanks!

Hey @haoval 👋
You can implement this today with a simple schema hook. Here's a snippet that adds this directive:
ex, err := entgql.NewExtension(
	// ...
	entgql.WithSchemaHook(func(_ *gen.Graph, s *ast.Schema) error {
		for _, name := range []string{"node", "nodes"} {
			f := s.Types["Query"].Fields.ForName(name)
			if f == nil {
				return fmt.Errorf("missing query field %q", name)
			}
			f.Directives = append(f.Directives, &ast.Directive{Name: "requireAdmin"})
		}
		return nil
	}),
)

Closing, but please feel free to reopen or join our Discord community in case you need more help with this 😎
cc @giautm


[Move] Sui Parsers for Module ID and SuiAddress

Description
Expose parsers for SuiAddress and ModuleId based on the move-command-line-common parser framework, for (later) use in GraphQL.
Test Plan
Added new unit tests for these parsers:
sui-types$ cargo nextest run

Going to start staging the stack to land, in this PR!


logistics: use new pre-cached builder image in Jenkins

Contains
Changes the label for the engine build to a new one, defined presently using https://github.com/Cervator/pre-cached-jenkins-agent (that repo will likely move and might itself get a build in our Jenkins but - one step at a time) - see its repo readme for more technical details.
In short the goal is to use a Docker build of a custom Jenkins agent to pre-cache our main dependencies (at the moment for the TS engine, joml-ext, and modules), as well as pre-download the files needed for each Gradle wrapper version.
This PR also removes the already-default setting for the Gradle Daemon in case any attempts to experiment are desired elsewhere (has no effect normally). Loooong time since that actually mattered, the setting was changed to true by default years ago.
Label reasoning goes with a potential later change to make light/medium/heavy agents (again), easily vary the version of Java (plus make it more explicit/visible), easily vary / diversify agents later for different archetypes (Terasology engine build vs Destination Sol engine build including Android, for instance)
How to test
Logistics change - tested in Jenkins already. No particular way to test this separately, can just look at the job execution on the Nanoware forks
Performance stats are hard to narrow down since builds may differ in duration based on what else is going on in the cluster. I tried to closely watch a few of them to make sure the system was otherwise idle to guesstimate "best case" improvements

Nanoware/Terasology:develop build & Nanoware/Terasology:customAgent build vs Existing MovingBlocks/Terasology:develop build - Build (compile) step is faster, from 1-3 minutes (up to 50%), but analytics still take way longer so overall impact isn't huge.
Nanoware/joml-ext build vs MovingBlocks/joml-ext build - 20s improvement, about 33% faster overall than before
Nanoware/Sample build vs Terasology/Sample build - nearly 66% reduction in average compile time leads to an overall 50% faster build - just from pre-caching dependencies, including the engine jar in this case 🚀

Outstanding before merging

[ ] This PR goes along with one in the module Jenkinsfile repo - https://github.com/MovingBlocks/ModuleJteConfig/pull/8
[ ] Doubt: What happens if a module build starts with a snapshot jar of the engine in its Gradle cache, but a newer snapshot is available in Artifactory? We could skip the optimization for module builds until more experimentation can occur.
[ ] Haven't applied it to joml-ext as that was just a handy test candidate for a tiny lib build. More to come on how to apply this more broadly, but have some more ideas to explore first - could push it over there too tho

Where is the part that points to the pre-cached-jenkins-agent?

Magic is in the Jenkins k8s cloud definition label field for the pod template:

I didn't doc that in the custom agent repo since it is specific to our label setup in Jenkins. I figure I'll put a comment on that in the InfraPlayground repo when overhauling how we define our agents there.

Is this && blah blah \ style the idiomatic way to write Dockerfiles now?

Ayup, maybe? It seemed to be in use in the Googly bits I drew inspiration from.

git clones be shallow
And there's probably a way to make gradle fetch dependencies without actually spending the time to do the compilation

Yep indeed on both 👍 This is the first working version and I'm fishing for improvements, good call on the shallow clone (https://github.com/Cervator/pre-cached-jenkins-agent/commit/b5c4e7693924e058784f5a50941774b3e082a100) and I've got a Gradle snippet that fetches deps - actually in Kotlin even! Which means I'm having trouble getting the engine to accept it 😅

Does an engine jar end up in the docker image's gradle cache

Pretty sure yes, since in the past that's where execution ended up starting for some automated tests written in modules. And the engine is a dependency for modules, so the build has to reference it somewhere


Tooltip color indicator for title/label

This probably not a right place to post question but want to give it a shot.
Question:
Is it possible to add color indicator before the tooltip title/label? I couldn't find anything on the documentation.
Piece of code and want to have the color indicator before %.
options: {
            tooltips: {
                custom: function(tooltip) {
                    tooltip.yPadding = 15,
                    tooltip.caretSize = 10,
                    tooltip.backgroundColor = "#e6e6e6",
                    tooltip.titleFontColor = "#000000",
                    tooltip.titleFontStyle = "bold",
                    tooltip.bodyFontColor = "#808080"
                },
                callbacks: {
                    label: function() {
                        return "";
                    },
                    title: function(tooltipItem, data) {
                    	console.log(data);
                    	if (tooltipItem[0].index === 0) {
                    		return data.datasets[0].data[0] + "% " + data.labels[0];
                    	}
                    	else if (tooltipItem[0].index === 1) {
                    		return data.datasets[0].data[1] + "% " + data.labels[1];
                    	}
                    	else {
                    		return data.datasets[0].data[2] + "% " + data.labels[2];
                    	}
                    },

At the moment, there's no way to do this. What you could do is used the custom tooltip functionality to create an HTML tooltip and then draw a coloured indicator in their.

Thanks @etimberg I am not sure how to do that. Possible show me an example or point me to the right direction?

This is a sample file that uses a custom html tooltip https://github.com/chartjs/Chart.js/blob/master/samples/line-customTooltips.html

Thanks much @etimberg


Question: Subtitles

Hi,
I'm curious if you've given thought into supporting demuxing subtitles (or other non-video/audio streams). My use case is that I want to use web-demuxer to demux video/audio so I can decode/encode with Webcodecs API. However, when it's time to remux the re-encoded streams I'd prefer not to have to spin up another demuxer to grab the subtitles.
I may be missing something completely obvious here though, but appreciate your consideration in advance.
Thanks!
Daniel

reading subtitles isn’t provided as a dedicated method, but you can use readAVPacket(0, 0, AVMediaType.AVMEDIA_TYPE_SUBTITLE) to retrieve subtitle data, as well as data from other streams.

Thanks. I read the "AV" part of that method and assumed it would only work for Audio and Video. Appreciate the response.


Better setup Instructions?

What am I missing here?  I installed the custom repository, clicked install, rebooted, went to the integrations section and cannot locate this project.

same here. integration is not visible.

Same


add dummy-import-rgx option

Summary
check #4250

I have two hesitations here that I'm not certain how to address:

What rules should this affect? Right now, it only affects unused_import. But the setting is highly generic (dummy-import-rgx). In theory, should it also effect all other rules that flag imports? Like the wildcard import rules (from resources import *)? If not, we need a more deliberate name, like side_effect_imports or effectful_modules etc.

Should this be a regex, or should it instead be a list of module paths? dummy-variable-rgx makes sense because it's matching on arbitrary identifiers. But here, we're matching against specific modules, like foo.bar.baz. I would prefer, I think, to require the user to pass in a list of fully-qualified module paths.

Can I share an idea?

What rules should this affect? Right now, it only affects unused_import. But the setting is highly generic (dummy-import-rgx). In theory, should it also effect all other rules that flag imports? Like the wildcard import rules (from resources import *)? If not, we need a more deliberate name, like side_effect_imports or effectful_modules etc.

I think dummy-import-rgx look like dummy-variable-rgx which the simple way to ignored all rules about this import name
ps1: Can we merge this both in one option?
ps2: I think we mustn't delete dummy-variable-rgx for compatible reason, but can use that for ignore import name. What you think?

Should this be a regex, or should it instead be a list of module paths? dummy-variable-rgx makes sense because it's matching on arbitrary identifiers. But here, we're matching against specific modules, like foo.bar.baz. I would prefer, I think, to require the user to pass in a list of fully-qualified module paths.

This is another option. This option look like per-file-ignores, we can implement this and give users the option to decide which import rules to ignore for which package

I think I'm going to close this one out for now (in shame, since I never got back to you on your follow-up ideas). My current feeling is that I'm hesitant to add more configuration options without thinking through configuration more holistically, which is something we have on the roadmap. I'm sorry for both (1) not resolving your immediate problem and (2) being be a better maintainer / partner on this one.


DaysOftheWeek (BYDAY) is valid with Frequency being DAILY

For example, this is a valid rule: RRULE:FREQ=DAILY;INTERVAL=30;BYDAY=MO,TU,WE,TH,FR,SA;COUNT=7
It is to create a 7 repeating events that occurs every 30 days but not on Sunday
The document says:
daysOfWeek ↔ List?
The days of the week that this event occurs on. Only applicable to recurrence rules with a weekly, monthly or yearly frequency
I believe DAILY is also a valid option. I can import the events with above rules into Google calendars and others.
Thanks for looking into this.
The following is from RFC 5545, and showed that BYDAY and DAILY is a valid combination. Please see page 43 for details.
The table below summarizes the dependency of BYxxx rule part expand or limit behavior on the FREQ rule part value.
The term "N/A" means that the corresponding BYxxx rule part MUST NOT be used with the corresponding FREQ value.
BYDAY has some special behavior depending on the FREQ value and this is described in separate notes below the table.
+----------+--------+--------+-------+-------+------+-------+------+
|                 |SECONDLY|MINUTELY|HOURLY |DAILY  |WEEKLY|MONTHLY|YEARLY|
+----------+--------+--------+-------+-------+------+-------+------+
|BYMONTH   |Limit   |Limit   |Limit  |Limit  |Limit |Limit  |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYWEEKNO  |N/A     |N/A     |N/A    |N/A    |N/A   |N/A    |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYYEARDAY |Limit   |Limit   |Limit  |N/A    |N/A   |N/A    |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYMONTHDAY|Limit   |Limit   |Limit  |Limit  |N/A   |Expand |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYDAY     |Limit   |Limit   |Limit  |Limit  |Expand|Note 1 |Note 2|
+----------+--------+--------+-------+-------+------+-------+------+
|BYHOUR    |Limit   |Limit   |Limit  |Expand |Expand|Expand |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYMINUTE  |Limit   |Limit   |Expand |Expand |Expand|Expand |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYSECOND  |Limit   |Expand  |Expand |Expand |Expand|Expand |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYSETPOS  |Limit   |Limit   |Limit  |Limit  |Limit |Limit  |Limit |
+----------+--------+--------+-------+-------+------+-------+------+
  Note 1:  Limit if BYMONTHDAY is present; otherwise, special expand for MONTHLY.

  Note 2:  Limit if BYYEARDAY or BYMONTHDAY is present; otherwise,
           special expand for WEEKLY if BYWEEKNO present; otherwise,
           special expand for MONTHLY if BYMONTH present; otherwise,
           special expand for YEARLY.

Current direction is to solve with a plugin, see #298


Allow individual steps to not fail the build

In practice we have found that there are cases where an individual build step should not be fail the entire build.
Examples

When pushing the cache it fails to upload to a server
When doing a notification the slack service is down

It would be nice to have a standard way to enumerate steps within a drone.yml that can fail but won't fail the build.
pipeline:
  notify:
    ...
    allow_failure: true

pipeline:
  notify:
    ...

allow_failure:
  - notify

+1
I would also love to see this feature. Furthermore, it would be nice if we could both allow failure, and also catch that failure in a subsequent step. I can provide a use-case if desired.

I have a similar request but different use case.
pipeline:
  build:
    ...
    allow_failure: true
  notify_build_failed:
    message: "build failed"
    when: failure

  deploy:
    ...
    allow_failure: true
  notify_deploy_failed:
    message: "deployment failed"
    when: failure

  integration_test:
    ...
    allow_failure: true
  notify_test_failed:
    message: "integration tests failed"
    when: failure

You can see in this use case, I don't necessarily want failures to continue the pipeline PAST the next step.
The way when: conditionals are implemented right now means all 3 notifications will get sent out all the same time when any part of the pipeline fails. I would like to tailor the notifications for each specific failure.

Not sure if this is the right feature request to tack on the desired functionality, but closest thing I could find.

+1 to the ability to allow failure. My use case is similar to @donny-dont's: The telegram, slack, etc plugins should not fail the build, necessarily. The ability to do this with any build step would be pretty powerful I think.

@tonglil for your use case I think the better solution would be to provide pipeline meta data at runtime. For example, current step name, previous step name, name of step that failed the pipeline, etc. You could then use this information inside your notification template. I think we should therefore expand https://github.com/drone/drone/issues/1740
@donny-dont in terms of the cache plugins, I do not believe these plugins should return non-zero exit codes, since a broken cache has the ability to block all builds without manual intervention. I think this should be controlled at the plugin level, by default, as opposed to at the yaml level.
@jacobrichard the Slack plugin (for example) returns a non-zero exit code when the Slack API call fails. You could always write a Slack plugin that returns a zero exit code even on failure.
Personally I am not in favor of adding such a flag to the YAML at this time.

closed by https://github.com/drone/drone-runtime/commit/3e8bd99f60f4032226523320cd2b2321f9525159, will be included in 0.9


On Ubuntu 18.04 Desktop / Server, "403  Forbidden" happens when adding the stable repository for installation.

Describe the bug
On Ubuntu 18.04 Desktop / Server, "403  Forbidden" happens when adding the stable repository for installation.
To Reproduce
Steps to reproduce the behavior:

Create a virtual machine of Ubuntu 18.04 Desktop or Server. I used vagrant + VirtualBox 6.1.18.
 Done
E: Failed to fetch https://dl.bintray.com/tetrate/getenvoy-deb/dists/bionic/InRelease  403  Forbidden [IP: <IP_ADDRESS> 443]
E: The repository 'https://dl.bintray.com/tetrate/getenvoy-deb bionic InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Expected behavior
I can add the repository successfully.
Screenshots
Here is the entire command execution history on my VM following Install Envoy on Ubuntu. You can see the initial apt-get update could succeed but the last one failed.
vagrant@vm-server:~$ sudo apt-get update
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
Get:2 http://security.ubuntu.com/ubuntu bionic-security/main i386 Packages [950 kB]
Hit:3 http://archive.ubuntu.com/ubuntu bionic InRelease
Hit:4 http://ppa.launchpad.net/ansible/ansible/ubuntu bionic InRelease
Get:5 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages [1,639 kB]
Get:6 http://security.ubuntu.com/ubuntu bionic-security/universe i386 Packages [980 kB]
Get:7 http://archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
Get:8 http://security.ubuntu.com/ubuntu bionic-security/universe amd64 Packages [1,118 kB]
Get:9 http://security.ubuntu.com/ubuntu bionic-security/universe Translation-en [251 kB]
Get:10 http://archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
Get:11 http://archive.ubuntu.com/ubuntu bionic-updates/main i386 Packages [1,262 kB]
Get:12 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages [2,000 kB]
Get:13 http://archive.ubuntu.com/ubuntu bionic-updates/main Translation-en [405 kB]
Get:14 http://archive.ubuntu.com/ubuntu bionic-updates/restricted amd64 Packages [302 kB]
Get:15 http://archive.ubuntu.com/ubuntu bionic-updates/restricted Translation-en [40.8 kB]
Get:16 http://archive.ubuntu.com/ubuntu bionic-updates/universe i386 Packages [1,565 kB]
Get:17 http://archive.ubuntu.com/ubuntu bionic-updates/universe amd64 Packages [1,728 kB]
Get:18 http://archive.ubuntu.com/ubuntu bionic-updates/universe Translation-en [367 kB]
Fetched 12.9 MB in 5s (2,727 kB/s)
Reading package lists... Done
vagrant@vm-server:~$ sudo apt-get install -y \
> apt-transport-https \
> ca-certificates \
> curl \
> gnupg-agent \
> software-properties-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
software-properties-common is already the newest version (<IP_ADDRESS>.14).
The following additional packages will be installed:
  dirmngr gnupg gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm gpgv libcurl4
Suggested packages:
  dbus-user-session pinentry-gnome3 tor parcimonie xloadimage scdaemon
The following NEW packages will be installed:
  apt-transport-https gnupg-agent
The following packages will be upgraded:
  ca-certificates curl dirmngr gnupg gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm gpgv libcurl4
14 upgraded, 2 newly installed, 0 to remove and 84 not upgraded.
Need to get 2,681 kB of archives.
After this operation, 191 kB of additional disk space will be used.

(Reading database ... 46247 files and directories currently installed.)
Preparing to unpack .../00-gpg-wks-client_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gpg-wks-client (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../01-dirmngr_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking dirmngr (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../02-gpg-wks-server_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gpg-wks-server (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../03-gnupg-utils_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gnupg-utils (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../04-gpg-agent_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gpg-agent (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../05-gpg_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gpg (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../06-gpgconf_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gpgconf (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../07-gnupg-l10n_2.2.4-1ubuntu1.4_all.deb ...
Unpacking gnupg-l10n (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../08-gnupg_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gnupg (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../09-gpgsm_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gpgsm (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Preparing to unpack .../10-gpgv_2.2.4-1ubuntu1.4_amd64.deb ...
Unpacking gpgv (2.2.4-1ubuntu1.4) over (2.2.4-1ubuntu1.3) ...
Setting up gpgv (2.2.4-1ubuntu1.4) ...
(Reading database ... 46247 files and directories currently installed.)
Preparing to unpack .../ca-certificates_20210119~18.04.1_all.deb ...
Unpacking ca-certificates (20210119~18.04.1) over (20201027ubuntu<IP_ADDRESS>) ...
Selecting previously unselected package apt-transport-https.
Preparing to unpack .../apt-transport-https_1.6.13_all.deb ...
Unpacking apt-transport-https (1.6.13) ...
Preparing to unpack .../curl_7.58.0-2ubuntu3.13_amd64.deb ...
Unpacking curl (7.58.0-2ubuntu3.13) over (7.58.0-2ubuntu3.12) ...
Preparing to unpack .../libcurl4_7.58.0-2ubuntu3.13_amd64.deb ...
Unpacking libcurl4:amd64 (7.58.0-2ubuntu3.13) over (7.58.0-2ubuntu3.12) ...
Selecting previously unselected package gnupg-agent.
Preparing to unpack .../gnupg-agent_2.2.4-1ubuntu1.4_all.deb ...
Unpacking gnupg-agent (2.2.4-1ubuntu1.4) ...
Setting up apt-transport-https (1.6.13) ...
Setting up gpgconf (2.2.4-1ubuntu1.4) ...
Setting up libcurl4:amd64 (7.58.0-2ubuntu3.13) ...
Setting up gpg-agent (2.2.4-1ubuntu1.4) ...
Setting up gnupg-l10n (2.2.4-1ubuntu1.4) ...
Setting up gpgsm (2.2.4-1ubuntu1.4) ...
Setting up gnupg-utils (2.2.4-1ubuntu1.4) ...
Setting up gnupg-agent (2.2.4-1ubuntu1.4) ...
Setting up ca-certificates (20210119~18.04.1) ...
Updating certificates in /etc/ssl/certs...
1 added, 10 removed; done.
Setting up dirmngr (2.2.4-1ubuntu1.4) ...
Setting up gpg (2.2.4-1ubuntu1.4) ...
Setting up curl (7.58.0-2ubuntu3.13) ...
Setting up gpg-wks-server (2.2.4-1ubuntu1.4) ...
Setting up gpg-wks-client (2.2.4-1ubuntu1.4) ...
Setting up gnupg (2.2.4-1ubuntu1.4) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for install-info (6.5.0.dfsg.1-2) ...
Processing triggers for libc-bin (2.27-3ubuntu1.4) ...
Processing triggers for ca-certificates (20210119~18.04.1) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
vagrant@vm-server:~$ curl -sL 'https://getenvoy.io/gpg' | sudo apt-key add -
OK
vagrant@vm-server:~$ apt-key fingerprint 6FF974DB
pub   rsa4096 2019-03-01 [SC]
      5270 CEAC 57F6 3EBD 9EA9  005D 0253 D0B2 6FF9 74DB
uid           [ unknown] GetEnvoy<EMAIL_ADDRESS>sub   rsa4096 2019-03-01 [E]

vagrant@vm-server:~$ sudo add-apt-repository \
> "deb [arch=amd64] https://dl.bintray.com/tetrate/getenvoy-deb \
> $(lsb_release -cs) \
> stable"
Hit:1 http://security.ubuntu.com/ubuntu bionic-security InRelease
Hit:2 http://archive.ubuntu.com/ubuntu bionic InRelease
Hit:3 http://ppa.launchpad.net/ansible/ansible/ubuntu bionic InRelease
Err:4 https://dl.bintray.com/tetrate/getenvoy-deb bionic InRelease
  403  Forbidden [IP: <IP_ADDRESS> 443]
Hit:5 http://archive.ubuntu.com/ubuntu bionic-updates InRelease
Hit:6 http://archive.ubuntu.com/ubuntu bionic-backports InRelease
Reading package lists... Done
E: Failed to fetch https://dl.bintray.com/tetrate/getenvoy-deb/dists/bionic/InRelease  403  Forbidden [IP: <IP_ADDRESS> 443]
E: The repository 'https://dl.bintray.com/tetrate/getenvoy-deb bionic InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
vagrant@vm-server:~$

Environment (please complete the relevant information):

OS: Ubuntu 18.04 Desktop and Server
Envoy Version: 1.17.1

Additional context
The pasted output above is from a Ubuntu 18.04 Server VM. But I could reproduce it on my Ubuntu 18.04 Desktop on a physical machine. One of my colleagues could reproduce it on Ubuntu 18.04 Desktop, too.

we won't be producing system packages long term. please follow https://github.com/envoyproxy/envoy/issues/16867 for "official" ones


[ADD] argument --cwd-max-dir-size

This allows to restrict the size of each displayed folder in the path.
This is usefull to keep a minimum space usage for longer path. eg: for /usr/lib/python2.7/site-packages with value of 2, the displayed path would be '/us/li/py/si'
fix #112

This change seems ok to make. There are merge conflicts at this point. I will resolve them if you can't get to it or I don't hear back from you.

Thanks for the update, I rebased my branch but I guessed I messed up my rebase at one point as github shows me empty diff

Thanks for contributing @mart-e. There were conflicts again and I didn't want to bother you with resolving them again only to risk more conflicts arising.


Error with uninstall.sh (not uninstalling)

Describe the bug
sed error with the uninstaller
sed: invalid option -- '1'
Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]...

  -n, --quiet, --silent
                 suppress automatic printing of pattern space
      --debug
                 annotate program execution
  -e script, --expression=script
                 add the script to the commands to be executed
  -f script-file, --file=script-file
                 add the contents of script-file to the commands to be executed
  --follow-symlinks
                 follow symlinks when processing in place
  -i[SUFFIX], --in-place[=SUFFIX]
                 edit files in place (makes backup if SUFFIX supplied)
  -l N, --line-length=N
                 specify the desired line-wrap length for the `l' command
  --posix
                 disable all GNU extensions.
  -E, -r, --regexp-extended
                 use extended regular expressions in the script
                 (for portability use POSIX -E).
  -s, --separate
                 consider files as separate rather than as a single,
                 continuous long stream.
      --sandbox
                 operate in sandbox mode (disable e/r/w commands).
  -u, --unbuffered
                 load minimal amounts of data from the input files and flush
                 the output buffers more often
  -z, --null-data
                 separate lines by NUL characters
      --help     display this help and exit
      --version  output version information and exit

If no -e, --expression, -f, or --file option is given, then the first
non-option argument is taken as the sed script to interpret.  All
remaining arguments are names of input files; if no input files are
specified, then the standard input is read.

GNU sed home page: <https://www.gnu.org/software/sed/>.
General help using GNU software: <https://www.gnu.org/gethelp/>.
sed: invalid option -- '1'
Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]...

  -n, --quiet, --silent
                 suppress automatic printing of pattern space
      --debug
                 annotate program execution
  -e script, --expression=script
                 add the script to the commands to be executed
  -f script-file, --file=script-file
                 add the contents of script-file to the commands to be executed
  --follow-symlinks
                 follow symlinks when processing in place
  -i[SUFFIX], --in-place[=SUFFIX]
                 edit files in place (makes backup if SUFFIX supplied)
  -l N, --line-length=N
                 specify the desired line-wrap length for the `l' command
  --posix
                 disable all GNU extensions.
  -E, -r, --regexp-extended
                 use extended regular expressions in the script
                 (for portability use POSIX -E).
  -s, --separate
                 consider files as separate rather than as a single,
                 continuous long stream.
      --sandbox
                 operate in sandbox mode (disable e/r/w commands).
  -u, --unbuffered
                 load minimal amounts of data from the input files and flush
                 the output buffers more often
  -z, --null-data
                 separate lines by NUL characters
      --help     display this help and exit
      --version  output version information and exit

If no -e, --expression, -f, or --file option is given, then the first
non-option argument is taken as the sed script to interpret.  All
remaining arguments are names of input files; if no input files are
specified, then the standard input is read.

GNU sed home page: <https://www.gnu.org/software/sed/>.
General help using GNU software: <https://www.gnu.org/gethelp/>.
sed: invalid option -- '1'
Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]...

  -n, --quiet, --silent
                 suppress automatic printing of pattern space
      --debug
                 annotate program execution
  -e script, --expression=script
                 add the script to the commands to be executed
  -f script-file, --file=script-file
                 add the contents of script-file to the commands to be executed
  --follow-symlinks
                 follow symlinks when processing in place
  -i[SUFFIX], --in-place[=SUFFIX]
                 edit files in place (makes backup if SUFFIX supplied)
  -l N, --line-length=N
                 specify the desired line-wrap length for the `l' command
  --posix
                 disable all GNU extensions.
  -E, -r, --regexp-extended
                 use extended regular expressions in the script
                 (for portability use POSIX -E).
  -s, --separate
                 consider files as separate rather than as a single,
                 continuous long stream.
      --sandbox
                 operate in sandbox mode (disable e/r/w commands).
  -u, --unbuffered
                 load minimal amounts of data from the input files and flush
                 the output buffers more often
  -z, --null-data
                 separate lines by NUL characters
      --help     display this help and exit
      --version  output version information and exit

If no -e, --expression, -f, or --file option is given, then the first
non-option argument is taken as the sed script to interpret.  All
remaining arguments are names of input files; if no input files are
specified, then the standard input is read.

GNU sed home page: <https://www.gnu.org/software/sed/>.
General help using GNU software: <https://www.gnu.org/gethelp/>.
rmdir: failed to remove 'customOpenGL/home/USERNAME/fusion360': No such file or directory
rmdir: failed to remove '/root/.local/share/applications/wine/Programs/Autodesk/Fusion360/': Directory not empty
There is at least one installed Wineprefix on your system!
There is at least one installed Wineprefix on your system!

To Reproduce
Steps to reproduce the behavior:

Go to ./fusion360/bin
Run uninstall.sh
See error

Expected behavior
The application should be removed
Screenshots
N/A
Desktop (please complete the following information):

Version number of Autodesk Fusion 360 : N/A
Graphics card model + Graphics card driver : AMD RX 640 + amdgpu 5.10.0-15-amd64
Operating system : Debian 11 Stable x64
Desktop environment : KDE Plasma
OpenGL-Mode

Additional context
The installer completed however the app could not be run (not starting (waited 1 hour))
I am willing to provide more info as needed :)

Ran into this issue myself. Found a workaround in the documentation:
Uninstall Autodesk Fusion 360
rm -Rf ~/.local/share/applications/wine/Programs/Autodesk/Fusion360/default
rm -Rf ~/.fusion360/wineprefixes/default
# WARNING: this will nuke the installation
rm -Rf ~/.fusion360


fixes to issues found in testing

name: Fixes to issues found in testing
about: Template for pull requests
Description
Fixing typos & broken format, added python version badge
Issues
Closes
Issue #13 :

Should me merged with master


Fork MasterDevX Termux-Java to include policy

Have to fork the mentioned project:
https://github.com/MasterDevX/Termux-Java
to include the policy below:
https://www.oracle.com/java/technologies/javase-jce8-downloads.html
Also reduces dependencies, as this is a working java-termux version.

You really created an issue for this.

Of couse I did😉

This is not worth investing time and efforts into. Creating whatsapp.ab file on termux without password and later creating a entrypted 7z file (already implemented) for safekeeping of database and key file is enough since whatsapp.ab is temporary and gets deleted eventually and there is no reason for anyone to keep whatsapp.ab with them and even if there is they can keep it safe on their own.
If in future if there is a corner case where nopass.ab is not getting unpacked into nopass.tar they can simply download those files from URl and get it working.

I don't follow...

What do you mean, can you explain please?

Yes I was out for the day so couldn't  reply. Which part are you not gettign?

How will we get the msgstore.db if we don't decompress the .ab file with the java tool?

How will we get the msgstore.db if we don't decompress the .ab file with the java tool?

We can unpack .ab file to .tar but currently can't unpack those ab file which are encrypted (user entered some password on backup screen)

We can simply ask user to leave that empty or I can make this script in such a way that user does not have to even click his phone. I can send touch input.

Oh thats great!

https://forum.xda-developers.com/t/guide-how-to-extract-create-or-edit-android-adb-backups.2011811/ here is written where the policy has to be put

Well I think backups are encrypted by default, but no idea...

How will we get the msgstore.db if we don't decompress the .ab file with the java tool?

We can unpack .ab file to .tar but currently can't unpack those ab file which are encrypted (user entered some password on backup screen)

How do you plan to do that?

Well I think backups are encrypted by default, but no idea...

Yes sometimes, if desktop backup is already set.

How do you plan to do that?

Telling user not to enter password.

I mean the decompression part XD

With recent abe.jar release which Nelekov released. That is working with termux

I thought you wanted to scrap the whole JAVA part. Okay so we only need the policy if the backup's encrypted right?

Okay so we only need the policy if the backup's encrypted right?

Exactly

Cool, so no passwords

No passwords.

I will work on it after 10 days, I'm busy with exams.

ok

okay, downloaded the unlimited policy

okay forked and installed, try it

wget https://raw.githubusercontent.com/roberts01/java/master/installjava && bash installjava
https://github.com/roberts01/Termux-Java


collection.create should update the model with it's ID after it's returned from the server

I find this to be slightly unexpected behavior. My expectation is that using Collection.create to create a new model would add the model to the collection immediately, persist the model to the server, and then update the model with properties from the server on the "sync" event. However, the current behavior does nothing when the model is returned from the server, thus, the collection is left with an incomplete model instance.

Huh? Got a failing test case?

Yea. I should make clear that this behavior applies to all properties, not just ID.
This code won't run in the backbone test suite, but this is the basic idea:
coll = new MyCollection.new
coll.create({key: 'value'})
// wait enough time for model to persist, or call this in the success handler
coll.models[0].id == null // => true

The behavior I expect is that by using Backbone.Collection#create to create a model instance, it will set properties on the model once it's returned from the server.
FWIW, locally I've patched the create method to do this, like so:
create: function(model, options) {
      options = options ? _.clone(options) : {};
      if (!(model = this._prepareModel(model, options))) return false;

      if (!options.wait) {
        this.add(model, options);

        // PATCH
        model.on('sync', function(newMod, attrs) {
          model.set(attrs);
        });

      }
      var collection = this;
      var success = options.success;
      options.success = function(model, resp) {
        if (options.wait) collection.add(model, options);
        if (success) success(model, resp, options);
      };
      model.save(null, options);
      return model;
    }

It certainly should be setting the properties on the model. That's why we need a failing test case...

@jashkenas I couldn't figure out how to run the tests locally, but here's my best attempt: https://github.com/ajsharp/backbone/commit/436c6354fed3560899644e90e2d4cf0ee40b3672.

@ajsharp hi, i still cant undererstan what goes wrong ?
If you want to use Backbone.Collection with RESTful solution

var Book = Backbone.Model.extend({
   parse: function(data){
       return data; // in this case your model will be mixed with server response after sync was call
   }
});
var Books = Backbone.Collection.extend({
    url : "/books",
    model : Book
});

// Lets get all books

var Library = new Books();
Library.fetch();
var added = Library.create({
    book: "David Sulc",
    year : 2014
},{
   wait: true,
   success: function(model, resp, options){
       // now you can deal with added model
   }
});

We send a POST request to http://example.com/books
Response from server need to be someting like that:
{
    "id": "322",
    "book": "David Sulc",
    "year" : 2014
}

OR (more complicated solution)
{
    "meta": {
        "code": "200",
        "message" : "success adding a book"
    },
    "response": {
        "id": "322",
        "book": "David Sulc",
        "year" : 2014
    }
}

So your collection will get an item with id.
@jashkenas i think dont need a failling test case. All is fine.
@ajsharp Maybe i don't understand your question but i think you just started to studying backbone.
Please read about Mode.parse, also we can change and id attribute to add to model Model.idAttribute too many options.
Thanks.

@mr47 Ahhhh the problem was I was over-riding Model.parse and not returning the original response :disappointed: After fixing that everything works as expected. Sorry about that guys!

Oh my...


[10.x] Fix Collection::groupBy() return type

Ref @nunomaduro since you previously worked on this topic.

This pull request is not correct, because the key of the arrays will only be preserved if the user provides the value true to the argument $preserveKeys.


Link to Visio is broken

Hi
The link provided for the architecture Visio file is broken:
https://arch-center.azureedge.netazure-near-realtime-data-processing.vsdx/

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 3699e353-3a93-fd94-3d88-884558f83635
Version Independent ID: 3699e353-3a93-fd94-3d88-884558f83635
Content: Near real-time lakehouse data processing - Azure Architecture Center
Content Source: docs/example-scenario/data/real-time-lakehouse-data-processing.yml
Service: architecture-center
Sub-service: example-scenario
GitHub Login: @pratimav0420
Microsoft Alias: prvalava

Thanks for the feedback! We are currently investigating and will update you shortly.


Check tls

How to check tls is set ok ?
How to check output port ?

What do you mean? Just try to connect with Telegram client?


ENABLE_WILD_WEST unused

Bug
ENABLE_WILD_WEST is not implemented?
To Reproduce

Search for ENABLE_WILD_WEST: https://github.com/lbryio/lbry-desktop/search?q=ENABLE_WILD_WEST
No results

Expected behavior
The environment variable is either used or removed.

Ah.. maybe it's only implemented in the proprietary Ody repo?


Hashing the key

Why the key hashed with php::openssl_digest()? As far as I understand, real strong encryption relies on the initial vector, the key's hash doesn't matter here.. I read the manual about  php::openssl_encrypt(), explored examples and comments there, read openssl enc wiki. I saw the comment about password/key subtitution, but I think, yours intention was in something else. So, what the point?

The IV is used so that encrypting the same data with the same key does not produce the same result, and as the IV is necessary for decryption, it is public and embedded as part of the encrypted result. The encryption key is required to be a certain length for the encryption algorithm to work, which is ensured by using a suitable hash function.