PHP_VERSION parameter not working

Hello,
I am trying to build a frankenphp standalone binary with PHP8.2 but this is not working.
The PHP_VERSION parameter for the build command is ignored
RUN EMBED=dist/app/ PHP_VERSION=8.2  PHP_EXTENSIONS=ctype,iconv,opcache,intl,zip,curl,apcu ./build-static.sh
It always building with PHP8.3.
Seems that it's because the dist/static-php-cli/buildroot/lib/libphp.a file is existing on the docker image.
If i add the "CLEAN" parameter, it will try to build static php cli but will failed with
#10 [6/6] RUN EMBED=dist/app/ PHP_VERSION=8.2 CLEAN=true PHP_EXTENSIONS=ctype,iconv,opcache,intl,zip,curl,apcu ./build-static.sh
#10 3.271 Cloning into 'static-php-cli'...
#10 4.115 Installing dependencies from lock file
#10 4.116 Verifying lock file contents can be installed on current platform.
#10 4.125 Package operations: 17 installs, 0 updates, 0 removals
#10 4.154     0 [>---------------------------]    0 [->--------------------------]
#10 4.154   - Installing illuminate/conditionable (v10.39.0): Extracting archive
#10 4.155   - Installing psr/simple-cache (3.0.0): Extracting archive
#10 4.156   - Installing psr/container (2.0.2): Extracting archive
#10 4.156   - Installing illuminate/contracts (v10.39.0): Extracting archive
#10 4.156   - Installing illuminate/macroable (v10.39.0): Extracting archive
#10 4.157   - Installing symfony/polyfill-mbstring (v1.28.0): Extracting archive
#10 4.157   - Installing symfony/polyfill-intl-normalizer (v1.28.0): Extracting archive
#10 4.158   - Installing symfony/polyfill-intl-grapheme (v1.28.0): Extracting archive
#10 4.158   - Installing symfony/polyfill-ctype (v1.28.0): Extracting archive
#10 4.159   - Installing symfony/string (v6.4.2): Extracting archive
#10 4.159   - Installing symfony/service-contracts (v3.4.1): Extracting archive
#10 4.159   - Installing symfony/deprecation-contracts (v3.4.0): Extracting archive
#10 4.160   - Installing symfony/console (v6.4.2): Extracting archive
#10 4.160   - Installing illuminate/collections (v10.39.0): Extracting archive
#10 4.160   - Installing laravel/prompts (v0.1.14): Extracting archive
#10 4.160   - Installing psr/log (3.0.0): Extracting archive
#10 4.161   - Installing zhamao/logger (1.1.1): Extracting archive
#10 4.166   0/17 [>---------------------------]   0%
#10 4.192  17/17 [============================] 100%
#10 4.314 Generating optimized autoload files
#10 4.453 8 packages you are using are looking for funding.
#10 4.453 Use the `composer fund` command to find out more!
#10 4.479      _        _   _                 _
#10 4.479  ___| |_ __ _| |_(_) ___      _ __ | |__  _ __
#10 4.479 / __| __/ _` | __| |/ __|____| '_ \| '_ \| '_ \
#10 4.479 \__ \ || (_| | |_| | (_|_____| |_) | | | | |_) |
#10 4.479 |___/\__\__,_|\__|_|\___|    | .__/|_| |_| .__/   v2.1.0-beta.1
#10 4.479                              |_|         |_|
#10 4.481 Checking if current OS are supported ... Linux x86_64 alpine, supported
#10 4.482 Checking if necessary tools are installed ... binutils-gold not installed on your system
#10 4.482 [10:38:25] [INFO] [EXEC] apk add binutils-gold
#10 4.489 fetch https://dl-cdn.alpinelinux.org/alpine/v3.19/main/x86_64/APKINDEX.tar.gz
#10 4.712 fetch https://dl-cdn.alpinelinux.org/alpine/v3.19/community/x86_64/APKINDEX.tar.gz
#10 5.171 OK: 368 MiB in 97 packages
#10 5.215 Fix done
#10 5.215 Checking if musl-wrapper is installed ... musl-based distro, skipped
#10 5.215 Checking if musl-cross-make is installed ... musl-based distro, skipped
#10 5.215 Checking if necessary linux headers are installed ... ok
#10 5.215 Doctor check complete !
#10 5.239      _        _   _                 _
#10 5.239  ___| |_ __ _| |_(_) ___      _ __ | |__  _ __
#10 5.239 / __| __/ _` | __| |/ __|____| '_ \| '_ \| '_ \
#10 5.239 \__ \ || (_| | |_| | (_|_____| |_) | | | | |_) |
#10 5.239 |___/\__\__,_|\__|_|\___|    | .__/|_| |_| .__/   v2.1.0-beta.1
#10 [6/6] RUN EMBED=dist/app/ PHP_VERSION=8.2 CLEAN=true PHP_EXTENSIONS=ctype,iconv,opcache,intl,zip,curl,apcu ./build-static.sh
#10 3.271 Cloning into 'static-php-cli'...
#10 4.115 Installing dependencies from lock file
#10 4.116 Verifying lock file contents can be installed on current platform.
#10 4.125 Package operations: 17 installs, 0 updates, 0 removals
#10 4.154     0 [>---------------------------]    0 [->--------------------------]
#10 4.154   - Installing illuminate/conditionable (v10.39.0): Extracting archive
#10 4.155   - Installing psr/simple-cache (3.0.0): Extracting archive
#10 4.156   - Installing psr/container (2.0.2): Extracting archive
#10 4.156   - Installing illuminate/contracts (v10.39.0): Extracting archive
#10 4.156   - Installing illuminate/macroable (v10.39.0): Extracting archive
#10 4.157   - Installing symfony/polyfill-mbstring (v1.28.0): Extracting archive
#10 4.157   - Installing symfony/polyfill-intl-normalizer (v1.28.0): Extracting archive
#10 4.158   - Installing symfony/polyfill-intl-grapheme (v1.28.0): Extracting archive
#10 4.158   - Installing symfony/polyfill-ctype (v1.28.0): Extracting archive
#10 4.159   - Installing symfony/string (v6.4.2): Extracting archive
#10 4.159   - Installing symfony/service-contracts (v3.4.1): Extracting archive
#10 4.159   - Installing symfony/deprecation-contracts (v3.4.0): Extracting archive
#10 4.160   - Installing symfony/console (v6.4.2): Extracting archive
#10 4.160   - Installing illuminate/collections (v10.39.0): Extracting archive
#10 4.160   - Installing laravel/prompts (v0.1.14): Extracting archive
#10 4.160   - Installing psr/log (3.0.0): Extracting archive
#10 4.161   - Installing zhamao/logger (1.1.1): Extracting archive
#10 4.166   0/17 [>---------------------------]   0%
#10 4.192  17/17 [============================] 100%
#10 4.314 Generating optimized autoload files
#10 4.453 8 packages you are using are looking for funding.
#10 4.453 Use the `composer fund` command to find out more!
#10 4.479      _        _   _                 _
#10 4.479  ___| |_ __ _| |_(_) ___      _ __ | |__  _ __
#10 4.479 / __| __/ _` | __| |/ __|____| '_ \| '_ \| '_ \
#10 4.479 \__ \ || (_| | |_| | (_|_____| |_) | | | | |_) |
#10 4.479 |___/\__\__,_|\__|_|\___|    | .__/|_| |_| .__/   v2.1.0-beta.1
#10 4.479                              |_|         |_|
#10 4.481 Checking if current OS are supported ... Linux x86_64 alpine, supported
#10 4.482 Checking if necessary tools are installed ... binutils-gold not installed on your system
#10 4.482 [10:38:25] [INFO] [EXEC] apk add binutils-gold
#10 4.489 fetch https://dl-cdn.alpinelinux.org/alpine/v3.19/main/x86_64/APKINDEX.tar.gz
#10 4.712 fetch https://dl-cdn.alpinelinux.org/alpine/v3.19/community/x86_64/APKINDEX.tar.gz
#10 5.171 OK: 368 MiB in 97 packages
#10 5.215 Fix done
#10 5.215 Checking if musl-wrapper is installed ... musl-based distro, skipped
#10 5.215 Checking if musl-cross-make is installed ... musl-based distro, skipped
#10 5.215 Checking if necessary linux headers are installed ... ok
#10 5.215 Doctor check complete !
#10 5.239      _        _   _                 _
#10 5.239  ___| |_ __ _| |_(_) ___      _ __ | |__  _ __
#10 5.239 / __| __/ _` | __| |/ __|____| '_ \| '_ \| '_ \
#10 5.239 \__ \ || (_| | |_| | (_|_____| |_) | | | | |_) |
#10 5.239 |___/\__\__,_|\__|_|\___|    | .__/|_| |_| .__/   v2.1.0-beta.1
#10 5.239                              |_|         |_|
#10 5.241 [10:38:26] [INFO] Fetching source php-src [1/16]
#10 6.878 [10:38:27] [INFO] Fetching source micro [2/16]
#10 7.906 [10:38:28] [INFO] Fetching source pkg-config [3/16]
#10 8.202 [10:38:29] [INFO] Fetching source apcu [4/16]
#10 8.756 [10:38:29] [INFO] Fetching source libiconv [5/16]
#10 10.79 [10:38:31] [INFO] Fetching source icu [6/16]
#10 14.02 [10:38:34] [INFO] Fetching source zlib [7/16]
#10 14.99 [10:38:35] [INFO] Fetching source bzip2 [8/16]
#10 16.61 [10:38:37] [INFO] Fetching source xz [9/16]
#10 18.15 [10:38:39] [INFO] Fetching source zstd [10/16]
#10 19.72 [10:38:40] [INFO] Fetching source openssl [11/16]
#10 20.87 [10:38:41] [INFO] Fetching source libzip [12/16]
#10 22.07 [10:38:43] [INFO] Fetching source libssh2 [13/16]
#10 23.29 [10:38:44] [INFO] Fetching source brotli [14/16]
#10 25.00 [10:38:45] [INFO] Fetching source nghttp2 [15/16]
#10 26.45 [10:38:47] [INFO] Fetching source curl [16/16]
#10 28.04 [10:38:48] [INFO] Download complete, used 22.81 s !
#10 28.06      _        _   _                 _
#10 28.06  ___| |_ __ _| |_(_) ___      _ __ | |__  _ __
#10 28.06 / __| __/ _` | __| |/ __|____| '_ \| '_ \| '_ \
#10 28.06 \__ \ || (_| | |_| | (_|_____| |_) | | | | |_) |
#10 28.06 |___/\__\__,_|\__|_|\___|    | .__/|_| |_| .__/   v2.1.0-beta.1
#10 28.06                              |_|         |_|
#10 28.07 [10:38:49] [DEBU] Setting env: CC=gcc
#10 28.07 [10:38:49] [DEBU] Setting env: CXX=g++
#10 28.07 [10:38:49] [DEBU] Setting env: AR=ar
#10 28.07 [10:38:49] [DEBU] Setting env: LD=ld.gold
#10 28.07 [10:38:49] [DEBU] Setting env: PKG_CONFIG=/go/src/app/dist/static-php-cli/buildroot/bin/pkg-config
#10 28.07 [10:38:49] [DEBU] Setting env: PKG_CONFIG_PATH=/go/src/app/dist/static-php-cli/buildroot/lib/pkgconfig
#10 28.07 [10:38:49] [INFO] [EXEC] echo | gcc -E -x c - -march=corei7 2>/dev/null
#10 28.07 [10:38:49] [INFO] [EXEC] echo | gcc -E -x c - -mtune=core-avx2 2>/dev/null
#10 28.08 [10:38:49] [DEBU] making cmake tool chain file for Linux x86_64 with CFLAGS=''
#10 28.08 [10:38:49] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/buildroot/lib/pkgconfig
#10 28.08 [10:38:49] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/buildroot/include
#10 28.08 [10:38:49] [INFO] Build OS:       Linux (x86_64)
#10 28.08 [10:38:49] [INFO] Build SAPI:     embed
#10 28.08 [10:38:49] [INFO] Extensions (7): ctype, iconv, opcache, intl, zip, curl, apcu
#10 28.08 [10:38:49] [INFO] Libraries (12): bzip2, zlib, freetype, libavif, libjpeg, liblz4, libwebp, libiconv, openssl, libzip, icu, curl
#10 28.08 [10:38:49] [INFO] Strip Binaries: yes
#10 28.08 [10:38:49] [INFO] Enable ZTS:     yes
#10 28.08 [10:38:49] [INFO] Build will start after 2s ...
#10 30.08 [10:38:51] [DEBU] scanning directory /go/src/app/dist/static-php-cli/src/SPC/builder/linux/library
#10 30.09 [10:38:51] [DEBU] enabling freetype without libpng
#10 30.09 [10:38:51] [DEBU] enabling freetype without brotli
#10 30.09 [10:38:51] [DEBU] enabling libzip without xz
#10 30.09 [10:38:51] [DEBU] enabling libzip without zstd
#10 30.09 [10:38:51] [DEBU] enabling curl without libssh2
#10 30.09 [10:38:51] [DEBU] enabling curl without brotli
#10 30.09 [10:38:51] [DEBU] enabling curl without nghttp2
#10 30.09 [10:38:51] [DEBU] enabling curl without zstd
#10 30.09 [10:38:51] [DEBU] Extracting source [pkg-config] to /go/src/app/dist/static-php-cli/source/pkg-config ...
#10 30.09 [10:38:51] [INFO] extracting pkg-config source to /go/src/app/dist/static-php-cli/source/pkg-config ...
#10 30.09 [10:38:51] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/source/pkg-config
#10 30.09 [10:38:51] [DEBU] Running command with direct output: tar -xzf /go/src/app/dist/static-php-cli/downloads/pkg-config-0.29.2.tar.gz -C /go/src/app/dist/static-php-cli/source/pkg-config --strip-components 1
#10 30.16 [10:38:51] [DEBU] Extracting source [bzip2] to /go/src/app/dist/static-php-cli/source/bzip2 ...
#10 30.16 [10:38:51] [INFO] extracting bzip2 source to /go/src/app/dist/static-php-cli/source/bzip2 ...
#10 30.16 [10:38:51] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/source/bzip2
#10 30.16 [10:38:51] [DEBU] Running command with direct output: tar -xzf /go/src/app/dist/static-php-cli/downloads/bzip2-1.0.8.tar.gz -C /go/src/app/dist/static-php-cli/source/bzip2 --strip-components 1
#10 30.19 [10:38:51] [DEBU] Extracting source [zlib] to /go/src/app/dist/static-php-cli/source/zlib ...
#10 30.19 [10:38:51] [INFO] extracting zlib source to /go/src/app/dist/static-php-cli/source/zlib ...
#10 30.19 [10:38:51] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/source/zlib
#10 30.19 [10:38:51] [DEBU] Running command with direct output: tar -xzf /go/src/app/dist/static-php-cli/downloads/zlib-1.3.1.tar.gz -C /go/src/app/dist/static-php-cli/source/zlib --strip-components 1
#10 30.23 [10:38:51] [CRIT] Source [freetype] not downloaded or not locked, you should download it first !
#10 ERROR: process "/bin/ash -eo pipefail -c EMBED=dist/app/ PHP_VERSION=8.2 CLEAN=true PHP_EXTENSIONS=ctype,iconv,opcache,intl,zip,curl,apcu ./build-static.sh" did not complete successfully: exit code: 1
------

