Just not working need help

Question

Cloning completed: 646.02ms
07:32:59.866 | Running "vercel build"
07:33:00.377 | Vercel CLI 28.6.0
07:33:00.557 | > Installing Builder<EMAIL_ADDRESS>07:33:05.109 | 🐘 Downloading user files
07:33:05.109 | 🐘 Downloading PHP runtime files
07:33:05.213 | 🐘 Creating lambda
07:33:13.470 | Error: The Runtime<EMAIL_ADDRESS>is using "nodejs12.x", which is discontinued. Please upgrade your Runtime to a more recent version or consult the author for more details.
07:33:13.471 | Learn More: https://github.com/vercel/vercel/blob/main/DEVELOPING_A_RUNTIME.md#lambdaruntime

Hi @Metastem. Can you please upgrade it to latest version<EMAIL_ADDRESS>

I'm facing this issue
[18:20:17.269] Previous build cache not available
[18:20:17.945] Cloning completed: 836.701ms
[18:20:18.179] Running "vercel build"
[18:20:18.820] Vercel CLI 28.10.0
[18:20:19.014] > Installing Builder<EMAIL_ADDRESS>[18:20:22.484] 🐘 Downloading user files
[18:20:22.485] 🐘 Downloading PHP runtime files
[18:20:22.560] 🐘 Creating lambda
[18:20:26.082] Error: EISDIR: illegal operation on a directory, read

Hi @gamerhost31. You should use latest version<EMAIL_ADDRESS>

I'm seeing this same error with 0.5.2 specifically when letting it deploy automatically from GitHub.
When deploying with vercel or vercel --prod in the command line it works perfectly fine.
Code: https://github.com/DenverCoder1/github-readme-streak-stats/tree/vercel
It also seems to be repeating Creating lambda, Downloading user files, Downloading PHP runtime files, Installing Composer dependencies several times before failing.

