Error response from daemon: Ports are not available: listen tcp <IP_ADDRESS>:5432: bind

log ahead, started with docker compose up as it is now the default recommendation for docker instead of docker-compose up.
shell had elevated privileges. Any way to work around? nothing working rn for me.
[+] Running 8/8
 - Container devilbox_bind_1   Created                                                                             0.0s
 - Container devilbox_php_1    Created                                                                             0.1s
 - Container devilbox_httpd_1  Created                                                                             0.1s
 - Container devilbox_mongo_1  Created                                                                             0.1s
 - Container devilbox_pgsql_1  Created                                                                             0.1s
 - Container devilbox_redis_1  Created                                                                             0.1s
 - Container devilbox_mysql_1  Created                                                                             0.1s
 - Container devilbox_memcd_1  Created                                                                             0.1s
Attaching to bind_1, httpd_1, memcd_1, mongo_1, mysql_1, pgsql_1, php_1, redis_1
bind_1   | [INFO] Debug level: 2
bind_1   | [INFO] BIND logging: disabled explicitly
bind_1   | [INFO] Using default DNS TTL time: 3600 sec
bind_1   | [INFO] Using default DNS Refresh time: 1200 sec
bind_1   | [INFO] Using default DNS Retry time: 180 sec
bind_1   | [INFO] Using default DNS Expiry time: 1209600 sec
bind_1   | [INFO] Using default DNS Max Cache time: 10800 sec
bind_1   | [INFO] Adding wildcard DNS: *.test -> <IP_ADDRESS>
bind_1   |
bind_1   | zone test/IN: loaded serial<PHONE_NUMBER>
bind_1   | OK
bind_1   | [INFO] Not adding any extra hosts
bind_1   | [INFO] DNSSEC Validation: no
bind_1   | [INFO] Adding custom DNS forwarder: <IP_ADDRESS>,<IP_ADDRESS>
bind_1   | [INFO] Starting BIND 9.11.3
php_1    | [INFO] Debug level: 2
php_1    | [INFO] Changing user 'devilbox' uid to: 1000
php_1    | root $ usermod -u 1000 devilbox 2>/dev/null
php_1    | root $ chown -R devilbox /home/devilbox 2>/dev/null || true
php_1    | root $ chown -R devilbox /var/lib/php/session
php_1    | root $ chown -R devilbox /var/lib/php/wsdlcache
php_1    | root $ chown -R devilbox /var/spool/mail/devilbox
php_1    | root $ chown -R devilbox /etc/supervisor/custom.d
php_1    | [INFO] Changing group 'devilbox' gid to: 1000
php_1    | root $ groupmod -g 1000 devilbox 2>/dev/null
php_1    | root $ chown -R :devilbox /home/devilbox 2>/dev/null || true
php_1    | root $ chown -R :devilbox /var/lib/php/session
php_1    | root $ chown -R :devilbox /var/lib/php/wsdlcache
php_1    | root $ chown -R :devilbox /var/spool/mail/devilbox
php_1    | root $ chown -R :devilbox /etc/supervisor/custom.d
php_1    | [INFO] Setting container timezone to: America/Bahia
php_1    | root $ ln -sf /usr/share/zoneinfo/America/Bahia /etc/localtime
php_1    | [INFO] Setting PHP: timezone=America/Bahia
php_1    | root $ echo 'date.timezone = America/Bahia' > /usr/local/etc/php/conf.d/devilbox-runtime-timezone.ini
php_1    | [INFO] Docker date set to: Mon May 24 09:15:43 -03 2021
php_1    | [INFO] $DOCKER_LOGS set to 0. Logging to files under: /var/log/php
php_1    | [INFO] Make sure to mount this directory in order to view logs
php_1    | root $ chown -R devilbox:devilbox /var/log/php
php_1    | root $ chmod 0755 /var/log/php
php_1    | [INFO] $ENABLE_MAIL set to 2. Enabling postfix catch-all
php_1    | root $ chown devilbox:devilbox /var/log/php
php_1    | root $ chown devilbox:devilbox /var/log/php/mail.log
php_1    | root $ chmod 0644 /var/log/php/mail.log
php_1    | root $ chmod 0644 /var/mail/devilbox
php_1    | root $ chown devilbox:devilbox /var/mail
php_1    | root $ chown devilbox:devilbox /var/mail/devilbox
php_1    | root $ postconf -e 'strict_mailbox_ownership=no'
php_1    | root $ postconf -e 'inet_protocols=ipv4'
php_1    | root $ postconf -e 'virtual_alias_maps=pcre:/etc/postfix/virtual'
php_1    | root $ echo<EMAIL_ADDRESS>devilbox' >> /etc/postfix/virtual
php_1    | root $ newaliases
httpd_1  | [INFO] Debug level: 2
httpd_1  | [INFO] Runtime debug: 2
httpd_1  | [INFO] Changing user 'nginx' uid to: 1000
httpd_1  | root $ usermod -u 1000 nginx
httpd_1  | [INFO] Changing group 'nginx' gid to: 1000
httpd_1  | root $ groupmod -g 1000 nginx
httpd_1  | [INFO] Setting container timezone to: America/Bahia
httpd_1  | root $ ln -sf /usr/share/zoneinfo/America/Bahia /etc/localtime
httpd_1  | [INFO] Docker date set to: Mon May 24 09:15:44 -03 2021
httpd_1  | [INFO] $WORKER_PROCESSES set to its default value: 'auto'.
httpd_1  | root $ sed -i'' 's/__WORKER_PROCESSES__/auto/g' /etc/nginx/nginx.conf
httpd_1  | [INFO] Setting worker_connections to: 1024
httpd_1  | root $ sed -i'' 's/__WORKER_CONNECTIONS__/1024/g' /etc/nginx/nginx.conf
httpd_1  | [INFO] $DOCKER_LOGS disabled. Logging errors and access to log files inside container.
httpd_1  | [INFO] PHP-FPM: Enabled
httpd_1  | [INFO] PHP-FPM: Server address: <IP_ADDRESS>
httpd_1  | [INFO] PHP-FPM: Server port: 9000
httpd_1  | [INFO] PHP-FPM: Timeout: 180
httpd_1  | [INFO] Main vhost: Enabled
httpd_1  | [INFO] Main vhost: Setting SSL type to: http and https
httpd_1  | [INFO] Main vhost: Enable automatic generation of SSL certificates
httpd_1  | [INFO] Main vhost: SSL CN: localhost,*.localhost,devilbox,*.devilbox,httpd
httpd_1  | [INFO] $MAIN_VHOST_DOCROOT not specified. Keeping default: htdocs
httpd_1  | [INFO] $MAIN_VHOST_TPL not specified. Keeping default: cfg
httpd_1  | [INFO] Main vhost: Enabling httpd status page
httpd_1  | [INFO] Main vhost: Changing status page alias to: /devilbox-httpd-status
httpd_1  | [INFO] Mass vhost: Enabled
httpd_1  | [INFO] Mass vhost: Setting SSL type to: http and https
httpd_1  | [INFO] Mass vhost: Enable automatic generation of SSL certificates
httpd_1  | [INFO] Mass vhost: changing tld to: .test
httpd_1  | [INFO] Mass vhost: changing document root to: htdocs
httpd_1  | [INFO] Mass vhost: changing template dir to: .devilbox
httpd_1  | [INFO] vhost-gen: no customized template found
httpd_1  | root $ sed -i'' 's/__PHP_ENABLE__/yes/g' /etc/vhost-gen/main.yml
httpd_1  | root $ sed -i'' 's/__PHP_ADDR__/<IP_ADDRESS>/g' /etc/vhost-gen/main.yml
httpd_1  | root $ sed -i'' 's/__PHP_PORT__/9000/g' /etc/vhost-gen/main.yml
httpd_1  | root $ sed -i'' 's/__PHP_TIMEOUT__/180/g' /etc/vhost-gen/main.yml
httpd_1  | root $ sed -i'' 's/__PHP_ENABLE__/yes/g' /etc/vhost-gen/mass.yml
httpd_1  | root $ sed -i'' 's/__PHP_ADDR__/<IP_ADDRESS>/g' /etc/vhost-gen/mass.yml
httpd_1  | root $ sed -i'' 's/__PHP_PORT__/9000/g' /etc/vhost-gen/mass.yml
httpd_1  | root $ sed -i'' 's/__PHP_TIMEOUT__/180/g' /etc/vhost-gen/mass.yml
httpd_1  | root $ sed -i'' 's/__DOCKER_LOGS_ERROR__/no/g' /etc/vhost-gen/main.yml
httpd_1  | root $ sed -i'' 's/__DOCKER_LOGS_ACCESS__/no/g' /etc/vhost-gen/main.yml
httpd_1  | root $ sed -i'' 's/__DOCKER_LOGS_ERROR__/no/g' /etc/vhost-gen/mass.yml
httpd_1  | root $ sed -i'' 's/__DOCKER_LOGS_ACCESS__/no/g' /etc/vhost-gen/mass.yml
httpd_1  | root $ sed -i'' 's|__ENABLE_STATUS__|yes|g' /etc/vhost-gen/main.yml
httpd_1  | root $ sed -i'' 's|__STATUS_ALIAS__|/devilbox-httpd-status|g' /etc/vhost-gen/main.yml
httpd_1  | root $ vhost-gen -n localhost -p /var/www/default/htdocs -t /etc/vhost-gen/templates-main/ -c /etc/vhost-gen/main.yml -o /var/www/default/cfg -v -d -s -m both
httpd_1  | vhost-gen: [INFO]  (2021-05-24 09:15:44): Loading configuration file        (-c): /etc/vhost-gen/main.yml
httpd_1  | vhost-gen: [INFO]  (2021-05-24 09:15:44): Loading vhost template (global)   (-t): /etc/vhost-gen/templates-main/nginx.yml
httpd_1  | vhost-gen: [INFO]  (2021-05-24 09:15:44): Loading vhost template (override) (-o): /var/www/default/cfg/nginx.yml
httpd_1  | vhost-gen: [WARN]  (2021-05-24 09:15:44): Override Vhost template not found: /var/www/default/cfg/nginx.yml
httpd_1  | vhost-gen: [INFO]  (2021-05-24 09:15:44): Creating vhost type: https and http (both)
httpd_1  | vhost-gen: [INFO]  (2021-05-24 09:15:44): Using vhost name: localhost
httpd_1  | vhost-gen: [INFO]  (2021-05-24 09:15:44): Log setting: dir -> True
httpd_1  | vhost-gen: [INFO]  (2021-05-24 09:15:44): Log setting: Not specified
httpd_1  | vhost-gen: [INFO]  (2021-05-24 09:15:44): Vhost config written to: /etc/httpd/conf.d/localhost.conf
httpd_1  | root $ sed -i'' 's|__DOCROOT_SUFFIX__|htdocs|g' /etc/vhost-gen/mass.yml
httpd_1  | root $ sed -i'' 's/__TLD__/.test/g' /etc/vhost-gen/mass.yml
httpd_1  | root $ mkdir -p /etc/httpd/cert/main
httpd_1  | root $ cert-gen -v -c DE -s Berlin -l Berlin -o Devilbox -u Devilbox -n 'localhost' -e 'admin@localhost' -a 'localhost *.localhost devilbox *.devilbox httpd' /ca/devilbox-ca.key /ca/devilbox-ca.crt /etc/httpd/cert/main/localhost.key /etc/httpd/cert/main/localhost.csr /etc/httpd/cert/main/localhost.crt
httpd_1  | $ openssl req -newkey rsa:2048 -sha256 -nodes -extensions v3_req -config <(echo "[req]
httpd_1  | distinguished_name = req_distinguished_name
httpd_1  | x509_extensions = v3_req
httpd_1  |
httpd_1  | [req_distinguished_name]
httpd_1  |
httpd_1  | [ v3_req ]
httpd_1  | basicConstraints = critical, CA:FALSE
httpd_1  | subjectKeyIdentifier = hash
httpd_1  | keyUsage = critical, digitalSignature, keyEncipherment
httpd_1  | authorityKeyIdentifier = keyid:always,issuer:always
httpd_1  | extendedKeyUsage = serverAuth, clientAuth
httpd_1  | subjectAltName=${ALT_NAMES}") -keyout /etc/httpd/cert/main/localhost.key -subj '/C=DE/ST=Berlin/L=Berlin/O=Devilbox/OU=Devilbox/CN=localhost/emailAddress=admin@localhost' -out /etc/httpd/cert/main/localhost.csr
httpd_1  | $ openssl x509 -req -sha256 -extensions v3_req -extfile <(echo "[req]
httpd_1  | distinguished_name = req_distinguished_name
httpd_1  | x509_extensions = v3_req
httpd_1  |
httpd_1  | [req_distinguished_name]
httpd_1  |
httpd_1  | [ v3_req ]
httpd_1  | basicConstraints = critical, CA:FALSE
httpd_1  | subjectKeyIdentifier = hash
httpd_1  | keyUsage = critical, digitalSignature, keyEncipherment
httpd_1  | authorityKeyIdentifier = keyid:always,issuer:always
httpd_1  | extendedKeyUsage = serverAuth, clientAuth
httpd_1  | subjectAltName=${ALT_NAMES}") -days 825 -in /etc/httpd/cert/main/localhost.csr -CA /ca/devilbox-ca.crt -CAkey /ca/devilbox-ca.key -CAcreateserial -out /etc/httpd/cert/main/localhost.crt
httpd_1  | Certificate:
httpd_1  |     Data:
httpd_1  |         Version: 3 (0x2)
httpd_1  |         Serial Number:
httpd_1  |             46:86:77:76:ba:dc:3f:0b:3a:9a:d9:2a:ae:a0:f9:72:d7:fb:7b:23
httpd_1  |         Signature Algorithm: sha256WithRSAEncryption
httpd_1  |         Issuer: C = DE, ST = Berlin, L = Berlin, O = Devilbox, OU = Devilbox, CN = Devilbox Root CA, emailAddress =<EMAIL_ADDRESS>dnQualifier = FYMPZv8kOPjb0SSH6uOmGGK5BtU=
httpd_1  |         Validity
httpd_1  |             Not Before: May 24 12:15:44 2021 GMT
httpd_1  |             Not After : Aug 27 12:15:44 2023 GMT
httpd_1  |         Subject: C = DE, ST = Berlin, L = Berlin, O = Devilbox, OU = Devilbox, CN = localhost, emailAddress = admin@localhost
httpd_1  |         Subject Public Key Info:
httpd_1  |             Public Key Algorithm: rsaEncryption
httpd_1  |                 RSA Public-Key: (2048 bit)
httpd_1  |                 Modulus:
httpd_1  |                     00:a4:f0:d8:67:a5:71:66:6c:46:89:70:cd:21:c8:
httpd_1  |                     f7:ca:89:5b:25:52:d5:81:31:2b:a6:26:a6:7c:60:
httpd_1  |                     90:89:5f:d3:6e:4a:f7:f1:1e:d6:34:d2:51:b2:b7:
httpd_1  |                     72:7b:2b:56:e7:95:1c:83:88:98:cd:e6:ab:de:f9:
httpd_1  |                     fa:bf:6e:86:91:d3:d9:0c:be:d9:57:b9:e5:f1:9e:
httpd_1  |                     d7:ac:c9:54:53:30:1b:a9:a0:9d:2c:cd:a9:fe:5d:
httpd_1  |                     f3:6c:5e:c3:d1:1e:6c:57:4a:aa:16:b9:8c:82:2a:
httpd_1  |                     0d:64:72:84:ac:98:b8:0b:ba:c5:11:7a:78:77:3f:
httpd_1  |                     7b:53:2c:4b:92:87:ce:a8:d4:a1:27:12:9f:55:f4:
httpd_1  |                     f5:77:7d:a8:b1:c8:96:27:14:85:21:f5:ae:a3:05:
httpd_1  |                     76:75:d4:ee:a2:e9:45:75:e8:3a:7f:a7:68:d5:6c:
httpd_1  |                     8d:5d:49:f8:53:10:c5:5b:f6:76:2b:cf:e2:f9:c0:
httpd_1  |                     b5:ca:a1:78:d8:25:24:7f:bc:70:38:98:06:a4:42:
httpd_1  |                     d0:40:89:86:a6:5c:99:b9:5c:a4:68:1f:d6:3c:58:
httpd_1  |                     16:b5:27:1c:20:a1:86:68:d8:f3:4a:fd:55:29:fa:
httpd_1  |                     b4:ba:18:e3:61:15:c6:a9:d6:df:90:81:12:35:0e:
httpd_1  |                     49:3c:df:03:ec:cc:40:04:cd:f5:f5:d6:8d:72:e2:
httpd_1  |                     85:5d
httpd_1  |                 Exponent: 65537 (0x10001)
httpd_1  |         X509v3 extensions:
httpd_1  |             X509v3 Basic Constraints: critical
httpd_1  |                 CA:FALSE
httpd_1  |             X509v3 Subject Key Identifier:
httpd_1  |                 1C:77:4D:25:0A:2E:46:2C:62:1C:B6:89:E0:FE:7A:4C:61:30:4B:04
httpd_1  |             X509v3 Key Usage: critical
httpd_1  |                 Digital Signature, Key Encipherment
httpd_1  |             X509v3 Authority Key Identifier:
httpd_1  |                 keyid:15:83:0F:66:FF:24:38:F8:DB:D1:24:87:EA:E3:A6:18:62:B9:06:D5
httpd_1  |                 DirName:/C=DE/ST=Berlin/L=Berlin/O=Devilbox/OU=Devilbox/CN=Devilbox Root<EMAIL_ADDRESS>httpd_1  |                 serial:6D:EC:0B:66:59:3A:E8:B0:40:C0:6E:F5:0D:50:18:68:D8:3C:26:E5
httpd_1  |
httpd_1  |             X509v3 Extended Key Usage:
httpd_1  |                 TLS Web Server Authentication, TLS Web Client Authentication
httpd_1  |             X509v3 Subject Alternative Name:
httpd_1  |                 DNS:localhost, DNS:localhost, DNS:*.localhost, DNS:devilbox, DNS:*.devilbox, DNS:httpd
httpd_1  |     Signature Algorithm: sha256WithRSAEncryption
httpd_1  |          a5:cc:c3:ad:63:46:82:a0:d5:98:4a:bc:b5:fc:26:5a:bb:b5:
httpd_1  |          be:07:8a:d3:38:07:b8:e6:9b:fd:6f:b9:61:32:a1:fb:4c:4d:
httpd_1  |          d8:2b:28:68:1f:23:f7:3c:a9:48:75:a0:59:7e:a8:40:97:c0:
httpd_1  |          8c:67:a8:ea:93:06:3e:ab:75:e6:38:02:f2:3a:6a:ba:d3:74:
httpd_1  |          1d:3b:cd:29:6e:ac:ca:87:a2:3d:fc:cc:09:51:f6:05:f3:8d:
httpd_1  |          a4:00:10:a5:05:e4:69:27:b2:80:74:8e:41:c2:db:d8:fb:01:
httpd_1  |          95:ce:63:88:b9:5c:60:2e:81:a5:2d:fd:ae:f9:96:90:0c:ca:
httpd_1  |          6e:11:ad:27:29:44:f3:5a:6c:ba:fd:c0:2e:ee:23:31:99:83:
httpd_1  |          48:8e:4c:5f:d0:fb:e2:e7:0a:0b:28:b9:24:04:5f:46:1c:e5:
httpd_1  |          06:40:18:3b:96:a8:42:e1:b4:bc:41:b0:34:fa:8b:f1:10:36:
httpd_1  |          fd:64:a6:b1:40:ef:7e:00:25:f7:18:45:8c:56:02:f6:f9:60:
httpd_1  |          82:47:1c:d0:e1:aa:96:30:8f:a3:83:3d:20:19:ec:96:1b:fd:
httpd_1  |          94:bf:03:95:d3:e5:ce:ab:ad:db:a9:42:e5:33:9b:79:99:3f:
httpd_1  |          ab:b9:30:41:d1:19:a7:fa:e6:86:12:75:e3:0d:e2:a3:46:58:
httpd_1  |          90:80:d0:cb
httpd_1  | /etc/httpd/cert/main/localhost.crt: OK
httpd_1  | root $ chown -R 1000:1000 /ca
httpd_1  | [INFO] Starting supervisord: 3.3.5
httpd_1  | 2021-05-24 09:15:45,097 INFO Set uid to user 0 succeeded
httpd_1  | 2021-05-24 09:15:45,099 INFO supervisord started with pid 1
php_1    | [INFO] Forwarding httpd:80 to <IP_ADDRESS>:80 inside this docker.
php_1    | [INFO] Forwarding httpd:443 to <IP_ADDRESS>:443 inside this docker.
php_1    | [INFO] Forwarding mysql:3306 to <IP_ADDRESS>:3306 inside this docker.
php_1    | [INFO] Forwarding pgsql:5432 to <IP_ADDRESS>:5432 inside this docker.
mysql_1  | 2021-05-24 12:15:45+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 1:10.5.8+maria~focal started.
php_1    | [INFO] Forwarding redis:6379 to <IP_ADDRESS>:6379 inside this docker.
php_1    | [INFO] Forwarding memcd:11211 to <IP_ADDRESS>:11211 inside this docker.
php_1    | [INFO] Forwarding mongo:27017 to <IP_ADDRESS>:27017 inside this docker.
php_1    | [INFO] Enabling 'socat-80-httpd-80' to be started by supervisord
php_1    | [INFO] Enabling 'socat-443-httpd-443' to be started by supervisord
php_1    | [INFO] Enabling 'socat-3306-mysql-3306' to be started by supervisord
Error response from daemon: Ports are not available: listen tcp <IP_ADDRESS>:5432: bind: An attempt was made to access a socket in a way that is prohibited by access permissions```

started with docker compose up as it is now the default recommendation for docker instead of docker-compose up.

This has not been tested with Devilbox. Please do use docker-compose up and in case of something not working as expected use the bug report template. Otherwise it will not be possible for people to reproduce your issue and assisting you with it.

Look for this port on netstat command (netstat -tulpn | grep LISTEN). If it appears there - kill it by process ID - last column number (kill -9 [ID])


Gate docstrings and type hints

What is the expected enhancement?
The standard gates could have a better documentation. They're missing type information on the input and only a few explain what their action on the qubits actually is. This forces users to go look either in the code (which some might not do) or elsewhere (books/internet). Since the qubit ordering is different in Qiskit compared to many other places, I believe it would be very useful to have a more accurate documentation. Especially for users getting started with quantum computing; the gates are probably one of the first objects they get in contact with.
In #3472, many gates already get an updated docstring that includes the matrix representation.
However the types are still missing and the docstrings could be more elaborate in general.
For example we could go from
def rz(self, phi, q):
    """Apply Rz to q."""

to

def rz(self,
       phi: Union[int, Qubit],
       qubit: Union[int, Qubit]) -> Instruction:
    r"""
    Apply the RZ gate to the specified qubit.

    The RZ gate rotates the state of the qubit around the Z-axis by the angle phi,
    e.g. it maps $|0\rangle$ to $|0\rangle$ and $|1\rangle$ to $-|1\rangle$.

    **Matrix Definition**

    The matrix for this gate is given by:

    .. math::
        U_{\text{RX}}(\theta)
            = \exp\left(-i \frac{\theta}{2} \sigma_X \right)
            = \begin{bmatrix}
                \cos(\theta / 2) & -i \sin(\theta / 2) \\
                -i \sin(\theta / 2) &  \cos(\theta / 2)
            \end{bmatrix}

    Args:
        phi: the rotation angle
        qubit: the qubit to which the RZ gate is applied

    Returns:
        the instruction added to self
    """

(Note: the matrix representation bit is part of #3472)

This is partially addressed by #4017 but it would probably still be useful for IDE and linter purposes to have type hints and type documentation in the docstring.

It is beneficial for whole project if type hints are supported.


hspell: remove build perl from runtime closure

the build perl (and zlib) are still needed during the build phase, but now the host perl is correctly used at runtime.
Description of changes

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

There's a merge conflict

There's a merge conflict

rebased


Support multi-component GOPATH

Fixes the following when having multi-component GOPATH value:

Message WARNING: for go vendoring to work your project needs to be somewhere under $GOPATH/src/;
...if we are trying to vendor from the same repository we are in check.

Thanks! ✨


Live

Docs Build status updates of commit bde5f3f:
:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Add filtering based on vaccine type

This is tricky to do, since I'm not sure we have the data necessary to do this right now, but just noting a request I've heard. But if we can reliably normalize the data from pharmacy providers, I know some people are only looking for 1st or 2nd shots and then some people are looking for types of vaccines (eg, Moderna, Pfizer, J&J).
Right now I've started to keep track of the appointment "type" which does include some of this information, but this is usually just based on text we get back from the pharmacy, so it's not standardized across different pharmacies. And we also don't have this information for all chains (some we just have appointment times, and other we don't have any details).

Looks like this has been completed via this commit https://github.com/GUI/covid-vaccine-spotter/commit/5e8efb7e715e9850bceb4cc69a33ebd82bd64953

Ah, yes, thanks for the reminder. :)


optimization done by reducing quality

I was able to reduce the size of the image at load time, which drastically improved loading speeds. Then when you view the images in the full version it takes a bit longer, but it is full quality. Going to make some skeletons this week.

Images load faster due to compression and there is now a skeleton on the explore page that maps out where the components will go in order to make it smoother in transition while data is being pulled from the DB.


Stop using Travis-CI cache

This just doesn't optimize things with Gradle due to the lock file being
changed in ~/.gradle/caches on each build.  Disable for now; hopefully
Travis-CI will fix this.

Confirmed, build is actually faster this way.


Change some Latvian translation strings

Changes are made to better express missing fields data

Much appreciated, thanks!


Encoding issue after build

Hello. When i run the server I get this in index view:
LA NOUVELLE FAÇON - Développez votre patrimoine.
When I do middleman build, I get this in the HTML:
LA NOUVELLE FAÃ‡ON - DÃ©veloppez votre patrimoine.
I added: set :encoding, "utf-8" but it does not work. Any idea? Thank you.

Which version of MM and what OS?

I'm doing some issue-gardening 🌿🌷🌾 and came across this issue.
Sorry that this has lingered for quite a while! I'd suggest either closing this issue or submitting a PR with an implementation or at least a failing test.


CycloneDxReporter: Fix the processing of copyright statements

One important aspect of the copyright statements processing is the
merging of multiple copyright statements into single ones. Thus, collect
all copyright statements to be included first and then pass them to the
processing.
Previously, the processing was called once per license which hinders the
merging from doing its job.
Note: In a following change the call to the copyright statements
processor will be moved into a function of the resolved licenses API.

BTW, one thing that just came to my mind @fviernau, shouldn't we maybe find a way to put already processed copyrights into ReporterInput so not each reporter has to do it by itself?

BTW, one thing that just came to my mind @fviernau, shouldn't we maybe find a way to put already processed copyrights into ReporterInput so not each reporter has to do it by itself?

@sschuberth - I don't think so, because how the copyrights are being processed depends on the reporter. For example consider :

listing all copyrights of all licenses / packages in one large list
one copyright list per package
one copyright list per (package, license)

Different reporters have different groupings and thus the processing IMO should happen in the reporter on-the-fly.
I'll have another PR soon, no related to reporters, but it will make this topic a bit clearer I believe.


Push Does Not Arrive For iOS10 app

hi all I have an iOS10 app, using firebaseinstanceID 2.0.3 installed via cocoapods and I’m getting a FCM token OK at startup. but when I enter that token in the Firebase web console by sending to Single Device, the push never arrives. Once, on October 6, the push arrived, but never after that.
I feel it is safe to assume the token I used was still valid. It was generated a couple of minutes before I sent the push.
I re-installed the app and tried again many times since Oct 6, never saw a push by an FCM token since then. The push will arrive if I use the APNS token via NodeJS-based script, so it is definitely the Firebase infrastructure that is the issue here.
Any suggestions? I have also done things like registering for notifications as early in the applicationDidFinishLaunching callback, reverting to FirebaseInstanceID 2.0.0 and these have had no effect.

@mazz Please update to FirebaseInstanceID 2.0.4 and FirebaseMessaging 2.0.4 and retry.

@paulb777 thanks, that seems to have remedied the situation. Thanks.
BTW: for Xcode 9 users who are upgrading to 2.0.4, you need to set your Build Settings > Swift Version to 4.0 for 2.0.4 to compile.

@mazz Glad it's working now. Thanks for reporting back.
BTW, the Firebase code is all Objective C, son nothing about Firebase itself should require Swift Version setting changes.


Remove argument from stm32_eth::eth_interrupt_handler

The function only does an "atomic" write, we could (unsafely) get the peripheral ourselves with ptr().
This will allow us to remove some unsafe from our examples without adding more complexity to them. Besides, the unsafe in the example is only sound because we know the internals of the function, if the function's internals change, they could become unsound, we shouldn't be giving this type of example to our users.

I think this change sounds like a good idea, but we should find a way to clearly document that the function is only race-condition free so long as no other code (within the library) writes to eth_dma.dmasr

Fixed in #75


Generate script from netParams and simConfig objects

I have done it for NetPyNE-UI https://github.com/MetaCell/NetPyNE-UI/pull/64
Do you also want this method inside NetPyNE @salvadord ?


Remove apparently obsolete code in iris.save

I suspect that [this line] does not do anything useful, but recent testing changes have to accommodate it, e.g.
Notably here, and this supporting code,
which were introduced in #3411
This is now affecting #4913, which is also having to work around testing for this usage.
But I can't see that this usage does any good (!)
UPDATE:
This fails in iris.tests.test_file_save, demonstrating that there was originally an intention to support saving to an open file (handle), which is what this code was supposed to enable.
So, at present, this does work for PP files (as tested in iris/tests/test_file_save.py), but not for netcdf saves.
Not knowing about this, I recently wrote a PoC patch to add saving to an open netCDF4.Dataset object, via a different mechanism here
TODO: possibly should fix to support this mode?

Result : it is not actually obsolete !
Though, it seems only used for DOT+PNG at present, which we might well want to drop.


Optimization of filter operation on ByteViewArray

Which issue does this PR close?

Closes #.
Rationale for this change

Performing a filter operation on ByteViewArray only filters its view data members, but clones the entire buffers, which may result in the ByteViewArray holding some unnecessary buffers, which may prevent some memory resources from being released in a timely manner.
This PR records whether each buffer needs to be retained while filtering view data members, and updates the buffers of ByteViewArray using the recorded information.
The reason why this PR replaces unwanted buffers with empty buffers instead of deleting them directly is that this processing preserves the mapping relationship between views and buffers.
What changes are included in this PR?

Are there any user-facing changes?

Thanks @chloro-pn. 🙏   We have gone back and forth on this idea while integrating StringView into datafusion
The StringViewArray has a gc method but this does require an extra copy of the views
https://docs.rs/arrow/latest/arrow/array/struct.GenericByteViewArray.html#method.gc
In fact @XiangpengHao  used this API in https://github.com/apache/datafusion/pull/11587 to solve exactly the problem you are describing (too much unused data in the buffers)
However, what I worry about is that the heuristic to determine when to compact the string data / buffers will not be ideal for any particular usecase and that one princple of this crate is to give the user maximal control over performance
So I would like to propose we support two different modes for filter kernels:

Filter only views
Filter the views and copy matchings strings to a new buffer

@XiangpengHao I wonder if you have any thoughts to add here?

From the documentation of gc, it appears to do at least two things:

Compress data buffer (expensive)
Clean up the buffers based on the view list (cheap)

The modification of this PR does not perform expensive operations of compressing data buffers, it only releases the reference count of buffers that no longer need to be held (the resources held by buffers are managed based on Arc's reference counting mechanism)
So this PR cannot completely solve the problem you mentioned above (because compared to the gc method, it only does the less expensive part, for example, if all the buffer in the buffers hold different parts of the same Bytes, then this PR is meaningless because Byte will always be held), but it also does not introduce expensive overhead.

I think this is a clever PR and is complementary to the gc approach. If I understand correctly, it replaces unused buffers with empty buffers so they can be released.
There's a hierarchy of gcs: (1) replace unused buffer with empty buffer, without touching the view array (2) directly remove the unused buffers, but need to correct the buffer ids in the view array (3) complete gc, as implemented in the current gc function.
This PR makes the first approach, which is transparent to users and has relatively low overhead.

My suggestion is that we can treat the second type of GC like the current GC (third type GC) as an independent method that users can choose to call.
The first type of GC in this PR can be placed in a new filter method, temporarily called filter2, to distinguish the old filter method. The filter2 method can return some statistical information obtained during the filtering process, which can help users choose whether to perform other GC operations in the future. For example, we can return the number of empty buffers and the proportion of empty buffers in the buffers to guide users whether to perform the second type of GC.
Here, we can also obtain statistical information to guide users on whether to call the third type of GC, but I currently do not understand the implementation details of the third type of GC. I need to look at the source code later.
The reason for encapsulating the first type of GC into filter2 instead of providing it as a standalone method like other types of GC is:
It is lightweight and can be processed together during the filtering process. Putting the second type of GC in the filter method is not more advantageous than calling it as an independent method.

My concern with this approach (and with any of the "gc while filtering" approaches) is that it will work well for some use cases but be unavoidable overhead with other use cases.
I think we need an API that allows callers to specify how they want the GC to be done
What I have talked about with @XiangpengHao and a few others is  making some sort of stateful filter API; Among other things such an API would give us a place to put options for filtering
So maybe it would look like
// create a new filterer
let filterer = ArrayFilterer::new()
  // specify that GC should look for empty buffers
  .with_gc_strategy(GcStrategy::FindEmptyBuffers);

// feed in arrays and their filters (BooleanArray)
filterer.push(array1, filter1)?;
filterer.push(array2, filter2)?;

// Produce the final output array
let filtered_array = filterer.build();

My concern with this approach (and with any of the "gc while filtering" approaches) is that it will work well for some use cases but be unavoidable overhead with other use cases.
I think we need an API that allows callers to specify how they want the GC to be done
What I have talked about with @XiangpengHao and a few others is making some sort of stateful filter API; Among other things such an API would give us a place to put options for filtering
So maybe it would look like
// create a new filterer
let filterer = ArrayFilterer::new()
  // specify that GC should look for empty buffers
  .with_gc_strategy(GcStrategy::FindEmptyBuffers);

// feed in arrays and their filters (BooleanArray)
filterer.push(array1, filter1)?;
filterer.push(array2, filter2)?;

// Produce the final output array
let filtered_array = filterer.build();

Provide a new API instead of modifying the existing one, agree with this and leave the choice to the user.

Provide a new API instead of modifying the existing one, agree with this and leave the choice to the user.

I will try and write this up over the next day or two into something more coherent

I still have writing up the ideas into a more coherent form on my list, but I probably won't get to it for the next few days (I have too too many other projects in flight at the moment)

I have not had a chance to write up these ideas yet, I apologize

It's okay, this is not an urgent matter.


Saves all resources

Saves all available resources #360

:tada: This PR is included in version 0.9.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


v4l2dec: fixed compiling error

when the compile opton "strict-aliasing" is actively, gcc 3 manual
says "an object of one type is assumed never to reside at the same
address as an object of a different type, unless the types are
almost the same".

+1

merged as d9759e467682467f1b2be974e9fa2ffb850f43ed


Cross Side Scripting prevention by use of textContent

Implements the approach outlined in this comment as a safety against Cross Side Scripting (closing #2892):

rename translation keys from ...Html to ...Text as they'll now be injected by text, both on the Accordion (4 keys) and CharacterCount (6 keys)
replace injection of content in the CharacterCount to use textContent (2 places, visible and visually hidden announcement)
replace injection of content in the Accordion to use textContent (2 places, setExpanded and updateShowAllButton
add 2 new show/hideSectionAriaLabelText (or just ...AriaLabel) options to the macro and in the default JavaScript configuration and update setExpanded and updateShowAllButton to use them for labelling the buttons
check that the accessible name gets conveyed properly to assistive tech now we've changed it to use aria-label

Notable things:
The commits should paint a good picture of the step-by-step changes. It's worth noting though that for implementing the swap to aria-label in the accordion:

I added test checking the accessible name of the node rather than just the presence of hidden content (these may not have been available in Puppeteer at the time, see their blog article for more info about their API)
I've made the aria-label match the current accessible name, including a leading space before the commas
I've kept the commas in the HTML, as they help delimit the label of the button before CSS kicks in
The change means the HTML of the button before CSS kicks in no longer reads "Show this section"/"Hide this section", but only "Show"/"Hide". That's an unfortunate side-effect of this approach, but seems minor enough.

I'll need to make a pass with AssistiveLabs to check 5, but given tests checked the accessible name, I'm hoping things will work out OK on that side 🤞🏻

I'll need to make a pass with AssistiveLabs to check 5, but given tests checked the accessible name, I'm hoping things will work out OK on that side 🤞🏻

The results are in and looks like nothing broke from the change: https://docs.google.com/spreadsheets/d/1r1541gETGjavSxpjQQOLiVLvlNvinHHPQw7X8RKUnyE/edit#gid=0 🎉 🎉 🎉

Testing with Dragon done, and it's all OK on that side too: https://docs.google.com/spreadsheets/d/1r1541gETGjavSxpjQQOLiVLvlNvinHHPQw7X8RKUnyE/edit#gid=0 🎉 🎉 🎉


Make forwarding unique_any_t constructor conditionally noexcept

Closes #191

This approach does not work if the derived type's constructor is protected. Something like is_nothrow_constructible should probably work. E.g. see https://godbolt.org/z/oYxaneecY

@dunhor Yup (see #191), but I think you found the solution!

I think this should work!

Oh damn, I'm blind. 😅
I just opened a PR with the same goal: https://github.com/microsoft/wil/pull/248
Unfortunately wistd::is_nothrow_constructible_v has the same problem as a noexcept(...): It doesn't work if the constructor isn't publicly accessible. My PR adds a few unit tests which fail with your PR.
I solved the problem by simply making the constructors public.

@lhecker Hm I guess that is a problem with wistd::is_nothrow_constructible as it currently seems to use noexcept() internally. It works fine with std::is_nothrow_constructible: https://godbolt.org/z/nGq53zsoW
Maybe that underlying problem can be fixed? Possibly hard to make that compatible with all compilers.

@lhecker Hm I guess that is a problem with wistd::is_nothrow_constructible as it currently seems to use noexcept() internally. It works fine with std::is_nothrow_constructible: godbolt.org/z/nGq53zsoW Maybe that underlying problem can be fixed? Possibly hard to make that compatible with all compilers.

It compiles fine, but does it determine the correct noexcept? https://godbolt.org/z/j86srbdnz

@lhecker Oh... (You forgot to make Base() actually noexcept but even if you do, std::is_nothrow_constructible_v returns false.) The standard says this about access checking for std::is_*constructible_v:

Access checking is performed as if in a context unrelated to T and any of the Args.
Only the validity of the immediate context of the variable initialization is considered.
[Note 6: The evaluation of the initialization can result in side effects such as the instantiation of class template specializations and function template specializations, the generation of implicitly-defined functions, and so on.
Such side effects are not in the “immediate context” and can result in the program being ill-formed.
— end note]

https://eel.is/c++draft/type.traits#meta.unary.prop-9
But I'm not sure what it means by 'immediate context', I can't find a definition


do not display tables if no data following Mike's recommendation

Working as described on the Dev site


Sample app can't open an empty notebook (without metadata info inside)

If I change the content of sample test.ipynb with an emply document as following:
{
"cells": [],
"metadata": {},
"nbformat": 4,
"nbformat_minor": 0
}

I got an exception
bundle.js:2413 Exception in signal handler: TypeError: Cannot read property 'display_name' of undefined(…)

from deserialize() in :
contents.get(NOTEBOOK, {}).then(function (data) {
      jupyter_js_notebook_1.deserialize(data.content, nbModel);

I managed to avoid the exception by adding following code before deserialize call:
if (!data.content.metadata.kernelspec) {
data.content.metadata.kernelspec = { "display_name": "", "language": "", "name": ""};
}

but after saving the notebook, the kernel spec information is never updated.

Thanks for the report, @tediyuwono!  Fix is in #102.


exception logging an error with a big local variable

Describe the bug:
apm python agent tries to log an exception with a big local variable in the execution stack results in unexpected behavior
To Reproduce
# serializers.py
from rest_framework import serializers

class UploadFileSerializer(serializers.Serializer):
    myfile = serializers.ListField(child=serializers.FileField())

    def validate_myfile(self, value):
        raise serializers.ValidationError("Document upload size limit is exceeded")
# urls.py
urlpatterns += [path('upload_file', UploadFile.as_view(), name='upload_file')]

# views.py
class UploadFile(GenericAPIView):
    serializer_class = UploadFileSerializer

    def post(self, request):
        data = request.data            # this local variable is the problem
        serializer = self.serializer_class(data=data)
        try:
            if serializer.is_valid(raise_exception=True):
                return Response(status=status.HTTP_200_OK)
        except Exception as e:
            logger.exception(e)
            raise e

try to upload file > 3 mega (use multipart)
Expected result
return 400 because of ValidationError exception
Actual result
[ERROR] {'myfile': [ErrorDetail(string='Document upload size limit is exceeded', code='invalid')]}
Traceback (most recent call last):
  File "/home/me/myporject/api/views.py", line 127, in post
    if serializer.is_valid(raise_exception=True):
  File "/home/me/myporject/venv/lib/python3.9/site-packages/rest_framework/serializers.py", line 242, in is_valid
    raise ValidationError(self.errors)
rest_framework.exceptions.ValidationError: {'myfile': [ErrorDetail(string='Document upload size limit is exceeded', code='invalid')]}
Top level ElasticAPM exception caught - failed creating log record.
[ERROR] Unable to process log entry: cannot pickle '_io.BufferedRandom' object
Traceback (most recent call last):
  File "/home/me/myporject/api/views.py", line 127, in post
    if serializer.is_valid(raise_exception=True):
  File "/home/me/myporject/venv/lib/python3.9/site-packages/rest_framework/serializers.py", line 242, in is_valid
    raise ValidationError(self.errors)
rest_framework.exceptions.ValidationError: {'myfile': [ErrorDetail(string='Document upload size limit is exceeded', code='invalid')]}

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/handlers/logging.py", line 81, in emit
    return self._emit(record)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/contrib/django/handlers.py", line 63, in _emit
    return super(LoggingHandler, self)._emit(record, request=request, **kwargs)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/handlers/logging.py", line 152, in _emit
    exception = handler.capture(self.client, exc_info=record.exc_info)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/events.py", line 96, in capture
    frames = get_stack_info(
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/utils/stacks.py", line 325, in get_stack_info
    result = get_frame_info(
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/utils/stacks.py", line 294, in get_frame_info
    f_locals = {varname: locals_processor_func(var) for varname, var in compat.iteritems(f_locals)}
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/utils/stacks.py", line 294, in <dictcomp>
    f_locals = {varname: locals_processor_func(var) for varname, var in compat.iteritems(f_locals)}
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/events.py", line 103, in <lambda>
    locals_processor_func=lambda local_var: varmap(
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/utils/__init__.py", line 66, in varmap
    name, dict((k, varmap(func, v, context, k, **kwargs)) for k, v in compat.iteritems(var.copy())), **kwargs
  File "/home/me/myporject/venv/lib/python3.9/site-packages/django/http/request.py", line 517, in copy
    return self.__deepcopy__({})
  File "/home/me/myporject/venv/lib/python3.9/site-packages/django/http/request.py", line 478, in __deepcopy__
    result.setlist(copy.deepcopy(key, memo), copy.deepcopy(value, memo))
  File "/usr/lib/python3.9/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.9/copy.py", line 205, in _deepcopy_list
    append(deepcopy(a, memo))
  File "/usr/lib/python3.9/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/usr/lib/python3.9/copy.py", line 270, in _reconstruct
    state = deepcopy(state, memo)
  File "/usr/lib/python3.9/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.9/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python3.9/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/usr/lib/python3.9/copy.py", line 270, in _reconstruct
    state = deepcopy(state, memo)
  File "/usr/lib/python3.9/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.9/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python3.9/copy.py", line 161, in deepcopy
    rv = reductor(4)
TypeError: cannot pickle '_io.BufferedRandom' object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/me/myporject/venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 34, in inner
    response = get_response(request)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/django/core/handlers/base.py", line 115, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/django/core/handlers/base.py", line 113, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/django/views/decorators/csrf.py", line 54, in wrapped_view
    return view_func(*args, **kwargs)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/django/views/generic/base.py", line 71, in view
    return self.dispatch(request, *args, **kwargs)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/rest_framework/views.py", line 505, in dispatch
    response = self.handle_exception(exc)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/rest_framework/views.py", line 465, in handle_exception
    self.raise_uncaught_exception(exc)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/rest_framework/views.py", line 476, in raise_uncaught_exception
    raise exc
  File "/home/me/myporject/venv/lib/python3.9/site-packages/rest_framework/views.py", line 502, in dispatch
    response = handler(request, *args, **kwargs)
  File "/home/me/myporject/api/views.py", line 131, in post
    logger.exception(e)
  File "/usr/lib/python3.9/logging/__init__.py", line 1481, in exception
    self.error(msg, *args, exc_info=exc_info, **kwargs)
  File "/usr/lib/python3.9/logging/__init__.py", line 1475, in error
    self._log(ERROR, msg, args, **kwargs)
  File "/usr/lib/python3.9/logging/__init__.py", line 1589, in _log
    self.handle(record)
  File "/usr/lib/python3.9/logging/__init__.py", line 1599, in handle
    self.callHandlers(record)
  File "/usr/lib/python3.9/logging/__init__.py", line 1661, in callHandlers
    hdlr.handle(record)
  File "/usr/lib/python3.9/logging/__init__.py", line 952, in handle
    self.emit(record)
  File "/home/me/myporject/venv/lib/python3.9/site-packages/elasticapm/handlers/logging.py", line 84, in emit
    sys.stderr.write(to_unicode(record.msg + "\n"))
TypeError: unsupported operand type(s) for +: 'ValidationError' and 'str'

During handling of the above exception, another exception occurred:
...

[25/Sep/2021 14:38:21] "POST /api/upload_file HTTP/1.1" 500 27

Environment (please complete the following information)

OS: linux
Python version: 3.9 tested on 3.6 and 3.8
Framework and version [e.g. Django 2.1]:  django 2.2 and drf 3.10
Agent version: 6.4.0

Hmmm, I'm pretty sure we have logic in place to truncate these large variables. Obviously something is going wrong there, we'll find some time to take a look.

@beniwohli  #1568 doesn't close this, you only fixed the last exception


Test should be sorted

From<EMAIL_ADDRESS>on October 26, 2008 08:41:46
Our test runner runs the tests in a different order than the default junit
runner. This should be fixed.
Original issue: http://code.google.com/p/powermock/issues/detail?id=40

From<EMAIL_ADDRESS>on October 30, 2008 11:55:31
Tests are now "sorted" correctly, i.e. they are executed in the same order as they
are defined in the test class.
Status: Fixed


VSCode Jupyter: "The editor could not be opened because the file was not found."

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.75.0-insider
OS Version: Ubuntu 20.04.5 LTS
Jupyter Extension Version: v2023.2.1000541047 (pre-release)

Steps to Reproduce:

bug.py

def generate_bug():
    raise Exception

From a vscode jupyter cell, run

from bug import generate_bug
generate_bug()

Click on link to file in stack trace.

can you check what versions of ipython and ipykernel you're using?
import IPython
import ipykernel
print('ipykernel version: ', ipykernel.__version__)
print('IPython version: ', IPython.__version__)

this works for me with
ipykernel version:  6.21.2
IPython version:  8.10.0

@sabetAI can you please update to latest Insiders to see if it works for you? it's working for me in 1.77-Insiders.

8.10.0

Upgraded to
Version: 1.77.0-insider (Universal)
Commit: c97d5812f10c28efbcdb1fd404bc25afae873312
Date: 2023-03-16T05:22:31.950Z
Electron: 19.1.11
Chromium: 102.0.5005.196
Node.js: 16.14.2
V8: <IP_ADDRESS>-electron.0
OS: Darwin arm64 21.6.0
Sandboxed: Yes

still getting the same issue.

can you check what versions of ipython and ipykernel you're using?
import IPython
import ipykernel
print('ipykernel version: ', ipykernel.__version__)
print('IPython version: ', IPython.__version__)

this works for me with ipykernel version: 6.21.2 IPython version: 8.10.0

Where do I set the kernel versions?

It's a package that is installed into your python environment, so it's controlled by whatever package manager you're using. You can check the version by just running that code I provided in a cell.

It's a package that is installed into your python environment, so it's controlled by whatever package manager you're using. You can check the version by just running that code I provided in a cell.

I figured that's what you meant. Changed it but still got the same issue.

with this build of vscode
Version: 1.77.0-insider
Commit: c97d5812f10c28efbcdb1fd404bc25afae873312
Date: 2023-03-16T05:37:57.680Z (1 day ago)
Electron: 19.1.11
Chromium: 102.0.5005.196
Node.js: 16.14.2
V8: <IP_ADDRESS>-electron.0
OS: Darwin arm64 21.6.0
Sandboxed: Yes

what does the link look like in the stack trace is it pointing to the correct place and end with a :[line number]
e.g.
c:\src\test\7\bug.py:2

@amunger yes the link itself is correct. I can verify the path is correct by opening with vim from the command line.

@amunger actually, the file path is correct, but the line number isn't, says 252 but is actually 422:

@amunger @rebornix any other thoughts? 😭

My suspicion is that the home alias ~ doesn't work correctly. Could you try printing a link each way and confirm if only the full filepath works (using a file that exists):
print('home/username/file.txt')
print('~/file.txt')

I don't know about the wrong line number, but we don't make any modifications to stack traces that come from the kernel, so that might be an issue with the kernel library.

Still doesn't work when I replace the ~ alias with home/my_username. However if I use cmd+p and paste the filename, it takes me to the source.

I think we just have some issues with linking from cell output on linux. From an ssh connection, I get some pretty inconsistent behavior:

So I can't even get full filepaths to register as links and clicking that ~ prefixed link will try to open a file in /aamunger/script.py, rather than the correct home location.

Cool. How to patch?

have this issue too

Any updates on this ?

Any updates on this ?

I switched to neovim

I believe this was fixed with https://github.com/microsoft/vscode/pull/196043, let us know if something still isn't working.


Add pyOverrides after import in exercise too

Fixed #877

Download:
Environment: QT=5.12, ARCH=32, CONFIGURATION=release, QTIFW=C:\Qt\Tools\QtInstallerFramework\3.1


Upgraded from v1.4 to v.16 lost config and

hi , on sunday i upgraded from v1.4 to v1.6 but after a webserver outage now i have this situation:

no more configuration file in all miners and as you can see message with error (i just screnshot a sample of the list)
the upgrade was to upload file from v1.6 to the webserver keeping the db

There are quite a few database changes between 1.4.0 and 1.6.0 so if you want to keep the DB data then you're going to have to migrate over all the data to the new database version.

How to do it please?

You'll need to download an SQLite DB browser, then open the old database and export the data, then open the new database and import the data and then save the database.


Add methods to determine if Senzing schema exists

Pull requests:

https://github.com/Senzing/go-databasing/pull/58


[SPARK-13553][SPARK-13554][SQL] Migrates basic inspection and typed relational operations from DataFrame to Dataset

What changes were proposed in this pull request?
This PR migrates basic inspection and typed relational operations from DataFrame to Dataset. This is the first step of unifying DataFrame and Dataset API.
TODO

[ ] Migrate explode operations.

How was this patch tested?
Corresponding test cases are migrated from DataFrameSuite to DatasetSuite. These newly added test cases all share the same "df-to-ds" prefix so that we can easily execute them under SBT using:
sql/test-only *.DatasetSuite -- -z "df-to-ds"

This prefix will be removed after migrating all the DataFrame operations.

Test build #52187 has started for PR 11431 at commit f38c016.

Test build #52188 has started for PR 11431 at commit ee9c432.

Test build #52187 has finished for PR 11431 at commit f38c016.

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

Merged build finished. Test PASSed.

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

Test build #52188 has finished for PR 11431 at commit ee9c432.

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

Merged build finished. Test PASSed.

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

Can you rebase to get rid of the merged commit?

@liancheng I just pushed two commits to resolve the conflicts.

Test build #52191 has started for PR 11431 at commit 6cb945f.

Test build #52191 has finished for PR 11431 at commit 6cb945f.

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

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

Merged build finished. Test PASSed.

Closing this in favor of #11443.


Set other qualifications section to incomplete when edited

Context
Currently, when the Academic and other relevant qualifications section is marked as complete, the candidate can add, edit or delete qualifications without it setting the section to incomplete.
This means that a candidate can delete all their qualifications and submit their application as our validations only check if all the sections have been completed.
Changes proposed in this pull request

When a candidate adds, edits or deletes a qualification the other_qualifications_completed attribute on their application form is set to false

Guidance to review
This is the third PR for this card. The first is #1464 and the second is #1466
Link to Trello card
https://trello.com/c/wrAbxDA8/
Things to check

[x] This code doesn't rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] New environment variables have been added to the Azure config

Unfortunately this will suffer from the same issue as degrees. See https://github.com/DFE-Digital/apply-for-postgraduate-teacher-training/pull/1466#pullrequestreview-364721867.

I have confirmed with Paul that this completing this section is not mandatory.


Set v9.0.0

What does this PR do?

Sets the version to 9.0.0.
Updates all dependencies to their latest versions.

How should it be tested manually?
yarn test
# or
npm test

Pull Request Test Coverage Report for Build 289

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 286:
0.0%

Covered Lines:
646

Relevant Lines:
646

💛  - Coveralls


Fix s3csi path & readme

I found no subpath when using s3csi. The readme refdata.type is for using s3csi not s3fs

Thanks for the PR.  We are investigating as the subPath should be found.

Hi ksuderman
This error occurs if there are subpath, and I use no subpath only see the byhand managed two folder
Error: failed to create subPath directory for volumeMount "refdata-gxy" of container "galaxy-init-mounts"
I found older versions don't have subpath. If the path of s3 has not changed from the old version to the current version, there should be no need to add a new subpath.

@bravo325806 Can you clarify what you meant by "I found older versions don't have subpath"? Are you trying to upgrade or is this a fresh install?
The subPath is not cvmfs specific and is needed for the bucket too: http://biorefdata.s3-website-ap-southeast-2.amazonaws.com/#galaxy/v1/

@nuwang Sorry I didn't make this part clear. I used v5.1.0
https://github.com/galaxyproject/galaxy-helm/blob/v5.1.0/galaxy/templates/deployment-web.yaml#L138-L139
Now I have upgrade to v5.15.0, but what I see in the new version is that there is a subpath option https://github.com/galaxyproject/galaxy-helm/blob/v5.15.0/galaxy/templates/deployment-web.yaml#L135-L137
Because values.yaml
The prefix /galaxy/v1/data.galaxyproject.org is already preset
https://github.com/galaxyproject/galaxy-helm/blob/v5.15.0/galaxy/values.yaml#L453
Ｍaybe we can only change values.yaml?

@bravo325806 I made a PR to your PR as jobs that are run also mount the refdata PV and should not include the subpath  when using the s3csi.
Also, that table of values in the README.md is generated by a script from comments in the values.yaml file, so I updated the comment to match your update to the readme so they don't get lost the next time we generate that table.
As soon as you merge those changes we can go ahead and merge your PR.

@ksuderman I have merged your PR, Thanks


Create Directory

Can you make the mod create a valid directory, it would be great for modpacks.

Hello, this could a be nice enhancement although at the moment I'm not exactly sure how I would implement it.


Duplicate timestamp from log

Describe the bug
in the log screen the timestamp is duplicated, as shown in the screenshot
To Reproduce
Steps to reproduce the behavior:

Launch the application
select a running container
go to Logs
See error

Expected behaviour
I would expect to see only a timestamp of the logs
Screenshots

Desktop (please complete the following information):

OS: Fedora 35 x86_64
Lazydocker Version
Version: 0.12
Date: 2021-03-24T21:08:19Z
BuildSource: binaryRelease
Commit: 6fd5337cc272289463eb562606e67515f48b4aff
OS: linux
Arch: amd64

This is now configurable. See https://github.com/jesseduffield/lazydocker/pull/336


Adapt documentation to changed URL

both repository and GH pages URLs are affected

This changes all occurences of github.com/vvvv/SVG and vvvv.github.io/SVG to the new URLs.
Mentions of vvvv related to copyright remain.
@tebjan - please check if this is sufficient.

Merging this to avoid conflicts in release notes and fix the links. Further changes can be added later.

Merging this to avoid conflicts in release notes and fix the links. Further changes can be added later.


Winter break meeting times.

A lot of people are planning on working during the break.
For the sake of preventing people from having to work alone, please check in here whenever you get to the lab, especially if you're someone that has lab access so that other people can know whether or not they'll have someone to work with when they come in.

Wednesday 12/23:
Ahmed Samara in @ 10:00
Vijay, Sean, and Will should be coming in later too.

Are you all done for the day? I am in the lab now.
Josh Stevens @ 2.22

I'm here with Josh.  Will be here till 7pm or so

Anyone else coming in today?

Ahmed in @ 11:00
The doors next to the oval are locked (even to card access), but the entrance next to the bus stop is unlocked.

Yoder in Troxler @ 0930.
I didn't try the doors by the oval but the doors nearest the bus stop are open. Also, if the deck is closed, does that mean free parking on campus within the deck?

I parked yesterday on Oval Drive and did not get a ticket
On Tue, Dec 29, 2015 at 9:21 AM, cdyoder<EMAIL_ADDRESS>wrote:

Yoder in Troxler @ 0930.
I didn't try the doors by the oval but the doors nearest the bus stop are
open. Also, if the deck is closed, does that mean free parking on campus
within the deck?
—
Reply to this email directly or view it on GitHub
https://github.com/IEEERobotics/bot/issues/429#issuecomment-167799262.

Plan is to meet tomorrow at 12 in Troxler!

Yoder, 12:04pm, 1/5/16


Wishlist: Websocket Support

It looks like presently there is not Websocket support. I was hoping to use this plug to proxy to a next.js server, which uses a websocket for webpack-hmr (hot loading). Presently it times out establishing a connection.

While it could be technically possible, the only way to achieve this is to add adapter specific code since Plug does not yet support websockets. I'd like to see more input/thoughts from others


Are RC5 and MDC2 algorithms are disabled by default in OpenSSL 3.3.0?

Previously, RC5 and MDC2 algorithms are disabled by default unless "enable-rc5" and "enable-mdc2" are specified.
In OpenSSL version 3.3.0, legacy ciphers are enabled with functions as specified in guideline. With enabling legacy provider when building the openssl or defined for other OSS functionalities, are these algorithms still disabled by default?

#24607

[ ]

Details


Expose metrics in C/Python APIs

I'm using the LGBMRanker class via the sklearn API in Python to train a lambdamart model, but I'm seeing issues where the ndcg@10 computed by lgb is substantially greater than what is computed in pure Python using the code here: https://gist.github.com/mblondel/7337391#file-letor_metrics-py-L124
I need to compute ndcg in this way because I have a need to first compute it per-query and then average it over a variety of groups (defined by type of query, type of user, etc) so I can examine the ranker's performance within certain small segments of the overall population.
Is this possible? If so I'd love to help by submitting a PR if someone could provide a rough roadmap of where to start.

You can define and use a custom metric coded in Python like here: https://github.com/Microsoft/LightGBM/blob/master/examples/python-guide/advanced_example.py#L149-L151

@Laurae2 Yes thank you, I know about that. But the goal here is actually not to define anything on my own, but rather to expose what Lightgbm is doing internally.
In my case I have the above referenced ndcg calculation in pure Python which disagrees with lightgbm, so I want to resolve that by using the lightgbm version everywhere.

@travisbrady the ndcg calculation in LightGBM is consistent with XGBoost.
The different with normal ndcg is the query with non positive docs. In such cases, LightGBM/XGBoost will give score 1 to that query, but in normal ndcg, it may give score 0 to that query.
refer to: https://github.com/Microsoft/LightGBM/blob/master/src/metric/rank_metric.hpp#L98-L101

The goal here was to expose metrics via the C-api (partially for performance reasons since Python tends to be much slower). Not necessarily to verify the computation itself.


Create folds in xgb.cv putting groups of records in the same fold

The xgb.cv function creates folds of the data upon which it does k-fold CV.
We are working with signal data and we are trying to validate our models. The signal data files come in hour long chunks which we then analyze minute-by-minute, such that our final record which gets fed into xgboost has 1 minute / row. We have around 1000 hours of data. However, when we create our folds for validation, we want all the records from the same original hour long chunk to be in the same fold, otherwise we encounter grossly over-estimated validation metrics. Such that if rows 1:60 correspond to hour 1 of our data set, those 60 row should be in the same fold, to prevent leakage across folds. I cannot find a way to do this using the xgb.cv function.

You can pass your pre-created folds indices through the folds parameter.

Perfect, this is what I needed, thanks!

Could you please let me know in which format are you passing these indices? Is that possible to have folds with different number of indices in it? Thank you!


Update the specification directory structure article

A follow-up to:

https://dev.azure.com/azure-sdk/internal/_git/azure-sdk-docs-eng.ms/pullrequest/942

As I continue to work on overhauling our documentation.
This PR contributes to:

https://github.com/Azure/azure-sdk-tools/issues/7628

Notable changes:

I removed a lot of details about service groups and added a note we do not support new service group going forward, just existing ones.

There is a lot of related discussion in the email thread with subject RE: Typespec questions

I deduped some information about TypeSpec and instead linked to relevant articles.
I removed mention of profile. The repository has profile and profiles folders but these directories appear to be legacy to me, untouched for 3 years.
I removed mention of "component entities" from several places. I believe this was related to the fact there was a 1 to 1 mapping between ARM services and Service Tree service components.
I removed the mention that a GA can have a component preview. This should not be allowed.

Additional notes:

Here: https://github.com/Azure/azure-rest-api-specs/pull/28444 we proposed the name of spec family for what in this article is called either resource provider or service group. We should sort out this nomenclature.
I am going to dedup following article: https://eng.ms/docs/products/azure-developer-experience/design/api-specs/api-dir-layout. I will link to the PR with the dedup here once I have it.
Related work and discussion: https://github.com/Azure/azure-rest-api-specs/issues/28466
Relevant email threads with subjects:

Re: Enforcing Unified API Versions in azure-rest-api-specs

Previously Re: TypeSpecValidation and brownfield specs in RPSaaSMaster

Re: Preview specs in stable folder - wrong documentation?
RE: Typespec questions

TODOs:

[ ] Dedup and incorporate this PR info from this page
[ ] Consider adding and mentioning aka.ms link. See e.g. aka.ms/azsdk/api-dir-layout.

The doc edited in this PR doesn't seem to currently take into account the following special case from the email thread Re: TypeSpecValidation and brownfield specs in RPSaaSMaster by @JeffreyRichter, and should be properly documented:

Some "services" MIGHT be divided into sub-services; for example: azure-rest-api-specs/specification/hdinsight/resource-manager/Microsoft.HDInsight at main · Azure/azure-rest-api-specs (github.com)
Here Microsoft.HDInsight (the parent) has preview & stable folders.
But there is also a HDInsightsOnAks folder which also has preview & stable.
This would surface to customers a 2 separate Azure services, and each could version independently.
We would ship 1 SDK for HDInsights and a completely separate SDK for HDInsightsOnAks.
This example is OK with me/us.

cc @josefree

FYI @ladonnaq


Ability to exclude SObject field

Scenario 1:
Round trip SF -> 3rd party system -> SF we transform an SObject which includes a formula field. On the reverse transformation where a round trip SObject is used to update the same record, it fails. This is because the formula field is included as part of the reverse transformation query.
Scenario 2:
From 3rd party system -> SF (Account). Account Transformation will more often than not include the 'Name' field, as this is required. If the response requires a PersonAccount to be created, the 'Name' field is not editable, therefore the DML will fail.
Workarounds:
Clunky
1.) Transform your response as normal to the relevant SObject type. Serialize and deserialize to Map<String, Object>. Remove the SObject field from the map. Serialize and deserialize back to the SObject type. Complete DML as normal.
Repetitive
2.) Create a separate Transformation CMDT and copy all the updatable fields.

Hi @nebc-jasonfung,
I'm trying to decide how best to do this...

It could be done by having two new checkboxes on the Transformation_Field__mdt record: Source_Read_Only__c and Target_Read_Only__c. Then, would make a new instance of Transformation (or ReverseTransformation), it could filter out fields that are read-only on the target (for reversing, the source). I'm preferring this at the moment.

Alternatively, we could have an extra method on the Transformation class itself to let you pass in a BooleanFunction that filters the fields. That would provide more flexibility in the filtering

I think that I prefer 1 because then the CMDT records tell you exactly what's going to happen. But I'm interested to hear your thoughts.
Also, note that we made the constructor that takes List<Transformation_Field__mdt> global so there's a third workaround now of querying the CMDT and filtering yourself, but I think it's still worth adding something to the library to make this more straightforward and consistent.

Hi @aidan-harding
My initial thought when writing up this issue was to resolve this with a new checkbox value, I hadn't considered your 2nd point and even @DanBeerNebula idea of using DescribeFieldResult.
With that, I agree that point 1 is the cleanest solution. Anyone creating a new Transformation field will see and be aware that a scenario like this issue could happen vs the BooleanFunction where only if you're conscious that it exists, then you will use it, similar to how some test record source functions are missed despite them actually being available in the library, although more forgiving in a test record source sense.

Checkbox it is, then!
Transformation Field already has many fields, but this one seems worth it.
To Dan's suggestion of using DescribeResult, it's not that simple because the transformer transforms anything, not just SObjects. So it can't reliably check the field properties.


Add device data

Please do not merge yet.
This is the first pass of some code to add the device data to uploads; it will need to be merged after #58 and I've made it so the merge will cause a conflict, because CareLink will need to restore the source attribute.
@jebeck -- I'd like to hear what should go in the carelink fields for type, mfr, series, model. Can do it by talking if that's easier.

@jebeck -- I believe this is now ready for merge. It passes all tests and seems to be working, and is current from master.

@jebeck -- Actually -- carelink records are not being filled in with useful device info in the uploader record. I'd really appreciate your thoughts/advice or even code. carelinkDriver.js, line 247.

OK @kentquirk the device info is filled out as I believe we agreed for CareLink (incl. tests for documentation of how it works).
However, this code does not work for CareLink or Dexcom. I tried it and still saw old-style type: upload records for both in the resulting data exported from blip and then traced it as far as here where I found that sessionInfo is not what we upload as the type: upload record, an uploadSessionMeta object is. I did not yet trace back to figure out where that object is generated.

That (for some reason) is in platform-client.
It's confusing enough that you've now convinced me to actually pull it back into the uploader. I'm going to do that as part of this PR of the uploader, and then do a separate one for platform-client.

@kentquirk are you going to remove the upload session creation from platform-client? Just need to think about the fact that it could/will not only be the uploader that push's data into the platform.

@jh-bate Yes. I realize there will someday be other clients. But it's more important to keep the object builder together than it is to put that one feature in the platform-client. Right now, we've been having to rev 3 repositories every time we change the record formats; sometimes 4. At the time we decide to split platform-client into smaller pieces, we can move the entire objectBuilder into the public part of it, but for now we think it's better off unified.


Added verification to validate whether the selected activation function exists

The error appeared when I used:
final_activation: sigmoid in my .yaml config file.
I added both the exception in case of error, and changed the activation to always be titled, so whether you use 'sigmoid' or 'Sigmoid' it will now work without throwing any error!


[$1000] Web - Extra line is being added on Welcome message input field if user prepends ">" block quote

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Create a workspace and go to announce room
Click on the header > settings > Welcome message
Type "> hey" inside of the input field and click on save
Click on Welcome message again and observe the input field

Expected Result:
No extra lines should be added before the welcome message
Actual Result:
Extra line is added before the welcome message
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Version Number: 1.3.34-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/8b12dd4f-5943-4a0b-b7d7-526c0f0d6928
https://github.com/Expensify/App/assets/93399543/c63ebada-8439-410e-b2a7-063853c8f315
Expensify/Expensify Issue URL:
Issue reported by: @Nathan-Mulugeta
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1687981670403749
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~014103a1ee001b423a
Upwork Job ID:<PHONE_NUMBER>681207808
Last Price Increase: 2023-06-30

Proposal
Please re-state the problem that we are trying to solve in this issue.
Extra line is added at the start and end when >  is prepended in Welcome message page
What is the root cause of that problem?
>  is a blockquote markdown.
We add the extra linebreak at the start and end when parsing blockquote.
https://github.com/Expensify/expensify-common/blob/52e551cae863ca0a4ec7be8b1ae9b0dee90632e7/lib/ExpensiMark.js#L305
This is the root cause
What changes do you think we should make in order to solve the problem?
I'm not sure why we add linebreaks. Anyway, removing them solves the issue
What alternative solutions did you explore? (Optional)

This looks similar to this issue: https://github.com/Expensify/App/issues/20725, I've pinged the C and C+ there to see if the resolution would be the same. If it is, I'll pay the bug reporter and close this out

Reproduced:

Superd, so @narefyev91 confirmed that this is the same as https://github.com/Expensify/App/issues/20725#issuecomment-1614443461.
This appears to be a unique bug, with the same root cause, so we'll pay for that bug report

Sorry, I did that to auto-create the job! Sent an offer to @Nathan-Mulugeta for bug report via Upwork. Once that's paid and contract ended, I'll close this

Accepted offer just now @conorpendergrast

Paid, thanks for the speediness @Nathan-Mulugeta!

Hey @conorpendergrast , I saw the job on Upwork and submitted a proposal including a fix and a justification of the bug, but looks like the job was assigned to someone else from the start? How does this work for future bugs that show up?

 We only accept proposals directly on GitHub issues, following this process.
In this case, the bug has been identified as a duplicate of an issue that is already being fixed, so we don't need any more proposals. There's a lot more (over 200!) issues that do need proposals though!


Failed to open region: Empty region directory

What type of bug is this?
Crash
What subsystems are affected?
Distributed Cluster
Minimal reproduce step

Create a table with multiple regions.
Drop the table
While dropping the table, restart the cluster

What did you expect to see?
The cluster is restarted
What did you see instead?
Datanode crashes.
What operating system did you use?
Unrelated
What version of GreptimeDB did you use?
0.8.2
Relevant log output and stack trace
2024-06-10T13:01:56+08:00   2024-06-10T05:01:56.804391Z  INFO RegionServerRequestHandler::handle:RegionServer::handle_region_request{region_id="924401516150784(215229, 0)"}:handle_request{request_type="Create"}: datanode::region_server: Region<PHONE_NUMBER>50784(215229, 0) is registered to engine mito
2024-06-10T13:01:56+08:00   2024-06-10T05:01:56.816112Z  INFO RegionServerRequestHandler::handle:RegionServer::handle_region_request{region_id="924401516150785(215229, 1)"}:handle_request{request_type="Create"}: datanode::region_server: Region<PHONE_NUMBER>50785(215229, 1) is registered to engine mito
2024-06-10T13:01:56+08:00   2024-06-10T05:01:56.843830Z  INFO RegionServerRequestHandler::handle:RegionServer::handle_region_request{region_id="924401516150787(215229, 3)"}:handle_request{request_type="Create"}: datanode::region_server: Region<PHONE_NUMBER>50787(215229, 3) is registered to engine mito
2024-06-10T13:01:56+08:00   2024-06-10T05:01:56.866768Z  INFO RegionServerRequestHandler::handle:RegionServer::handle_region_request{region_id="924401516150786(215229, 2)"}:handle_request{request_type="Create"}: datanode::region_server: Region<PHONE_NUMBER>50786(215229, 2) is registered to engine mito

2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.394926Z  INFO mito2::worker::handle_drop: Try to drop region:<PHONE_NUMBER>50787(215229, 3)
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.395009Z  INFO mito2::worker::handle_drop: Try to drop region:<PHONE_NUMBER>50785(215229, 1)
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.394999Z  INFO mito2::worker::handle_drop: Try to drop region:<PHONE_NUMBER>50784(215229, 0)

2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.412498Z  INFO mito2::region: Stopped region manifest manager, region_id:<PHONE_NUMBER>50784(215229, 0)
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.412554Z  INFO mito2::worker::handle_drop: Region<PHONE_NUMBER>50784(215229, 0) is dropped logically, but some files are not deleted yet
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.412729Z  INFO RegionServerRequestHandler::handle:RegionServer::handle_region_request{region_id="924401516150784(215229, 0)"}:handle_request{request_type="Drop"}: datanode::region_server: Region<PHONE_NUMBER>50784(215229, 0) is deregistered from engine mito
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.412822Z  INFO datanode::alive_keeper: Deregister alive countdown for region<PHONE_NUMBER>50784(215229, 0)
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.418047Z  INFO mito2::region: Stopped region manifest manager, region_id:<PHONE_NUMBER>50787(215229, 3)
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.418183Z  INFO mito2::worker::handle_drop: Region<PHONE_NUMBER>50787(215229, 3) is dropped logically, but some files are not deleted yet
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.418302Z  INFO RegionServerRequestHandler::handle:RegionServer::handle_region_request{region_id="924401516150787(215229, 3)"}:handle_request{request_type="Drop"}: datanode::region_server: Region<PHONE_NUMBER>50787(215229, 3) is deregistered from engine mito
2024-06-10T13:01:57+08:00   2024-06-10T05:01:57.418456Z  INFO datanode::alive_keeper: Deregister alive countdown for region<PHONE_NUMBER>50787(215229, 3)
2024-06-10T13:03:19+08:00   2024-06-10T05:03:19.440529Z  INFO mito2::worker::handle_open: Region<PHONE_NUMBER>50785(215229, 1) is dropped, result: Ok(true)

2024-06-10T13:03:19+08:00   2024-06-10T05:03:19.452182Z  INFO mito2::worker::handle_open: Try to open region<PHONE_NUMBER>50786(215229, 2)
2024-06-10T13:03:41+08:00   2024-06-10T05:03:41.399459Z  INFO mito2::worker::handle_open: Try to open region<PHONE_NUMBER>50785(215229, 1)
2024-06-10T13:03:41+08:00   1: Failed to handle request for region<PHONE_NUMBER>50785(215229, 1), at /home/runner/work/greptimedb/greptimedb/greptimedb/src/datanode/src/region_server.rs:497:14

Error: 0: Failed to start datanode, at /home/runner/work/greptimedb/greptimedb/greptimedb/src/cmd/src/datanode.rs:277:14
1: Failed to handle request for region<PHONE_NUMBER>50785(215229, 1), at /home/runner/work/greptimedb/greptimedb/greptimedb/src/datanode/src/region_server.rs:497:14
2: Failed to open region, at /home/runner/work/greptimedb/greptimedb/greptimedb/src/mito2/src/worker/handle_open.rs:133:54
3: Empty region directory, region_id:<PHONE_NUMBER>50785(215229, 1), region_dir: data/xxxxxx/public/215229/215229_0000000001/, at /home/runner/work/greptimedb/greptimedb/greptimedb/src/mito2/src/region/opener.rs:256:14

The procedure drops the table and removes some of the region directories. But while restarting the cluster, the procedure may roll back and restore the metadata. Then the datanode will open the dropped directory and unable to start.

We can log this error and let the server starts. It would be nice to have a background job to cleanup the state.


Automatic updates issue

The program shows update messages even if I disable the feature in Settings. Moreover, even if I have latest version from GitHub it still suggests me to update. Even when I had that update downloaded, installed and restarted the program, it still shows that message box...

Thanks. Fixed startup update checker.
About updated app: do you encounter that issue with bsp-dec version or stable dev?
Other branch versions still refers to 'latest' release, which is built over 'development' branch, that is stable net472, so it will notify new version even it has no new releases.

Yes, the app doesn't see difference between development and decompiler version, so it insists on updating with any newer version. But now it doesn't show messages if update check is disabled.

It is related to DateTime of the build. The basic algorithm is that GitHub Actions, after building app, writes its current time into 'build' file. Next, application, on update checks - it retrieves data from GitHub Releases, finds 'latest' release, and compare app build date with release build date. Since I still didn't rename in-app project name (as original author requires) - I dont use app versioning. Anyway, versioning wouldn't help in this situation alot. I would provide more information into build file to compare current build with releases, it should contain at least release name (stable branch, or others). So it might happen when unstable release has build earlier than stable, for example branch with new feature updated 20 min ago - would show there is new update, if stable 'latest' release is published right now.

Seems like updates works fine for now, so I'm closing an issue.
I plan to close .net472 build, since .net6 works fine.


Useability; 1.Add Link to Github ReleaseNotes.md ; 2.Add Commit Range's Datestamps.

This project looks great to me! 2 things I'd like and perhaps can fix are ;
1.Add Link to Github ReleaseNotes.md
Right now https://github.com/JakeGinnivan/GitReleaseNotes/blob/master/ReleaseNotes.md
is not referenced from https://github.com/JakeGinnivan/GitReleaseNotes/releases
2.Add Commit Range's Datestamps.
On the notes page, https://github.com/JakeGinnivan/GitReleaseNotes/releases  ,
each section includes a section similar to the below. Notice that the commit sha's do not show a date range. Since it may be that no work was done for some time after the prior release, or that work dates were overlapping, I find date stamps a helpful indicator to be able to look at logs for the items.
 0.4.0 (25 May 2014)

 - [#35](https://github.com/JakeGinnivan/GitReleaseNotes/pull/35) - When specifying 'FromTag all' the issues closed for the first tag aren't included contributed by Petrik van der Velde ([pvandervelde](https://github.com/pvandervelde))

Commits: 3cb3104f89...ae4bda5b0b
```
2A. If we had the Diff feature in this ticket that would also be great;
Commit range should link to GitHub compare enhancement
#44 opened on Jun 25 by JakeGinnivan

2B. FYI, this ticket is slightly related to putting an issue ID in a branch name.
Support Issue numbers in branch names
#19 opened on Dec 17, 2013 by JakeGinnivan

@AnneTheAgile , I see you have committed a few things. Do you think it's ready for a PR?


Same column (and line) twice with word wrap enabled

VSCode Version: 1.12.1
OS Version: Windows 10 Pro (1703)

Steps to Reproduce:

Open new window, write on first line abcdefghijklmnopqrstuvwxyz and make that line wrap to next one.
Now, with cursor at the start of the alphabet, you should press right arrow 26 times to reach the end. But actually, it must be hit 27 times, which is confusing...

Maybe, better explanation with images...

Column 25, cursor at the first line.

Column 25, cursor at the second line.

This is as designed
Cursor movement works on the view coordinate space and the model position (1,25) has in this case two valid view positions: (1,25) and (2,1).


Fixes second-screen data sync issues

Because of multiple dispatches the sync component sent updates too often to second screen & there were some issues with inline editing because of this.
Moved the updates to a single action & dispatch

@six7 Can you have a look ? Thanks


Add non-uniform generation profile.

Maybe first easy step would be arbitrary shape, and/or a simple exponential profile through the layer thickness corresponding to absorption profile.
For multilayers/devices, ideal would be some profile from a transfer matrix simulation, but I guess it would be fine to run a transfer a transfer matrix simulation on another program and input the result as an arbitrary profile to excimontec.

The most flexible way to implement this is to allow the user to import a file which has the desired absorption profile.  This then allows the user to do a lot of different complex things if they wish, but Excimontec does not have to worry about those details.  For example, it doesn't make sense to have a transfer matrix model built into Excimontec because it is beyond the scope of the tool and often you just want to use the same absorption profile over and over while tweaking other parameters.
My first thinking on implementation would be to add two parameters to the parameter file, Enable_absorption_profile_import and absorption_profile_file.  When absorption profile import is enabled the program will try to the load the data in the absorption_profile_file from the working directory.  The absorption_profile_file would need to indicate the absorption strength at each z-slice  in the lattice.  Then program would save this data into a vector and use this information when randomly generating the coordinates for creating a new exciton. The z coordinate generation would need to be biased using a probability distribution derived from the absorption profile.
This would be a nice feature to add into a subsequent minor release and so one key requirement is that parameter file format changes are implemented without breaking compatibility of previous parameter file versions.  Doing this requires #83 is implemented to allow the program to recognize different parameter file formats associated with different release versions and then load them properly.


Marathon install fails to find module on Linux

Platform
Raspberry PI running Raspbian GNU/Linux 10 (buster)
Issue
sudo marathon install my-script fails with error output:
🏃  Compiling script...
💥  Failed to compile script
👉  The following error(s) occured:
   - 1:8: no such module 'ShellOut'
👉  You can add ShellOut to Marathon using 'marathon add <url-to-ShellOut>'

Steps to reproduce

Install marathon as described (for Linux) in readme
Install Shellout module with marathon add <url-to-ShellOut>
Create script that imports ShellOut
Try to install that script

Notes

Interestingly marathon run my-script works just fine with script that uses ShellOut module
marathon list shows that ShellOut module is installed indeed
Installing a script without dependencies works correctly

Okay... I'm not sure what happened, but it started to work today. 🙄

Looks like my issue was same as #151


[New game]: Align 4

🎮 Game Request
Game logic and basic description
The game is purely made with html css and js . The  logic of the game is basically there is computer and player so we are the player the main task of the player is to stop computer to align 4 balls horizontally or vertically straight order
Point down the features
Game points
if the player makes or  aligns first 4 ball he wins if the computer aligns the 4 balls then the computer wins
Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

/assign

Hey @DiwareNamrata23 !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

Hey @DiwareNamrata23 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Chiang Mai University Domain Name

the university official website URL: https://www.cmu.ac.th/
long-term IT related course is offered by the university: https://cpe.eng.cmu.ac.th/2013/ISNE-inter.php
recognizes the domain: https://cpe.eng.cmu.ac.th/2013/contact-us.php

@Pornjeds To add cmu.ac.th domain, please rename lib/domains/ac/th/cmu.txt to lib/domains/th/ac/cmu.txt
Thank you!

@Pornjeds Pull request merged. Thank you!

Updated @philipto Thanks


More test coverage

Codecov Report

Merging #25 into master will increase coverage by 1.16%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #25      +/-   ##
==========================================
+ Coverage   63.68%   64.85%   +1.16%
==========================================
  Files          19       19
  Lines        1264     1269       +5
==========================================
+ Hits          805      823      +18
+ Misses        441      428      -13
  Partials       18       18

Impacted Files
Coverage Δ

client.go
86.36% <100%> (+86.36%)
:arrow_up:

chttp/errors.go
100% <100%> (ø)
:arrow_up:

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 a1cc968...18b1936. Read the comment docs.


The model switcher does not seem to work anymore

Hello and thanks for your great script !
It used to be working in November 2023, but it does not seem to be working as of today. I have tried on different browsers and computers. Am I the only one to face this problem ? Could you try and solve that ?
Thanks in advance

Please give a detailed description of the problems you are experiencing.

It could be that the switch is turned off without you knowing. You're running 2.0.1; on this version the on/off switch is no longer visible. Can you update to 2.0.2 and test again?
https://raw.githubusercontent.com/hydrotho/ChatGPT_Model_Switcher/main/dist/chatgpt-model-switcher.user.js

As ChatGPT becomes more productized, OpenAI has implemented stricter limitations. Also, due to personal work commitments and limited time and energy, this project can no longer guarantee to override the usage limits of the GPT-4 model on the ChatGPT web interface. If you are capable, you are welcome to contribute to this project.

Also, based on the screenshot it looks like you are running a version prior to v2.0.2, please upgrade to the latest version to get the switch buttons back.


DFC | 416 |  Implement Language Toggle In Common Express

Proposed changes
What changed

Middleware functions added for retrieving and setting a new environment variable (LANGUAGE_TOGGLE_ENABLED).
The language toggle imported and added to base files.

Why did it change

To enable the activation of the language toggle component in repos that use Common Express
Issue tracking

DFC-416

Checklists
Environment variables or secrets

[ ] No environment variables or secrets were added or changed

Other considerations

[ ] Update README with any new instructions or tasks

Screenshots:
Desktop:

Mobile

Hey Sophia, looks good so far, i left a comment about the ordering and moving out the < div > containers, so it matches mobile....
Also please can I ask if it's possible to attach print screens from dev testing? Just want to double check that when used on the pod repos that they match the designs!

@Joanneyoung01 @di-fabs when I removed the div containers, the SonarCloud scan failed but I can't understand why, can anyone help me understand what the issue is please?

Is this all sorted now @SophiaDWokoma - looks like it's passing all the tests!


feature: allow to add custom options to mongo write request

this allows e.g. to include write concerns.

Coverage remained the same at 100.0% when pulling 55d8bde4d53137cc66a767de1e0593e05cca5e0a on daniel-sc:additional-options-for-mongo-write into 1d7e633758064b7b6b5da540a9feaffe6b1c7d7b on flowjs:master.


python310Packages.setuptools-rust: 1.2.0 -> 1.3.0

Description of changes

Things done

Built on platform(s)

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

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

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

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

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

[ ] Fits CONTRIBUTING.md.

looks like there is a missing libiconv on darwin
https://github.com/NixOS/nixpkgs/pull/170757/checks?check_run_id=6210483281

Thats the test file https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/rust/test/import-cargo-lock/maturin/default.nix
If that is now a general requirement for every package I don't know how to solve it universally.

alright let's merge this for now since this is unrelated.
We can always figure out a way if this turns out to be a problem.


Epic: Ecommerce

Design

Product Subsystem
The product subsystem is responsible for tracking all product-related data. Purchasable products are typically Programs and Course Runs. Pricing information is tracked as immutable data for the sake of historically accurate pricing for orders.

[x] https://github.com/mitodl/mitxonline/issues/298
[x] https://github.com/mitodl/mitxonline/issues/305

Basket Subsystem
This tracks products intended to be purchased, often providing some additional state such as which runs under a program a user is purchasing.

[x] https://github.com/mitodl/mitxonline/issues/306
[x] https://github.com/mitodl/mitxonline/issues/307

Order Subsystem
Orders represent a payment for some kind of product(s), these products will typically be either Programs or Course Runs. An order is marked as unfulfilled initially and then marked as fulfilled once a payment is completed.

[x] https://github.com/mitodl/mitxonline/issues/308

Discount Subsystem
Discounts will need to be provided on occasion, these give the user a reduced price for some or all products. Treating this as a discount system and not necessarily a coupon system (e.g. a coupon is a kind of discount) is a good way to frame this approach.

[x] https://github.com/mitodl/mitxonline/issues/309
[x] https://github.com/mitodl/mitxonline/issues/310

Payment Subsystem
The payment subsystem takes unfulfilled orders, takes the user through payment completion, and finally marks the order as fulfilled. We historically and for the foreseeable future use CyberSource, but this should be strongly decoupled from the rest of the ecommerce system and made pluggable for future flexibility. This system would also be responsible for any webhooks/callbacks that the payment processor makes to us.

Closing this because we've done everything in it and I'm going to open a new product-centric epic.


Edit Jenkinsfile to take the platform param and able to switch runner on the fly.

Closing out the issue since we went with a different approach for setting up the windows CI directly on Jenkins instead of using github actions.


I/O error on upload with TyCommander

I have traced this down to a probable issue with a USB 3.0 serial port, or the cable which may not be 3.0 compatible.

Is that with a Teensy 4.x?  It's High Speed USB can push limits ...

Despite the error, does the Teensy actually reboot and run the new sketch or do you need to do it manually ?

Closing this due to lack of information.

Closing this due to lack of information.