#10 5.239                              |_|         |_|
#10 5.241 [10:38:26] [INFO] Fetching source php-src [1/16]
#10 6.878 [10:38:27] [INFO] Fetching source micro [2/16]
#10 7.906 [10:38:28] [INFO] Fetching source pkg-config [3/16]
#10 8.202 [10:38:29] [INFO] Fetching source apcu [4/16]
#10 8.756 [10:38:29] [INFO] Fetching source libiconv [5/16]
#10 10.79 [10:38:31] [INFO] Fetching source icu [6/16]
#10 14.02 [10:38:34] [INFO] Fetching source zlib [7/16]
#10 14.99 [10:38:35] [INFO] Fetching source bzip2 [8/16]
#10 16.61 [10:38:37] [INFO] Fetching source xz [9/16]
#10 18.15 [10:38:39] [INFO] Fetching source zstd [10/16]
#10 19.72 [10:38:40] [INFO] Fetching source openssl [11/16]
#10 20.87 [10:38:41] [INFO] Fetching source libzip [12/16]
#10 22.07 [10:38:43] [INFO] Fetching source libssh2 [13/16]
#10 23.29 [10:38:44] [INFO] Fetching source brotli [14/16]
#10 25.00 [10:38:45] [INFO] Fetching source nghttp2 [15/16]
#10 26.45 [10:38:47] [INFO] Fetching source curl [16/16]
#10 28.04 [10:38:48] [INFO] Download complete, used 22.81 s !
#10 28.06      _        _   _                 _
#10 28.06  ___| |_ __ _| |_(_) ___      _ __ | |__  _ __
#10 28.06 / __| __/ _` | __| |/ __|____| '_ \| '_ \| '_ \
#10 28.06 \__ \ || (_| | |_| | (_|_____| |_) | | | | |_) |
#10 28.06 |___/\__\__,_|\__|_|\___|    | .__/|_| |_| .__/   v2.1.0-beta.1
#10 28.06                              |_|         |_|
#10 28.07 [10:38:49] [DEBU] Setting env: CC=gcc
#10 28.07 [10:38:49] [DEBU] Setting env: CXX=g++
#10 28.07 [10:38:49] [DEBU] Setting env: AR=ar
#10 28.07 [10:38:49] [DEBU] Setting env: LD=ld.gold
#10 28.07 [10:38:49] [DEBU] Setting env: PKG_CONFIG=/go/src/app/dist/static-php-cli/buildroot/bin/pkg-config
#10 28.07 [10:38:49] [DEBU] Setting env: PKG_CONFIG_PATH=/go/src/app/dist/static-php-cli/buildroot/lib/pkgconfig
#10 28.07 [10:38:49] [INFO] [EXEC] echo | gcc -E -x c - -march=corei7 2>/dev/null
#10 28.07 [10:38:49] [INFO] [EXEC] echo | gcc -E -x c - -mtune=core-avx2 2>/dev/null
#10 28.08 [10:38:49] [DEBU] making cmake tool chain file for Linux x86_64 with CFLAGS=''
#10 28.08 [10:38:49] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/buildroot/lib/pkgconfig
#10 28.08 [10:38:49] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/buildroot/include
#10 28.08 [10:38:49] [INFO] Build OS:       Linux (x86_64)
#10 28.08 [10:38:49] [INFO] Build SAPI:     embed
#10 28.08 [10:38:49] [INFO] Extensions (7): ctype, iconv, opcache, intl, zip, curl, apcu
#10 28.08 [10:38:49] [INFO] Libraries (12): bzip2, zlib, freetype, libavif, libjpeg, liblz4, libwebp, libiconv, openssl, libzip, icu, curl
#10 28.08 [10:38:49] [INFO] Strip Binaries: yes
#10 28.08 [10:38:49] [INFO] Enable ZTS:     yes
#10 28.08 [10:38:49] [INFO] Build will start after 2s ...
#10 30.08 [10:38:51] [DEBU] scanning directory /go/src/app/dist/static-php-cli/src/SPC/builder/linux/library
#10 30.09 [10:38:51] [DEBU] enabling freetype without libpng
#10 30.09 [10:38:51] [DEBU] enabling freetype without brotli
#10 30.09 [10:38:51] [DEBU] enabling libzip without xz
#10 30.09 [10:38:51] [DEBU] enabling libzip without zstd
#10 30.09 [10:38:51] [DEBU] enabling curl without libssh2
#10 30.09 [10:38:51] [DEBU] enabling curl without brotli
#10 30.09 [10:38:51] [DEBU] enabling curl without nghttp2
#10 30.09 [10:38:51] [DEBU] enabling curl without zstd
#10 30.09 [10:38:51] [DEBU] Extracting source [pkg-config] to /go/src/app/dist/static-php-cli/source/pkg-config ...
#10 30.09 [10:38:51] [INFO] extracting pkg-config source to /go/src/app/dist/static-php-cli/source/pkg-config ...
#10 30.09 [10:38:51] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/source/pkg-config
#10 30.09 [10:38:51] [DEBU] Running command with direct output: tar -xzf /go/src/app/dist/static-php-cli/downloads/pkg-config-0.29.2.tar.gz -C /go/src/app/dist/static-php-cli/source/pkg-config --strip-components 1
#10 30.16 [10:38:51] [DEBU] Extracting source [bzip2] to /go/src/app/dist/static-php-cli/source/bzip2 ...
#10 30.16 [10:38:51] [INFO] extracting bzip2 source to /go/src/app/dist/static-php-cli/source/bzip2 ...
#10 30.16 [10:38:51] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/source/bzip2
#10 30.16 [10:38:51] [DEBU] Running command with direct output: tar -xzf /go/src/app/dist/static-php-cli/downloads/bzip2-1.0.8.tar.gz -C /go/src/app/dist/static-php-cli/source/bzip2 --strip-components 1
#10 30.19 [10:38:51] [DEBU] Extracting source [zlib] to /go/src/app/dist/static-php-cli/source/zlib ...
#10 30.19 [10:38:51] [INFO] extracting zlib source to /go/src/app/dist/static-php-cli/source/zlib ...
#10 30.19 [10:38:51] [DEBU] Making new directory recursive: /go/src/app/dist/static-php-cli/source/zlib
#10 30.19 [10:38:51] [DEBU] Running command with direct output: tar -xzf /go/src/app/dist/static-php-cli/downloads/zlib-1.3.1.tar.gz -C /go/src/app/dist/static-php-cli/source/zlib --strip-components 1
#10 30.23 [10:38:51] [CRIT] Source [freetype] not downloaded or not locked, you should download it first !
#10 ERROR: process "/bin/ash -eo pipefail -c EMBED=dist/app/ PHP_VERSION=8.2 CLEAN=true PHP_EXTENSIONS=ctype,iconv,opcache,intl,zip,curl,apcu ./build-static.sh" did not complete successfully: exit code: 1
------

Any idea ?
Thank you