Build log
Cloning github.com/DenverCoder1/github-readme-streak-stats (Branch: vercel, Commit: b04d69d)
--
09:32:01.519 | Cloning completed: 655.165ms
09:32:01.794 | Restored build cache
09:32:01.847 | Running "vercel build"
09:32:02.505 | Vercel CLI 28.10.0
09:32:02.718 | > Installing Builder<EMAIL_ADDRESS>09:32:10.153 | 🐘 Downloading user files
09:32:10.154 | 🐘 Downloading PHP runtime files
09:32:10.158 | 🐘 Installing Composer dependencies [START]
09:32:10.410 | [6.0MiB/0.09s] No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information.
09:32:10.411 | [6.0MiB/0.09s] Loading composer repositories with package information
09:32:10.729 | [6.2MiB/0.41s] Info from https://repo.packagist.org: #StandWithUkraine
09:32:11.396 | [8.9MiB/1.08s] Updating dependencies
09:32:11.418 | [7.4MiB/1.10s] Lock file operations: 34 installs, 0 updates, 0 removals
09:32:11.418 | [7.4MiB/1.10s]   - Locking doctrine/instantiator (1.4.1)
09:32:11.418 | [7.4MiB/1.10s]   - Locking graham-campbell/result-type (v1.1.0)
09:32:11.418 | [7.4MiB/1.10s]   - Locking myclabs/deep-copy (1.11.0)
09:32:11.419 | [7.4MiB/1.10s]   - Locking nikic/php-parser (v4.15.2)
09:32:11.419 | [7.4MiB/1.10s]   - Locking phar-io/manifest (2.0.3)
09:32:11.419 | [7.4MiB/1.10s]   - Locking phar-io/version (3.2.1)
09:32:11.419 | [7.4MiB/1.10s]   - Locking phpoption/phpoption (1.9.0)
09:32:11.419 | [7.5MiB/1.10s]   - Locking phpunit/php-code-coverage (9.2.22)
09:32:11.420 | [7.5MiB/1.10s]   - Locking phpunit/php-file-iterator (3.0.6)
09:32:11.420 | [7.5MiB/1.10s]   - Locking phpunit/php-invoker (3.1.1)
09:32:11.420 | [7.5MiB/1.10s]   - Locking phpunit/php-text-template (2.0.4)
09:32:11.420 | [7.5MiB/1.10s]   - Locking phpunit/php-timer (5.0.3)
09:32:11.420 | [7.5MiB/1.10s]   - Locking phpunit/phpunit (9.5.27)
09:32:11.420 | [7.5MiB/1.10s]   - Locking sebastian/cli-parser (1.0.1)
09:32:11.421 | [7.5MiB/1.10s]   - Locking sebastian/code-unit (1.0.8)
09:32:11.421 | [7.5MiB/1.10s]   - Locking sebastian/code-unit-reverse-lookup (2.0.3)
09:32:11.421 | [7.5MiB/1.10s]   - Locking sebastian/comparator (4.0.8)
09:32:11.421 | [7.5MiB/1.10s]   - Locking sebastian/complexity (2.0.2)
09:32:11.422 | [7.5MiB/1.10s]   - Locking sebastian/diff (4.0.4)
09:32:11.422 | [7.5MiB/1.10s]   - Locking sebastian/environment (5.1.4)
09:32:11.422 | [7.5MiB/1.10s]   - Locking sebastian/exporter (4.0.5)
09:32:11.422 | [7.5MiB/1.10s]   - Locking sebastian/global-state (5.0.5)
09:32:11.423 | [7.5MiB/1.10s]   - Locking sebastian/lines-of-code (1.0.3)
09:32:11.423 | [7.5MiB/1.10s]   - Locking sebastian/object-enumerator (4.0.4)
09:32:11.423 | [7.5MiB/1.10s]   - Locking sebastian/object-reflector (2.0.4)
09:32:11.423 | [7.5MiB/1.10s]   - Locking sebastian/recursion-context (4.0.4)
09:32:11.423 | [7.5MiB/1.10s]   - Locking sebastian/resource-operations (3.0.3)
09:32:11.423 | [7.5MiB/1.10s]   - Locking sebastian/type (3.2.0)
09:32:11.423 | [7.5MiB/1.10s]   - Locking sebastian/version (3.0.2)
09:32:11.424 | [7.5MiB/1.10s]   - Locking symfony/polyfill-ctype (v1.27.0)
09:32:11.424 | [7.5MiB/1.10s]   - Locking symfony/polyfill-mbstring (v1.27.0)
09:32:11.424 | [7.5MiB/1.10s]   - Locking symfony/polyfill-php80 (v1.27.0)
09:32:11.424 | [7.5MiB/1.10s]   - Locking theseer/tokenizer (1.2.1)
09:32:11.424 | [7.5MiB/1.10s]   - Locking vlucas/phpdotenv (v5.5.0)
09:32:11.424 | [7.5MiB/1.10s] Writing lock file
09:32:11.425 | [7.5MiB/1.10s] Installing dependencies from lock file
09:32:11.425 | [7.8MiB/1.10s] Package operations: 6 installs, 0 updates, 0 removals
09:32:11.425 | [7.8MiB/1.11s]   - Downloading symfony/polyfill-php80 (v1.27.0)
09:32:11.425 | [7.9MiB/1.11s]   - Downloading symfony/polyfill-mbstring (v1.27.0)
09:32:11.425 | [7.9MiB/1.11s]   - Downloading symfony/polyfill-ctype (v1.27.0)
09:32:11.425 | [7.9MiB/1.11s]   - Downloading phpoption/phpoption (1.9.0)
09:32:11.425 | [8.0MiB/1.11s]   - Downloading graham-campbell/result-type (v1.1.0)
09:32:11.426 | [8.0MiB/1.11s]   - Downloading vlucas/phpdotenv (v5.5.0)
09:32:11.807 | [7.9MiB/1.49s]   - Installing symfony/polyfill-php80 (v1.27.0): Extracting archive
09:32:11.818 | [8.0MiB/1.50s]   - Installing symfony/polyfill-mbstring (v1.27.0): Extracting archive
09:32:11.820 | [8.1MiB/1.50s]   - Installing symfony/polyfill-ctype (v1.27.0): Extracting archive
09:32:11.822 | [8.1MiB/1.51s]   - Installing phpoption/phpoption (1.9.0): Extracting archive
09:32:11.825 | [8.2MiB/1.51s]   - Installing graham-campbell/result-type (v1.1.0): Extracting archive
09:32:11.827 | [8.2MiB/1.51s]   - Installing vlucas/phpdotenv (v5.5.0): Extracting archive
09:32:12.239 | [7.7MiB/1.92s] 5 package suggestions were added by new dependencies, use `composer suggest` to see details.
09:32:12.239 | [7.8MiB/1.92s] Generating autoload files
09:32:12.254 | [7.9MiB/1.94s] 6 packages you are using are looking for funding.
09:32:12.254 | [7.9MiB/1.94s] Use the `composer fund` command to find out more!
09:32:12.254 | [7.9MiB/1.94s] Memory usage: 7.86MiB (peak: 11.49MiB), time: 1.94s
09:32:12.277 | 🐘 Installing Composer dependencies [DONE]
09:32:12.341 | 🐘 Creating lambda
09:32:12.345 | 🐘 Downloading user files
09:32:12.346 | 🐘 Downloading PHP runtime files
09:32:12.348 | 🐘 Installing Composer dependencies [START]
09:32:12.462 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:12.463 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:12.469 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:12.472 | [3.5MiB/0.03s] Generating autoload files
09:32:12.485 | [3.6MiB/0.04s] 6 packages you are using are looking for funding.
09:32:12.485 | [3.6MiB/0.04s] Use the `composer fund` command to find out more!
09:32:12.485 | [3.6MiB/0.04s] Memory usage: 3.58MiB (peak: 3.84MiB), time: 0.04s
09:32:12.499 | 🐘 Installing Composer dependencies [DONE]
09:32:12.635 | 🐘 Creating lambda
09:32:12.637 | 🐘 Downloading user files
09:32:12.637 | 🐘 Downloading PHP runtime files
09:32:12.690 | 🐘 Installing Composer dependencies [START]
09:32:12.833 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:12.834 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:12.843 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:12.846 | [3.5MiB/0.04s] Generating autoload files
09:32:12.863 | [3.6MiB/0.05s] 6 packages you are using are looking for funding.
09:32:12.863 | [3.6MiB/0.05s] Use the `composer fund` command to find out more!
09:32:12.863 | [3.6MiB/0.05s] Memory usage: 3.58MiB (peak: 3.84MiB), time: 0.05s
09:32:12.883 | 🐘 Installing Composer dependencies [DONE]
09:32:13.021 | 🐘 Creating lambda
09:32:13.024 | 🐘 Downloading user files
09:32:13.025 | 🐘 Downloading PHP runtime files
09:32:13.057 | 🐘 Installing Composer dependencies [START]
09:32:13.201 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:13.202 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:13.213 | [3.6MiB/0.04s] Nothing to install, update or remove
09:32:13.216 | [3.5MiB/0.04s] Generating autoload files
09:32:13.236 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:13.237 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:13.237 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:13.250 | 🐘 Installing Composer dependencies [DONE]
09:32:13.408 | 🐘 Creating lambda
09:32:13.412 | 🐘 Downloading user files
09:32:13.412 | 🐘 Downloading PHP runtime files
09:32:13.458 | 🐘 Installing Composer dependencies [START]
09:32:13.600 | [3.1MiB/0.03s] Installing dependencies from lock file
09:32:13.601 | [3.1MiB/0.03s] Verifying lock file contents can be installed on current platform.
09:32:13.610 | [3.6MiB/0.04s] Nothing to install, update or remove
09:32:13.614 | [3.5MiB/0.04s] Generating autoload files
09:32:13.633 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:13.633 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:13.633 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:13.652 | 🐘 Installing Composer dependencies [DONE]
09:32:13.751 | 🐘 Creating lambda
09:32:13.754 | 🐘 Downloading user files
09:32:13.754 | 🐘 Downloading PHP runtime files
09:32:13.805 | 🐘 Installing Composer dependencies [START]
09:32:13.955 | [3.1MiB/0.03s] Installing dependencies from lock file
09:32:13.955 | [3.1MiB/0.03s] Verifying lock file contents can be installed on current platform.
09:32:13.966 | [3.6MiB/0.04s] Nothing to install, update or remove
09:32:13.968 | [3.5MiB/0.04s] Generating autoload files
09:32:13.988 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:13.988 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:13.988 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:14.002 | 🐘 Installing Composer dependencies [DONE]
09:32:14.124 | 🐘 Creating lambda
09:32:14.128 | 🐘 Downloading user files
09:32:14.128 | 🐘 Downloading PHP runtime files
09:32:14.180 | 🐘 Installing Composer dependencies [START]
09:32:14.321 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:14.322 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:14.332 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:14.335 | [3.5MiB/0.03s] Generating autoload files
09:32:14.355 | [3.6MiB/0.05s] 6 packages you are using are looking for funding.
09:32:14.356 | [3.6MiB/0.05s] Use the `composer fund` command to find out more!
09:32:14.356 | [3.5MiB/0.05s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.05s
09:32:14.370 | 🐘 Installing Composer dependencies [DONE]
09:32:14.503 | 🐘 Creating lambda
09:32:14.505 | 🐘 Downloading user files
09:32:14.506 | 🐘 Downloading PHP runtime files
09:32:14.566 | 🐘 Installing Composer dependencies [START]
09:32:14.740 | [3.1MiB/0.03s] Installing dependencies from lock file
09:32:14.740 | [3.1MiB/0.03s] Verifying lock file contents can be installed on current platform.
09:32:14.751 | [3.6MiB/0.04s] Nothing to install, update or remove
09:32:14.754 | [3.5MiB/0.04s] Generating autoload files
09:32:14.767 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:14.767 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:14.768 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:14.785 | 🐘 Installing Composer dependencies [DONE]
09:32:14.924 | 🐘 Creating lambda
09:32:14.926 | 🐘 Downloading user files
09:32:14.926 | 🐘 Downloading PHP runtime files
09:32:14.962 | 🐘 Installing Composer dependencies [START]
09:32:15.117 | [3.1MiB/0.03s] Installing dependencies from lock file
09:32:15.118 | [3.1MiB/0.03s] Verifying lock file contents can be installed on current platform.
09:32:15.126 | [3.6MiB/0.04s] Nothing to install, update or remove
09:32:15.128 | [3.5MiB/0.04s] Generating autoload files
09:32:15.146 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:15.146 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:15.147 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:15.173 | 🐘 Installing Composer dependencies [DONE]
09:32:15.307 | 🐘 Creating lambda
09:32:15.309 | 🐘 Downloading user files
09:32:15.310 | 🐘 Downloading PHP runtime files
09:32:15.356 | 🐘 Installing Composer dependencies [START]
09:32:15.514 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:15.515 | [3.1MiB/0.03s] Verifying lock file contents can be installed on current platform.
09:32:15.523 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:15.527 | [3.5MiB/0.04s] Generating autoload files
09:32:15.544 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:15.545 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:15.545 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:15.571 | 🐘 Installing Composer dependencies [DONE]
09:32:15.717 | 🐘 Creating lambda
09:32:15.719 | 🐘 Downloading user files
09:32:15.720 | 🐘 Downloading PHP runtime files
09:32:15.768 | 🐘 Installing Composer dependencies [START]
09:32:15.908 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:15.908 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:15.917 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:15.919 | [3.5MiB/0.03s] Generating autoload files
09:32:15.937 | [3.6MiB/0.05s] 6 packages you are using are looking for funding.
09:32:15.938 | [3.6MiB/0.05s] Use the `composer fund` command to find out more!
09:32:15.938 | [3.5MiB/0.05s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.05s
09:32:15.948 | 🐘 Installing Composer dependencies [DONE]
09:32:16.099 | 🐘 Creating lambda
09:32:16.101 | 🐘 Downloading user files
09:32:16.102 | 🐘 Downloading PHP runtime files
09:32:16.140 | 🐘 Installing Composer dependencies [START]
09:32:16.298 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:16.299 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:16.308 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:16.312 | [3.5MiB/0.04s] Generating autoload files
09:32:16.330 | [3.6MiB/0.05s] 6 packages you are using are looking for funding.
09:32:16.330 | [3.6MiB/0.05s] Use the `composer fund` command to find out more!
09:32:16.331 | [3.5MiB/0.05s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.05s
09:32:16.356 | 🐘 Installing Composer dependencies [DONE]
09:32:16.501 | 🐘 Creating lambda
09:32:16.503 | 🐘 Downloading user files
09:32:16.503 | 🐘 Downloading PHP runtime files
09:32:16.539 | 🐘 Installing Composer dependencies [START]
09:32:16.698 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:16.698 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:16.711 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:16.711 | [3.5MiB/0.04s] Generating autoload files
09:32:16.728 | [3.6MiB/0.05s] 6 packages you are using are looking for funding.
09:32:16.728 | [3.6MiB/0.05s] Use the `composer fund` command to find out more!
09:32:16.729 | [3.5MiB/0.05s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.05s
09:32:16.747 | 🐘 Installing Composer dependencies [DONE]
09:32:16.864 | 🐘 Creating lambda
09:32:16.866 | 🐘 Downloading user files
09:32:16.866 | 🐘 Downloading PHP runtime files
09:32:16.910 | 🐘 Installing Composer dependencies [START]
09:32:17.057 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:17.058 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:17.068 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:17.072 | [3.5MiB/0.04s] Generating autoload files
09:32:17.091 | [3.6MiB/0.05s] 6 packages you are using are looking for funding.
09:32:17.092 | [3.6MiB/0.05s] Use the `composer fund` command to find out more!
09:32:17.092 | [3.5MiB/0.05s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.05s
09:32:17.112 | 🐘 Installing Composer dependencies [DONE]
09:32:17.238 | 🐘 Creating lambda
09:32:17.240 | 🐘 Downloading user files
09:32:17.241 | 🐘 Downloading PHP runtime files
09:32:17.278 | 🐘 Installing Composer dependencies [START]
09:32:17.418 | [3.1MiB/0.03s] Installing dependencies from lock file
09:32:17.419 | [3.1MiB/0.03s] Verifying lock file contents can be installed on current platform.
09:32:17.429 | [3.6MiB/0.04s] Nothing to install, update or remove
09:32:17.433 | [3.5MiB/0.04s] Generating autoload files
09:32:17.448 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:17.448 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:17.448 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:17.464 | 🐘 Installing Composer dependencies [DONE]
09:32:17.590 | 🐘 Creating lambda
09:32:17.592 | 🐘 Downloading user files
09:32:17.592 | 🐘 Downloading PHP runtime files
09:32:17.631 | 🐘 Installing Composer dependencies [START]
09:32:17.769 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:17.769 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:17.779 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:17.783 | [3.5MiB/0.04s] Generating autoload files
09:32:17.798 | [3.6MiB/0.05s] 6 packages you are using are looking for funding.
09:32:17.799 | [3.6MiB/0.05s] Use the `composer fund` command to find out more!
09:32:17.799 | [3.5MiB/0.05s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.05s
09:32:17.819 | 🐘 Installing Composer dependencies [DONE]
09:32:17.945 | 🐘 Creating lambda
09:32:17.947 | 🐘 Downloading user files
09:32:17.947 | 🐘 Downloading PHP runtime files
09:32:17.990 | 🐘 Installing Composer dependencies [START]
09:32:18.148 | [3.1MiB/0.03s] Installing dependencies from lock file
09:32:18.149 | [3.1MiB/0.03s] Verifying lock file contents can be installed on current platform.
09:32:18.160 | [3.6MiB/0.04s] Nothing to install, update or remove
09:32:18.163 | [3.5MiB/0.04s] Generating autoload files
09:32:18.183 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:18.183 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:18.183 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:18.203 | 🐘 Installing Composer dependencies [DONE]
09:32:18.335 | 🐘 Creating lambda
09:32:18.336 | 🐘 Downloading user files
09:32:18.337 | 🐘 Downloading PHP runtime files
09:32:18.377 | 🐘 Installing Composer dependencies [START]
09:32:18.522 | [3.1MiB/0.02s] Installing dependencies from lock file
09:32:18.523 | [3.1MiB/0.02s] Verifying lock file contents can be installed on current platform.
09:32:18.533 | [3.6MiB/0.03s] Nothing to install, update or remove
09:32:18.537 | [3.5MiB/0.04s] Generating autoload files
09:32:18.557 | [3.6MiB/0.06s] 6 packages you are using are looking for funding.
09:32:18.557 | [3.6MiB/0.06s] Use the `composer fund` command to find out more!
09:32:18.557 | [3.5MiB/0.06s] Memory usage: 3.54MiB (peak: 3.81MiB), time: 0.06s
09:32:18.574 | 🐘 Installing Composer dependencies [DONE]
09:32:18.717 | 🐘 Creating lambda
09:32:19.746 | Error: EISDIR: illegal operation on a directory, read

Hi @gamerhost31. You should use latest version<EMAIL_ADDRESS>
Hi guys!
I'm seeing this same error when deploying with  vercel
This is my vercel.json
{
  "functions": {
    "api/*.php": {
      "runtime"<EMAIL_ADDRESS>    }
  },
  "routes": [
    { "src": "/(.*)",  "dest": "/api/index.php" }
  ]
}

and this is the log
[18:30:47.494] Retrieving list of deployment files...
[18:30:48.035] Previous build caches not available
[18:30:48.149] Downloading 414 deployment files...
[18:30:50.761] Running "vercel build"
[18:30:51.259] Vercel CLI 28.10.0
[18:30:51.435] > Installing Builder<EMAIL_ADDRESS>[18:30:55.083] 🐘 Downloading user files
[18:30:55.083] 🐘 Downloading PHP runtime files
[18:30:55.086] 🐘 Installing Composer dependencies [START]
[18:30:55.370] [7.1MiB/0.11s] Installing dependencies from lock file
[18:30:55.373] [7.4MiB/0.11s] Verifying lock file contents can be installed on current platform.
[18:30:55.400] [8.5MiB/0.14s] Package operations: 72 installs, 0 updates, 0 removals
[18:30:55.401] [8.5MiB/0.14s]   - Downloading doctrine/inflector (2.0.4)
[18:30:55.403] [8.6MiB/0.14s]   - Downloading symfony/polyfill-php72 (v1.23.0)
[18:30:55.403] [8.6MiB/0.14s]   - Downloading symfony/polyfill-intl-normalizer (v1.23.0)
[18:30:55.403] [8.6MiB/0.14s]   - Downloading symfony/polyfill-intl-idn (v1.23.0)
[18:30:55.403] [8.7MiB/0.14s]   - Downloading doctrine/lexer (1.2.1)
[18:30:55.404] [8.7MiB/0.14s]   - Downloading egulias/email-validator (2.1.25)
[18:30:55.406] [8.8MiB/0.14s]   - Downloading symfony/polyfill-php80 (v1.23.1)
[18:30:55.406] [8.8MiB/0.14s]   - Downloading symfony/polyfill-mbstring (v1.23.1)
[18:30:55.406] [8.8MiB/0.14s]   - Downloading symfony/deprecation-contracts (v3.0.0)
[18:30:55.406] [8.9MiB/0.14s]   - Downloading symfony/http-foundation (v5.4.1)
[18:30:55.406] [8.9MiB/0.15s]   - Downloading symfony/finder (v5.4.0)
[18:30:55.407] [9.0MiB/0.15s]   - Downloading voku/portable-ascii (1.5.6)
[18:30:55.407] [9.0MiB/0.15s]   - Downloading symfony/translation-contracts (v3.0.0)
[18:30:55.407] [9.0MiB/0.15s]   - Downloading symfony/translation (v6.0.1)
[18:30:55.407] [9.1MiB/0.15s]   - Downloading nesbot/carbon (2.55.2)
[18:30:55.407] [9.1MiB/0.15s]   - Downloading illuminate/macroable (v8.76.1)
[18:30:55.407] [9.1MiB/0.15s]   - Downloading psr/simple-cache (1.0.1)
[18:30:55.408] [9.2MiB/0.15s]   - Downloading psr/container (1.1.2)
[18:30:55.408] [9.2MiB/0.15s]   - Downloading illuminate/contracts (v8.76.1)
[18:30:55.408] [9.2MiB/0.15s]   - Downloading illuminate/collections (v8.76.1)
[18:30:55.408] [9.3MiB/0.15s]   - Downloading illuminate/support (v8.76.1)
[18:30:55.408] [9.3MiB/0.15s]   - Downloading illuminate/filesystem (v8.76.1)
[18:30:55.408] [9.3MiB/0.15s]   - Downloading illuminate/session (v8.76.1)
[18:30:55.409] [9.4MiB/0.15s]   - Downloading symfony/polyfill-ctype (v1.23.0)
[18:30:55.409] [9.4MiB/0.15s]   - Downloading phpoption/phpoption (1.8.1)
[18:30:55.409] [9.4MiB/0.15s]   - Downloading graham-campbell/result-type (v1.0.4)
[18:30:55.409] [9.5MiB/0.15s]   - Downloading vlucas/phpdotenv (v5.4.1)
[18:30:55.410] [9.5MiB/0.15s]   - Downloading symfony/var-dumper (v5.4.1)
[18:30:55.410] [9.5MiB/0.15s]   - Downloading symfony/mime (v5.4.0)
[18:30:55.410] [9.6MiB/0.15s]   - Downloading symfony/polyfill-php73 (v1.23.0)
[18:30:55.410] [9.6MiB/0.15s]   - Downloading psr/event-dispatcher (1.0.0)
[18:30:55.410] [9.6MiB/0.15s]   - Downloading symfony/event-dispatcher-contracts (v3.0.0)
[18:30:55.410] [9.7MiB/0.15s]   - Downloading symfony/event-dispatcher (v6.0.1)
[18:30:55.411] [9.7MiB/0.15s]   - Downloading psr/log (1.1.4)
[18:30:55.411] [9.7MiB/0.15s]   - Downloading symfony/error-handler (v5.4.1)
[18:30:55.411] [9.8MiB/0.15s]   - Downloading symfony/http-kernel (v5.4.1)
[18:30:55.411] [9.8MiB/0.15s]   - Downloading symfony/polyfill-intl-grapheme (v1.23.1)
[18:30:55.411] [9.8MiB/0.15s]   - Downloading symfony/string (v6.0.1)
[18:30:55.412] [9.9MiB/0.15s]   - Downloading symfony/service-contracts (v2.4.1)
[18:30:55.412] [9.9MiB/0.15s]   - Downloading symfony/console (v5.4.1)
[18:30:55.412] [9.9MiB/0.15s]   - Downloading nikic/fast-route (v1.3.0)
[18:30:55.413] [10.0MiB/0.15s]   - Downloading illuminate/container (v8.76.1)
[18:30:55.413] [10.0MiB/0.15s]   - Downloading illuminate/pipeline (v8.76.1)
[18:30:55.413] [10.0MiB/0.15s]   - Downloading illuminate/bus (v8.76.1)
[18:30:55.413] [10.1MiB/0.15s]   - Downloading illuminate/events (v8.76.1)
[18:30:55.413] [10.1MiB/0.15s]   - Downloading illuminate/view (v8.76.1)
[18:30:55.414] [10.1MiB/0.15s]   - Downloading illuminate/translation (v8.76.1)
[18:30:55.414] [10.2MiB/0.15s]   - Downloading illuminate/validation (v8.76.1)
[18:30:55.414] [10.2MiB/0.15s]   - Downloading illuminate/testing (v8.76.1)
[18:30:55.414] [10.2MiB/0.15s]   - Downloading symfony/process (v5.4.0)
[18:30:55.414] [10.3MiB/0.15s]   - Downloading symfony/polyfill-php81 (v1.23.0)
[18:30:55.415] [10.3MiB/0.15s]   - Downloading ramsey/collection (1.2.2)
[18:30:55.415] [10.3MiB/0.15s]   - Downloading brick/math (0.9.3)
[18:30:55.415] [10.4MiB/0.15s]   - Downloading ramsey/uuid (4.2.3)
[18:30:55.415] [10.4MiB/0.15s]   - Downloading opis/closure (3.6.2)
[18:30:55.415] [10.5MiB/0.15s]   - Downloading laravel/serializable-closure (v1.0.5)
[18:30:55.416] [10.5MiB/0.15s]   - Downloading illuminate/database (v8.76.1)
[18:30:55.416] [10.5MiB/0.16s]   - Downloading illuminate/console (v8.76.1)
[18:30:55.416] [10.6MiB/0.16s]   - Downloading illuminate/queue (v8.76.1)
[18:30:55.416] [10.6MiB/0.16s]   - Downloading illuminate/pagination (v8.76.1)
[18:30:55.416] [10.6MiB/0.16s]   - Downloading monolog/monolog (2.3.5)
[18:30:55.416] [10.7MiB/0.16s]   - Downloading illuminate/log (v8.76.1)
[18:30:55.417] [10.7MiB/0.16s]   - Downloading illuminate/http (v8.76.1)
[18:30:55.417] [10.7MiB/0.16s]   - Downloading illuminate/hashing (v8.76.1)
[18:30:55.417] [10.8MiB/0.16s]   - Downloading illuminate/encryption (v8.76.1)
[18:30:55.417] [10.8MiB/0.16s]   - Downloading illuminate/config (v8.76.1)
[18:30:55.417] [10.8MiB/0.16s]   - Downloading illuminate/cache (v8.76.1)
[18:30:55.418] [10.9MiB/0.16s]   - Downloading illuminate/broadcasting (v8.76.1)
[18:30:55.418] [10.9MiB/0.16s]   - Downloading illuminate/auth (v8.76.1)
[18:30:55.418] [10.9MiB/0.16s]   - Downloading webmozart/assert (1.10.0)
[18:30:55.418] [11.0MiB/0.16s]   - Downloading dragonmantank/cron-expression (v3.1.0)
[18:30:55.418] [11.0MiB/0.16s]   - Downloading laravel/lumen-framework (v8.3.3)
[18:30:56.282] [9.2MiB/1.02s]   - Installing doctrine/inflector (2.0.4): Extracting archive
[18:30:56.287] [9.2MiB/1.03s]   - Installing symfony/polyfill-php72 (v1.23.0): Extracting archive
[18:30:56.289] [9.3MiB/1.03s]   - Installing symfony/polyfill-intl-normalizer (v1.23.0): Extracting archive
[18:30:56.291] [9.3MiB/1.03s]   - Installing symfony/polyfill-intl-idn (v1.23.0): Extracting archive
[18:30:56.292] [9.4MiB/1.03s]   - Installing doctrine/lexer (1.2.1): Extracting archive
[18:30:56.294] [9.4MiB/1.03s]   - Installing egulias/email-validator (2.1.25): Extracting archive
[18:30:56.296] [9.5MiB/1.04s]   - Installing symfony/polyfill-php80 (v1.23.1): Extracting archive
[18:30:56.302] [9.5MiB/1.04s]   - Installing symfony/polyfill-mbstring (v1.23.1): Extracting archive
[18:30:56.303] [9.6MiB/1.04s]   - Installing symfony/deprecation-contracts (v3.0.0): Extracting archive
[18:30:56.303] [9.6MiB/1.04s]   - Installing symfony/http-foundation (v5.4.1): Extracting archive
[18:30:56.309] [9.7MiB/1.05s]   - Installing symfony/finder (v5.4.0): Extracting archive
[18:30:56.309] [9.7MiB/1.05s]   - Installing voku/portable-ascii (1.5.6): Extracting archive
[18:30:56.310] [9.8MiB/1.05s]   - Installing symfony/translation-contracts (v3.0.0): Extracting archive
[18:30:56.310] [9.8MiB/1.05s]   - Installing symfony/translation (v6.0.1): Extracting archive
[18:30:56.311] [9.9MiB/1.05s]   - Installing nesbot/carbon (2.55.2): Extracting archive
[18:30:56.311] [9.9MiB/1.05s]   - Installing illuminate/macroable (v8.76.1): Extracting archive
[18:30:56.315] [9.9MiB/1.05s]   - Installing psr/simple-cache (1.0.1): Extracting archive
[18:30:56.315] [10.0MiB/1.05s]   - Installing psr/container (1.1.2): Extracting archive
[18:30:56.316] [10.0MiB/1.05s]   - Installing illuminate/contracts (v8.76.1): Extracting archive
[18:30:56.316] [10.1MiB/1.05s]   - Installing illuminate/collections (v8.76.1): Extracting archive
[18:30:56.316] [10.1MiB/1.05s]   - Installing illuminate/support (v8.76.1): Extracting archive
[18:30:56.316] [10.1MiB/1.05s]   - Installing illuminate/filesystem (v8.76.1): Extracting archive
[18:30:56.316] [10.2MiB/1.05s]   - Installing illuminate/session (v8.76.1): Extracting archive
[18:30:56.317] [10.2MiB/1.05s]   - Installing symfony/polyfill-ctype (v1.23.0): Extracting archive
[18:30:56.317] [10.3MiB/1.05s]   - Installing phpoption/phpoption (1.8.1): Extracting archive
[18:30:56.318] [10.3MiB/1.05s]   - Installing graham-campbell/result-type (v1.0.4): Extracting archive
[18:30:56.318] [10.4MiB/1.05s]   - Installing vlucas/phpdotenv (v5.4.1): Extracting archive
[18:30:56.318] [10.4MiB/1.05s]   - Installing symfony/var-dumper (v5.4.1): Extracting archive
[18:30:56.318] [10.4MiB/1.05s]   - Installing symfony/mime (v5.4.0): Extracting archive
[18:30:56.318] [10.5MiB/1.05s]   - Installing symfony/polyfill-php73 (v1.23.0): Extracting archive
[18:30:56.318] [10.5MiB/1.06s]   - Installing psr/event-dispatcher (1.0.0): Extracting archive
[18:30:56.321] [10.6MiB/1.06s]   - Installing symfony/event-dispatcher-contracts (v3.0.0): Extracting archive
[18:30:56.322] [10.6MiB/1.06s]   - Installing symfony/event-dispatcher (v6.0.1): Extracting archive
[18:30:56.322] [10.6MiB/1.06s]   - Installing psr/log (1.1.4): Extracting archive
[18:30:56.322] [10.7MiB/1.06s]   - Installing symfony/error-handler (v5.4.1): Extracting archive
[18:30:56.322] [10.7MiB/1.06s]   - Installing symfony/http-kernel (v5.4.1): Extracting archive
[18:30:56.322] [10.8MiB/1.06s]   - Installing symfony/polyfill-intl-grapheme (v1.23.1): Extracting archive
[18:30:56.322] [10.8MiB/1.06s]   - Installing symfony/string (v6.0.1): Extracting archive
[18:30:56.323] [10.9MiB/1.06s]   - Installing symfony/service-contracts (v2.4.1): Extracting archive
[18:30:56.323] [10.9MiB/1.06s]   - Installing symfony/console (v5.4.1): Extracting archive
[18:30:56.323] [10.9MiB/1.06s]   - Installing nikic/fast-route (v1.3.0): Extracting archive
[18:30:56.323] [11.0MiB/1.06s]   - Installing illuminate/container (v8.76.1): Extracting archive
[18:30:56.323] [11.0MiB/1.06s]   - Installing illuminate/pipeline (v8.76.1): Extracting archive
[18:30:56.323] [11.1MiB/1.06s]   - Installing illuminate/bus (v8.76.1): Extracting archive
[18:30:56.323] [11.1MiB/1.06s]   - Installing illuminate/events (v8.76.1): Extracting archive
[18:30:56.324] [11.1MiB/1.06s]   - Installing illuminate/view (v8.76.1): Extracting archive
[18:30:56.324] [11.2MiB/1.06s]   - Installing illuminate/translation (v8.76.1): Extracting archive
[18:30:56.324] [11.2MiB/1.06s]   - Installing illuminate/validation (v8.76.1): Extracting archive
[18:30:56.324] [11.3MiB/1.06s]   - Installing illuminate/testing (v8.76.1): Extracting archive
[18:30:56.324] [11.3MiB/1.06s]   - Installing symfony/process (v5.4.0): Extracting archive
[18:30:56.324] [11.3MiB/1.06s]   - Installing symfony/polyfill-php81 (v1.23.0): Extracting archive
[18:30:56.324] [11.4MiB/1.06s]   - Installing ramsey/collection (1.2.2): Extracting archive
[18:30:56.324] [11.4MiB/1.06s]   - Installing brick/math (0.9.3): Extracting archive
[18:30:56.325] [11.5MiB/1.06s]   - Installing ramsey/uuid (4.2.3): Extracting archive
[18:30:56.325] [11.5MiB/1.06s]   - Installing opis/closure (3.6.2): Extracting archive
[18:30:56.325] [11.6MiB/1.06s]   - Installing laravel/serializable-closure (v1.0.5): Extracting archive
[18:30:56.325] [11.6MiB/1.06s]   - Installing illuminate/database (v8.76.1): Extracting archive
[18:30:56.326] [11.6MiB/1.06s]   - Installing illuminate/console (v8.76.1): Extracting archive
[18:30:56.326] [11.7MiB/1.06s]   - Installing illuminate/queue (v8.76.1): Extracting archive
[18:30:56.326] [11.7MiB/1.06s]   - Installing illuminate/pagination (v8.76.1): Extracting archive
[18:30:56.326] [11.8MiB/1.06s]   - Installing monolog/monolog (2.3.5): Extracting archive
[18:30:56.326] [11.8MiB/1.06s]   - Installing illuminate/log (v8.76.1): Extracting archive
[18:30:56.326] [11.8MiB/1.06s]   - Installing illuminate/http (v8.76.1): Extracting archive
[18:30:56.326] [11.9MiB/1.06s]   - Installing illuminate/hashing (v8.76.1): Extracting archive
[18:30:56.326] [11.9MiB/1.06s]   - Installing illuminate/encryption (v8.76.1): Extracting archive
[18:30:56.326] [12.0MiB/1.06s]   - Installing illuminate/config (v8.76.1): Extracting archive
[18:30:56.327] [12.0MiB/1.07s]   - Installing illuminate/cache (v8.76.1): Extracting archive
[18:30:56.327] [12.1MiB/1.07s]   - Installing illuminate/broadcasting (v8.76.1): Extracting archive
[18:30:56.327] [12.1MiB/1.07s]   - Installing illuminate/auth (v8.76.1): Extracting archive
[18:30:56.327] [12.2MiB/1.07s]   - Installing webmozart/assert (1.10.0): Extracting archive
[18:30:56.327] [12.2MiB/1.07s]   - Installing dragonmantank/cron-expression (v3.1.0): Extracting archive
[18:30:56.328] [12.2MiB/1.07s]   - Installing laravel/lumen-framework (v8.3.3): Extracting archive
[18:30:57.030] [9.2MiB/1.77s] Generating optimized autoload files
[18:30:57.562] [9.3MiB/2.30s] 37 packages you are using are looking for funding.
[18:30:57.563] [9.3MiB/2.30s] Use the `composer fund` command to find out more!
[18:30:57.563] [9.3MiB/2.30s] Memory usage: 9.26MiB (peak: 13.03MiB), time: 2.3s
[18:30:57.593] 🐘 Installing Composer dependencies [DONE]
[18:31:02.668] 🐘 Creating lambda
[18:31:04.471] Error: EISDIR: illegal operation on a directory, read

Hi @amorimleonardo, @DenverCoder1!, Navigate to your Project Settings, uncheck the following, save it and redeploy your project.

Hi @amorimleonardo, @DenverCoder1!, Navigate to your Project Settings, uncheck the following, save it and redeploy your project.

I tried to do this, but..... still not working for me.
This is my settings:

I tried change Node.js to test others configurations but nothing

Deploying through the site is working for me now after changing that setting.

I am also facing the exact same issue as @amorimleonardo . I have unchecked the box as well using the latest version of Node.js  as 18.x but while creating build from auto deploy from github it is giving the error of
Error: EISDIR: illegal operation on a directory, read

Hi folks. I've reached Vercel's Runtime Team, to help identify the problem. Stay tuned.

To follow up, is anyone still seeing failed builds on Vercel with the error: Error: EISDIR: illegal operation on a directory, read ?

Hi folks. Are you still facing this error?

Hi folks. Are you still facing this error?

It's working again in my side, thanks anyway.

I have the same problem.here is my build log
[17:39:48.711] Cloning github.com/hatsuyuki2333/phimg (Branch: main, Commit: 2bf8ba9)
[17:39:49.024] Previous build cache not available
[17:39:56.013] Cloning completed: 7.301s
[17:39:56.206] Running "vercel build"
[17:39:56.833] Vercel CLI 28.11.1
[17:39:57.066] > Installing Builder<EMAIL_ADDRESS>[17:40:02.141] 🐘 Downloading user files
[17:40:02.141] 🐘 Downloading PHP runtime files
[17:40:02.237] 🐘 Creating lambda
[17:40:03.142] Error: EISDIR: illegal operation on a directory, read

I've tried all solutions,but none of them works.

It looks like it's issue on Vercel side. I was trying Discord, but no luck. I've started a discussion https://github.com/vercel/vercel/discussions/9239. We will see.

I'm facing the same issue on my projects.

I am not facing that issue anymore.


Remove a couple of over-eager assertions

The best substitutions we can easily find in nested functions for captured local variables are the forwarding substitutions of the current environment.  These should be fine for type-substitution purposes but do not necessarily match the generic signature of the original variable's environment, which can trip these assertions. Unfortunately, I can't think of an easy way to weaken these assertions sufficiently to cover this case.
This should fix the source-compat suite regression reported in rdar://107642925.

@swift-ci Please test


MZ data source failing

"MozambiqueHumdataDataSource", "source_name": "MozambiqueHumdataDataSource", "config": {"name": "pipelines.epidemiology.mz_humdata.MozambiqueHumdataDataSource", "fetch": [{"url": "https://data.humdata.org/dataset/96f9bc99-28ee-4046-8a96-9f7c1a1462d7/resource/2857979e-a528-429e-b7ce-e4b1c3317718/download/mozambique-covid-19-cases.xlsx", "opts": {"ext": "xlsx"}, "parse": {"skiprows": 1}}], "test": {"skip": true, "metadata_query": "key.str.match(\"MZ_.*\")"}, "automation": {"job_group": "all", "deferred": true}}, "traceback": "Traceback (most recent call last):\n  File \"/opt/open-covid/src/lib/pipeline.py\", line 162, in _run_wrapper\n    return data_source.run(output_folder, cache, aux)\n  File \"/opt/open-covid/src/lib/data_source.py\", line 223, in run\n    data = self.fetch(output_folder, cache, fetch_opts)\n  File \"/opt/open-covid/src/lib/data_source.py\", line 76, in fetch\n    return {\n  File \"/opt/open-covid/src/lib/data_source.py\", line 77, in <dictcomp>\n    source_config.get(\"name\", idx): download_snapshot(\n  File \"/opt/open-covid/src/lib/net.py\", line 59, in download_snapshot\n    download(url, file_handle, **download_opts)\n  File \"/opt/open-covid/src/lib/net.py\", line 92, in download\n    req.raise_for_status()\n  File \"/usr/local/lib/python3.8/dist-packages/requests/models.py\", line 941, in raise_for_status\n    raise HTTPError(http_error_msg, response=self)\nrequests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://data.humdata.org/dataset/96f9bc99-28ee-4046-8a96-9f7c1a1462d7/resource/2857979e-a528-429e-b7ce-e4b1c3317718/download/mozambique-covid-19-cases.xlsx\n", "message": "Error running data source."}"

Traceback (most recent call last):\n  File "/opt/open-covid/src/lib/pipeline.py", line 162, in _run_wrapper
return data_source.run(output_folder, cache, aux)
File "/opt/open-covid/src/lib/data_source.py", line 223, in run
data = self.fetch(output_folder, cache, fetch_opts)
File "/opt/open-covid/src/lib/data_source.py", line 76, in fetch\n    return {\n  File "/opt/open-covid/src/lib/data_source.py", line 77, in
source_config.get("name", idx): download_snapshot(\n  File "/opt/open-covid/src/lib/net.py", line 59, in download_snapshot
download(url, file_handle, **download_opts)\n  File "/opt/open-covid/src/lib/net.py", line 92, in download
req.raise_for_status()\n  File "/usr/local/lib/python3.8/dist-packages/requests/models.py", line 941, in raise_for_status
raise HTTPError(http_error_msg, response=self)\nrequests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://data.humdata.org/dataset/96f9bc99-28ee-4046-8a96-9f7c1a1462d7/resource/2857979e-a528-429e-b7ce-e4b1c3317718/download/mozambique-covid-19-cases.xlsx
"


add policy action storage object

Adds a new storage property to policy actions so that they can persist metadata across multiple policy action runs. This storage object is modeled after the Apollo 3 field policies storage option here: https://www.apollographql.com/docs/react/caching/cache-field-behavior/#fieldpolicy-api-reference and serves effectively the same purpose.
If there is metadata that you would like stored across write/evict policies, the storage object will store it uniquely for the entity being operated on. A common example of needing a storage option is to compare previous and current field values.
Without a storage option, a write policy would only let you access the current properties of an entity, after the write. Now clients will be able to compare changes to fields which can be helpful in a number of scenarios:
CreateEmployeeResponse: {
  onWrite: {
    EmployeesResponse: (
      { readField },
      { ref, storage }
    ) => {
      const isActive = readField(
        'active',
        ref
      );

      const hasBecomeActive = isActive && !storage.isActive;
      if (hasBecomeActive) {
        doSomething();
      }

      storage.isActive = isActive;
    },
  },
};

How will this help facilitate the detection of disparate field changes? Is there a guaranteed order fields are resolved in?

Discussed offline


Re-introduce batching for diagnosis key packages

Feature description
The current CWA server implementation assumes that single packages will never go over 16MB (as per Google/Apple spec), therefore batching code has been removed.

[ ] Assess under which circumstances packages could go above 16MB
[ ] Re-introduce batching if necessary

app.coronawarn.server.services.distribution.assembly.diagnosiskeys.util.Batch (from an older code state) could potentially be reused for this.

Per recent discussions with @christian-kirschnick it was agreed to keep this issue open in order to enable the following:

Follow-up based on federation gateway integration based on what we see for the magnitude of keys
What might change once we receive the new EN specification from Apple/Google
To ensure whatever approach was considered in the past could be documented.

In future releases, the mobile apps will consume hourly-based key packages and hence the data volume will be decreased. Therefore, we will not investigate further on this.


Out of Memory when repeatedly generating textures?

I've started to toy a bit with pixi.js and got puzzled when I changed an example and ran out of memory.
Essentially, I call
if (graphics_texture) graphics_texture.destroy();
graphics_texture = graphics_mask.generateTexture();
on every frame.
Now bear with me - I know this is not an efficient way, and shouldn't be done like this, but from my understanding, I should not run out of memory here.
This is the full code - it's http://pixijs.github.io/examples/index.html?s=demos&f=masking.js&title=Masking&v=v3.0.8 with an alpha mask.
var renderer = PIXI.autoDetectRenderer(800, 600, { antialias: true });
document.body.appendChild(renderer.view);

// create the root of the scene graph
var stage = new PIXI.Container();

stage.interactive = true;

var bg = PIXI.Sprite.fromImage('_assets/BGrotate.jpg');

bg.anchor.x = 0.5;
bg.anchor.y = 0.5;

bg.position.x = renderer.width / 2;
bg.position.y = renderer.height / 2;

stage.addChild(bg);

var container = new PIXI.Container();
container.position.x = renderer.width / 2;
container.position.y = renderer.height / 2;

// add a bunch of sprites

var bgFront = PIXI.Sprite.fromImage('_assets/SceneRotate.jpg');
bgFront.anchor.x = 0.5;
bgFront.anchor.y = 0.5;

container.addChild(bgFront);

var light2 = PIXI.Sprite.fromImage('_assets/LightRotate2.png');
light2.anchor.x = 0.5;
light2.anchor.y = 0.5;
container.addChild(light2);

var light1 = PIXI.Sprite.fromImage('_assets/LightRotate1.png');
light1.anchor.x = 0.5;
light1.anchor.y = 0.5;
container.addChild(light1);

var panda =  PIXI.Sprite.fromImage('_assets/panda.png');
panda.anchor.x = 0.5;
panda.anchor.y = 0.5;

container.addChild(panda);

stage.addChild(container);

// let's create a moving shape
var mask = new PIXI.Sprite();
stage.addChild(mask);
mask.position.x = renderer.width / 2;
mask.position.y = renderer.height / 2;

// CHANGE A //

mask.anchor.x = 0.5;
mask.anchor.y = 0.5;

var graphics_mask = new PIXI.Graphics()
graphics_mask.lineStyle(0);
graphics_mask.clear();
graphics_mask.beginFill(0x8bc5ff, 0.4);
graphics_mask.moveTo(-120, -100);
graphics_mask.lineTo(120, -100);
graphics_mask.lineTo(120, 100);
graphics_mask.lineTo(-120, 100);
graphics_mask.lineTo(-120, -100);
var graphics_texture = graphics_mask.generateTexture();

container.mask = mask;

var count = 0;

stage.on('click', onClick);
stage.on('tap', onClick);

function onClick()
{
    if(!container.mask)
    {
        container.mask = mask;
    }
    else
    {
        container.mask = null;
    }
}

var help = new PIXI.Text('Click to turn masking on / off.', { font:'bold 12pt Arial', fill: 'white' });
help.position.y = renderer.height - 26;
help.position.x = 10;
stage.addChild(help);

animate();

function animate()
{
    bg.rotation += 0.01;
    bgFront.rotation -= 0.01;

    light1.rotation += 0.02;
    light2.rotation += 0.01;

    panda.scale.x = 1 + Math.sin(count) * 0.04;
    panda.scale.y = 1 + Math.cos(count) * 0.04;

  	// CHANGE B //
	if (graphics_texture) graphics_texture.destroy();
	graphics_texture = graphics_mask.generateTexture();

  	mask.texture = graphics_texture;
    count += 0.1;

    mask.rotation = count * 0.1;

    renderer.render(stage);
    requestAnimationFrame(animate);
}

If you run the code, chrome's memory usage rapidly increases, until it runs out of memory. Can someone explain what I do wrong? Even if I tax the CPU, my memory usage should remain neutral (or at least not increase until WebGL "runs into a snag").

Haven't tested or read with attention so sorry if I'm wrong but probably :
graphics_texture.destroy(true);
instead of
graphics_texture.destroy();
To destroy the base texture.

You are completely correct, when I add "true", memory remains stable. I thought that garbage collection would take care of this, and didn't think it was necessary to pass "true".
Another (related) question - it seems like I fell into a beginner's trap. Are there any others to look out for? Or any resources that tells pixijs newbies what to look out for?
For example, Flash has a lot of "traps" - such as calling functions, creating objects - things that work, but that will get you into performance problems quickly. pixijs seems to have a few there too (not calling "destroy" with true when you're done with a texture). Is there any place I can start and avoid most/all the little pitfalls?

It has more to do with knowing (a bit of) what OpenGL is than PIXI.
For exemple, there is no GC in OpenGL/WebGL, you are in charge of the memory. You are dealing with a graphic library (PIXI) on top of another graphic library (opengl) that is a lot more low level than Javascript as it speaks directly to your GPU.
Fortunatly, PIXI deals with WebGL for you, so the only thing you should keep in mind is that what's easy/good in canvas 2d may not be easy/good in WebGL.
It's really easy to draw a text in canvas 2D, it's not easy in WebGL. It's very quick to masks elements in canvas 2D, it can be a performance bottleneck in webGL. So just keep an open mind and test things, asks questions on the PIXI forum when you need help and that should be enough most of the time !

Many thanks. I'm comfortable managing my own memory, I just thought this was abstracted from me.
I'll keep that in mind and try to get into the PIXI forum. Thank you for your quick responses!

Another (related) question - it seems like I fell into a beginner's trap. Are there any others to look out for? Or any resources that tells pixijs newbies what to look out for?

You could read the docs:
http://pixijs.github.io/docs/PIXI.Texture.html#destroy
Which inform you that the first param is whether or not to destroy the base texture.

For example, Flash has a lot of "traps" - such as "avoid calling functions", "avoid creating objects, reuse them as much as possible"

This has nothing to do with Flash, and everything to do with JavaScript (or AS as it may be). That statement you made is true for any garbage collected language (for the most part). Avoiding function overhead is true for any low-latency program.

pixijs seems to have a few there too (not calling "destroy" with true when you're done with a texture). Is there any place I can start and avoid most/all the little pitfalls?

I don't see this as a pitfall, but just a lack of information about the API. Reading the docs for functions you use will clear this up.

Many thanks. I'm comfortable managing my own memory, I just thought this was abstracted from me.

JavaScript abstracts (kinda) memory management in the JS heap. However, the WebGL memory space is managed manually. Therefore we have the destroy methods to clean that up, and at the same time remove any references that might prevent the JS GC from cleaning up heap as well.

Hi! I'm a developer too. :D Just like you! I know that developers are proud, and that a large danger we often run into is that we think of ourselves being flawless, and dismissing confused users as nubs that should RTFM. So, knowing that, I try the best to avoid that.
With that said, let me retrace my steps - in hopes that it will help this nice engine and improve it further:

I saw dozens of engines on html5gameengine.com, and tried to figure out which one i could possibly use for my projects in the next years.

I checked out PixiJS, saw the masks example, and wondered "can it do alpha masks?".

I saw the example with alpha masks, wondered why they didn't work in the first example, and while I didn't see anything explicit, I saw a forum post saying that Graphics uses Stencil and are faster, and Sprites use WebGL. So I figured that may be the reason. I set off to change your sample with the teddy bear to use a semi-transparent mask.

I realize I can't draw on a Sprite object directly, and that there is no Graphics object on it, like in Flash.

I see the generateTexture() method on the Graphics object - and an obsolete post with SetTexture() on the Sprite object. Nowhere in these steps does it say that it is absolutely necessary to call destroy() on Texture to avoid a leak.

I run into the memory leak by tossing away the Textures.

I try removing references. I see an example using Texture.destroy(). I figure: that must be it. Call it, no effect. Hence my post here.

A critical piece of information (if you do not destroy this, and toss this object away, you have a memory leak 100% of the time) hidden deep in the documentation, where the leak is "implied", does feel like a pitfall. It also feels surprising, with a garbage collected language.
Please note I don't want to be rude. But I find it sad to be immediately told to "RTFM" by the owner, after a post that essentially welcomed me into the pixiJS community. I hope that through my post you can retrace why I ran into the situation, and I hope you understand that when checking out a lot of different engines I did not have the time to completely read the entire API from A to Z just yet.
I also don't mind reporting such pitfalls, if it helps the engine or its documentation.

 I was offering an alternative to your process you just outlined. Instead of seeing .destroy() and guessing "hey maybe I need to call that", I suggest your thought process should be "what does that do, let me investigate". You will have a much better experience  integrating any library if you actively try to understand the things you are using, rather than just using code you found in examples. I recommend that if you see any function you don't already know about in any example, you should check the docs to ensure you know how to use it properly. I'm not suggesting to load up the docs and read the entire thing, that is silly. But when you are using a new function for the first time, and you have no idea what it does; read the docs about it before using it.
You asked multiple questions, and I was just answering them; no RTFM, no dismissal intended. The docs is the resources that tells you what to lookout for. "What is this .destroy() thing I saw in an example?" The docs will answer that.
I've started a new Wiki Page Titled [Tips, Tricks, and Pitfalls](Tips, Tricks, and Pitfalls) where we can collect "pitfalls" like this that users may need to be aware of. I took the liberty of adding the ones you faced here, if you find any others you think will be useful for new users. Please feel free to add them to that page.

FWIW I like how you reacted to this @englercj :+1:


Fixed a bug with restoring token data from local storage

As part of 1.1.0, a new bug was introduced with restoring token data from local storage (the line in question was changed in https://github.com/jpadilla/ember-simple-auth-token/pull/145/commits/ba23ed4741f5d7048478555b113ba58da545f0f2 )
This tweaks what object the token is being retrieved from to use the pre-fetched token (instead of trying to fetch the token from the token 😄 )

@acorncom ace! thank you very much.

@homu +r

@homu r+

:pushpin: Commit e274e55 has been approved by jpadilla

:zap: Test exempted - status

@acorncom just published v1.1.1, thanks again!

@jpadilla Thank you!  I hit the bug on our end and it took a bit to track down.  Showed up here to find a patch already, only to find it still had new wrinkles post-updated ;-) That's why I sent in the test too ;-)


[DOC] address recent telegram chat output

Jasper de Gooijer
Does anybody have experience with bugs that cause issues (I think it's an overflow bug) on TestNet but work fine in unit tests?
Feel like there's some overflow bug that's only caused on TestNet but it's hard to debug.
Maksym Zavershynskyi
Unless you are using cross-contract calls, it is probably serialization.
Check the following:

The account state is compatible, i.e. a contract was not deployed over a state that was used by a different code.  To check if this is the issue, remove the account entirely and re-create it.  If it works, this was the issue.
It might be a problem of passing arguments in JSON format. Make sure you are not using u128, because handling of u128 diverges for Rust and JS libraries. To check, comment out the body of the contract method and just call it with the same args.  If it still fails then the problem is in serialization, if it doesn't fail then the problem is with the body of the contract method.

Jasper de Gooijer
I am using u128 and i did redeploy after deleting :)
might be the u128 issue
If i pass in < 1e12 the method executes correctly, else it overflows somewhere during execution.
But it always works while unit testing
Maybe I'll decrease denomination overall to support u64?
The Tx never fails btw, it just executes differently, pretty sure it isn't serialization even though this also was my first guess.
Maksym Zavershynsky
That's weird, JSON is supposed to work fine with less than 53 bits, and 1e12 is under that. If you can point to the code then I can take a look.
Is it possible that you are running tests in debug mode? Rust handles overflows differently in debug and release modes: https://huonw.github.io/blog/2016/04/myths-and-legends-about-integer-overflow-in-rust/
Jasper de Gooijer
yes that is possible
Yea so JS is not the issue :)
The debug = false flag in cargo.toml handles this I assume?
This is the initial method that's being called:
https://github.com/jasperdg/flux-protocol/blob/master/src/markets.rs#L87
But I suspect the issue to occur somewhere around here:
https://github.com/jasperdg/flux-protocol/blob/master/src/markets/market.rs#L59
Maksym Zavershynskyi

The debug = false flag in cargo.toml handles this I assume?

No, the flag states that in the compilation mode called "release" the debug instructions should not be included.
Basically, it depends on how exactly you run your tests, i.e. what IDE or what cargo command. If you explicitly see an overflow panic when you run a test then it is almost certainly because you are running it in the debug mode. (Unless you are explicitly using checked arithmetic operations, like https://doc.rust-lang.org/std/primitive.u64.html#method.checked_add which does not seem to be the case)
So it probably overflows without panic when executed as a Wasm contract (because we compile Wasm contract in the release mode) and just wraps.
Jasper de Gooijer
Interesting.
Maksym Zavershynskyi
It’s a DevX issue, we should find a Cargo.toml command to make it always panic, add it to our examples to force consistent panic, add mention in the documentation. Sorry, for the inconvenience.
Jasper de Gooijer

So it probably overflows without panic when executed as a Wasm contract

Yep that makes sense, the only annoying thing is that with the exact same test scenario running unit tests the code does perform as expected.
So it's super hard to debug
When the bug is only on a deployed contract
Maksym Zavershynskyi
Yes, we should enforce more consistency ourselves to workaround the inconsistency on Rust side.
Rust does it for performance reasons.
Jasper de Gooijer
Yep I read that. I'm just contemplating how to tackle this problem now.
btw regarding the u128 divergency issue between Rust and JS, that could be fixed by serializing all integers to BN.js objects right?
Maksym Zavershynskyi
Hopefully, there is a Cargo.toml config option that we can turn on to make Wasm panic on overflows. I am investigating now..

btw regarding the u128 divergency issue between Rust and JS, that could be fixed by serializing all integers to BN.js objects right?

Yes, but then on the Rust side you have to treat them as strings..
Jasper de Gooijer
That would be awesome

Yes, but then on the Rust side you have to treat them as strings.

Oh damn.
Maksym Zavershynskyi
Because JSON just cannot handle large numbers...
Evgeny, is it correct that BN.js is a string on the Rust side?
Evgeny Kuzyakov
yes, it should be like this.
Maksym Zavershynskyi
Here is the solution to the overflow problem: https://stackoverflow.com/questions/34054669/how-to-compile-and-run-an-optimized-rust-program-with-overflow-checking-enabled
Just add overflow-checks = true under [profile.release] section.
Evgeny Kuzyakov
Wasm doesn't have automatic overflow checks, so you have to wrap all math into checked
Maksym Zavershynskyi
Or use the cargo toml config feature that I pasted above to always panic on overflows.
Jasper de Gooijer
This could be done at smart contract level?
Evgeny Kuzyakov

Or use the cargo toml config feature that I pasted above to always panic on overflows.

I think this only works for Rust x86, but not for the wasm32 target. Need to check.
Maksym Zavershynsky
Mike, Chad, Sherif Important detail that you should be aware of ^
Mike Purvis
okay, thank you
Evgeny Kuzyakov
I checked wasm32 target and the overflow panics with   Just add overflow-checks = true under [profile.release] section.
Maksym Zavershynskyi
Awesome, thanks Evgeny. Now we just need to add this line to all our examples and mention in the documentation.

@mikedotexe i think there are a few specific takeaways for us here:

update examples to include compiler checks on by default
Just add overflow-checks = true under [profile.release] section.

can't use large sizes with Wasm (ie. u128) -- max is u64

Two troubleshooting steps for contract development
- The account state is compatible
- It might be a problem of passing arguments in JSON format.

am i missing anything?

Cleaning up issues and closing this one as its over a year old and may no longer be valid.


Add way to add test results manually to a tester

This relates closely to issue #119. When a webhook does not work and the form results are not submitted to Patterns in association with a person, there is no way to add these form results manually. It would be ideal to have an easy way to input data from a form to a person's profile.

add generic Rails form and way to add data from Wufoo in current Patterns submission format

Add submission function has been added


[CELEBORN-1549] Fix networkLocation persistence into Ratis

What changes were proposed in this pull request?
Fixing a bug where the networkLocation is not persisted in Ratis, and the master defaults to DEFAULT_RACK when it loads the snapshot. This was missed in https://github.com/apache/celeborn/pull/2367 unfortunately, and it came up during our stress testing internally.
Why are the changes needed?
Needed for custom network aware replication, so that networkLocation state is kept in snapshot file.
Does this PR introduce any user-facing change?
No
How was this patch tested?
Updated unit test to ensure serde is correct.

cc @mridulm @waitinfuture @FMX @SteNicholas @AngersZhuuuu @pan3793

@akpatnam25, no any document update?

@akpatnam25, no any document update?

No I don't think there is any document to update @SteNicholas

can we merge this PR if it is good to go? :) @SteNicholas

Just hold on a second. The field is skipped for a reason. Let me find out why the field is not included in the proto.

org.apache.celeborn.service.deploy.master.clustermeta.AbstractMetaManager#restoreMetaFromFile
Abstract meta manager will try to resolve workerinfos who are "DEFAULT_RACK".

 org.apache.celeborn.service.deploy.master.clustermeta.AbstractMetaManager#restoreMetaFromFile
Abstract meta manager will try to resolve workerinfos who are "DEFAULT_RACK".

@FMX  yes that is correct. However, this can be something different based on what is passed in to the workerInfo from the workers (see this PR). If that resolution on the worker side does not take place, master can try to resolve when it restores the snapshot.

@FMX  essentially we need this whenever the networkLocation != DEFAULT_RACK. In this case, master should restore the snapshot with that custom network location. hope this makes sense

This is essentially something we missed in this PR: https://github.com/apache/celeborn/pull/2367
Otherwise network location is never persisted into ratis.

If the rack configs are changed and the masters are started but workers didn't. This pr will get the wrong network locations until the worker lost and register again.

In stress testing, did the master fail to resolve network locations?

Thanks @FMX!! Yes, I understand the concern. This is basically only since our rack configs will never change.  I described more below :slightly_smiling_face:
In our environment, there are 2 ways for the master to know the networkLocation:

Query external REST API for each worker to get the networkLocation  -- this is an expensive call for 400+ workers
Worker sends its networkLocation as a part of the registration process

Given this, we chose the 2nd approach above. Essentially, when a worker sends its networkLocation, that networkLocation will never change for us. The current logic in the code is that if the networkLocation upon reading the snapshot is default, then it will again try to query the external API at the Master again once more (this is not a desired code path, but is basically the backup in case the networkLocation is null in the snapshot). This means that networkLocation must be persisted into Ratis which is basically the cause of this PR. cc @mridulm

Even if rack configs changed, all masters would never be restarted all at the same time anyways in a production setting, so this would cause split brain anyways for a period of time, which would not be good for the cluster.  Let me know what you think @FMX

@FMX I updated this PR to have a config to persist the networkLocation. I think the failing test is unrelated to this PR, let me know if you think otherwise.

thanks @FMX  and everyone else for the review!! :)


⚠ WSINGRESOS - GENERICO has degraded performance

In 6773a73, WSINGRESOS - GENERICO (https://srvshyweb.yucatan.gob.mx/cgi-bin/wspd_cgi.sh/WService=wsingresos/internet/servicios/wsGenericoPagosWeb.r) experienced degraded performance:

HTTP code: 200
Response time: 3061 ms

Resolved: WSINGRESOS - GENERICO performance has improved in 12c78b6 after 10 minutes.


Test game entries are valid

Create automated tests over game entries to add some safety over merging requests.

Leaving this open, as I'm hoping to test the outcomes established with #22.

Finished with #24.


Tests for #1563 contextPath ignored for platform-http with REST DSL

blocked by https://github.com/apache/camel/pull/4117

@ppalaga I guess you can rebase this against master now.


Attachment

Any way to add Attachment hosted in same directory?? ?

That's not the purpose of this form.


Include authorization kind in transaction commitment

https://github.com/MinaProtocol/mina/pull/11891


[feature] Add support for the new "next" start type

Latest SAR expanded the next start type to extend it's functionality. The extension currently presents a warning if the new start type is used.

oh hey i implemented this lol


Update CONTRIBUTING.md

made slight corrections in the sentences to make them easy to understand

i think it's clear enough as is.


Fix style order in dev mode

This fixes the following bug: https://github.com/solidjs/solid-start/issues/1478
I understand that it was an attempt to avoid FOUC, but it should be done better, because resulting style order is wrong. Also it eliminates duplication of styles in dev mode.

@nksaraf please, have a look at this. For now it's really a problem to develop with incorrect style ordering.

Yup just looking at this with the other css fixes together, there's more fixes to do with reference counting and preloading. Will be released in a day or two

Still waiting... 👀

Any updates on this?
@nksaraf


Is there a RPM package for openSUSE / non-SLES?

Hi all,
I could successfully install skuba on some SLES15 SP1 hosts with the caasp/4.0 extensions active, but I found no RPM packages for openSUSE.
Are there none? Am I just not finding them?
If I understood skuba correctly, I could bootstrap my CaaSP cluster using skuba from the outside, e.g. from my tumbleweed laptop. right?

I can confirm that skuba works on Leap 15.1, though I compiled my own version rather than installing from an rpm.
You might get a better response for this request by posting it in https://github.com/SUSE/avant-garde/issues


Update hooks to adhere to cucmber v3 conventions

In cucumber v3, the structure of the feature/scenario objects changed,
resultining in TypeErrors as the functions were no longer defined
(or valid).
Closes #35

I ran into this problem too. Thank you @dcypherthis for the diagnosis !
Do you want me to finish this PR? I can make this backward compatible and/or add documentation if you don't have time.
I can confirm that these two changes fix the bug on my side.

Closing in favor of #37


RELATED: RAIL-2407 improve backend handling

This enables us to change backend instances on the fly.
Also, js checking was enabled and several potential errors were fixed.
Finally, react-scripts were upgraded to the latest version.
JIRA: RAIL-2407

Build succeeded (check pipeline).

https://checklist.intgdc.com/job/client-libs/job/gooddata-create-gooddata-react-app-unit-tests-zuul-docker-el7/121/ : SUCCESS in 32s
https://checklist.intgdc.com/job/compliance/job/gooddata-create-gooddata-react-app-oss-check/102/ : SUCCESS in 5s

Build succeeded (gate pipeline).

https://checklist.intgdc.com/job/compliance/job/gooddata-create-gooddata-react-app-merge-compliance-check/43/ : SUCCESS in 12s
https://checklist.intgdc.com/job/client-libs/job/gooddata-create-gooddata-react-app-unit-tests-zuul-docker-el7/122/ : SUCCESS in 16s
https://checklist.intgdc.com/job/compliance/job/gooddata-create-gooddata-react-app-fossa-scanning-zuul-el7/8/ : SUCCESS in 2m 54s (non-voting)


Add pictures of the controls in docs

It would be helpful to have a picture of the control in control class docs.

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

ID: 7b18b8b7-c289-0eae-7cd2-0083a0766146
Version Independent ID: 95e4e595-7a55-e5e4-9c0c-c40be93d114c
Content: SplitButton Class (Microsoft.UI.Xaml.Controls) - WinUI
Content Source: winui-api-build/xml/Microsoft.UI.Xaml.Controls/SplitButton.xml
Product: reunion
Technology: winui-reference
GitHub Login: @Karl-Bridge-Microsoft
Microsoft Alias: kbridge

Hi @galich - thanks for the feedback. This is something we're actively working on. As you can imagine, it's a bit of an undertaking and does result in a maintenance issue going forward. Most topics do have a link to a corresponding guidance topic that has one or more images of the controls being discussed.


DRAFT: 284 new directory structure

Pull Request submission
The folder structure for the network drive and for DevTest have been updated with the folder structure discussed which is outlined on the Confluence page "R&D data inputs and outputs"
NOTE: for consistency, the output of the full_responses in staging has been moved to a folder "staging/staging_qa" inside the DAP Emulation folder on the network.
Closes

Detail the ticket(s) you are closing with this PR
Closes #284

Code

[x] Code runs The code runs on my machine and/or CDSW
[x] Conflicts resolved There are no conflicts (I have performed a rebase if necessary)
[x] Requirements My/our code functions according to the requirements of the ticket
[ ] Dependencies I have updated the environment yaml so it includes any new libraries I have used
[ ] Configuration file updated any high level parameters that the user may interact with have been put into the config file (and imported to the script)
[ ] Clean Code

[ ] Code is as PEP 8 compliant as I can humanly make it
[ ] Code passess flake8 linting check
[ ] Code adheres to DRY

[ ] Type hints All new functions have type hints

Documentation
Any new code includes all the following forms of documentation:

[ ] Function Documentation Docstrings within the function(s')/methods have been created

[ ] Includes Args and returns for all major functions
[ ] The docstring details data types

[ ] Updated Documentation: User and/or developer working doc has been updated

Data

[ ] All data needed to run this script is available in Dev/Test
[ ] All data is excluded from this pull request
[ ] Secrets checker pre-commit passes

Testing

[ ] Unit tests Unit tests have been created and are passing or a new ticket to create tests has been created

Peer Review Section

[ ] All requirements install from (updated) environment.yaml
[ ] Documentation has been created and is clear - check the working document
[ ] Doctrings (Google format) have been created and accurately describe the function's functionality
[ ] Unit tests pass, or if not present a new ticket to create tests has been created
[ ] Code runs The code runs on reviewer's machine and/or CDSW

Final approval (post-review)
The author has responded to my review and made changes to my satisfaction.

[ ] I recommend merging this request.

Review comments
Insert detailed comments here!
These might include, but not exclusively:

bugs that need fixing (does it work as expected? and does it work with other code
that it is likely to interact with?)
alternative methods (could it be written more efficiently or with more clarity?)
documentation improvements (does the documentation reflect how the code actually works?)
additional tests that should be implemented (do the tests effectively assure that it
works correctly?)
code style improvements (could the code be written more clearly?)
Do the changes represent a change in functionality so the version number should increase? Start a discussion if so.
As a review you can generates the same outputs from running the code

Your suggestions should be tailored to the code that you are reviewing.
Be critical and clear, but not mean. Ask questions and set actions.

This work has already been incorporated in different branches


fix: CLI crash on schemas with operation names longer than the current terminal width

Fixes #990

Codecov Report

Merging #991 (e8baa85) into master (5f14f45) will decrease coverage by 0.17%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #991      +/-   ##
==========================================
- Coverage   99.78%   99.60%   -0.18%
==========================================
  Files          67       67
  Lines        4614     4615       +1
  Branches      765      765
==========================================
- Hits         4604     4597       -7
- Misses          3        8       +5
- Partials        7       10       +3

Flag
Coverage Δ

unittests
99.60% <100.00%> (-0.13%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/schemathesis/cli/output/default.py
100.00% <100.00%> (ø)

src/schemathesis/_compat.py
50.00% <0.00%> (-50.00%)
:arrow_down:

src/schemathesis/extra/pytest_plugin.py
97.77% <0.00%> (-2.23%)
:arrow_down:

src/schemathesis/cli/callbacks.py
98.19% <0.00%> (-1.81%)
:arrow_down:

src/schemathesis/cli/cassettes.py
98.30% <0.00%> (-1.70%)
:arrow_down:

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 5f14f45...e8baa85. Read the comment docs.

Codecov Report

Merging #991 (e8baa85) into master (5f14f45) will decrease coverage by 0.17%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #991      +/-   ##
==========================================
- Coverage   99.78%   99.60%   -0.18%
==========================================
  Files          67       67
  Lines        4614     4615       +1
  Branches      765      765
==========================================
- Hits         4604     4597       -7
- Misses          3        8       +5
- Partials        7       10       +3

Flag
Coverage Δ

unittests
99.60% <100.00%> (-0.13%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/schemathesis/cli/output/default.py
100.00% <100.00%> (ø)

src/schemathesis/_compat.py
50.00% <0.00%> (-50.00%)
:arrow_down:

src/schemathesis/extra/pytest_plugin.py
97.77% <0.00%> (-2.23%)
:arrow_down:

src/schemathesis/cli/callbacks.py
98.19% <0.00%> (-1.81%)
:arrow_down:

src/schemathesis/cli/cassettes.py
98.30% <0.00%> (-1.70%)
:arrow_down:

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 5f14f45...e8baa85. Read the comment docs.


Bump gradle plugin version to beta03

Current dependencies on/for this PR:

main

PR #11

PR #12

PR #13

PR #14   👈

This comment was auto-generated by Graphite.


Extract @prisma/debug into its own repository

The goal of this is to have a clean architecture where prisma/prisma depends on prisma/engines-wrapper. At the moment prisma/prisma depends on prisma/engines-wrapper that depends on prisma/prisma through @prisma/debug.
To avoid maintenance burden, instead of separating it into another repo, we could change our publish script to only publish to only publish (ie. @prisma/debug) if it has changes to be published. We can also argue that @prisma/debug is a tool that does not even depend on the engines an is thus not subject to the same versioning. This could be the opportunity to set up a new repo for tools and manage it perhaps via changesets.
Context https://prisma-company.slack.com/archives/CUXLS0Z6K/p1631084401029500

Since packages moved to prisma/prisma this can now be closed


[Container] 2021/09/27 19:01:52 Phase context status code: COMMAND_EXECUTION_ERROR Message: Error while executing command: ./prowler $PROWLER_OPTIONS. Reason: exit status 3

Colleagues I have an error in the build process when I use the Prowler with Cloud-formation.
Can you help me identifying How can I have it fixed?

This issue is duplicated with https://github.com/toniblyx/prowler/issues/878. Please use the new feature added in the branch 2.5.1 to manage the exit error from Prowler checks. More info https://github.com/toniblyx/prowler/issues/629


Add missing "#pragma once" directive to src/SFML/Network/SocketImpl.hpp.

Before you create the pull request, we ask you to check the follow boxes. (For small changes not everything needs to ticked, but the more the better!)

[ ] Has this change been discussed on the forum or in an issue before?
[x] Does the code follow the SFML Code Style Guide?
[ ] Have you provided some example/test code for your changes?
[ ] If you have additional steps which need to be performed list them as tasks!

Description
This pull request adds the missing #pragma once directive to the header file "src\SFML\Network\SocketImpl.hpp". The #pragma once directive ensures that the header file is included only once during the compilation process.
Tasks

[ ] Tested on Linux
[x] Tested on Windows
[ ] Tested on macOS
[ ] Tested on iOS
[ ] Tested on Android

Note to Reviewers

After finding this, I wrote a Python script to check for this issue across all hpp files in the src directory. After running the script, it was found that SocketImpl.hpp was the only file missing the pragma directive. Therefore, I did not open a separate issue for it.
No opened issue related to this changes was found (with m:sfml-network).
The SocketImpl.hpp file does not contain any type, enum, or other definitions that could be affected by the absence of a pragma directive. It primarily serves as a means to include platform-specific socket implementation headers using conditional compilation directives. Therefore, the missing pragma directive in this particular header does not directly lead to a bug or functional issue. However, I added the "#pragma once" as a bug prevention measure.

Thank you for your time and attention :smiley:

SFMLBuildMaster: Build this please.

Thanks for spotting this! 🙂

Thanks for spotting this! 🙂

Thank you for promptly handling the PR! It was my pleasure to contribute 😃.


Client is now context aware

Ran into an issue today where ZK was struggling and this was partially due to the unexpected behavior surrounding .stop vs .close.
This change allows the client to be used as a context and does the "right" thing for cleanup.
Thanks for considering!

Thanks for the catch!

Cool, I like the concept! It does need a test and some documentation in the client docs though. If you can add those and re-open this PR I'd be happy to merge it.


Multiple tab levels not working

Creating more than one level of tabs isn't working.
Example:
Have 3 tabs and then inside first tab another 3 nested tabs. When clicking on inner tab, inner tabs disappears and only content of tab is visible. Also outer tabs are deselected so user cannot know in which tab he/she is.
If I'm mistaken and this is working as intended, I would like to ask for simple example of code for nested tabs.

We have not tested for nested tab setups, but I do believe it is possible to support your case in the next release. We will work on a solution for you and keep you updated here. Thanks!

Hello, we have committed a solution to your problem in our develop branch. Can you please try the branch's tab plugin (https://github.com/appiphony/appiphony-lightning-js/blob/develop/dist/jquery/jquery.aljs-tabs.min.js) to test if this fixes your issue?

It works! Thank you very much :)

You're welcome! We're glad to you caught this, thank you.


Panic on send to naive WS Client's receiver with filter

panic: interface conversion: interface {} is *neorpc.BlockFilter, not neorpc.BlockFilter

goroutine 61 [running]:
[github.com/nspcc-dev/neo-go/pkg/neorpc/rpcevent.Matches({0x1304608,](http://github.com/nspcc-dev/neo-go/pkg/neorpc/rpcevent.Matches(%7B0x1304608,) 0xc0002e0120}, {0x13089b0, 0xc0002d3f38})
        /home/kira/work/neofs-cdn-edge-manager/vendor/[github.com/nspcc-dev/neo-go/pkg/neorpc/rpcevent/filter.go:38](http://github.com/nspcc-dev/neo-go/pkg/neorpc/rpcevent/filter.go:38) +0xd05
[github.com/nspcc-dev/neo-go/pkg/rpcclient.(*naiveReceiver).TrySend(0xc0002e0120,](http://github.com/nspcc-dev/neo-go/pkg/rpcclient.(*naiveReceiver).TrySend(0xc0002e0120,) {0x1, {0x1151de0, 0xc0002e2d80}})
        /home/kira/work/neofs-cdn-edge-manager/vendor/[github.com/nspcc-dev/neo-go/pkg/rpcclient/wsclient.go:296](http://github.com/nspcc-dev/neo-go/pkg/rpcclient/wsclient.go:296) +0x8e
[github.com/nspcc-dev/neo-go/pkg/rpcclient.(*WSClient).wsReader(0xc00025b680)](http://github.com/nspcc-dev/neo-go/pkg/rpcclient.(*WSClient).wsReader(0xc00025b680))
        /home/kira/work/neofs-cdn-edge-manager/vendor/[github.com/nspcc-dev/neo-go/pkg/rpcclient/wsclient.go:494](http://github.com/nspcc-dev/neo-go/pkg/rpcclient/wsclient.go:494) +0x1462
created by [github.com/nspcc-dev/neo-go/pkg/rpcclient.NewWS](http://github.com/nspcc-dev/neo-go/pkg/rpcclient.NewWS)
        /home/kira/work/neofs-cdn-edge-manager/vendor/[github.com/nspcc-dev/neo-go/pkg/rpcclient/wsclient.go:390](http://github.com/nspcc-dev/neo-go/pkg/rpcclient/wsclient.go:390) +0x7c5

Thanks to @masterSplinter01 for discovering. Could you please, specify the NeoGo version for clarification?

v0.99.7


FYI, SwiftUI-Introspect 0.2.0 changed min iOS to 13, breaking builds

FYI, wanted to let you know that projects including ScrollViewProxy will likely break now that https://github.com/siteline/SwiftUI-Introspect/releases/tag/0.2.0 has a minimum iOS 13, but this project has min iOS 11. Can either try and upgrade this project to use the latest introspect library, or update the Package.swift to only include the exact version "0.1.4".
Workaround:
If someone includes this package as a dependency, you must also include the correct SwiftUI-Introspect version before the iOS minimum changed, like this:
    dependencies: [
        ...
        .package(url: "https://github.com/Amzd/ScrollViewProxy", exact: "1.0.3"),
        .package(url: "https://github.com/siteline/SwiftUI-Introspect.git", exact: "0.1.4"),
        ...
    ]

Hmm, that's not great. Maybe I should drop Introspect and just grab the scrollview similar to Introspect but without the rest of the package, because if I pin Introspect there will be others that want to use the newer release of it I'd assume?

True, it's possible some will need newer versions. Since Introspect hasn't released v1.0, might be best to copy code until they do, unfortunately.


utf8化

with BOM

It's not necessary. I just ran a script
Consider merging this branch if you need to

Please PR to 500-utf8 branch that I have created just now.


Bitcoin.sign_data question

In Ruby there is a bitcoin gem.
How i can reproduce next code within your library and is that is possible?
      keypair = Bitcoin.open_key priv_key       sig = Bitcoin.sign_data(keypair, [sighash].pack("H*"))
Please advice, thank you for your work

It is -- there are examples in the docs. The library takes care of creating sighash.
https://github.com/Bit-Wasp/bitcoin-php/blob/master/examples/signedmessage.create.php
https://github.com/Bit-Wasp/bitcoin-php/blob/master/examples/signedmessage.verify.php

thank you, i saw https://github.com/Bit-Wasp/bitcoin-php/blob/master/examples/signedmessage.create.php but there is a new private key, how i can use exist key for creating sighash?

PrivateKeyFactory::fromWif() there's also fromInt() and fromHex(). Once you provide the key as shown in the example it'll produce the signature. Check the source code for the files if you need to see what else the classes do.

Did you get this working?

Yes thank you.


weird issue

after i started using vusaline, i've noticed that whenever i join some server that isn't my local one, casual & community my game just crashes
my loading screen when i join a game, is the same loading screen used for demo's
could you help me with that?

Hello, may I ask, when this crashing occurs, are you using any mods for the game? And have these issues only started occurring with Vusaline?

I forgot to add that crashing wasn't always, but this crashing only happens whenever i load into a server (when the loading bar is done), and the causes for it were because of an cheat. Also do you know why I have the same loading screen which is used for demos.

a cheat?

After testing, I can confirm it is Vusaline creating the loading screen bug. However, it a low priority issue and I'm not entirely sure of it's nature and therefore if it is fixable. I will keep it in mind, though. As far as cheats are concerned, I have not tested nor can I guarantee compatibility with any cheats.

About that loading screen, I think its caused by a mod, idk which one tho
Also quick question it is important to keep vusaline updated constantly? Or I can have the version from Dec 8th and still be good.

After testing, I can confirm it is Vusaline creating the loading screen bug. However, it a low priority issue and I'm not entirely sure of it's nature and therefore if it is fixable. I will keep it in mind, though. As far as cheats are concerned, I have not tested nor can I guarantee compatibility with any cheats.

Not a bug, it's a trick to reduce loading times by skipping the load of some vgui panels on loading screens.

I assumed it was the play demo trick, but never got round to testing it. Now I am sure it's not fixable and therefore won't be fixed.


Exception when updating container started with --rm (autoremove)

If a container is started with --rm and ouroboros tries to update it, an exception is triggered:
2019-02-15 12:56:18 : ERROR : base : Job "Run Once container update for unix://var/run/docker.sock (trigger: date[2019-02-15 12:56:03 UTC], next run at: 2019-02-15 12:56:03 UTC)" raised an exception
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/docker/api/client.py", line 256, in _raise_for_status
    response.raise_for_status()
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 940, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 409 Client Error: Conflict for url: http+docker://localhost/v1.35/containers/2e566328adc76054a2bfc2a7ebffdb118dbbed3133cd637bb25bb21c0befcee9?v=False&link=False&force=False

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/apscheduler/executors/base.py", line 125, in run_job
    retval = job.func(*job.args, **job.kwargs)
  File "/usr/local/lib/python3.7/site-packages/pyouroboros/dockerclient.py", line 301, in update
    self.recreate(container, latest_image)
  File "/usr/local/lib/python3.7/site-packages/pyouroboros/dockerclient.py", line 97, in recreate
    self.remove(container)
  File "/usr/local/lib/python3.7/site-packages/pyouroboros/dockerclient.py", line 88, in remove
    container.remove()
  File "/usr/local/lib/python3.7/site-packages/docker/models/containers.py", line 339, in remove
    return self.client.api.remove_container(self.id, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/docker/utils/decorators.py", line 19, in wrapped
    return f(self, resource_id, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/docker/api/container.py", line 992, in remove_container
    self._raise_for_status(res)
  File "/usr/local/lib/python3.7/site-packages/docker/api/client.py", line 258, in _raise_for_status
    raise create_api_error_from_http_exception(e)
  File "/usr/local/lib/python3.7/site-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
    raise cls(e, response=response, explanation=explanation)
docker.errors.APIError: 409 Client Error: Conflict ("removal of container 2e566328adc76054a2bfc2a7ebffdb118dbbed3133cd637bb25bb21c0befcee9 is already in progress")

Execute the following in order to reproduce the issue:
docker pull fedora:28
docker tag fedora:28 fedora:latest
docker run -d --rm --name=test fedora:latest sleep 999999
docker run -it --rm --name=ouroboros --hostname=ouroboros -v /var/run/docker.sock:/var/run/docker.sock ouroboros --run-once

We'll need to do an initial check for:
>>> client.containers.get('nginx').attrs['HostConfig']['AutoRemove']
True

Perhaps best place for this is to do a check and if true not append to running_containers in dockerclient.running_filter(). Thoughts @DirtyCajunRice ?

yep. that simple. that is golden

fixed in develop

Edit the Dockerfile (add one string, sed -i "s/999/99/" /etc/group) fixed it to me:
In alpine
FROM library/docker:stable
ENV HOME_DIR=/opt/crontab
RUN apk add --no-cache --virtual .run-deps bash jq
&& mkdir -p ${HOME_DIR}/jobs ${HOME_DIR}/projects
&& adduser -S docker -D
&& sed -i "s/999/99/" /etc/group

I have this issue also. It seems to be closed, but i have this happen just now. I'm running the latest version.
2019-06-30 07:19:50 : INFO : ouroboros : Version: 1.4.1-master
2019-06-30 07:19:51 : INFO : NotifyTelegram : Sent Telegram notification.
2019-06-30 07:21:27 : INFO : dockerclient : sabnzbd will be updated
2019-06-30 07:21:40 : ERROR : base : Job "Initial run interval container update for unix://var/run/docker                   .sock (trigger: date[2019-06-30 07:19:50 UTC], next run at: 2019-06-30 07:19:50 UTC)" raised an exception
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/docker/api/client.py", line 261, in _raise_for_status
response.raise_for_status()
File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 940, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 409 Client Error: Conflict for url: http+docker://localhost/v1.35/containe                   rs/36304057d760db270dc5aecd9fd4e398c6f79fa6fc77b09af1ce35db9e9e300c?v=False&link=False&force=False


Add base36 ECSQL function

We need ability to convert a decimal number to base36 to create BIS element suffixes using ECSQL. There's no way to achieve that through pure SQLite as far as I can tell, so I added it as a custom function.
Also, updated ECPresentation code to use less of its own custom functions and instead rely on bitwise operators and the new base36 ECSQL function.

@khanaffan, the CI build is failing because our worker connections don't see the new base36 function. Looking at this line, I believe it won't be available on your worker connections either.
Before I make any changes, could you please help me with the following:

What's the reason of not registering all primary db functions on worker connections?
Could that be done in BeSQLite::Db::OpenSecondaryConnection so it's callers don't need to worry about re-registering those functions?

@khanaffan, the CI build is failing because our worker connections don't see the new base36 function. Looking at this line, I believe it won't be available on your worker connections either.
Before I make any changes, could you please help me with the following:

What's the reason of not registering all primary db functions on worker connections?
Could that be done in BeSQLite::Db::OpenSecondaryConnection so it's callers don't need to worry about re-registering those functions?

You can just use ECDb as a worker connection instead of Db. I did that in ConcurrentQuery.  The copying function caused issues for me in the past where it held the primary connection as a member variable causing concurrent queries to wait for each other. So, I moved up from Db to ECDb.
You can also move your function up in BeSQLite as well. SQLite ext/misc  has "base64.c" and "base85.c". There are optional extensions and we do not build with it but it shows base36 is a primitive function and does not require ecdb or higher profile.

You can just use ECDb as a worker connection instead of Db. I did that in ConcurrentQuery. The copying function caused issues for me in the past where it held the primary connection as a member variable causing concurrent queries to wait for each other. So, I moved up from Db to ECDb.
You can also move your function up in BeSQLite as well. SQLite ext/misc  has "base64.c" and "base85.c". There are optional extensions and we do not build with it but it shows base36 is a primitive function and does not require ecdb or higher profile.

I chose the latter approach - reverted the change that registered the function in ECDb and moved it to BeSQLite::Db. Please have a look.


fix: pre-merge is missing commit ID

Currently the "commit_id" field is empty for pre-merge hooks. Other fields (message, author - and even a meta_range_id exist!)

Esti is expecting a certain amount of runs to be returned for a commit ID. This obviously changes that number, failing Esti.
I don't feel comfortable modifying the Esti test to make it pass because I don't understand what it's actually testing.

It's probably just me, but I don't understand how it solves anything. Also - @N-o-Z could you take a look too? I don't remember why we decided to implement it this way

The reason we implemented it this way is to avoid spamming KV with dangling commits for every failed pre-merge hook. This is a relatively common scenario so the risk here is high. Since we don't have any cleanup mechanism for dangling commits I think we should not introduce this change. I suggest we first have a cleanup mechanism and then introduce this change

@N-o-Z what's the concern with dangling commits? AFAIK we won't scan those ever, nor during LogCommits or during any GC operation. If it's just a few bytes in the kvstore for a failed hook, we should be okay, no? Given the fact that every hook run metadata is stored in kv too anyway..

It's probably just me, but I don't understand how it solves anything. Also - @N-o-Z could you take a look too? I don't remember why we decided to implement it this way

The reason we implemented it this way is to avoid spamming KV with dangling commits for every failed pre-merge hook. This is a relatively common scenario so the risk here is high. Since we don't have any cleanup mechanism for dangling commits I think we should not introduce this change. I suggest we first have a cleanup mechanism and then introduce this change

@N-o-Z what's the concern with dangling commits? AFAIK we won't scan those ever, nor during LogCommits or during any GC operation. If it's just a few bytes in the kvstore for a failed hook, we should be okay, no? Given the fact that every hook run metadata is stored in kv too anyway..

As a general rule, we should always make effort the cleanup the DB of unnecessary data. We are making this effort in other flows and I believe we should do the same here.
There's a logic and business reason for keeping a failed (and successful) hook run in the DB. I've yet to understand the reason for keeping a dangling commit.


enqueue_at not working

hi,
when I use
Resque.enqueue_at(10.seconds.from_now, SendMailJob, :my_id => id)
my job is correctly added to delayed job, then it is added to default queue, then I can see in resque-web that it has been counted as a success but I dont receive any mail
If I do
SendMailJob.perform_later(:my_id => id)
then I receive a mail.
my job:
class SendMailJob < ActiveJob::Base
  queue_as :default

  def self.queue
    :default
  end

  def perform(params)
    user = User.find(params[:id])
    ...
  end
end

Im also using gem active_scheduler
what am I doing wrong ?

What ActionMailer delivery method are you calling in your job? Are you using deliver_now?

I'm seeing this same behavior. Haven't found a solution yet.

Running rake environment resque:scheduler instead of rake resque:scheduler resolved this for me.


Scar is always rolled with d12

Selecting scar die does not have effect in „Roll Scar” dialog. It's always d12.
I tried to debug this but I'm not well versed in JS. Looks like die is selected correctly from the dialog in roll-scar-dialog.js by the JQuery but something happens later in the callback, and it gets ignored.

Fixed in 1.0.4


Omit non-exist blocks in the eviction algorithm

It's possible that a block is deleted just after we think it as a candidate to evict. For a non-exist block, getBlockSize return -1. It doesn't make sense to use -1 as block size and continue other calculations.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Tachyon-Pull-Request-Builder/2874/
Test PASSed.

Try to add a unit test?

@haoyuan , I found this issue by the same unit test added in #736
If you merge #736, the unit test should be covered.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Tachyon-Pull-Request-Builder/2887/
Test PASSed.

+1 LGTM as long as #736 is merged before so we have the unit test coverage.

+1 LGTM


Password input rendered wrong when embedded in table cell

The issue was originally reported as a followup in issue https://github.com/openwrt/luci/issues/2398#issuecomment-450495221.  but it got ignored there after the original issue got resolved and closed.
The issue is still present in current luci master.
Below is a copy of the original report

I understand.  Previously browser autocomplete can indeed cause trouble.  But it seems when embedded in a table, the added input element will be visible, despite the css code left: -1000px

Another minor undesirable change is that previously the Reveal/hide password button stick to the input element on the same row, not wrapping to the next line.

This problem still exists. :flushed:

Wasn't able to reprioduce this in Firefox.

I can confirm that it's still reproducible with a recent version of Chrome and Safari.  Sorry that I am still not certain when I can allocate time for this.  I will update here when I am on it.

I just opened a pull request for this.  After the change, the result will be like the following


Remove connected-desktop.rb

homepage was 404
when searching the product pages for a new onc, couldn't find a link to the software
this cask was originally added by @alexg0 in 2014
has only had a homepage updated since in 2016 by @cafferata
appcast shows updates that haven't been applied from 2014, so the app has been out of date since then
there have been no further updates to the application from the vendor since 2014

I suspect that this product is no longer supported and is very out of date and may even be EOL.
Can @alexg0 or @cafferata confirm usage, or should this be removed?

If there’s a checkbox you can’t complete for any reason, that's okay, just explain in detail why you weren’t able to do so.
After making all changes to the cask:

[ ] brew cask audit --download {{cask_file}} is error-free.
[ ] brew cask style --fix {{cask_file}} reports no offenses.
[ ] The commit message includes the cask’s name and version.

I don't use 'connected-desktop', the homepage update was an massa check/update on homepages.

Thanks for the quick response @cafferata

Thank you for the cleaning @colindunn. I’m always up to remove useless casks.

@codeindulgence There was a name change.  It's now called "Transporter Desktop".  The new download page is at https://secure.connecteddata.com/download/desktop.  The product is obsoleted, but not yet EOL.  I can take a stab at fixing the cask instead of deleting.

@alexg0 It’s already been removed. If it’s obsolete I’d rather not have it back just to have to remove it later on.


[Suggestion] Add Greenkeeper to DevOps.

As discussed adding Greenkeeper service would be a nice addition to our DevOps.
In order to activate it see: https://github.com/integration/greenkeeper
@robertohuertasm I would suggest giving it access only to this repo.

@JimiC I already granted Greenkeeper to this repo.

It should had created a PR to upgrade the dependencies. I'm currently out of town for the weekend. If it does not resolve talk on Monday.


JFXDialog in BorderPane

Hello,
when i try using JFXDialog in a BorderPane, the the Dialog will open in space outside of the application, I can see only i tiny edge.
I can show an example if neccessary for recreate the problem.

sure, plz send an example

the issue is that we are adding the dialog to the parent using getChildren().add() however this doesn't work in case of BorderPane, so we need to implement a special case regarding the BorderPane.
to solve this issue temporary you can set the BorderPane inside a StackPane and set the dialog container to be the StackPane instead of the BorderPane.