https://github.com/dunglas/frankenphp/blob/c71e55551c0a165ef8ad369a8ab3a0792f7335c7/build-static.sh#L25
This line has added additional libraries. If you don't want to enable these libraries, you will need to use PHP_EXTENSION_LIBS="".
But it seems wrong here: if [ -z "${PHP_EXTENSIONS_LIB}" ]; then should be if [ -z "${PHP_EXTENSIONS_LIBS}" ]; then. If someone can correct it, the parameters I described should take effect.

Closed by https://github.com/dunglas/frankenphp/pull/517.


Fix help typos

My fat fingers natively produce typos in the help. I'll fix them up.

Hopefully I got most if not all of them. but there will always be more... 😏


Import map do not get updated

Import map do not get updated if tsx file under island is renamed.

I do not understand the issue, please provide a reproduction.


Support Resque.inline configuration option

Current version of Resque supports .inline configuration option:
https://github.com/defunkt/resque/blob/master/lib/resque.rb#L122
I think scheduler should be aware of this configuration option or have it's own inline option that will make it run all delayed jobs just when they appear.
What do you think, guys?

+1


Implementation of the augmented ordinary kriging algorithm

In the updated working branch, kriging model parameters are stored within the Survey object when the *.xlsx parameter file is initially loaded.
https://github.com/uw-echospace/EchoPro/blob/2157de885498f6b6d951ccee85ed7a6dfb8818ba/EchoPro/survey.py#L174-L184
These values are combined with the configuration settings so they are stored in the same location. The configuration settings are assigned below, for reference.
https://github.com/uw-echospace/EchoPro/blob/2157de885498f6b6d951ccee85ed7a6dfb8818ba/config_files/initialization_config.yml#L46-L55
Once the semivariogram has been fully parameterized (related to #186), it is then incorporated into the kriging interpolation algorithm to compute the kriging/covariance matrix and calculating the theoretical variogram at specific lag distances depending on the number of values within the search radius. The actual kriging occurs within the ordinary_kriging(...) function; however, there are some modifications to the interpolation procedure that Chu explained to us during our meeting with him. This specifically concerns the adaptive search window that is built into the algorithm that maintains a set number of neighboring spatial points (defaults: kmin=3, kmax=10), and therefore lag distance values, that the theoretical semivariogram is calculated over (note that the model parameterization remains the same; it is only the distance lags it is computed over that changes).
https://github.com/uw-echospace/EchoPro/blob/2157de885498f6b6d951ccee85ed7a6dfb8818ba/EchoPro/computation/kriging_methods.py#L117-L189
Other kriging models available in the Matlab Kriging library (i.e. universal kriging with linear drift, objective mapping) are not implemented here, so only this modified ordinary kriging algorithm has been incorporated.
Questions for FEAT

Are any of the other kriging algorithms used or considered? Or is just having ordinary kriging sufficient?
Are the areal biomass densities the only variables kriged? Or would it be helpful to enable the software to krige other variables?
Are there any summary statistics that are directly derived from the kriged values aside from the summed biomass? Or is the Jolly and Hampton (1990) algorithm always applied to estimate the coefficient of variation (CV; related to #185)?
Are the kriging parameters ever manually defined? Or are they always contained within the configuration and initial data files?
Related to Q4: would it be helpful to be able to manually adjust some of these settings?

To Do

[ ] Add ReadTheDocs documentation describing the mathematical equations and assumptions
[ ] Add NumPy function docstrings to models and related functions
[ ] How does incorporating pre-built libraries (e.g. scikit-gstat) influence values [low priority -- consider for future implementation]

A more in-depth review of the EchoPro MATLAB code has informed the updated implementation of the kriging algorithm incorporated into PR #241. This uses the same algorithm as the original MATLAB code that is vectorized and utilizes the same adaptive search radius and extrapolation penalty.
This can be closed when PR #241 is merged.


HSEARCH-3243 Implement safer type checking for bridge type parameters

https://hibernate.atlassian.net/browse/HSEARCH-3243

Looks good. +1 to merge ti

Merged, thanks


opensync: Fix buffer overflow

Fix for buffer overflow happening during VIF state update.
Signed-off-by: Yashvardhan<EMAIL_ADDRESS>

merged, Thanks !


Laser focus on outlining

Recently, Stu Hood came up with a groundbreaking idea. He suggested that Rsc can become useful much earlier that we initially thought. Stu's key insight was to serialize the results of outlining into
a format understood by the Scala compiler and then use that to launch multiple independent instances of the Scala compiler to parallelize Scala compilation.
Towards that end, we postponed the initial plan to implement a Scala typechecker in Rsc and decided to focus on outlining for the time being. We came up with the following design of a compilation pipeline for Rsc:

Metacp converts dependency classpath into the SemanticDB format,
i.e. the metadata format of the Scalameta toolchain that is
used internally at Twitter for Scalafix and Language Server Protocol.
Rsc computes signatures of all public and protected definitions in Scala sources.
Rsc saves signatures to disk in SemanticDB format.
Mjar converts signatures into the ScalaSignature format,i.e. the metadata format of the Scala compiler.

So far, we have implemented support for a subset of Scala to produce signatures for automatically rewritten core of Twitter Util. We will be working on adding support for more Scala features according to our roadmap.
(We have also just learned about an independent effort based on a similar architecture by Guillaume Martres: https://github.com/lampepfl/dotty/pull/4767).

Woot!  This sounds awesome

This is really interesting, but I'm surprised to see this appearing as a giant code dump, any reason that this was not developed in the open? Can we expect more code dumps like this in the future? It'd be nice to at least preserve the git history instead of squashing everything in one commit, there's usually a lot of knowledge in commit messages!


Setting for force mobile view

Summary
Sometimes I need to use mobile view on desktop. especially I use small firefox addon which opens specific sites on sidebar. on this case desktop version of UI breaks because of narrow width.
It would be great if it is able to set force to use mobile version of UI.
モバイルの画面の使うか使わないかを設定で強制的にセットできる機能がいればいいかとおもいます。
Environment

don't care

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Related to https://github.com/syuilo/misskey/issues/2106

Related to #2106

#2106 にはそんなに関連してない気がする
#4552 にはすごく関連してると思う

fixed by #4549 , see #4552


fix(http1): http1 server graceful shutdown fix

This is from #3233, I've fixed up the failing test.

fix issue in the graceful shutdown logic
which causes the connection future to hang
when graceful shutdown is called prior to any
requests being  made. This fix checks to see
if the connection is still in its initial state
when disable_keep_alive is called, and starts the
shutdown process if it is.
Closes #2730

This was included in RC4.

If you mean for 0.14.x, it seemed like a behavior change and was marked as a breaking change. I've forgotten the argument for why. I don't feel strongly, unless it would be break expected behavior.

From a brief look at the changes and the PR description, it's not obvious to me why this should be a breaking change.


Documentation, moving files around, test for graph_functions, etc

Hi guys I made some changes to the make_graph, graph_functions to improve readability, fixed some bugs with path, made documentation, and wrote 2 tests for 2 of the function. Also moved everything to the utils folder. Let me know if you have any comments and what people think of the new graph_function implementation.
Edit: Also I realized this includes my previous commits that adds the behav_task functions to produce an "extended" time_course and simple plot, see the first 2 commits

This looks good.

fixed a couple path errors, also created a figures directory in where we can store all the figures we potentially need (currently have sample plots from sub001, run 001), probably someone can merge this and test it out thanks


provider text case updated

Required items, please complete
Change(s):

See guidance below

Reason for Change(s):

See guidance below

Version Updated:

Required only for Detections/Analytic Rule templates
See guidance below

Testing Completed:

See guidance below

Checked that the validations are passing and have addressed any issues that are present:

See guidance below

Guidance <- remove section before submitting

Before submitting this PR please ensure that you have read the following sections and filled out the changes, reason for change and testing complete sections:
Thank you for your contribution to the Microsoft Sentinel Github repo.

Details of the code changes in your submitted PR.  Providing descriptions for pull requests ensures there is context to changes being made and greatly enhances the code review process.  Providing associated Issues that this resolves also easily connects the reason.

Change(s):

Updated syntax for XYZ.yaml

Reason for Change(s):

New schema used for XYZ.yaml
Resolves ISSUE #1234

Version updated:

Yes
Detections/Analytic Rule templates are required to have the version updated

The code should have been tested in a Microsoft Sentinel environment that does not have any custom parsers, functions or tables, so that you validate no incorrect syntax and execution functions properly.  If your submission requires a custom parser or function, it must be submitted with the PR.

Testing Completed:

Yes/No/Need Help

Note: If updating a detection, you must update the version field.

Before the submission has been made, please look at running the KQL and Yaml Validation Checks locally.
https://github.com/Azure/Azure-Sentinel#run-kql-validation-locally

Checked that the validations are passing and have addressed any issues that are present:

Yes/No/Need Help

Note: Let us know if you have tried fixing the validation error and need help.

References:

Guidance for Detection checks
General contribution guidance
PR validation troubleshooting

@v-dvedak  could you please merge it.

Team FYI .we are working on the issue

Team FYI .we are working on the issue

@v-atulyadav  i am checking

Team, let me check with some one, why validation are not passing .

Hi @v-laanjana , checks failing please check.

Team i am working

working ..


Problems when using lfm3dpy

Hello,
so i was experiencing some issues when using the O3D300 Sensor with python ifm3dpy library.
My Setup:
Ubuntu 20.04 LTS
5.13.0-30-generic
Python 3.8.10
ifm3dpy 0.93.0
ifm3d 0.18.0
installed with snap
camera firmware 1.71.xx
The problem:
I was using the example code given on your docs HERE and experienced some errors regarding the .get() and other methods.
importlib._bootstrap.Error: Unknown error 100001: XMLRPC method not found (D-Bus error 16)
Have you experienced the same error before and can help me out with a possible fix ? If you could provide any further examples that would be helpful.

Hello @LarsBuck ,
The document you referred is written for O3R device, For O3D/O3X  camera please refer to the Usage Example
you mentioned in your issue that you have O3D sensor and not camera. if its sensor then you might need to create a default application on device and make it active to grab the data.

Hey @LarsBuck please check those examples example-creating-new-applications

Hi,
so i just took a look at the sensor devices via $ ifm3d ls and got the following output
{
"Active": true,
"Description": "",
"Id":<PHONE_NUMBER>,
"Index": 1,
"Name": "Advanced application"
}
]
So i guess there is an active application for my sensor. How exactly do I grab the data from the Sensor ? I ran the example code provided by @inbangsa which will return the amplitude image in form of a numpy array. I then tried to visualize this with the opencv imshow() method, but it will only show a fully black image.

@LarsBuckcan you help me understand the fully black image, is it all the values in the numpy array are zero OR it might be the values are near to zero and that might cause image to appear black.

The amplitude image holds values out of range
[[1174 1091 1151 ... 591 611 629]
[1121 1058 1130 ... 755 718 750]
[<PHONE_NUMBER> ... 990 968 989]
...
[ 626 638 754 ... 862 746 676]
[ 593 581 710 ... 818 715 668]
[ 845 785 766 ... 778 719 666]]
I also tried to normalize them into range of 0...255 but without success.

@LarsBuck if I look closely I can see the box in Image. The issue here is not with ifm3dpy but its with display.
for amplitude image of O3D3XX each pixel is stored in uint16_t

for Display you can normalize image data with min max of the image.
OR
Just to see data you can multiply the numpy array with a constant value so that overall brightness will increase.

@LarsBuck this issue looks very similar. Please refer to discussion for scaling and Display of the amplitude image

@LarsBuck if problem is resolve can we close this issue.


Support W3C tracing + example.

Description
Adds support for W3C tracing via OpenTelemetrySDK.
Adds example for W3C tracing.
Issue reference
We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.
Please reference the issue this PR will close: #298
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[X] Code compiles correctly
[X] Created/updated tests
[X] Extended the documentation

@shalabhms W3c in the SDK + doc + examples must be together. This is a breaking change and it affects other parts of the code. The only unrelated change is an organization of imports across the project. Tests also needed to be changed due to breaking changes in the SDK code. Please, review in chunks if needed.

Updated with the fixes.

Let us discuss this tomorrow before merging or not.

Updated the PR with Multi PubSub.


Running jobs in the host machine's time zone

So I currently have a command set to run at 12 AM daily, using the following time specifier:
0 0 0 * * *

Over the last few days, Jobber has been successfully and consistently running the job at 12 AM daily, which is great....but at 12 AM UTC. The host machine's system time zone is America/Chicago. How can I configure the time zone of the job, or just make it use the host machine's time zone?
I understand UTC is standard but this is quite confusing esp. for installations where the host machine is not in the UTC time zone (which most are not). However I'm happy to submit a PR documenting that the time specifier uses UTC by default.

I did that with a new Dockerfile :
FROM blacklabelops/jobber:XXXXXXXX

RUN apk add --update tzdata && \
	rm -rf /var/cache/apk/* && rm -rf /tmp/* && rm -rf /var/log/*

Then you can use your new image to start the container, and use -e TZ=Europe/Paris for example on the command line to have your container running with the timezone you want.

Thanks for your comment--my infrastructure does not make use of Docker and I just want Jobber to use the host machine's time zone. Any suggestions?

I'll look into this... it should be using the host's timezone.

So, what actually happens is that Jobber does interpret the jobfile in terms of the local timezone --- BUT, if the local timezone changes, Jobber will not know about it, and will continue interpreting jobfiles in terms of the original local timezone.  To get it to notice the new local timezone, you need to restart the Jobber service.
I'd like to have notice notice local timezone changes, but this is not supported in Go.  Implementing this myself would be a PITA.  So for now I don't think I'll change the way jobfiles are interpreted.  What I can do is change 'jobber list' so that it includes the timezone in 'next run time'.


Added fmt target in the Makefile

Added fmt target in the Makefile
Changed install target prerequisite from test to build

Thanks, this looks good to me! Could you squash your commits? And feel free to drop the automatic co-authored by on the intermediate commit for the review suggestion.

Thanks, this looks good to me! Could you squash your commits? And feel free to drop the automatic co-authored by on the intermediate commit for the review suggestion.

I have squashed them. Thanks for the feedback.


Ambari release 2.7.5

What changes were proposed in this pull request?
I updated versions in poms to <IP_ADDRESS>.0 and regenerated docs.
How was this patch tested?
Not yet.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5621/
Test PASSed.


Kubernetes1.21 BoundServiceAccountToken Support

We deployed Fluentd on eks1.21, recently we got an email notification that Fluentd is using stale token. In the email, it claimed Ruby Kubernetes client should have already taken this into account, but it seems not true in our environment. I have confirmed Fluentd is using the latest kubecilent(4.9.3).
AWS email attached below,
We have identified applications running in one or more of your Amazon EKS clusters that are not refreshing service account tokens. Applications making requests to Kubernetes API server with expired tokens will fail. You can resolve the issue by updating your application and its dependencies to use newer versions of Kubernetes client SDK that automatically refreshes the tokens.
What is the problem?
Kubernetes version 1.21 graduated BoundServiceAccountTokenVolume feature [1] to beta and enabled it by default. This feature improves security of service account tokens by requiring a one hour expiry time, over the previous default of no expiration. This means that applications that do not refetch service account tokens periodically will receive an HTTP 401 unauthorized error response on requests to Kubernetes API server with expired tokens. You can learn more about the BoundServiceAccountToken feature in EKS Kubernetes 1.21 release notes [2].
To enable a smooth migration of applications to the newer time-bound service account tokens, EKS v1.21+ extends the lifetime of service account tokens to 90 days. Applications on EKS v1.21+ clusters that make API server requests with tokens that are older than 90 days will receive an HTTP 401 unauthorized  error response.
How can you resolve the issue?
To make the transition to time bound service account tokens easier, Kubernetes has updated the below official versions of client SDKs to automatically refetch tokens before the one hour expiration:

Go v0.15.7 and later
Python v12.0.0 and later
Java v9.0.0 and later
Javascript v0.10.3 and later
Ruby master branch
Haskell v<IP_ADDRESS>

We recommend that you update your application and its dependencies to use one of the above client SDK versions if you are on an older version.

I am having the same issue, the fluentd image we deployed have the kubecilent(4.9.3) installed shown at here. And we are still getting the messages in AWS cloudwatch similarly like https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html#identify-pods-using-stale-tokens

In the email, it claimed Ruby Kubernetes client should have already taken this into account, but it seems not true in our environment. I have confirmed Fluentd is using the latest kubecilent(4.9.3).

Probably it doesn't mean this gem (kubeclient), it means https://github.com/kubernetes-client/ruby.
Yes, kubernetes-client/ruby seems refreshe the tokens automatically:
https://github.com/kubernetes-client/ruby/blob/33861097e2eab9954b3f07f6898e5e8199199731/kubernetes/src/kubernetes/config/incluster_config.rb#L28
TOKEN_REFRESH_PERIOD = 60 # 1 minute

But it doesn't seem maintained well, last update is 1 year ago, and the latest gem version is 0.0.2 released at May 04, 2019.
This is the why above document doesn't describe Ruby's SDK version:

Ruby master branch

So probably we need to implement this feature to kubeclient.

So probably we need to implement this feature to kubeclient.

It seems that it's already implemented (but not configured by default).
https://github.com/ManageIQ/kubeclient#inside-a-kubernetes-cluster
When bearer_token_file is set, it's always reloaded on every connection.
https://github.com/ManageIQ/kubeclient/blob/831e360772c717aab5ca086521c45c86ee51435e/lib/kubeclient.rb#L356-L359
Probably we should set '/var/run/secrets/kubernetes.io/serviceaccount/token' to bearer_token_file (default is nil).

[Or you could also backport token reloading to v4.y, but that's not trivial cherry-pick — master branch switched to Faraday (and the refresh relies on Faraday features), while v4.y uses rest-client...
Given my limited time for kubeclient :-(, I'm not gonna do such a backport myself, moving forward to 5.0 seems more productive, but if somebody else wants to do it I'm happy to review.]

@cben  thanks for your reply. Do you have an estimated date for 5.0 release?

@cben, I have implemented one workaround that will refresh the token on each request. (https://github.com/splunk/kubeclient/pull/1)
Can you review it? I can also raise PR here if it looks good.

Please see the following change:
https://github.com/ManageIQ/kubeclient/pull/567
We made some tests and the issue still exists in WatchStream. Because of that I made a fix. Please review

Sorry, but I was wondering if there is an update or maybe even an ETA on this enhancement? Thanks.

Released now in 4.10.0.
Thanks again to Harshit for the implementation + tests + diagnosing unrelated minitest issues that came up!


[6.x] Add whereNull and whereNotNull to Collection

This PR adds whereNull and whereNotNull methods to the Collection class.
These methods are already available when building a query:
$users = User::whereNotNull('email_verified_at')->get();

But as soon as you have a collection, you need to do this instead:
$users = User::all();

$unverifiedUsers = $users->whereStrict('is_verified_at', null);

$verifiedUsers = $users->where('is_verified_at', '!==', null);

With this PR, you can do this instead:
$users = User::all();

$unverifiedUsers = $users->whereNull('is_verified_at');

$verifiedUsers = $users->whereNotNull('is_verified_at');

What if you have a collection of only values? collect([1, null, 3])

@taylorotwell
The documentation doesn't mention anything about using ->where() on a collection of simple values, so I'm not sure if this is a good idea, but I just pushed a commit that adds support for whereNull and whereNotNull for collections of simple values.


Apply a Linter

I've just found your gem and it almost fits what I need!
I want to merge or append one selector into another. For example:
#chat {
  background: yellow;
}

#chat #buddy-list {
  border: 1px solid black;
}

Should be rewriten to:
#chat {
  background: yellow;
  #buddy-list {
    border: 1px solid black;
  }
}

But looking at the code and the command-line, I can't see that scss-lint is capable of applying linters' suggestions or generating a new SCSS file with the corrections all or some of the linters suggested.
Is that correct?
I would like to implement that, maybe a with method apply! on Linter.

Hi @brauliobo! This was previously discussed in https://github.com/brigade/scss-lint/issues/343.

Could not resist and made a working version at #534. Please take a look at the code.


Huge FPS Spikes

Tested versions
all godot 4 versions
System information
Godot v4.2.1.stable - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce GT 1030 (NVIDIA; <IP_ADDRESS>42) - AMD Ryzen 3 1300X Quad-Core Processor (4 Threads)
Issue description
When you create high post-processing effects in Godot 4 it will create large fps spikes (doesn't mean it should perform better, i.e. it doesn't need to create large fps spikes, it needs to create low fps) but the production is fine. I tested on a better computer that computer can handle it but my computer can't.
Steps to reproduce
-Open a new project
-Create some high post processing effects
-And run on debug
Minimal reproduction project (MRP)
N/A

A GT 1030[^1] is too weak to use advanced post-processing effects on, especially at high resolutions.
[^1]: It's even worse if it's a recent GT 1030 (2 GB of VRAM), which is slower than the earlier 1 GB models due to having a weaker GPU.

A GT 1030[^1] is too weak to use advanced post-processing effects on, especially at high resolutions. It's handily beaten by modern integrated graphics:

Additionally, you are probably running into FPS spikes (stuttering) because your GPU is running out of VRAM. 2 GB is very little VRAM by today's standards.
[^1]: It's even worse if it's a recent GT 1030 (2 GB of VRAM), which is slower than the earlier 1 GB models due to having a weaker GPU. This 2 GB model is the one listed on the page I linked.

but i said in the production i do not get any fps spikes if my gpu is struggling just low fps but in debug mode huugeee fps spikes


Auto suggestion for variables (Enhancement)

Right now IDE can suggest when type for example,
If I type "plt." it will suggest suitable options like close, legend, etc.
But when I type variable name it don't show suggestion to complete.
I have many variables in my program and auto-suggesting for completing variable would ease my task.

Right now the code completion actually can complete variable names, strings and methods/properties of objects.
It can't complete everything because somethings are difficult to figure out.
If there is a particular code example that doesn't work for you I could help more.
The code completion is  particularly poor with matplotlib, but hopefully things will be better in the 2.1 release (should be soon)

I am not saying auto complete is not working. But, I think every time pressing "ctrl + space" to complete variable is tedious task. Instead, Automatically suggestion should pop as soon I type.
Example, I have many variable like number_density_in_pipe, number_density_in_vessel, number_density_xxx
so As soon I start typing number it should suggest all variable starting from number.
I hope this can be implemented.

@geekonloose, we aware of this and we're thinking to make code-completion work without pressing Tab or Ctrl+Space by default.

Oh. It would be great. Thank you. Apologies for redundant issue


fix: Improve performance of Markdown mode

^ +$ is a pretty inefficient regex and leads to awful performance if the Markdown contains long lines.
This is the same fix as here: https://github.com/codemirror/CodeMirror/commit/df0a05c7e88e1b33ecb845bab28388c0bad13660

Please check if the PR fulfills these requirements

[ ] It's the right issue type on the title
[ ] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)
[ ] The commit message follows our guidelines
[ ] Tests for the changes have been added (for bug fixes/features)
[ ] Docs have been added/updated (for bug fixes/features)
[ ] It does not introduce a breaking change or has a description of the breaking change

Description

Thank you for your contribution to TOAST UI product. 🎉 😘 ✨

Thanks for the contribution @paddya 🎉
Would you send a PR to codemirror too?
https://github.com/codemirror/CodeMirror/blob/3d89b71b955b72e61430f7f38e2350489cad9e15/mode/markdown/markdown.js#L584
We migrated this code from codemirror, so they'll need this too.
And I think they can confirm the effects.

@kyuwoo-choi I already sent the PR there. It's fixed in master: https://github.com/codemirror/CodeMirror/blob/master/mode/markdown/markdown.js#L631

Good. merging it.
Thank you @paddya


Why are we using last project id when loading a new project by id?

Wasn't sure if this was a bug or intended?
https://github.com/google/ground-android/blob/2e8ed982d7b40d82d1a6e3d02f2ad106d5247647/gnd/src/main/java/com/google/android/gnd/repository/DataRepository.java#L121-L139

Hm, yeah seems like a slight error here... It looks like we only use the last project id if we fail to load the project from the remote, but really we should be loading the local version of whatever project we attempted to fetch instead of the last active project--right?
Really the sequence should be something like:

get project from remote
if fail, get project from local
if fail, use last active project

And we should report the errors to the user on each failure case....
In general this method's a bit tough to digest. It doesn't look as though it even marks the loaded project as active! (But maybe that happens in the onProjectLoaded callback)?

Agreed, it's a fault on my side. I'll fix it.

No worries! Just wanted to make sure I didn't misunderstand. I'm revising
the activate project flow and sending a draft PR with the general id
shortly. Want to wait until I get that out?

This was fixed in a recent PR so marking closed.


First version implementation of preload_data and the rest of CLMS data store

This PR introduces the initial mechanism of preloading data, including cache management, downloading, and file processing.
The following classes (components) are responsible for the mechanism:
CLMS

Serves as the main interface to interact with the CLMS API. This class coordinates with the PreloadData class to preload the data into a local filestore.

CacheManager

Manages the local cache of preloaded data.
Maintains a dictionary (cache) that maps data_ids to their respective file paths.
Handles file store from the xcube data store  in a local directory and refreshes the cache when necessary.

DownloadTaskManager

Handles the download process, including managing download requests and checking their statuses.
Retrieves task statuses based on dataset and file IDs or task IDs, determining whether the download is pending, completed, or cancelled.
Initiates data downloads in chunks and manages zip file extraction, looking specifically for geo data. Definition of geo data is defined in the function docstring in the notes.

FileProcessor

Handles the postprocessing of downloaded data, extracting, stacking and storing geo files from downloaded zip files.

TokenHandler

Manages the authentication process for API requests, including the refreshing of tokens.

PreloadData

The main class responsible for orchestrating the preloading of datasets.
This coordinates with CacheManager, DownloadTaskManager, TokenHandler and FileProcessor classes to handle the complete process of caching, data downloading, making sure token are valid and post-processing of downloaded data.
Utilizes threading for handling multiple data preloading tasks concurrently.
Uses notebook.tqdm for displaying progress bars

A tutorial notebook has also been added to the examples folder to show how to use this data store.

Something is going wrong in the testing. I created an environment based on environment.yml and ran pytest. This is the output of the first test failure. All tests show the same error.  I created an environment based on environment.yml and ran pytest. This is the output of the first test failure. All tests show the same error.  I have updated the tests and also refactored the code a bit based on your comments.

pytest
========================================== test session starts ==========================================
platform linux -- Python 3.12.8, pytest-8.3.4, pluggy-1.5.0
rootdir: /home/konstantin/bc_kon/01_coding/01_github/xcube-clms
configfile: pyproject.toml
plugins: recording-0.13.1, cov-6.0.0
collected 44 items
test/test_api_token.py ....                                                                       [  9%]
test/test_cache_manager.py ...                                                                    [ 15%]
test/test_clms.py .........                                                                       [ 36%]
test/test_token_handler.py ...                                                                    [ 43%]
test/test_utils.py ....................F....                                                      [100%]
=============================================== FAILURES ================================================
____________________________________ test_cleanup_dir_deletes_files _____________________________________
tmp_path = PosixPath('/tmp/pytest-of-konstantin/pytest-0/test_cleanup_dir_deletes_files0')
def test_cleanup_dir_deletes_files(tmp_path):
    folder_path = tmp_path / "test_folder"
    folder_path.mkdir()

    keep_file = folder_path / "file1.zarr"
    delete_file = folder_path / "file2.tif"
    keep_file.write_text("test")
    delete_file.write_text("test")

  cleanup_dir(folder_path, keep_extension=".tif")

test/test_utils.py:291:

xcube_clms/utils.py:252: in cleanup_dir
for filename in tqdm(
../../../../micromamba/envs/xcube-clms/lib/python3.12/site-packages/tqdm/notebook.py:234: in init
self.container = self.status_printer(self.fp, total, self.desc, self.ncols)

_ = <tqdm.utils.DisableOnWriteError object at 0x72dac7fe8f80>, total = 2
desc = 'Cleaning up directory /tmp/pytest-of-konstantin/pytest-0/test_cleanup_dir_deletes_files0/test_folder'
ncols = None
@staticmethod
def status_printer(_, total=None, desc=None, ncols=None):
    """
    Manage the printing of an IPython/Jupyter Notebook progress bar widget.
    """
    # Fallback to text bar if there's no total
    # DEPRECATED: replaced with an 'info' style bar
    # if not total:
    #    return super(tqdm_notebook, tqdm_notebook).status_printer(file)

    # fp = file

    # Prepare IPython progress bar
    if IProgress is None:  # #187 #451 #558 #872

      raise ImportError(WARN_NOIPYW)

E           ImportError: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html
../../../../micromamba/envs/xcube-clms/lib/python3.12/site-packages/tqdm/notebook.py:108: ImportError
======================================== short test summary info ========================================
FAILED test/test_utils.py::test_cleanup_dir_deletes_files - ImportError: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readt...
===================================== 1 failed, 43 passed in 4.69s ======================================
Exception ignored in: <function tqdm.del at 0x72db691d85e0>
Traceback (most recent call last):
File "/home/konstantin/micromamba/envs/xcube-clms/lib/python3.12/site-packages/tqdm/std.py", line 1148, in del
self.close()
File "/home/konstantin/micromamba/envs/xcube-clms/lib/python3.12/site-packages/tqdm/notebook.py", line 279, in close
self.disp(bar_style='danger', check_delay=False)
^^^^^^^^^
AttributeError: 'tqdm_notebook' object has no attribute 'disp'
One unittest fails

FYI, I guess you can address this in a later PR:
pytest --cov=xcube_clms --cov-report term-missing

---------- coverage: platform linux, python 3.12.8-final-0 -----------
Name                             Stmts   Miss  Cover   Missing
--------------------------------------------------------------
xcube_clms/__init__.py               2      0   100%
xcube_clms/api_token.py             35      0   100%
xcube_clms/cache_manager.py         17      0   100%
xcube_clms/clms.py                  82      6    93%   120, 132, 191, 213-220, 298
xcube_clms/constants.py             80      5    94%   109-115
xcube_clms/download_manager.py     156    135    13%   114-181, 196-214, 233-248, 275-337, 352-439, 462-477
xcube_clms/plugin.py                 5      0   100%
xcube_clms/preload.py               64     34    47%   92-102, 121-165, 181, 190, 196
xcube_clms/processor.py             52     37    29%   68-85, 101-106, 120-159
xcube_clms/store.py                 52     52     0%   21-161
xcube_clms/token_handler.py         12      0   100%
xcube_clms/utils.py                113     10    91%   62-63, 78, 250, 255-262
xcube_clms/version.py                1      0   100%
--------------------------------------------------------------
TOTAL                              671    279    58%


Servo Controlls via Firmware occur in Hardware Trouble

Is your feature request related to a problem? Please describe.
Looks like Firmware settings for Servo are critical for some ( a lot) of Servo Brands.   The Lower Flank is wrong and occure in a overheat or kill of Hardware
Describe the solution you'd like
Check / Rethink of used parameters
Describe alternatives you've considered
If needed a Optional Methode for effected users to avoid the problem
Additional context
Initial Request on Forum :  https://www.mobiflight.com/forum/message/26171.html

@pizman - This is reported as a feature request. What is the requested feature? Or is this a bug report? Then please provide steps to reproduce the problem. Thanks.

As a workaround for the guy from the forum post: He can simply add a value to increase the 0 to e.g. 10. Then the servo might not have an issue.

Maybe initialize servos at 1500ms pulse width (center) until you send a real value, that should be safe for any servo?

I will close this because we haven't had this issues often enough.


Inheritance

SAMPLE
protected override void OnModelCreating(ModelBuilder builder)
{
builder.Entity<Empresa>(entity =>
{
entity.Property(value => value.Endereco.TipoEndereco)
}
}
ERROR
System.ArgumentException: The expression 'value => value.Endereco.TipoEndereco' is not a valid property expression. The expression should represent a property access: 't => t.MyProperty'.
I do not know where I can get a sample with the solution

Hey,
It looks like you are trying to dot thru a navigation property, which is not supported. Property can only be used to configure properties directly defined on the type (i.e. Property(post => post.Name)) and not nested or referenced proeprties (i.e. Property(post => post.Blog.Url)).
~Rowan

If you want to configure TipoEndereco then you need to configure it on the entity that it is defined on.

Thanks for the information, I will think of another solution


Show Multiple instances of Toast or reuse toast instance and reset timer duration to hide

Hi!
Is there any way to show multiple instances of Toast?
https://github.com/kubilaysalih/react-native-customizable-toast
Something similar to this package.
The reason it's because i click in one button to show the toast, and after that i click another button before the toast dissapears.
After that, user needs to wait that the first toast dissapears to show the second one.
Another alternative that I have for the project I am working on is that the first toast that I show changes its content depending on the button that the second toast shows.
Let's say that the toast timer is reset when you want to show the second toast, but that 2 queued instances are not created, but only one remains.
Do you think there is a way to do one and/or the other option?
Thank you,
Greetings,

Hello, currently it's in our TODO list but unfortunately not supporting right now. It would be nice.
Not sure but as a workaround you might use the hideToastable just after call the first one. This function removes the latest item on the queue.
Please let us know if that works for you, thanks.

Many thanks!
That works.


GetLineToPolygon doesn't work as expected

Hello,
I don't know if it's a mistake from my side or not, but it seems  that Phaser.Geom.Intersects.GetLineToPolygon does not work with the last vertice (the one which is not closed) of the polygon.
Here's an example
https://codepen.io/Abspirit/pen/PoyPNOK
the green dot is not supposed to be here or I did not get what it's supposed to do ?
And I also don't get why when I use the other "line4" (quoted in the example) it does not work.
(because X1 = X2 ?). I'm lost.
Thanks for your answer

I think I fixed the issue I had with GetLineToPolygon by changing the GetLineToPoints function.
I replaced
var prev = points[0];   for (var i = 1; i < points.length; i++)
by
var prev = points[points.length-1];   for (var i = 0; i < points.length; i++)
So the intersection between the line and the segment composed with the first and the last point of the polygon is now checked.
Here's the new codepen with my fix :
https://codepen.io/Abspirit/pen/xxyZxBr?editors=1111

Well I also confirm that there is no intersection between the line and the polygon when x1 = x2 on the line. I will try to investigate to find where is the issue (Codepen below)
No intersection between the blue line or yellow line with the polygon here (green line intersection can be fixed with the changes I showed above):
https://codepen.io/Abspirit/pen/QWZydKJ?editors=1111

I feel a bit tired to talk alone as i posted that issue one week ago and that nobody answers.. But here's what I found.
I fixed the issue by changing the very bad function "GetLineToLine"...
As I said, when you set a line1 with x1 = x2 that does not work... Because of the line below.. dx1 can not be equal to 0 ? Why not ? And the check is not symetric.. that's not mathematically serious.
    if (dx1 === 0 || denom === 0)
    {
        return false;
    }

Here's what I changed in the whole function GetLineToLine
I replaced
  if (dx1 === 0 || denom === 0)
    {
        return false;
    }

    var T2 = (dx1 * (y3 - y1) + dy1 * (x1 - x3)) / (dx2 * dy1 - dy2 * dx1);
    var T1 = (x3 + dx2 * T2 - x1) / dx1;

    //  Intersects?
    if (T1 < 0 || T2 < 0 || T2 > 1)
    {
        return null;
    }

by
    if (denom === 0)
    {
        return false;
    }
    var T2 = (dy1 * (x3 - x1) - dx1 * (y3 - y1)) / denom;
    var T1 = (dy2 * (x3 - x1) - dx2 * (y3 - y1)) / denom;
    //  Intersects?
    if (T1 < 0 || T2 < 0 || T2 > 1 || T1 > 1)
    {
          return null;
    }

Source : https://en.wikipedia.org/wiki/Line–line_intersection
Paragraph : "Given two points on each line segment"
To resume, I had a problem with the GetLineToPolygon function because of two errors:

GetLineToPoints works by pair but does not check the pair composed by the first and the last point of the serie.
GetLineToLine had an asymetric check of dx1 and wrong calculation.

Here's the pen with everything working normally (I hope)
https://codepen.io/Abspirit/pen/ZEqOMgp?editors=0011

It seems you fixed one of the issues I mentioned in the Phaser 3.6 version and I can see it in the pen below.
"_Geometry Bug Fixes : Fixed issue in Geom.Intersects.GetLineToLine function that would fail with colinear lines"
However, it seems that GetLinetoPolygon still not check all vertices in 3.6 (green line).
https://codepen.io/Abspirit/pen/vYVmMzY

Thank you for submitting this issue. We have fixed this and the fix has been pushed to the master branch. It will be part of the next release. If you get time to build and test it for yourself we would appreciate that.


npm install error

This is where the error occurs -
XX(target) Release/obj.target/facerec/cc/index.o
In file included from ../cc/index.cc:1:
In file included from ../../nan/nan.h:51:
In file included from /Users/shashikantsharma/.node-gyp/6.9.2/include/node/node.h:42:
In file included from /Users/shashikantsharma/.node-gyp/6.9.2/include/node/v8.h:21:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/utility:157:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__tuple:16:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/type_traits:309:44: fatal error:
      recursive template instantiation exceeded maximum depth of 256
{typedef typename remove_volatile<typename remove_const<_Tp>::type>::type type;};

1 error generated.
make: *** [Release/obj.target/facerec/cc/index.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Darwin 15.6.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/shashikantsharma/Sites/faceRecognition/node_modules/face-recognition
gyp ERR! node -v v6.9.2
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
npm WARN<EMAIL_ADDRESS>No repository field.
npm ERR! Darwin 15.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "face-recognition"
npm ERR! node v6.9.2
npm ERR! npm  v3.10.9
npm ERR! code ELIFECYCLE

npm ERR<EMAIL_ADDRESS>install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the face-recognition package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs face-recognition
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls face-recognition
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/shashikantsharma/Sites/faceRecognition/npm-debug.log

What's you c++ version. This package needs atleast c++ 11 to compile.

I have c++ 11, see this
`
-- Building a C++11 test project to see if your compiler supports C++11
-- C++11 activated.
-- Building a C++11 test project to see if your compiler supports C++11
-- C++11 activated.
-- Configuring done
-- Generating done
Then also I have updated to c++ 11 and now build fails with error ```c++: error: unrecognized command line option '-stdlib=libc++'```.

Hm I am not sure how to set up a working c++ environment with stdlib on mac, but on travis it worked right out of the box with xcode version 8.3 I think.
Otherwise googling the issue should give you quite some hints about how to fix this.

Ok, thanks.


Works with your router.php and localhost, doesn't with my own local server

Hi, thanks for this great example!
When running from your router.php and localhost:8000, the example works just fine. But when I try to run it inside my own (local) server environment, it doesn't work and I get this error when fetching send_push_notification.php:
Fatal error:  Call to undefined function Mdanter\Ecc\Curves\gmp_init() in [...my_apache_path...]/web-push-php-example/vendor/mdanter/ecc/src/Curves/NistCurve.php on line 133

I'm not chaning any of the folder structure, just accessing it differently. Any idea what could be causing this? Also, do you know if this should work with self-signed SSL certificates?

Thanks for staying quiet, I figured it out myself. I somehow had a different version of php running in my apache.

Glad you figured it out :)


~ Fixes Issue #14

Title says it all, this should fix #14.
I've basically just hardcoded =.. as an operator in the grammar. If we were to try and change the whole system, I'd like to use a more formalized grammar to parse into an AST, but from my initial research, it seems like textmate grammar files and regex are the only way to do syntax highlighting in vsc. I'll try to look at it a bit more, though.

Thanks for your work!


Tangential Boundary condition

Hi,
I want to learn the implementation of tangential boundary condition for electromagnetic problem.

Is there any examples or mini-project with implementation of tangential boundary condition?
If yes; please suggest me
If not; give me some hint how can I implement the tangential boundary condition
How can I learn the implementation of functions in the examples because I did not see any documentation about the functions?
Thank you

Hello, @MuhammadAdilUmer ,
I expect you've found our electromagnetic miniapp documentation here .  The tesla, joule, and maxwell miniapps all use H(curl) (also called Nedelec) elements.  When these codes apply Dirichlet boundary conditions to H(curl) fields it is only the tangential part of the field that is constrained.   These codes can be a little difficult to navigate but ex3p demonstrates how to apply Dirichlet boundary conditions to an H(curl) field in a very concise manner.
To implement such a boundary condition in MFEM you'll need a VectorCoefficient which evaluates the boundary values that you want.  Note that only the tangential components of this field will be used, the normal component is ignored.  We have a few VectorCoefficients that might be useful or you can write your own.  However, the most common way to implement your own coefficient is to write a simple function of the form:
void your_vector_func(const Vector &x, Vector &v)
{
   v.SetSize(3);
   // Implement your function here using the position vector 'x' if needed.
   v[0] = ...;
   v[1] = ...;
   v[2] = ...;
}

You can then create the necessary VectorCoefficient like this:
VectorFunctionCoefficient yourCoef(3, your_vector_func);

Where the first argument is the dimension of the vector values returned by the function and the second is the function pointer.  For more details you can look at ex3p.cpp which follows this pattern.
Best wishes,
Mark


Can we use a buffer for a bitmap?

We have an API for creating buffers, which is used by the buffered command API
Inherently bitmaps are also, essentially, buffers
can we combine the two?
this would allow for VDP side processing of bitmaps via the buffered commands API

the buffered commands API is written to allow for cumulative creation of buffers - so a single buffer ID may in reality relate to multiple chunks of memory.  command buffers are streams, and so the primary API for dealing with them is as a stream.  when processing a buffer we can easily switch from one chunk to the next that live under a single ID.
bitmap objects in fab-gl on the other hand need to use contiguous chunks of memory for their data.  they are not processed as a stream.
there is therefore a divide between the buffers that the buffered commands API provide, and the contiguous memory blocks that the bitmap object needs
a "consolidate blocks" command that takes a buffer ID and combines all the separate blocks within that ID into a single contiguous chunk of memory may solve this
the simple way to implement this command would allocate a new block of the complete size of the buffer, copy the individual blocks into this new block, and then discard the original blocks.  this inevitably needs a big chunk of free memory.
there may be a way to use the himem API to reduce the memory needs when the command is being processed.  this idea however is probably unnecessarily complex :grin:

A challenge with this is what do we do about deleting a buffer that is being used to hold data being used for a bitmap?

yes - we can use a buffer for bitmaps.  that's done in #61


Enable await in ES5 and ES2015 script mode

Even though strictly generators are an ES6 feature the real world support is large enough to use the feature in well known environments like node.js or Electron app.
Since the previous output was not working at all anyway it feels like a good compromise to at least emit working code while still having the warning in place.

Hi @holtwick, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

I disagree. When targeting ES5, only ES5 should be emitted, not ES5.5. This is related to the issue #4692, Granular Targeting.
Your best bet would be to target ES6 and use babel to transpile just what you need to (transpile classes, but leave generators as is).

@lbguilherme thanks for pointing to #4692. Indeed some target specific code emission sounds reasonable to me. Using Babel or the like instead as a second pass sounds like overkill and probably adds another source of failures for the end user.
As I mentioned before, the transpiler currently emits completely invalid code anyway. So this change would not harm and the error is still presented in my minimal change.
To illustrate what actually changes in the emitted code. This would be TS:
await foo();

With ES5 option the current implementation would emit:
yield foo();

This code can fail for 2 reasons: 1. Because yield is not supported or 2. because the wrapping function would need too look like function *bar().
Instead with this patch applied you get the same output as for ES6, which is:
return __awaiter(this, void 0, Promise, function* () {
    yield foo();
});

The __awaiter and everything else is already emitted anyway.
 The TS es6 flag is all or nothing.

not sure this is the right solution though. we make no guarantees in the case of errors. the correct fix is to address  #4692. i am open to taking this PR, but i do not think it solves the issue, it just kicks the can down the road until you run into the next blocking issue.

As I see from https://github.com/Microsoft/TypeScript/wiki/Roadmap async/await support is on the roadmap for 2.0 anyway? That's great news.
I agree that my patch is just a quick fix and that a solution in the context of #4692 or adding some other kind of other flag would be a more elegant and conform solution. Although this little patch would already get most use cases satisfied without any major drawbacks, since the errors are still in place. So if you could merge it, I would be very grateful.
If you like to I can elaborate more on the topic and present a follow up PR. For example the next issue down the road would be the use of async keyword with arrow functions ;)

ok then, I had one comment, please update the PR.

Done. Thanks a lot.

thanks!


Investigate use of InstanceConcurrency for target based scaling

Issue opened to address comment by Charles on PR for introducing target based scaling.
https://github.com/Azure/azure-functions-sql-extension/pull/598#discussion_r1108906290

Dynamic concurrency relates to the 'target executions per instance' of the trigger as written in this section https://learn.microsoft.com/en-us/azure/azure-functions/functions-target-based-scaling?tabs=v5%2Ccsharp#dynamic-concurrency-support
Therefore relating it to MaxChangesPerWorker in SQL extension makes sense. The scaling performance can be looked into for further investigation on it.
@chiangvincent, please do add if you have anything else related to dynamic concurrency for target based scaling.

Discussed offline and verified that we are using the value correctly.


KZL 757 - Getting Started with Node.js

What does this PR do?
Add getting started with Node.js in src/sdk-reference/js/6/getting-started
How should this be manually tested?

Step 1 : https://deploy-preview-145--kuzzle-doc-v2.netlify.com/sdk-reference/js/6/getting-started/node-js/
Step 2 :
Step 3 :

@xbill82 and @benoitvidis You might review this PR again

@eric-trousset I put the Running Kuzzle part to have the complete tutorial on the same page, from installing and running Kuzzle to the SDK JS part.
But you're right, duplicating is bad. I used include plugin from @benoitvidis instead

@scottinet You might review this PR. I didn't apply all your modification with the integrated commit but they are taken into account.


[Error] Gates issue

Steps to reproduce:

Go to the Lorencia -> Devias gate
Enter Devias
Go back to Lorencia

Result:
No error occure but server and client stuck.
Short look: stuck occures at the moment when
 public void EnterGate(Player player, EnterGate enterGate){
...
if (player.CurrentMap.Definition.EnterGates.Contains(enterGate) && !(player.X >= enterGate.X1 - INACCURACY &&
                  player.X <= enterGate.X2 + INACCURACY &&
                  player.Y >= enterGate.Y1 - INACCURACY &&
                  player.Y <= enterGate.Y2 + INACCURACY))
            {
                return;
            }
...
}

causes return. Return triggers in 90% of cases due to small INACCURACY (currently its 2). Tested with 4 - everything is fine.
After INACCURACY changed to 4 and it become working next error occured:
[ERROR] 2018-07-14 15:18:37,227 [MUnique.OpenMU.GameServer.RemoteView.RemotePlayer] [0] - System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
   в MUnique.OpenMU.GameLogic.Player.WarpTo(ExitGate gate) в D:\MuProject\TheServer\OpenMU-1\src\GameLogic\Player.cs:строка 502
   в MUnique.OpenMU.GameLogic.PlayerActions.WarpGateAction.EnterGate(Player player, EnterGate enterGate) в D:\MuProject\TheServer\OpenMU-1\src\GameLogic\PlayerActions\WarpGateAction.cs:строка 55
   в MUnique.OpenMU.GameServer.MessageHandler.WarpGateHandler.HandlePacket(Player player, Byte[] packet) в D:\MuProject\TheServer\OpenMU-1\src\GameServer\MessageHandler\WarpGateHandler.cs:строка 50
   в MUnique.OpenMU.GameServer.ConfigurablePacketHandler.HandlePacket(Player player, Byte[] packet) в D:\MuProject\TheServer\OpenMU-1\src\GameServer\ConfigurablePacketHandler.cs:строка 56
   в MUnique.OpenMU.GameServer.RemoteView.RemotePlayer.PacketReceived(Byte[] buffer) в D:\MuProject\TheServer\OpenMU-1\src\GameServer\RemoteView\RemotePlayer.cs:строка 71

Steps to reproduce:

Change INACCURACY  to 4
Enter Devias via Lorencia gate
Leave Devias -> Enter Lorencia
Enter Devias again
Try to leave Devias via Lorencia gate

Upd.
Error occures at
public void EnterGate(Player player, EnterGate enterGate){
...
player.WarpTo(enterGate.TargetGate);
...
}

Because of enterGate.TargetGate == NULL.
targetGateId is ok but rawTargetGate and targetGate become NULL.

I think the inaccuracy is not the problem... it should probably use the WalkTarget coordinates instead of the current x and y for the comparison.
The empty target gate is probably again a data loading issue at the JsonObjectDeserializer. There is a circular reference which could make problems.

Yeap, with inaccuracy figured it out this morning...
But unlucky me - had not yet looked how JsonObjectDeserializer works


sbt build error help.

error info
E:\houseMD\housemd>sbt proguard
[info] Loading project definition from E:\houseMD\housemd\project
[info] Set current project to housemd (in build file:/E:/houseMD/housemd/)
[info] Compiling 21 Scala sources and 4 Java sources to E:\houseMD\housemd\target\scala-2.9.2\classes...
[error] E:\houseMD\housemd\src\main\scala\com\github\zhongl\housemd\house\House.scala:19: object tools is not a member of package com.sun
[error] import com.sun.tools.attach.VirtualMachine
[error]                ^
[error] one error found
[error] {file:/E:/houseMD/housemd/}housemd/compile:compile: Compilation failed
[error] Total time: 5 s, completed 2012-12-26 13:22:48

这个问题我也搞了很久，也是不行

#112


Support @base Directive

RDFWriters should support adding a base directive. In many cases this can significantly reduce file size without using a namespace prefix.

The previous issue tracking this is #436


Change of colorAccent for version 21 and more

Hi,
First of all your library is really great.
I have a small issue. I am using the simple Material Dialog indeterminate progress bar I am trying to change the color of progress bar.
I am using android:Theme.Holo.Light.DarkActionBar and trying to change the progress bar color. On my Galaxy nexus the change of color works but when I try the same on Nexus 5 which has 5.1.1 it is not working.
Here is what I have tried:
new MaterialDialog.Builder(this)
					.content(getResources().getString(R.string.registersigningup))
					.progress(true, 0)
					.show();

  <style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
        <item name="colorAccent">@color/orangeColor</item>
    </style>

Any idea why this happening?

You need to use AppCompat themes in your Activity, not Holo themes.

colorAccent is the AppCompat version of android:colorAccent which only works on Lollipop. AppCompat is backwards compatible Material theming.

What if I don't want to use AppCompat like for Galaxy Nexus (4.3) it is working...as I have to change lot of things in my project if I use AppCompat (Actionbar, Drawable etc)

Sorry, a lot of this library is built on AppCompat and it's vital for UI theming. AppCompat uses most of the Material theme back to Gingerbread, including coloring EditTexts, CheckBoxes, etc. There's no way for this library to manually do that without including a lot more resources which take up extra space.
It's not very hard to switch, you just extend AppCompatActivity instead of Activity, and switch the themes in styles.xml. Any uses of getActionBar() become getSupportActionBar().

Yes. I have already tried it and didn't work for me. Actionbar title doesn't show up properly. I have white background and black text in the existing and after I change everything - The actionbar becomes big, ActionBarDrawerToggle is looking for toolbar etc. :(

I'd recommend looking through your theme for anything that you don't need.
Setting the action bar color: the colorPrimary styles.xml attribute
Setting the status bar color: the colorPrimaryDark styles.xml attribute
UI elements like inputs and other fields: the colorAccent styles.xml attribute
ActionBarDrawerToggle doesn't need a Toolbar, there's another constructor that doesn't take a toolbar. I think it might need AppCompat to work though.

Hmm.. Let me check on it again! Thanks! Hope it works on existing without any issues. Thanks!


Activation of the 'core way of syncing' part of The Big Refactoring

This PR activates core way of syncing which replaces concurrent chain way (single chain we are willing to sync from).
In this PR several classes are being activated: ConsensusManager, ChainedHeaderTree, new BlockPuller. Several are removed: ConsensusLoop, BestChainSelector, old BlockPuller.
This is going to be quite a big PR with a few of us contributing to it.
A suggestion is to have a few devs working  in the same branch.
Current state:
All code compiles, many tests don't compile.

@dangershony  DI can't resolve
services.AddSingleton<IConsensusRules, ConsensusRules>();
because ConsensusRules is abstract and non-abstract PoW consensusRules and PoS consensusRules are in consensus feature.
Are we moving consensus feature to base?

Yes I am aware of that Ivan, not sure yet how to solve this.
Initially I was planning to make ConsensusRules not abstract however I think now this approach won't work as we should always have an implementation of ConsensusRules per network type POW/POS/POA so I am now considering to put this in the network class, either that or we create a node of a certain algo type.
Either way it's likely both pow/pos ConsensusRulse will go either to  Stratis.Bitcoin or a new project that will also contain the networks

I thought we are doing this on the separated branch.?

@Aprogiena it is a separate branch (under my name) if its an issue I can merge to a branch under FN, but no big deal.

There are a few conflicts here (sobbing uncontrollably).


Arweave

Hey, I wanted to make sure you knew about the arweave chain, which provides for very cheap on-chain storage and offers an http api on every network node.

oh yes, we expect to offer it as an additional storage option, this and IPFS.  #linkallchains


Replay saved stream (bin file) from a database

Hi, great project Marek! I was trying to go about storing the bin file of the recording in a database and then replaying the bin file on the iOS application I made. Since the project is only setup to work with a socket, do you have any suggestions as to how to go about replaying the recorded stream on-demand (such as storing it in a database and calling to download/play it)? Do I need to extract the frames from the bin file and replay them in a readable file format? Any help would be greatly appreciated!

Hi,
I'm not sure what the question is exactly. What format does your app expect? Is the bin file stored locally on the device or is the database remote? Please be more precise.
Thanks,
Marek

Hi Marek, I'm just essentially looking for a way to replay streams and not just stream them. Do I need to port the player into the unity project and store the bin files locally in that project?

Hi,
Thanks, I understand your question now. Yes, you would want to move the code that reads the bin files  to a Unity project.
You might have to place the .bin file in the streaming assets directory so that it is copied to the output project for iOS.
Marek


can you create a windows app/windows exe

i have everything working i was wondering if i can open it up as a app in a windows insted of running it in code/cmd

lol no


Different Registration Types

Allow multiple types of users on your site (a trainer has a different profile than a member).
The registration form can be multi-paged, it can change with a selector (and an ajax request) or it can be based on url / url parameters.

Fixed with multi-paged registrations.


Blue/Green Deployments

Is it possible to perform blue/green deployments with flux?
I was unable to find anything related in the documentation.
Do you need a service mesh, like Istio, to perform canary and blue/green with flux?
If I udnerstood correctly, currently you can only do k8s native recreate & rolling update deployments with flux?

Do you need a service mesh, like Istio, to perform canary and blue/green with flux?

It's possible to do these without using a service mesh, but not very satisfactory. I would have a look at flagger, which will orchestrate blue/green deployments and so on for you, and is designed to work with Flux.

If I udnerstood correctly, currently you can only do k8s native recreate & rolling update deployments with flux?

In the sense that it only supports what your Kubernetes cluster supports, yes. But you can apply CRDs with Flux, and that gives you access to more sophisticated tooling (like flagger!)

Ok, thanks for your feedback.


Metadata search initially use 'Any' for species in the request parameter

In the Single Cell Expression Atlas the gene search on the homepage initially using Any as a value for the request parameter for species.
In case of the species dropdown set to Any, the request parameter should contains all the species's value and not a single Any value.
Workaround to fix the search:

Select any other value from the Species dropdown.
Select Any value from the Species dropdown.

The logic that transform the Any label when its value is `` is here:
In the scxa-gene-search-form in the Autocomplete.js
function _asyncFetchOptions (host, suggesterEndpoint, selectedSpecies, allSpecies) {
  return async (inputValue) => {
    const suggesterUrl = URI(suggesterEndpoint, host).search({
      query: inputValue,
      species: selectedSpecies || allSpecies.join(`,`)
    }).toString()

    const response = await fetch(suggesterUrl)
    if (response.ok) {
      return await response.json()
    }
    throw new Error(`${suggesterUrl} => ${response.status}`)
  }
}

the line:
species: selectedSpecies || allSpecies.join(`,`)

is responsible for it, but for returning all species selectedSpecies should be undefined or empty.
In the initial state of the search component the species's value is not empty, but Any. So, we probably need to change it to empty in the that component.

I think we probably have to change the initial value of the Species dropdown in the search.jsp where we define initial values for the search form.
I am going to test my theory locally.

Yes. My test worked. It was enough to change the value from Any to `` in the search.jsp.
From:
defaultSpecies: `Any`,

To:
defaultSpecies: ``,

Tested on test and staging env.


v1-bump/1.180.0

Release 1.180.0

AWS CodeBuild CI Report

CodeBuild project: githubautobuild-for-cdk-v1
Commit ID: 0f9bd425656e190fa63a97c705838d53ac8eb32c
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


"Visualize" button on resource landing page

@horsburgh @dtarb @danames Discussions last Wed demonstrated a need for a "Visualize" button on each resource landing page that easily gives access to the appropriate visualization app. This can point to an app or internally, but bypasses the app registry and is only sensitive to resource type. Thus, a user does not have to learn about the app registry in order to visualize something.
This -- in turn -- means that we will designate one app for each type of resource as the first point of contact.

See #1161, #1609, and #1610 that also relate to how apps are launched.  I think we need a holistic design for this.


Feature: Scheme list

It would be nice if the provided schemes are visible individually from a response/request too.

If I understand the issue correctly, then I think this would be out of scope for this project and would be more suited for https://github.com/redocly/redoc ?

Hi could be, I wasn't sure if it was just a missing configuration option here or a missing redoc feature. What I basically meant is it would be nice to have the model list from the swagger editor separately too:
https://editor.swagger.io/ should show the pet store example by default and at the bottom there is "Models".

@rohit-gohri I just checked the redoc live demo http://redocly.github.io/redoc/
and there is a sidebar that contains models. I can't seem to see that part using redocsuarus, am I missing a configuration option? ok. could it be that i have to use the x-tagGroups etc. to get this to work?

Oh that, I have used those. I'll try to add an example for that.

@rohit-gohri Thanks


chore: Add 'keywords.txt'

Proposed changes

This PR adds keywords.txt for highlighting library objects in IDE's such as Arduino.
Types of changes

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Refactoring (improve a current implementation without adding a new feature or fixing a bug)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Build (changes that affect the build system)
[ ] Docs (documentation only changes)
[ ] Test (adding missing tests or fixing existing tests)
[x] Other... Please describe:

Checklist

[x] I have read the CONTRIBUTING documentation
[x] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

@air1one @faustbrian - please review this in the next few days. Be sure to explicitly select labels so I know what's going on.
If no reviewer appears after a week, a reminder will be sent out.

Codecov Report

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

@@          Coverage Diff           @@
##           master     #77   +/-   ##
======================================
  Coverage    96.4%   96.4%
======================================
  Files          14      14
  Lines         250     250
======================================
  Hits          241     241
  Misses          9       9

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 690780a...2384704. Read the comment docs.


Crisp main link need to be allowed

The hero link "je me fais livrer" is not loading

Well I messed up with crisp config, it's now fixed. Thank you !


feat: introduced qodana code quality scan

Request will be closed, because of the missing .NET support in the community edition.


Update guidance-resiliency-checklist.md

Fix a few typos.

Hi @mcollier, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Michael Collier). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

Thanks! - I'm incorporating these changes into the original doc, which is in the Azure publishing repo.


Add a protected route

Thanks so much for this example!
I'm starting to play around with Svelte and your setup with firebase auth in a store is very helpful. However I haven't been able to set up a properly protected route. I tried setting it up in the load function like in the real-world example, but stores aren't available in <script context="module">s. Then I tried setting up a redirect with goto inside onMount but the store is always unset at the beginning, so it always ends up trying to redirect as if there was no user signed in. It isn't until after the onMount runs that the onAuthStateChanged in listen kicks in and sets the auth store to the current user.
I'm wondering if I need to store the auth value in a cookie on top of the store or if there's a better, svelte-way of doing things.
Could you add an example of a protected route in this example app?

Because of how Firebase works and also because the scripts themselves are being lazy-loaded, the auth resolution is happening independently of any component onMount - when the component is mounted the auth status may or may not be known.
As it isn't guaranteed to run before or after it's better to think in terms of subscribing to the auth store and taking appropriate action when the status is known. You also need to decide what should happen before the status is known.
Exactly what that action should be will depend a lot on your specific app - do you want the user to be able to navigate to a route and be told they don't have access, or be redirected someplace else and so on. It will also depend how that is decided - a simple case would be just whether they are signed in or not, a more complex example would look at their auth claims and whether they have access to that specific thing. That then gets into other similar requirements, such as "hiding the edit button if they don't have an editor role".
For the simple cases, I would think about putting the auth "guard" in the $layout.svelte file which can render the <slot> to show the current route or not, perhaps showing an 'access denied' message or redirecting if they don't.
For adapting the UI based on claims / roles I've usually used a wrapper element or an action that can be applied to individual elements.
I'll try to add some examples of both.

Looking fwd to the auth guard.

The Auth.svelte control shows how you can use the auth state - if you wanted to prevent something from displaying for instance, you could put something like this in a __layout and only output the slot if they are signed in. You can also check for the user having specific auth claims to provide role based access to things.

Hi,
I was trying to do this actually and finally found an approach here: Why is my currentUser == null in Firebase Auth? | by Doug Stevenson | Firebase Developers | Medium, which is actually mentioned in the firebase docs Manage Users in Firebase
Basically, you need to add aonAuthStateChanged observer to your route or __layout, e.g. wrapped in onMount, and then if user, redirect to another route using goto, something like this:
import { app } from '$lib/firebase'

onMount(() => {
  onAuthStateChanged(auth.userAuth, async (user) => {
    if (!user) {
      await goto('/login');
    }
  });
});

The auth store is already checking for auth state changes and providing the auth status - so there is no need to duplicate this, simply check the auth store state. If you do it in a __layout you can either allow the 'd content or display a login form, or redirect to one.

do you mean, checking for auth state with $auth.user or $auth.known? I tried that and the status is null after refreshing the page for a split of a second (what they call in the docs an intermediate state) before it gives the actual status, and so the route ends up being always redirected.

Yes, the $auth.known tells you whether the state of $auth.user has been determined yet, which isn't instant (because the client SDK has to initialize and check it's state), so either combine or nest them (the not-know state could be a loading spinner for instance).

yes, in the html components, $auth.know and $auth.user accomplishes what you say but only to hide or display content, but what I need is the route to be redirected to another route/page if the user is not signed in. For that, apparently, onAuthStateChanged call is needed on any page on which you want to avoid the intermediate user state, which is unfortunate. This is from the documentation: "For each of your app's pages that need information about the signed-in user, attach an observer to the global authentication object..."

You're not understanding what I'm saying - that doc is telling you how to do it with just the firebase SDK in a generic way, the auth code in this project is wrapping that and providing it in a svelte-subscribeable store. No need to repeat it, it's already provided in the store and means you only need a single place to check it.
https://github.com/CaptainCodeman/sveltekit-example/blob/master/src/lib/auth.ts#L17

I understand what you mean and I know that in auth.ts there is a call to onAuthStateChange, but that call is not enough for checking the state of the user and redirecting a route. For example, you can try that the following route guard will not work, say in a new route  routes/about.svelte:
<script>
$: if (!$auth.user) {
  goto('/')
}
</ script>

<div>
...
</div>

when you refresh the page /about, the route will always redirect to /, even if the user is logged in, which of course is not what we want if the user is logged in. And this is due to $auth.user being null for a fraction of a second until the connection to firebase is reestablished and the user state is verified.
Anyways, you can check that if you want, and perhaps there are other ways of getting around that issue but in my understanding, you need another call to onAuthStateChange to omit the intermediate null state of the user.

Well, you're not checking for if the auth status is known. If you follow what I've already said, several times, you'll see it works fine.
As already stated, you don't need to add any additional onAuthStateChange subscriptions. The auth state is already encapsulated in and available via the auth store to svelte routes and components.
If you want to ignore part of the state and claim it doesn't work, that's up to you. I have better things todo than keep tryting to explain the same thing to you.

Well, I was not looking for an explanation from your side, was I? if you read my comments carefully you would realize that. If you disagree with my comments regarding the issue that @RicCu raised in the first place is completely app to you, and yea, I can say the same thing, I also have betters things to do than trying to clarify to you that your answer does not solve this issue. But anyway, we all have the right to disagree, otherwise, I would suggest that you don't post public repos or at least don't allow to open issues in those repos, so we all avoid this going back and forth with our comments and waisting each other's time. Cheers!

Well, you shouldn't go adding misinformation to people's issues uninvited and then ignoring the explanations of why it's unnecessary. Thankfully, you're not the GitHub police so I can chose to share or not share whatever I like. I took the time to create this repo to illustrate a couple of things for anyone who happens to find them useful. If you don't, or you can't understand it, just keep on walking.
Maybe if you take the time to re-read my comments and actually try the code suggested, instead of insisting that copy-paste code is the only way, you'll discover it works just fine.

For anyone else reading, it boils down to the .known property indicating if the .user property can be relied on yet. So until the .known state is true, you shouldn't decide anything based on the state of .user as the SDK is still loading / checking the auth status.
Another way of doing it is to make the auth store contain a promise, so you would instead await the auth state being known and set.
The key part is it isn't instant and whatever method you're using, you have to wait for it to be set.

@CaptainCodeman do you have any suggestions how one would go about making a promise in the auth store.
This is what I currently have in my +page.server.js:
import { redirect, error } from '@sveltejs/kit'

export const load = async ({ parent }) => {
  // session consists of just the user object, but could contain other preferences
  const session = await parent()
  if (!session.user) {
    throw redirect(307, '/sign-up')
  }
}

See: https://www.captaincodeman.com/how-to-await-firebase-auth-with-sveltekit
But please don't hijack issues with non-related requests in future.

It is directly related actually since it queries your very unique and specific method in adopting Firebase. Looking through these issues it seems you really don't have the right attitude for opensource projects - I appreciate your generosity in making this repo public however like @idr4n suggested I think it would be best to turn issues off going forward. Kindness and tolerance cost nothing.