ERROR: Could not build wheels for fitsio, which is required to install pyproject.toml-based projects

Build error during CI build for test of #52.
Any thoughts @EiffL @LTMeyer ? This failure mode is blocking the merge of #52 .
Logs here and below.
Requirement already satisfied: pip in /opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages (24.0)
Collecting flake8
  Using cached flake8-7.0.0-py2.py3-none-any.whl.metadata (3.8 kB)
Collecting pytest
  Using cached pytest-8.2.2-py3-none-any.whl.metadata (7.6 kB)
Collecting mccabe<0.8.0,>=0.7.0 (from flake8)
  Using cached mccabe-0.7.0-py2.py3-none-any.whl.metadata (5.0 kB)
Collecting pycodestyle<2.12.0,>=2.11.0 (from flake8)
  Using cached pycodestyle-2.11.1-py2.py3-none-any.whl.metadata (4.5 kB)
Collecting pyflakes<3.3.0,>=3.2.0 (from flake8)
  Using cached pyflakes-3.2.0-py2.py3-none-any.whl.metadata (3.5 kB)
Collecting iniconfig (from pytest)
  Using cached iniconfig-2.0.0-py3-none-any.whl.metadata (2.6 kB)
Collecting packaging (from pytest)
  Using cached packaging-24.1-py3-none-any.whl.metadata (3.2 kB)
Collecting pluggy<2.0,>=1.5 (from pytest)
  Using cached pluggy-1.5.0-py3-none-any.whl.metadata (4.8 kB)
Collecting exceptiongroup>=1.0.0rc8 (from pytest)
  Using cached exceptiongroup-1.2.1-py3-none-any.whl.metadata (6.6 kB)
Collecting tomli>=1 (from pytest)
  Using cached tomli-2.0.1-py3-none-any.whl.metadata (8.9 kB)
Using cached flake8-7.0.0-py2.py3-none-any.whl (57 kB)
Using cached pytest-8.2.2-py3-none-any.whl (339 kB)
Using cached exceptiongroup-1.2.1-py3-none-any.whl (16 kB)
Using cached mccabe-0.7.0-py2.py3-none-any.whl (7.3 kB)
Using cached pluggy-1.5.0-py3-none-any.whl (20 kB)
Using cached pycodestyle-2.11.1-py2.py3-none-any.whl (31 kB)
Using cached pyflakes-3.2.0-py2.py3-none-any.whl (62 kB)
Using cached tomli-2.0.1-py3-none-any.whl (12 kB)
Using cached iniconfig-2.0.0-py3-none-any.whl (5.9 kB)
Using cached packaging-24.1-py3-none-any.whl (53 kB)
Installing collected packages: tomli, pyflakes, pycodestyle, pluggy, packaging, mccabe, iniconfig, exceptiongroup, pytest, flake8
Successfully installed exceptiongroup-1.2.1 flake8-7.0.0 iniconfig-2.0.0 mccabe-0.7.0 packaging-24.1 pluggy-1.5.0 pycodestyle-2.11.1 pyflakes-3.2.0 pytest-8.2.2 tomli-2.0.1
Collecting git+https://github.com/changhoonhahn/provabgs.git (from -r dset-requirements.txt (line 19))
  Cloning https://github.com/changhoonhahn/provabgs.git to /tmp/pip-req-build-ykjbmh4q
  Running command git clone --filter=blob:none --quiet https://github.com/changhoonhahn/provabgs.git /tmp/pip-req-build-ykjbmh4q
  Resolved https://github.com/changhoonhahn/provabgs.git to commit 5a272afdda1327e23b9834789fae56d849a496cd
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting git+https://github.com/***/unagi.git@update (from -r dset-requirements.txt (line 25))
  Cloning https://github.com/***/unagi.git (to revision update) to /tmp/pip-req-build-f9ow4jxa
  Running command git clone --filter=blob:none --quiet https://github.com/***/unagi.git /tmp/pip-req-build-f9ow4jxa
  Running command git checkout -b update --track origin/update
  Switched to a new branch 'update'
  branch 'update' set up to track 'origin/update'.
  Resolved https://github.com/***/unagi.git to commit<PHONE_NUMBER>beb57a73ae649f219a3b5a0cd08926
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting healpy (from -r dset-requirements.txt (line 1))
  Using cached healpy-1.17.1-cp3[10](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:11)-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (8.9 kB)
Collecting datasets (from -r dset-requirements.txt (line 2))
  Using cached datasets-2.19.2-py3-none-any.whl.metadata (19 kB)
Collecting h5py (from -r dset-requirements.txt (line 3))
  Using cached h5py-3.[11](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:12).0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (2.5 kB)
Collecting fitsio (from -r dset-requirements.txt (line 6))
  Downloading fitsio-1.2.2.tar.gz (4.5 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 75.3 MB/s eta 0:00:00
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting speclite (from -r dset-requirements.txt (line 7))
  Using cached speclite-0.19-py3-none-any.whl.metadata (490 bytes)
Collecting numba (from -r dset-requirements.txt (line 8))
  Using cached numba-0.59.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.7 kB)
Collecting astroquery (from -r dset-requirements.txt (line 16))
  Using cached astroquery-0.4.7-py3-none-any.whl.metadata (7.2 kB)
Collecting sncosmo (from -r dset-requirements.txt (line 22))
  Using cached sncosmo-2.10.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_[12](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:13)_x86_64.manylinux2010_x86_64.whl.metadata (3.4 kB)
Collecting wget (from -r dset-requirements.txt (line 29))
  Using cached wget-3.2-py3-none-any.whl
Collecting bs4 (from -r dset-requirements.txt (line 30))
  Using cached bs4-0.0.2-py2.py3-none-any.whl.metadata (411 bytes)
Collecting tqdm (from -r dset-requirements.txt (line 31))
  Using cached tqdm-4.66.4-py3-none-any.whl.metadata (57 kB)
Collecting sherpa>=4.15.0 (from -r dset-requirements.txt (line 34))
  Using cached sherpa-4.16.1-cp310-cp310-linux_x86_64.whl
Collecting pyvo>=1.4 (from -r dset-requirements.txt (line 35))
  Using cached pyvo-1.5.2-py3-none-any.whl.metadata (4.7 kB)
Collecting astropy (from -r dset-requirements.txt (line 36))
  Using cached astropy-6.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (10 kB)
Collecting numpy>=1.19 (from healpy->-r dset-requirements.txt (line 1))
  Using cached numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (61 kB)
Collecting filelock (from datasets->-r dset-requirements.txt (line 2))
  Using cached filelock-3.14.0-py3-none-any.whl.metadata (2.8 kB)
Collecting pyarrow>=12.0.0 (from datasets->-r dset-requirements.txt (line 2))
  Using cached pyarrow-16.1.0-cp310-cp310-manylinux_2_28_x86_64.whl.metadata (3.0 kB)
Collecting pyarrow-hotfix (from datasets->-r dset-requirements.txt (line 2))
  Using cached pyarrow_hotfix-0.6-py3-none-any.whl.metadata (3.6 kB)
Collecting dill<0.3.9,>=0.3.0 (from datasets->-r dset-requirements.txt (line 2))
  Using cached dill-0.3.8-py3-none-any.whl.metadata (10 kB)
Collecting pandas (from datasets->-r dset-requirements.txt (line 2))
  Using cached pandas-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (19 kB)
Collecting requests>=2.32.1 (from datasets->-r dset-requirements.txt (line 2))
  Using cached requests-2.32.3-py3-none-any.whl.metadata (4.6 kB)
Collecting xxhash (from datasets->-r dset-requirements.txt (line 2))
  Using cached xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)
Collecting multiprocess (from datasets->-r dset-requirements.txt (line 2))
  Using cached multiprocess-0.70.16-py310-none-any.whl.metadata (7.2 kB)
Collecting fsspec<=2024.3.1,>=2023.1.0 (from fsspec[http]<=2024.3.1,>=2023.1.0->datasets->-r dset-requirements.txt (line 2))
  Using cached fsspec-2024.3.1-py3-none-any.whl.metadata (6.8 kB)
Collecting aiohttp (from datasets->-r dset-requirements.txt (line 2))
  Using cached aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.5 kB)
Collecting huggingface-hub>=0.21.2 (from datasets->-r dset-requirements.txt (line 2))
  Using cached huggingface_hub-0.23.3-py3-none-any.whl.metadata (12 kB)
Requirement already satisfied: packaging in /opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages (from datasets->-r dset-requirements.txt (line 2)) (24.1)
Collecting pyyaml>=5.1 (from datasets->-r dset-requirements.txt (line 2))
  Using cached PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (2.1 kB)
Collecting scipy (from speclite->-r dset-requirements.txt (line 7))
  Using cached scipy-1.[13](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:14).1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (60 kB)
Collecting pytest-astropy-header (from speclite->-r dset-requirements.txt (line 7))
  Using cached pytest_astropy_header-0.2.2-py3-none-any.whl.metadata (8.5 kB)
Collecting llvmlite<0.43,>=0.42.0dev0 (from numba->-r dset-requirements.txt (line 8))
  Using cached llvmlite-0.42.0-cp310-cp310-manylinux_2_17_x86_64.manylinux20[14](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:15)_x86_64.whl.metadata (4.8 kB)
Collecting beautifulsoup4>=4.8 (from astroquery->-r dset-requirements.txt (line 16))
  Using cached beautifulsoup4-4.12.3-py3-none-any.whl.metadata (3.8 kB)
Collecting html5lib>=0.999 (from astroquery->-r dset-requirements.txt (line 16))
  Using cached html5lib-1.1-py2.py3-none-any.whl.metadata (16 kB)
Collecting keyring>=[15](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:16).0 (from astroquery->-r dset-requirements.txt (line 16))
  Using cached keyring-25.2.1-py3-none-any.whl.metadata (20 kB)
Collecting zeus-mcmc (from provabgs==0.1->-r dset-requirements.txt (line 19))
  Using cached zeus_mcmc-2.5.4-py3-none-any.whl.metadata (3.8 kB)
Collecting emcee (from provabgs==0.1->-r dset-requirements.txt (line 19))
  Using cached emcee-3.1.6-py2.py3-none-any.whl.metadata (3.0 kB)
Collecting extinction>=0.4.4 (from sncosmo->-r dset-requirements.txt (line 22))
  Using cached extinction-0.4.6-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.metadata (615 bytes)
Collecting looseversion>=1.0.0 (from sncosmo->-r dset-requirements.txt (line 22))
  Using cached looseversion-1.3.0-py2.py3-none-any.whl.metadata (4.6 kB)
Collecting six (from unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached six-1.[16](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:17).0-py2.py3-none-any.whl.metadata (1.8 kB)
Collecting pyparsing (from unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached pyparsing-3.1.2-py3-none-any.whl.metadata (5.1 kB)
Collecting matplotlib>=2.0 (from unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached matplotlib-3.9.0-cp310-cp310-manylinux_2_[17](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:18)_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)
Collecting fits2hdf>=1.1.1 (from unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached fits2hdf-1.1.1-py3-none-any.whl.metadata (2.1 kB)
Collecting tenacity>=5.1.1 (from unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached tenacity-8.3.0-py3-none-any.whl.metadata (1.2 kB)
Collecting pyerfa>=<IP_ADDRESS> (from astropy->-r dset-requirements.txt (line 36))
  Using cached pyerfa-<IP_ADDRESS>-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (5.7 kB)
Collecting astropy-iers-data>=0.2<IP_ADDRESS>.28.48 (from astropy->-r dset-requirements.txt (line 36))
  Using cached astropy_iers_data-0.2<IP_ADDRESS>.30.47-py3-none-any.whl.metadata (5.1 kB)
Collecting soupsieve>1.2 (from beautifulsoup4>=4.8->astroquery->-r dset-requirements.txt (line 16))
  Using cached soupsieve-2.5-py3-none-any.whl.metadata (4.7 kB)
Collecting colorama (from fits2hdf>=1.1.1->unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB)
Collecting aiosignal>=1.1.2 (from aiohttp->datasets->-r dset-requirements.txt (line 2))
  Using cached aiosignal-1.3.1-py3-none-any.whl.metadata (4.0 kB)
Collecting attrs>=17.3.0 (from aiohttp->datasets->-r dset-requirements.txt (line 2))
  Using cached attrs-23.2.0-py3-none-any.whl.metadata (9.5 kB)
Collecting frozenlist>=1.1.1 (from aiohttp->datasets->-r dset-requirements.txt (line 2))
  Using cached frozenlist-1.4.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)
Collecting multidict<7.0,>=4.5 (from aiohttp->datasets->-r dset-requirements.txt (line 2))
  Using cached multidict-6.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.2 kB)
Collecting yarl<2.0,>=1.0 (from aiohttp->datasets->-r dset-requirements.txt (line 2))
  Using cached yarl-1.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (31 kB)
Collecting async-timeout<5.0,>=4.0 (from aiohttp->datasets->-r dset-requirements.txt (line 2))
  Using cached async_timeout-4.0.3-py3-none-any.whl.metadata (4.2 kB)
Collecting webencodings (from html5lib>=0.999->astroquery->-r dset-requirements.txt (line 16))
  Using cached webencodings-0.5.1-py2.py3-none-any.whl.metadata (2.1 kB)
Collecting typing-extensions>=<IP_ADDRESS> (from huggingface-hub>=0.21.2->datasets->-r dset-requirements.txt (line 2))
  Using cached typing_extensions-4.12.2-py3-none-any.whl.metadata (3.0 kB)
Collecting jaraco.classes (from keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached jaraco.classes-3.4.0-py3-none-any.whl.metadata (2.6 kB)
Collecting jaraco.functools (from keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached jaraco.functools-4.0.1-py3-none-any.whl.metadata (2.9 kB)
Collecting jaraco.context (from keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached jaraco.context-5.3.0-py3-none-any.whl.metadata (4.0 kB)
Collecting importlib-metadata>=4.11.4 (from keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached importlib_metadata-7.1.0-py3-none-any.whl.metadata (4.7 kB)
Collecting SecretStorage>=3.2 (from keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached SecretStorage-3.3.3-py3-none-any.whl.metadata (4.0 kB)
Collecting jeepney>=0.4.2 (from keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached jeepney-0.8.0-py3-none-any.whl.metadata (1.3 kB)
Collecting contourpy>=1.0.1 (from matplotlib>=2.0->unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached contourpy-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (5.8 kB)
Collecting cycler>=0.10 (from matplotlib>=2.0->unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached cycler-0.12.1-py3-none-any.whl.metadata (3.8 kB)
Collecting fonttools>=4.22.0 (from matplotlib>=2.0->unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached fonttools-4.53.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (162 kB)
Collecting kiwisolver>=1.3.1 (from matplotlib>=2.0->unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached kiwisolver-1.4.5-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.metadata (6.4 kB)
Collecting pillow>=8 (from matplotlib>=2.0->unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached pillow-10.3.0-cp310-cp310-manylinux_2_28_x86_64.whl.metadata (9.2 kB)
Collecting python-dateutil>=2.7 (from matplotlib>=2.0->unagi==0.1.dev343->-r dset-requirements.txt (line 25))
  Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)
Collecting charset-normalizer<4,>=2 (from requests>=2.32.1->datasets->-r dset-requirements.txt (line 2))
  Using cached charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (33 kB)
Collecting idna<4,>=2.5 (from requests>=2.32.1->datasets->-r dset-requirements.txt (line 2))
  Using cached idna-3.7-py3-none-any.whl.metadata (9.9 kB)
Collecting urllib3<3,>=1.21.1 (from requests>=2.32.1->datasets->-r dset-requirements.txt (line 2))
  Using cached urllib3-2.2.1-py3-none-any.whl.metadata (6.4 kB)
Collecting certifi>=2017.4.17 (from requests>=2.32.1->datasets->-r dset-requirements.txt (line 2))
  Using cached certifi-2024.6.2-py3-none-any.whl.metadata (2.2 kB)
Collecting pytz>=2020.1 (from pandas->datasets->-r dset-requirements.txt (line 2))
  Using cached pytz-2024.1-py2.py3-none-any.whl.metadata (22 kB)
Collecting tzdata>=2022.7 (from pandas->datasets->-r dset-requirements.txt (line 2))
  Using cached tzdata-2024.1-py2.py3-none-any.whl.metadata (1.4 kB)
Requirement already satisfied: pytest>=4.6 in /opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages (from pytest-astropy-header->speclite->-r dset-requirements.txt (line 7)) (8.2.2)
Requirement already satisfied: setuptools in /opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages (from zeus-mcmc->provabgs==0.1->-r dset-requirements.txt (line 19)) (65.5.0)
Collecting seaborn (from zeus-mcmc->provabgs==0.1->-r dset-requirements.txt (line 19))
  Using cached seaborn-0.13.2-py3-none-any.whl.metadata (5.4 kB)
Collecting scikit-learn (from zeus-mcmc->provabgs==0.1->-r dset-requirements.txt (line 19))
  Using cached scikit_learn-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)
Collecting zipp>=0.5 (from importlib-metadata>=4.11.4->keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached zipp-3.19.2-py3-none-any.whl.metadata (3.6 kB)
Requirement already satisfied: iniconfig in /opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages (from pytest>=4.6->pytest-astropy-header->speclite->-r dset-requirements.txt (line 7)) (2.0.0)
Requirement already satisfied: pluggy<2.0,>=1.5 in /opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages (from pytest>=4.6->pytest-astropy-header->speclite->-r dset-requirements.txt (line 7)) (1.5.0)
Requirement already satisfied: exceptiongroup>=1.0.0rc8 in /opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages (from pytest>=4.6->pytest-astropy-header->speclite->-r dset-requirements.txt (line 7)) (1.2.1)
Requirement already satisfied: tomli>=1 in /opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages (from pytest>=4.6->pytest-astropy-header->speclite->-r dset-requirements.txt (line 7)) (2.0.1)
Collecting cryptography>=2.0 (from SecretStorage>=3.2->keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached cryptography-42.0.8-cp39-abi3-manylinux_2_28_x86_64.whl.metadata (5.3 kB)
Collecting more-itertools (from jaraco.classes->keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached more_itertools-10.3.0-py3-none-any.whl.metadata (36 kB)
Collecting backports.tarfile (from jaraco.context->keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached backports.tarfile-1.2.0-py3-none-any.whl.metadata (2.0 kB)
Collecting joblib>=1.2.0 (from scikit-learn->zeus-mcmc->provabgs==0.1->-r dset-requirements.txt (line 19))
  Using cached joblib-1.4.2-py3-none-any.whl.metadata (5.4 kB)
Collecting threadpoolctl>=3.1.0 (from scikit-learn->zeus-mcmc->provabgs==0.1->-r dset-requirements.txt (line 19))
  Using cached threadpoolctl-3.5.0-py3-none-any.whl.metadata (13 kB)
Collecting cffi>=1.12 (from cryptography>=2.0->SecretStorage>=3.2->keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (1.5 kB)
Collecting pycparser (from cffi>=1.12->cryptography>=2.0->SecretStorage>=3.2->keyring>=15.0->astroquery->-r dset-requirements.txt (line 16))
  Using cached pycparser-2.22-py3-none-any.whl.metadata (943 bytes)
Using cached healpy-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.3 MB)
Using cached datasets-2.19.2-py3-none-any.whl (542 kB)
Using cached h5py-3.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB)
Using cached speclite-0.19-py3-none-any.whl (1.1 MB)
Using cached numba-0.59.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.7 MB)
Using cached astroquery-0.4.7-py3-none-any.whl (5.3 MB)
Using cached sncosmo-2.10.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (715 kB)
Using cached bs4-0.0.2-py2.py3-none-any.whl (1.2 kB)
Using cached tqdm-4.66.4-py3-none-any.whl (78 kB)
Using cached pyvo-1.5.2-py3-none-any.whl (910 kB)
Using cached astropy-6.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.9 MB)
Using cached astropy_iers_data-0.2<IP_ADDRESS>.30.47-py3-none-any.whl (1.9 MB)
Using cached beautifulsoup4-4.12.3-py3-none-any.whl (147 kB)
Using cached dill-0.3.8-py3-none-any.whl (116 kB)
Using cached extinction-0.4.6-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (443 kB)
Using cached fits2hdf-1.1.1-py3-none-any.whl (22 kB)
Using cached fsspec-2024.3.1-py3-none-any.whl (171 kB)
Using cached aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB)
Using cached html5lib-1.1-py2.py3-none-any.whl (112 kB)
Using cached huggingface_hub-0.23.3-py3-none-any.whl (401 kB)
Using cached keyring-25.2.1-py3-none-any.whl (38 kB)
Using cached llvmlite-0.42.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (43.8 MB)
Using cached looseversion-1.3.0-py2.py3-none-any.whl (8.2 kB)
Using cached matplotlib-3.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.3 MB)
Using cached numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl ([18](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:19).2 MB)
Using cached pyarrow-16.1.0-cp310-cp310-manylinux_2_28_x86_64.whl (40.8 MB)
Using cached pyerfa-<IP_ADDRESS>-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (738 kB)
Using cached pyparsing-3.1.2-py3-none-any.whl (103 kB)
Using cached PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (705 kB)
Using cached requests-2.32.3-py3-none-any.whl (64 kB)
Using cached scipy-1.13.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (38.6 MB)
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Using cached tenacity-8.3.0-py3-none-any.whl (25 kB)
Using cached emcee-3.1.6-py2.py3-none-any.whl (47 kB)
Using cached filelock-3.14.0-py3-none-any.whl (12 kB)
Using cached multiprocess-0.70.16-py310-none-any.whl (134 kB)
Using cached pandas-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.0 MB)
Using cached pyarrow_hotfix-0.6-py3-none-any.whl (7.9 kB)
Using cached pytest_astropy_header-0.2.2-py3-none-any.whl (7.8 kB)
Using cached xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl ([19](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:20)4 kB)
Using cached zeus_mcmc-2.5.4-py3-none-any.whl (24 kB)
Using cached aiosignal-1.3.1-py3-none-any.whl (7.6 kB)
Using cached async_timeout-4.0.3-py3-none-any.whl (5.7 kB)
Using cached attrs-23.2.0-py3-none-any.whl (60 kB)
Using cached certifi-[20](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:21)24.6.2-py3-none-any.whl (164 kB)
Using cached charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (142 kB)
Using cached contourpy-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (305 kB)
Using cached cycler-0.12.1-py3-none-any.whl (8.3 kB)
Using cached fonttools-4.53.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB)
Using cached frozenlist-1.4.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (239 kB)
Using cached idna-3.7-py3-none-any.whl (66 kB)
Using cached importlib_metadata-7.1.0-py3-none-any.whl (24 kB)
Using cached jeepney-0.8.0-py3-none-any.whl (48 kB)
Using cached kiwisolver-1.4.5-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.6 MB)
Using cached multidict-6.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (124 kB)
Using cached pillow-10.3.0-cp310-cp310-manylinux_2_28_x86_64.whl (4.5 MB)
Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)
Using cached pytz-2024.1-py2.py3-none-any.whl (505 kB)
Using cached SecretStorage-3.3.3-py3-none-any.whl (15 kB)
Using cached soupsieve-2.5-py3-none-any.whl (36 kB)
Using cached typing_extensions-4.12.2-py3-none-any.whl (37 kB)
Using cached tzdata-2024.1-py2.py3-none-any.whl (345 kB)
Using cached urllib3-2.2.1-py3-none-any.whl (1[21](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:22) kB)
Using cached yarl-1.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (301 kB)
Using cached colorama-0.4.6-py2.py3-none-any.whl (25 kB)
Using cached jaraco.classes-3.4.0-py3-none-any.whl (6.8 kB)
Using cached jaraco.context-5.3.0-py3-none-any.whl (6.5 kB)
Using cached jaraco.functools-4.0.1-py3-none-any.whl (9.8 kB)
Using cached scikit_learn-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.3 MB)
Using cached seaborn-0.13.2-py3-none-any.whl (294 kB)
Using cached webencodings-0.5.1-py2.py3-none-any.whl (11 kB)
Using cached cryptography-42.0.8-cp39-abi3-manylinux_2_28_x86_64.whl (3.9 MB)
Using cached joblib-1.4.2-py3-none-any.whl (301 kB)
Using cached threadpoolctl-3.5.0-py3-none-any.whl (18 kB)
Using cached zipp-3.19.2-py3-none-any.whl (9.0 kB)
Using cached backports.tarfile-1.2.0-py3-none-any.whl (30 kB)
Using cached more_itertools-10.3.0-py3-none-any.whl (59 kB)
Using cached cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (443 kB)
Using cached pycparser-2.[22](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:23)-py3-none-any.whl (117 kB)
Building wheels for collected packages: fitsio, provabgs, unagi
  Building wheel for fitsio (pyproject.toml): started
  Building wheel for fitsio (pyproject.toml): finished with status 'error'
  error: subprocess-exited-with-error

  × Building wheel for fitsio (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [82 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-cpython-310
      creating build/lib.linux-x86_64-cpython-310/fitsio
      copying fitsio/__init__.py -> build/lib.linux-x86_64-cpython-310/fitsio
      copying fitsio/header.py -> build/lib.linux-x86_64-cpython-310/fitsio
      copying fitsio/fits_exceptions.py -> build/lib.linux-x86_64-cpython-310/fitsio
      copying fitsio/fitslib.py -> build/lib.linux-x86_64-cpython-310/fitsio
      copying fitsio/util.py -> build/lib.linux-x86_64-cpython-310/fitsio
      creating build/lib.linux-x86_64-cpython-310/fitsio/hdu
      copying fitsio/hdu/__init__.py -> build/lib.linux-x86_64-cpython-310/fitsio/hdu
      copying fitsio/hdu/table.py -> build/lib.linux-x86_64-cpython-310/fitsio/hdu
      copying fitsio/hdu/image.py -> build/lib.linux-x86_64-cpython-310/fitsio/hdu
      copying fitsio/hdu/base.py -> build/lib.linux-x86_64-cpython-310/fitsio/hdu
      creating build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/test_table.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/__init__.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/test_header.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/test_image.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/checks.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/test_lib.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/test_warnings.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/test_image_compression.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/test_header_junk.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      copying fitsio/tests/makedata.py -> build/lib.linux-x86_64-cpython-310/fitsio/tests
      running egg_info
      writing fitsio.egg-info/PKG-INFO
      writing dependency_links to fitsio.egg-info/dependency_links.txt
      writing requirements to fitsio.egg-info/requires.txt
      writing top-level names to fitsio.egg-info/top_level.txt
      reading manifest file 'fitsio.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      adding license file 'LICENSE.txt'
      writing manifest file 'fitsio.egg-info/SOURCES.txt'
      /tmp/pip-build-env-9nl8ho20/overlay/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'fitsio.test_images' is absent from the `packages` configuration.
      !!

              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'fitsio.test_images' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.

              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'fitsio.test_images' is explicitly added
              to the `packages` configuration field.

              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).

              You can read more about "package discovery" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

              If you don't want 'fitsio.test_images' to be distributed and are
              already explicitly excluding 'fitsio.test_images' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.

              You can read more about "package data files" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html

              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************

      !!
        check.warn(importable)
      copying fitsio/fitsio_pywrap.c -> build/lib.linux-x86_64-cpython-310/fitsio
      creating build/lib.linux-x86_64-cpython-310/fitsio/test_images
      copying fitsio/test_images/test_gzip_compressed_image.fits.fz -> build/lib.linux-x86_64-cpython-310/fitsio/test_images
      running build_ext
      error: [Errno 2] No such file or directory: 'zlib'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for fitsio
  Building wheel for provabgs (pyproject.toml): started
  Building wheel for provabgs (pyproject.toml): finished with status 'done'
  Created wheel for provabgs: filename=provabgs-0.1-py3-none-any.whl size=39799864 sha256=361cdb521186b[23](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:24)1bdcf4872f0aa2e9668691b80fcd581ba9f83081894071d80
  Stored in directory: /tmp/pip-ephem-wheel-cache-sdem8oid/wheels/2e/e5/3e/fbdf132af90ae43916f2f0bd55cde589b4cf7488aa2806928f
  Building wheel for unagi (pyproject.toml): started
  Building wheel for unagi (pyproject.toml): finished with status 'done'
  Created wheel for unagi: filename=unagi-0.1.dev343-py3-none-any.whl size=4184281 sha[25](https://github.com/MultimodalUniverse/MultimodalUniverse/actions/runs/9485835072/job/26138892106?pr=52#step:4:26)6=88e1e9717d40dbd18dc7ac1b723e8e8578df51e2993c4a5db0dbfcb9a66fa9a5
  Stored in directory: /tmp/pip-ephem-wheel-cache-sdem8oid/wheels/e1/36/5b/4b5ac800b13dc1209168806386c9f18cb3857f7923a25ce9dc
Successfully built provabgs unagi
Failed to build fitsio
ERROR: Could not build wheels for fitsio, which is required to install pyproject.toml-based projects
Error: Process completed with exit code 1.

This is solved


New endowed positions dataset

NOT READY FOR REVIEW

(Edit the above to reflect status)

Summary

TL;DR - what's this PR for?

Review By (Date)

When does this need to be reviewed by?

Criticality

How critical is this PR on a 1-10 scale? Also see Severity Assessment.
E.g., it affects one site, or every site and product?

Review Tasks
Setup tasks and/or behavior to test

Check out this branch
Navigate to...
Verify...

Front End Validation

[ ] Is the markup using the appropriate semantic tags and passes HTML validation?
[ ] Cross-browser testing has been performed?
[ ] Automated accessibility scans performed?
[ ] Manual accessibility tests performed?
[ ] Design is approved by @ user?

Backend / Functional Validation
Code

[ ] Are the naming conventions following our standards?
[ ] Does the code have sufficient inline comments?
[ ] Is there anything in this code that would be hidden or hard to discover through the UI?
[ ] Are there any code smells?
[ ] Are tests provided? eg (unit, behat, or codeception)

Code security

[ ] Are all forms properly sanitized?
[ ] Any obvious security flaws or new areas for attack?

General

[ ] Is there anything included in this PR that is not related to the problem it is trying to solve?
[ ] Is the approach to the problem appropriate?

Affected Projects or Products

Does this PR impact any particular projects, products, or modules?

Associated Issues and/or People

JIRA ticket(s)
Other PRs
Any other contextual information that might be helpful (e.g., description of a bug that this PR fixes, new functionality that it adds, etc.)
Anyone who should be notified? (@mention them here)

Resources

AMP Tool
Accessibility Manual Test Script
HTML Validator
Browserstack and link to Browserstack Credentials

@forrestglick can you edit the details for when this should be reviewed and deployed?

I believe Forrest is out - I'll check back early next week (after Labor Day) :)

Hi @yvonnetangsu, I returned from vacation last evening :) The client would like to push live on Tuesday, Sept 5 after a quick review on Dev to confirm the updates look as intended. Thank you!

Have a great weekend @forrestglick 😄 dev should be ready for client review - we'll cut a release on Tuesday.


fix(edge-runtime): remove unstable headers from user code

Can you explain a bit the motivation for this change? 🙂


[Backport] Fix missing task type in task payload API

Backport of https://github.com/druid-io/druid/pull/5399 to 0.12.2.

This change is

Errors in travis:
  BlockingPoolTest.testConcurrentBatchClose:303
  BlockingPoolTest.testConcurrentTake:193 expected:<10> but was:<0>
  BlockingPoolTest.testConcurrentTakeBatch:263
  BlockingPoolTest.testTake:77
  BlockingPoolTest.testTakeBatch:96
Tests in error:
  BlockingPoolTest.testConcurrentTakeBatchClose:364 » Execution java.lang.NullPo...
  BlockingPoolTest.testTakeTimeout:89 NullPointer
  BlockingPoolTest.testWaitAndTakeBatch:106 »  test timed out after 1000 millise...

Similar to ones we saw in https://github.com/apache/incubator-druid/pull/5931#issuecomment-403133666.

@gianm it looks that the above failures come from another PR? The failed task in this PR was the below one, and I've fixed it.
Failed tests:
io.druid.indexing.overlord.http.OverlordResourceTest.testGetTaskStatus(io.druid.indexing.overlord.http.OverlordResourceTest)
  Run 1: OverlordResourceTest.testGetTaskStatus:346 expected: io.druid.indexing.overlord.http.TaskStatusResponse<TaskstatusResponse{task='mytask', status=TaskStatus{id=mytask, status=SUCCESS, duration=-1}}> but was: io.druid.indexing.overlord.http.TaskStatusResponse<TaskstatusResponse{task='mytask', status=TaskStatus{id=mytask, status=SUCCESS, duration=-1}}>
  Run 2: OverlordResourceTest.tearDown:359
  Expectation failure on verify:
    TaskStorageQueryAdapter.getStatus("mytask"): expected: 1, actual: 1
    TaskStorageQueryAdapter.getStatus("othertask"): expected: 1, actual: 0```


Add sprig templating functions

The sprig library will give us some more functionality in the templates, and the next step would be to refactor the usage of the 2 custom template functions (minus and sha1) to make use of sprig implementations

Codecov Report

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

@@           Coverage Diff           @@
##           master     #559   +/-   ##
=======================================
  Coverage   38.06%   38.06%
=======================================
  Files          46       46
  Lines        3145     3145
=======================================
  Hits         1197     1197
  Misses       1752     1752
  Partials      196      196

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 30dccf5...830179f. Read the comment docs.

@tyrannasaurusbanks Thanks for the PR!
The eventual goal of refactoring templates sounds good to me.
One minor comment for now.
Would you mind confirming it?

No worries, great project, I thought it was about time I got on board and contributed, I'll refactor the templates after this one!

@redbaron @tyrannasaurusbanks Which versions of glide are you using?
For me:
$ glide --version
glide version 0.13.0-dev

$ glide --version glide version 0.12.3
Where did you get 0.13.0-dev from, did you build it from source?

Where did you get 0.13.0-dev from, did you build it from source?

@tyrannasaurusbanks Thanks for the confirmation!
Yes - However I don't remeber the exact reason why I had done so.
According to the full changelog, I believe I don't need to stick with the dev version. Please let me confirm how it works for me with v0.12.3

@tyrannasaurusbanks Even with v0.12.3, It seems like I can't reproduce your result
https://gist.github.com/mumoshu/5e5ccec4e9c3b88637680411dd9d127a
Could you provide me your output of glide get?

Yeah sure, I've just reverted the changes on my local branch and re-added the dependency:
https://gist.github.com/tyrannasaurusbanks/b139abcc787aa2a5e20cc8c4926dc022

@tyrannasaurusbanks Thanks for the info!
Could you run cd ~/.glide/cache/src/https-gopkg.in-yaml.v2 && git branch and share me the commit id for the HEAD?
For me, it printed the commit id which equals to the one seen in the updated glide.yaml.
$ cd ~/.glide/cache/src/https-gopkg.in-yaml.v2
$ git branch
* (HEAD detached at a3f3340)
  v2

I guess that t prints a83829b for you?
The issue in glide which seemed relevant to me is: https://github.com/Masterminds/glide/issues/592

@tyrannasaurusbanks I guess running glide cc & glide get github.com/Masterminds/sprig allows us to produce the equivalent results.
Would you mind running it in your machine and confirming your result is equivalent to the one shown in my gist?

@mumoshu yes, glide cc & glide get github.com/Masterminds/sprig has done the trick.
I've got some newer commit id's for github.com/aws/aws-sdk-go, but that makes sense given the updated timestamp in my log/run.
Thanks for taking the time to get to the bottom of this! I'll update my PR now

@tyrannasaurusbanks Great! Thanks a lot for taking your time to finish this 👍

@mumoshu no worries, thanks for taking the time to help me get my first commit merged - hopefully I can start looking at some more meatier/impactful ones now!


Add forms

I did the following in Add forms:

Make sure that there are no linter errors
Make sure that you used correct flow Gitflow
Make sure that you documented your work in a professional way
Create a method called current_user in your ApplicationController to make current user data available to all controllers.
It will return the first user from the database.
Create forms to perform the following functions:
Creates a Post on behalf of the current_user (use the method that you created in your ApplicationController).
Create a comment on behalf of the current_user (use the method that you created in your ApplicationController).
Allow Users to add likes to Posts.

@AnselemOdims  and @franclobo Thanks


Feedback of Final Project

Still get unit test error. Try 'poetry install; poetry run pytest tests'. 5 error shows up. Seems like all of them are regarding 'chromedriver';

@Doooooris Can you share the exact error message?
Our README lists chromedriver as a dependency and we included a link to instructions for where and how to download it.
Neither of our peer reviewers had this issue.


Redirect to the same page break pull-to-refresh

When I submit a form and use redirect_to instead of refresh_or_redirect_to the screen is replaced but the pull-to-refresh stops working. I was expecting that the "navigation to the same screen" was able to handle that.
  def update
    if @contact.update(contact_params)
      redirect_to @contact, notice: "Contact was successfully updated."
    else
      render :edit, status: :unprocessable_entity
    end
  end

https://github.com/joemasilotti/TurboNavigator/assets/2651240/e747ddb7-7b22-454b-a294-89010b9e87c3

Thanks for the bug report! I can confirm this is the case and that refresh_or_redirect_to does indeed fix the issue.
But for those only using redirect_to we should probably have a solution. I've identified that this line of code in Turbo is where the divergence occurs.
// turbo-ios/Source/Session/Session.swift#248

public func visitableDidRequestRefresh(_ visitable: Visitable) {
    guard visitable === topmostVisitable else { return }

    refreshing = true
    visitable.visitableWillRefresh()
    reload()
}

The guard statement fails so the refresh reload never actually occurs. Which looks to be caused by visitableDelegate being nil when the underlying view re-appears. This chain eventually should set topmostVisitable but won't be called.
// turbo-ios/Source/Visitable/VisitableViewController.swift

open override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
    visitableDelegate?.visitableViewDidAppear(self)
}

I'm not sure yet if that's a bug in turbo-ios or being caused by Turbo Navigator without digging in more. If you have any ideas please let me know!

Hmm, I think I might see what's going on. It looks like viewDidAppear(_:) isn't called when a modal is dismissed. Which means topmostVisitable is never set causing visitableDelegate to be nil.
I'm not entirely sure what the fix is here, to be honest. I think turbo-ios might have to change how visitableDelegate is set outside of viewDidAppear(_:).

Confirmed. Applying the following diff presents the modals in a full screen context. Which then calls the right callback.
diff --git a/Sources/TurboNavigator.swift b/Sources/TurboNavigator.swift
index 4e90bcc..9c41a32 100644
--- a/Sources/TurboNavigator.swift
+++ b/Sources/TurboNavigator.swift
@@ -131,6 +131,7 @@ public class TurboNavigator {
                 pushOrReplace(on: modalNavigationController, with: controller, via: proposal)
             } else {
                 modalNavigationController.setViewControllers([controller], animated: false)
+                modalNavigationController.modalPresentationStyle = .fullScreen
                 navigationController.present(modalNavigationController, animated: true)
             }
             visit(controller, on: modalSession, with: proposal.options)

But we can't default that for everyone. So still need some alternate solutions.

You know what is weird, in Hey they use redirect_to when you edit a workflow, and it works. For the other screens they use refresh_or_redirect_to, I could see it in the proxy I have on my phone proxyman.

Interesting. Any chance you can reproduce this bug in the demo app for turbo-ios? If so we can rule out Turbo Navigator.

No, because the demo app doesn't handle "navigating to the same view", it pushes a new view to the stack, and in this case, the refresh still works.

@lazaronixon, if you apply this patch to turbo-ios, does the same issue occur?
https://github.com/hotwired/turbo-ios/pull/160#event-10968726377

No, not yet, it's not blinking anymore, but it still breaks the loader.
https://github.com/joemasilotti/TurboNavigator/assets/2651240/15d659bb-8e6b-45b4-98b4-39fc9fafa48b

Commenting to remind myself that this issue needs to be fixed before Turbo Navigator is officially upstreamed.


Nerf observer speed

Mainly for streaming reasons over anything else because there's a lot of pop-in.
:cl:

tweak: Lowered ghost movement speed.

mappers wont like this

mappers wont like this

Maybe we could have a different speed for admin ghosts?

I'm fine making aghost higher; realistically I have to wait moving around to observe anyway so going slow or fast is irrelevant. Warp atm also takes several seconds to stream everything in.
Ideally PVS range would be further but as is we probably shouldn't do that atm.
When the player list panel gets cleaned up (click to warp + sorting) I imagine the adminobserver experience would be significantly better.

Justice for observer ghosts


don't list Setup.hs as a module

Just trying out this tool.. loving it so far!
With source-dirs: . , Setup.hs is included in exposed-modules which is undesirable.

Nice catch!  I guess we want to special case the situation when inferring modules for ..
A patch would be welcome, but I'll also try to free up some time to look into it later.
Sent from my iPhone

On 15 Jul 2015, at 3:05 am, Simon Michael<EMAIL_ADDRESS>wrote:
Just trying out this tool.. loving it so far!
With source-dirs: . , Setup.hs is included in exposed-modules which is undesirable.
—
Reply to this email directly or view it on GitHub.

Fixed on hackage as 0.5.3. Closing.

Thanks!


[suiop][incidents][pro-236] show count before interactive selection

Description
print the count so we know what's coming
Test plan
DEBUG=true cargo run -- i r -i
    Blocking waiting for file lock on build directory
   Compiling suiop-cli v1.39.0 (/Users/jkjensen/mysten/sui/crates/suiop-cli)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.54s
     Running `/Users/jkjensen/mysten/sui/target/debug/suiop i r -i`
2024-11-18T18:27:47.098537Z  INFO suiop: Debug mode enabled
2024-11-18T18:27:47.103333Z  INFO suioplib::cli::incidents: going back 7 days
Reviewing 4 recent incidents
...

Release notes
Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[ ] Indexer:
[ ] JSON-RPC:
[ ] GraphQL:
[ ] CLI:
[ ] Rust SDK:
[ ] REST API:

🚀


qa_crowbarsetup: Add missing pre_hook call in onadmin_batch

This matters because setcloudnetvars wasn't called.

+2 obviously correct.


Do Not Merge [BEAM-3954] Create reproducible environment for Jenkins build

Please add a meaningful description for your change here

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.


Function app package not shown in marketplace filter

In the portal, go to browse > App Service and select "add." You will get a marketplace filter for Web + Mobile. If you search for functions, you do not see the functions package. This is also true of the standard marketplace entry.
I suspect this is because function app is categorized under "compute" for creates, but since browse is rolled into the standard App Service browse, this creates a strange experience.

Closing as handled by #882


Retry false positive

Retry return false positive when wrapped policy returns no error but status is NOK. It may be related to #24.

Fixed by #30.


Ubuntu 16.04 and Docker 1.12 - Flocker-CLI and Flocker Docker Plugin both broken

Ubuntu 16.04
Docker version 1.12.2
Flocker Client (clusterhq-flocker-cli)
Instructions used:  https://docs.clusterhq.com/en/latest/docker-integration/install-client.html#installing-on-ubuntu-16-04-64-bit
Apt Repo:
Get:10 https://clusterhq-archive.s3.amazonaws.com/ubuntu/16.04/amd64  Release [18 B]
apt-get install clusterhq-flocker-cli
Installs without errors.
Error (with or without sudo):
$ flocker
Traceback (most recent call last):
File "/usr/bin/flocker", line 7, in
from flocker.cli.script import flocker_cli_main
ImportError: No module named script
Flocker Docker Plugin
Instructions used:
https://docs.clusterhq.com/en/latest/docker-integration/install-node.html#installing-on-ubuntu-16-04
Example (this error is produced by any use of -d flocker with docker volume):
sudo docker volume create -d flocker --name=testvol1 -o size=10G
Error response from daemon: create testvol1: create testvol1: Error looking up volume plugin flocker: legacy plugin: plugin not found
Neither of these are working via the installers or instructions.  Are there updated instructions and installers to work on Ubuntu 16.04 and Docker 1.12?
Cheers

@garybottom Sorry for delayed reply.

Error (with or without sudo):
$ flocker
Traceback (most recent call last):
File "/usr/bin/flocker", line 7, in
from flocker.cli.script import flocker_cli_main
ImportError: No module named script

This is a known issue. Confusingly, the flocker command is not a documented or supported Flocker CLI right now.
It's a legacy of a previous version of Flocker.
The CLI for viewing and manipulating Flocker volumes can be installed according to these instructions:

https://docs.clusterhq.com/en/latest/flocker-features/flockerctl.html

Error response from daemon: create testvol1: create testvol1: Error looking up volume plugin flocker: legacy plugin: plugin not found

This could be because the flocker-docker-plugin process isn't running.
Our acceptance tests install the plugin on Ubuntu 14.04 and on Ubuntu 16.04 with Docker 1.12 (latest) and run tests that call docker volume create -d flocker.
The tests are currently passing so I suspect that the problem might be caused by a misconfiguration or  something subtle on your particular system.
Take a look at the process list on that server and check that flocker-docker-plugin is running and that it is listening on a unix socket in the directory where Docker expects to find plugin sockets.
lsof -p $(pidof -x flocker-docker-plugin) | grep /run/docker/plugins
...
flocker-d 31292 root   12u     unix 0xffff88010b38a1c0      0t0 106271865 /run/docker/plugins/flocker/flocker.sock type=STREAM

Finally, check the logs from Flocker processes for exceptions and errors:

https://docs.clusterhq.com/en/latest/administering/debugging.html

Hope that helps.


Support fields prefixed with a single underscore

Fixes #83

Wow, thank you so much for the speed
I've noticed that the pip package is version 2.6.2 (vs the 2.7.2 here)
Do you plan to update it or should I use the repo directly?

The latest version should now be published to PyPI.

It is
This flow and its speed makes me enjoy open source
Thanks a lot


style(lib,doc): fix lint errors

Codecov Report

Merging #312 into development will decrease coverage by <.01%.
The diff coverage is n/a.

@@               Coverage Diff               @@
##           development     #312      +/-   ##
===============================================
- Coverage         92.7%   92.69%   -0.01%
===============================================
  Files               26       26
  Lines              877      876       -1
===============================================
- Hits               813      812       -1
  Misses              64       64

Impacted Files
Coverage Δ

lib/card/index.js
97.87% <ø> (ø)
:arrow_up:

lib/modal/index.js
81.63% <ø> (-0.37%)
: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 1d6f239...99ff3dd. Read the comment docs.


[DDW-1148] Implement acceptance tests for wallet delegation

This PR implements acceptance tests for wallet delegation
Screenshots

Testing Checklist

Slack QA thread
[ ] Test

Review Checklist
Basics

[ ] PR has been assigned and has appropriate labels (feature/bug/chore, release-x.x.x)
[ ] PR is updated to the most recent version of the target branch (and there are no conflicts)
[ ] PR has a good description that summarizes all changes and shows some screenshots or animated GIFs of important UI changes
[ ] CHANGELOG entry has been added to the top of the appropriate section (Features, Fixes, Chores) and is linked to the correct PR on GitHub
[ ] Automated tests: All acceptance and unit tests are passing (yarn test)
[ ] Manual tests (minimum tests should cover newly added feature/fix): App works correctly in development build (yarn dev)
[ ] Manual tests (minimum tests should cover newly added feature/fix): App works correctly in production build (yarn package / CI builds)
[ ] There are no flow errors or warnings (yarn flow:test)
[ ] There are no lint errors or warnings (yarn lint)
[ ] There are no prettier errors or warnings (yarn prettier:check)
[ ] There are no missing translations (running yarn manage:translations produces no changes)
[ ] Text changes are proofread and approved (Jane Wild / Amy Reeve)
[ ] Japanese text changes are proofread and approved (Junko Oda)
[ ] UI changes look good in all themes (Alexander Rukin)
[ ] Storybook works and no stories are broken (yarn storybook)
[ ] In case of dependency changes yarn.lock file is updated

Code Quality

[ ] Important parts of the code are properly commented and documented
[ ] Code is properly typed with flow
[ ] React components are split-up enough to avoid unnecessary re-renderings
[ ] Any code that only works in main process is neatly separated from components

Testing

[ ] New feature/change is covered by acceptance tests
[ ] New feature/change is manually tested and approved by QA team
[ ] All existing acceptance tests are still up-to-date
[ ] New feature/change is covered by Daedalus Testing scenario
[ ] All existing Daedalus Testing scenarios are still up-to-date

After Review

[ ] Merge the PR
[ ] Delete the source branch
[ ] Move the ticket to done column on the YouTrack board
[ ] Update Slack QA thread by marking it with a green checkmark

@daniloprates can you please check the flow issue?

@MarcusHurney please review this one today 🙏

@MarcusHurney still no review? :(

@daniloprates can you please check the Flow issues?

✅


[Bug]: ffmpeg decoder not parsing and decoding all audio samples

What Operating System(s) are you seeing this problem on?
Linux (x86-64)
dlib version
master
Python version
No response
Compiler
gcc 12.3
Expected Behavior
I am comparing how many audio samples are decoded on a particular audio file with a particular codec, i.e. dlib/test/ffmpeg_data/116-288045-0000.flac using both the decoder object and the demuxer object. I can use the decoder in this instance since FLAC is a codec without a container.
I expect both to decode the same number of audio samples. They don't.
Current Behavior
They don't decode the same number of audio samples.
Steps to Reproduce
./buildExamples/Debug/ffmpeg_video_demuxing2_ex -i dlib/test/ffmpeg_data/116-288045-0000.flac
./buildExamples/Debug/ffmpeg_video_decoding2_ex -i dlib/test/ffmpeg_data/116-288045-0000.flac --codec flac

You get the following output:
Read 170400 audio samples

and
Read 139264 audio samples

Anything else?
I get this with FFmpeg version 6.1.1 and 4.4.2. So I imagine the bug is in the ffmpeg wrappers in dlib.

I've tried the decode_audio.c example in the FFmpeg repository and I get a similar result. Maybe there is something funny with the AVCodecParserContext object and/or FLAC. Will investigate.

Think i found the error. The example code in decode_audio.c in the FFmpeg repository is incorrect. They really need to update their own examples and check them.  I'll submit a PR.


The calculation in metrics.regex_rows() is not consistent with the documentation

https://github.com/georgianpartners/foreshadow/blob/c2c213e0009cfdcf0aa9df75f0a6cf4c983d7090/foreshadow/metrics.py#L184
Here, before the sum, we should get a 0 or 1 value for each row. But instead, we are getting the matched length for each row, which leads to a final score larger than 1. Here are the code the reproduce the issue:
import pandas as pd
from foreshadow.concrete import DollarFinancialCleaner

x = pd.DataFrame({'price': ['$3', '$5.0', '$5,000.00']})
financial_cleaner = DollarFinancialCleaner()
metric = financial_cleaner.metric_score(x)
print(metric)

The expected value is 1 but get 4.2 instead.

@cchoquette , can you take a look?


[Keyvault] RBAC AKV Permission Model - move to GA

Is your feature request related to a problem? Please describe.

Keyvault
https://dev.azure.com/azure-mgmt-ex/KeyVault/_boards/board/t/KeyVault Team/Stories/?workitem=4636
Move RBAC AKV Permission Model command from preview to GA
Describe the solution you'd like

Describe alternatives you've considered

Additional context

remove preview tag, to GA the command

remove preview tag, to GA the command


JSON object as String in query variables

Can you please guide on how to pass below JSON object as String

{
"filter": {
"region": "APAC",
"code": {"in": [ "HK1", "SG1" ]},
"account_number": {"nin": [ "1" ]}
}
}

Hey @sudheerj! I'm not really sure what you mean by passing JSON object as String - are you trying to execute a query with above JSON as variables?

Exactly.I want to pass above JSON object as String query variable.It contains many operators and fields.The above expression is a direct Mongoose schema that works on DB.I don't want to pass it as InputObject.

Let me try answering in a couple phases:

I guess the easiest way is, given that the JSON is simple enough (which is probably not what you want), if you declare the type of $filter argument as GraphQLString, you could pass it in as a JSON.stringifyed string from Variable Editor I presume:

{
  "filter": "{ "region: "APAC", ... }"
}

If what you wanted is to pass an object and convert it into a string later, it'll be difficult to achieve that as GraphiQL does not (and probably should not) attempt to process the query/variables strings; instead it merely passes the provided strings to GraphQL executor (in this case graphql-js). You might be able to tweak the fetcher function to detect certain GraphQL variable keys and process into the string format there, but it feels too much of a hack.

I'd advise to create a GraphQLInputObject type for this:

new GraphQLInputObjectType({
  name: 'filter',
  fields: {
    "region": { type: GraphQLString },
    "code": { type: new GraphQLInputObjectType({ ... }) },
    "account_number": { type: new GraphQLInputObjectType({ ... }) },
  }
});

FYI, you may already know this, but I did a quick google search and came up with a couple of example adapter libraries with GraphQL and Mongoose DB (e.g. graffiti-graphql), as well as some posts on what other people did to connect the two.
For the last mark, this question is probably more suited for graphql-js repository (I'm making an educated guess from looking at your other questions and the fact that you may be using graphql-js reference implementation for your application)

I should pass JSON object only because it contains mongoose operators which executed directly.You can observe $gt,$gte,$in,$nin etc so I'am expecting them as String instead on Input object.
Do I need to pass filter args for Root query here? Other inputs will be passed to Model object
`let RootQuery = new GraphQLObjectType({
name: 'Query',      //Return this type of object
fields: () => ({
accounts: AccountQueries.accounts
})
});`

@asiandrummer's suggestion is a good one. You simply provide a string for your variable which happens to appear as JSON:
{
  "filter": "{ \"region\": \"APAC\", ... }"
}

Within your application, you can first call JSON.parse() on the string variable to get your unstructured JSON object within your server.

@leebyron the suggestion to escape quotes in a string is very cumbersome for large data and not a reasonable solution for this in my opinion. Given there is a JSONString input type, GraphiQL should support transforming the Object variable to JSONString. Defining custom Input Types is also not possible for my situation since this is for a mutation that needs to support multiple types and interfaces are not supported for input types. My work around for now is to do the hacky modification of my fetcher. This still has the problem of GraphiQL highlighting my variables saying, "Expected value of type JSONString". But I guess I can just ignore this since this is only used by our sys admins.
For anyone else facing this same situation this is my fetcher:
fetcher = (params) => {
    let {variables = {}} = params;
    variables = Object.keys(variables).reduce((result, key) => {
      if (hasIn(variables[key], '__stringify')) {
        return {...result, [key]: JSON.stringify(variables[key].__stringify)};
      }
      return {...result, [key]: variables[key]};
    }, {});
    return fetch('/graph', {
      method: 'POST',
      headers: new Headers({
          'Content-Type': 'application/json'
      }),
      body: JSON.stringify({...params, variables})
    }).then((response) => {
      return response.json();
    });
  }

I used a __stringify wrapper to avoid stringifying unintended objects.

@nikordaris, JSONString is not part of the standard set of scalars and GraphiQL only supports the standard set, that's a custom scalar type added by your server. If you're sending complex unstructured JSON data as a string - I suggest calling JSON.stringify on the client before sending the query

I have the same issue.  I can submit the JSON just fine, but graphIQL complains that the type is supposed to be Json.

I'm still seeing this problem as of today:

In terms of using custom scalars by URL, we have support now for specifiedBy directive!
https://github.com/graphql/graphql-js/blob/5ccf579a3bfd98243700ef541a6939af7a6f545c/src/utilities/__tests__/buildClientSchema-test.ts#L566
just a matter of implementing the result in the client validation in codemirror-graphql and/or monaco-graphql

This worked!


Update AboutUs and PPP for Zachary

Updated AboutUs and PPP for Zachary.

Codecov Report

Merging #29 (2296c09) into master (482eb68) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #29   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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 482eb68...2296c09. Read the comment docs.


Cache clear does not propagate through servers with different database credentials to same database

PHP Version
7.4
Shopware Version
6.4.7
Expected behaviour
When I click clear cache in admin it clears caches for frontend servers. And I do not have to install additional software like a cache clear multiplexer!
Actual behaviour
A cache namespace is cleared that isn't used by the frontend servers.
How to reproduce

Have frontend server that serves anything but /api, uses db user frontend and uses redis cache
Have backend server that serves /api and uses db user backend and uses the same redis cache
Change cached content that clears cache tags or click on cache clear in admin
See two redis cache namespaces. One for frontend using cache id from frontend server (lots of keys), another one from backend server (just a few keys).

It reasons from using the database url as part of the cache id. Whatever your reasons are to include that database url in here but it won't allow for such a setup which seems to be quite frequently used in clustered environments.

Hello,
Within our company roadmap and work capacity, we try to address each bug or improvement request but admit that not each one will be resolved. To continue our culture of honesty and openness, we are closing this issue to focus on our roadmap on behalf of all Shopware users.
If you feel like this issue is still impacting you, please create a new issue and let us know.
Thank you again for your valuable feedback.


optionally allow for linting all files before fail

Currently when a file is reporting a lint error, the remaining files are not processed.
Would be nice to be able to specify that the remaing files are to be checked as well, and fail when all files are processed and at least one reports an error.

@makepanic that commit should fix this issue.


add deprecation notice?

Hi, in the lack of issue-tracking in this fork, and some confusion when I found the https://github.com/mobimeo/avrodoc-plus/ fork, which it seem you also have created (?), I started this PR to ask the question which of these forks will possibly be maintained (which fork should I create PR against)?
If you don't intend to merge any PRs or do more development on either that is of course fine, then I could pursue my own fork instead of contributing to others :-)

Hello @mikaello , thank you for all the contributions and I am sorry for all this delay. I will merge the deprecation PR and yes, my intention is to keep the fork inside @mobimeo

@mikaello I have to take ownership of the repo inside @mobimeo again and will check and merge the PR's. I also fixed the mobimeo org inside NPM, so the releases will work properly. Next month I will start to work on the UI improvements and the automation to release that too.

Hello! No worries 😊 I thought this was a very nice project, so I eventually started rewriting what I could to a more modern codebase. In addition to all the PRs I have created against this and mobimeo version, I added a working unit test, more rewriting and a beginning for support of schemata referencing elements in other schemata, see a summary of my changes in the release section of my fork of you a are interested : https://github.com/mikaello/avrodoc-plus/releases


Fix several UI issues

[ ] Reduce size and change icon of Previous/Next path Icons on global directory
[ ] Add margin on toolbars
[ ] Reduce a little size of icons on toolbars
[ ] Add separators for toolbars
[ ] Fix rounded cropped corners on dockwidgets

Superseded by https://github.com/spyder-ide/ux-improvements/issues


Use optional chaining to ensure posts can be found

Previously a TS error appeared to explain that the parser "Cannot read properties of undefined (reading 'includes')".
Optional chaining ensures the correct render of the screen.
What kind of changes does this PR include?

Changes to the docs site code

Description

What does this PR change?

This PR updates a small section of code which appears [on the blog tutorial on unit 5](https://docs.astro.build/en/tutorial/5-astro-api/2/

I've only updated one line of code that ensures the includes function will call provided that post exists.

Thanks for this contribution, @Lauro235! Yes, you've identified how to make the code more forgiving for people who don't add tags to their posts.
However, I'm not entirely sure I want to make this change to the tutorial, because in an earlier step on this page, we do say:

Make sure that every blog post contains at least one tag, written as an array, e.g. tags: ["blogging"].

So, we crafted the tutorial in such a way that if you follow it, you won't get an error at this point. And, since not everyone following the tutorial will have a strong JavaScript background, we were trying to avoid the code looking any more complicated than it needs to be.
So, I really am torn about adding the ? and the extra note. We have discussed making the function more resilient before, and chose instead to make the instructions clearer to avoid errors. I feel like someone who is comfortable with JavaScript, like you, will discover that this is a way to improve the code. But, someone who is less comfortable will not know what the ? means, and honestly doesn't have to if they have followed the instructions. So, the code looks simpler and is less text to get in the way.

No problem! I ran into a problem following the tutorial which briefly held
me back. I applied the ? and it solved it. Then weirdly I took the question
mark away and the original problem wasn't there (I guess maybe one of my
posts didn't have a tags property).
Thanks for your response Sarah. I'm excited to see the Astro tech lift off
💫
On Fri, May 12, 2023 at 12:32 PM Sarah Rainsberger @.***>
wrote:

Thanks for this contribution, @Lauro235 https://github.com/Lauro235!
Yes, you've identified how to make the code more forgiving for people who
don't add tags to their posts.
However, I'm not entirely sure I want to make this change to the
tutorial, because in an earlier step on this page, we do say:
Make sure that every blog post contains at least one tag, written as an
array, e.g. tags: ["blogging"].
So, we crafted the tutorial in such a way that if you follow it, you won't
get an error at this point. And, since not everyone following the tutorial
will have a strong JavaScript background, we were trying to avoid the code
looking any more complicated than it needs to be.
So, I really am torn about adding the ? and the extra note. We have
discussed making the function more resilient before, and chose instead to
make the instructions clearer to avoid errors. I feel like someone who is
comfortable with JavaScript, like you, will discover that this is a way to
improve the code. But, someone who is less comfortable will not know what
the ? means, and honestly doesn't have to if they have followed the
instructions. So, the code looks simpler and is less text to get in the way.
—
Reply to this email directly, view it on GitHub
https://github.com/withastro/docs/pull/3172#issuecomment-1545601442, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AVX54QMYPSDVGPMDGEXDKNDXFYNVNANCNFSM6AAAAAAXWGBUU4
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Lorentz Bloom
He / Him
56 Queen Adelaide Road
SE20 7DX
07491644437

I see your points and completely get where you're coming from, but do
definitely appreciate your response. This sets Astro apart I think 🤜🤛
On Fri, May 12, 2023 at 12:43 PM Lorentz Bloom @.***>
wrote:

No problem! I ran into a problem following the tutorial which briefly held
me back. I applied the ? and it solved it. Then weirdly I took the question
mark away and the original problem wasn't there (I guess maybe one of my
posts didn't have a tags property).
Thanks for your response Sarah. I'm excited to see the Astro tech lift off
💫
On Fri, May 12, 2023 at 12:32 PM Sarah Rainsberger <
@.***> wrote:

Thanks for this contribution, @Lauro235 https://github.com/Lauro235!
Yes, you've identified how to make the code more forgiving for people who
don't add tags to their posts.
However, I'm not entirely sure I want to make this change to the
tutorial, because in an earlier step on this page, we do say:
Make sure that every blog post contains at least one tag, written as an
array, e.g. tags: ["blogging"].
So, we crafted the tutorial in such a way that if you follow it, you
won't get an error at this point. And, since not everyone following the
tutorial will have a strong JavaScript background, we were trying to avoid
the code looking any more complicated than it needs to be.
So, I really am torn about adding the ? and the extra note. We have
discussed making the function more resilient before, and chose instead to
make the instructions clearer to avoid errors. I feel like someone who is
comfortable with JavaScript, like you, will discover that this is a way to
improve the code. But, someone who is less comfortable will not know what
the ? means, and honestly doesn't have to if they have followed the
instructions. So, the code looks simpler and is less text to get in the way.
—
Reply to this email directly, view it on GitHub
https://github.com/withastro/docs/pull/3172#issuecomment-1545601442,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVX54QMYPSDVGPMDGEXDKNDXFYNVNANCNFSM6AAAAAAXWGBUU4
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Lorentz Bloom
He / Him
56 Queen Adelaide Road
SE20 7DX
07491644437

--
Lorentz Bloom
He / Him
56 Queen Adelaide Road
SE20 7DX
07491644437

Thanks for understanding! I'm still thinking about what to do here, so if you don't mind, I'm going to let this one hang open a little longer to see whether some inspiration hits re: some kind of middle ground. :thinking: :bulb:
Happy for anyone else reading this to chime in with thoughts!

Hey @Lauro235 -- I know it seemed like I forgot about this one, but I swear, every few days I come back to it thinking, "What do I really want here??"  :joy:
Here's what I decided:

Your code is less fragile!  :tada:
We have asked people to just blindly copy/paste way more involved code than this without explaining it
This will solve issues of some people not closely following previous instructions
... the next first-time contributor to docs is going to be NUMBER 500!!!

Your contribution was correct, helpful, and well-reasoned. You graciously and patiently waited while I balanced competing factors and decided what to do. I would be honoured to merge this, and welcome you as the 500th member of Team Docs.
Let's do this, yo!  :purple_heart:


Default keybindings.json has some Missing property "args". errors

Issue Type: Bug

Open default keybindings.json
Press F8

VS Code version: Code - Insiders 1.54.0-insider (9ecd3fc3022e8c154aff868f74bd5d77f7d4a2ea, 2021-02-23T10:46:22.816Z)
OS version: Windows_NT x64 10.0.17763

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz (4 x 3193)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
15.80GB (6.09GB free)

Process Argv
--crash-reporter-id 39b79841-23f2-4fc6-a5c1-ec0a901ec9aa

Screen Reader
no

VM
0%

Extensions: none

@alexdima This warning seems to be caused by this: https://github.com/microsoft/vscode/blob/3022afaeaa291fec298ffa86cefff6893ddb192c/src/vs/workbench/services/keybinding/browser/keybindingService.ts#L805
It seems that whenever an argument has a required property the whole argument is becoming a required property. This is biting us as it prevents to properly define an argument that is optional

@jrieken So the new use case is that the args field is optional, but if it is specified, then it must contain a certain argument? And the bad assumption is that a required argument means that args overall are required?
cc @aeschli for ideas

And the bad assumption is that a required argument means that args overall are required?

Yes


Zen mode for terminal

Hey, it'd be cool to have a full-screen Zen mode terminal, much like the editor.
Currently, the best I can figure out how to do is this, but it'd be cool to just be able to make the terminal completely full screen:

@loftusa This is an awesome idea.
@Tyriar Is help wanted for this? Do you foresee any problems or gotchas?

No plans to add something like this anytime soon, however it may happen for free if terminals can be pulled out of the panel (see https://github.com/Microsoft/vscode/issues/10546)


import/namespace does not support shadowing

import/namespace does not detect when something in a closer scope shadows a namespace import, leading to bogus lint warnings.
This example is a bit bigger than necessary, but it is closer to the conditions where I encountered it:
import React, { PropTypes } from 'react'
import { createStructuredSelector } from 'reselect'
import { connect } from 'react-redux'
import * as todos from 'ducks/todos'

const mapStateToProps = createStructuredSelector({
  todos: todos.getTodos
})

const TodoApp = ({
  todos
}) => (

    {/* import/namespace 'map' not found in imported namespace 'todos' */}
    {todos.map(({ id }) => (
{id}
))}

)

const connected = connect(mapStateToProps)(TodoApp)
export { connected as TodoApp }

The same thing happens if I change the arrow function to start like props => { const { todos } = props; ..., or even props => { const todos = props.todos; ....

Yep. 😅
It's been on my radar for a while, but hasn't come up in practice so it hasn't been a priority.

@benmosher I suspect adding the following line after this line would fix it. Would you agree?
if (declaredScope(context, dereference.object.name) !== 'module') return

Issue recreated here:
https://github.com/penx/eslint-plugin-import-bug
import * as color from './color';
export const getBackgroundFromColor = (color) => color.bg;
export const getExampleColor = () => color.example

'bg' not found in imported namespace 'color'. eslintimport/namespace

Thanks to @penx's repro and @isiahmeadows's suggested fix, I've got a fix ready for this :-)


The exception stack trace doesn't keep in the original Rails logger.

I have added config.lograge.keep_original_rails_log = true, when an error occurs, I hadn't find any valuable infomation. It was just Completed 500 Internal Server Error in 40ms (ActiveRecord: 6.1ms), absolutely i want more information about the exception, it should be something more like the following:
Completed 500 Internal Server Error in 1899ms (ActiveRecord: 92.4ms)

GRPC::BadStatus (14:{"created":"@1480919280.562705000","description":"OS Error","errno":54,"file":"src/core/lib/iomgr/tcp_posix.c","file_line":229,"grpc_status":14,"os_error":"Connection reset by peer","syscall":"recvmsg"}):
  app/service/chauffeur_service.rb:14:in `dispatch_passenger_order'
  app/models/passenger_order.rb:37:in `dispatch_passenger_order'
  app/controllers/spree/api/v1/passenger_orders_controller.rb:25:in `create'

Take a look here.

@benlovell Thanks for your quick response, but your answer is not what i want, i'm wondering that is there a way to keep stack trace in original Rails logger, NOT logstash.

@FX-HAO At which loglevel have you configured your logs?

@benlovell debug

Sorry, it's my bad. Because a line of config.action_dispatch.show_exceptions = false.

@FX-HAO Ah, no problem. 👍


Questions Regarding Server Ports and WebRTC Connections

Hello LiveKit team,
Firstly, thank you for the amazing work on LiveKit. I have a couple of questions regarding the server ports used in WebRTC connections:
For each client connection via WebRTC, how many ports does the server need to open?
In scenarios where the server cannot expose many ports, is it possible to handle a large number of user connections with a limited number of ports, possibly even just one?
I appreciate your guidance and look forward to your response.
Best regards

You can enable udpmux by set rtc.udp_port and comment the port_range_start and port_range_end in config file, the rtc.udp_port can be set to a single port or a limited port range


[QUESTION] New Relic support

Before you submit this issue, you has been search all existed issues and search the documentation

[X] I've been search all existed issues
[X] I've been read all documentation

Describe your question
Hi,
I wonder if Hyperf offers any means of integrating with New Relic for monitoring. I found a package for Swoole, but I'm not sure how to use it together with Hyperf and I'm also not sure if it works correctly. Have any of you ever needed to do this integration between Hyperf and New Relic?
https://github.com/upscalesoftware/swoole-newrelic
Thanks!

Be aware that activating New Relic's APM, despite it deactivates PHP 8's JIT, it will not work with Swoole coroutines.
https://github.com/newrelic/newrelic-php-agent/issues/50 Swoole's runtime hooks and APM's monkey-patching instrumentation conflicts.
The way to go is OpenTelemetry, you can still instrument Hyperf applications using hyperf/metric and hyperf/tracer, then send Zipkin/Jaeger spans and/or Prometheus/Statds/InfluxDB metrics to an OpenTelemetry Collector which is configured to use the New Relic exporter.
At PicPay we are actively using this approach, but we had to build a hyperf/tracer fork to tailor our needs, specialy to support PHP 8 (at the time) and New Relic: https://github.com/picpay/hyperf-tracer

Quick question: can't New relic ingest zipkin?
On Fri, Nov 26, 2021, 14:35 Leo Cavalcante @.***> wrote:

Be aware that activating New Relic's APM, despite it deactivates PHP 8's
JIT, it will not work with Swoole coroutines.
newrelic/newrelic-php-agent#50
https://github.com/newrelic/newrelic-php-agent/issues/50 Swoole's
runtime hooks and APM's monkey-patching instrumentation conflicts.
The way to go is OpenTelemetry https://opentelemetry.io/, you can still
instrument Hyperf applications using hyperf/metric and hyperf/tracer,
then send Zipkin/Jaeger spans and/or Prometheus/Statds/InfluxDB metrics to
an OpenTelemetry Collector https://opentelemetry.io/docs/collector/
which is configured to use the New Relic exporter
https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/exporter/newrelicexporter
.
At PicPay we are actively using this approach, but we had to build a
hyperf/tracer fork to tailor our needs, specialy to support PHP 8 (at the
time) and New Relic: https://github.com/picpay/hyperf-tracer
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/hyperf/hyperf/issues/4251#issuecomment-979982934, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAXOYAUVRMIL5D4CBMW5J63UN6EJNANCNFSM5H4CRRCQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Quick question: can't New relic ingest zipkin?

Yes, through the Trace API though, not the the APM agent.


Channels and Contacts search input is missing

Check for existing issues

[X] Completed

Describe the regression
The functionality of filtering channels and contacts is missing due to the missing search input.
If necessary, add screenshots of gpui-1 Zed to show the missing feature
Zed Beta

Zed Preview

Found it at the bottom of the panel 🤦


horizontal line breaks (ASCII) breaks dataview in text code blocks

What happened?
Hi all,
there is apparently a bug in dataview that causes the builtin PDF export funtion in obsidian to output trash near the end of the exported document (random dataview error messages).
The funny thing is that the markdown file I used doesn't even use dataview, so I guess that's a prio 1 bug, if it breaks Obsidian itself without using dataview.
I am using Obsidian for technical documentation of changes (commands & their outputs).
Recently I had the following, reproducable bug:
Bug descriptions
Step 1) Take the following body (copy as markdown!) and put it in a markdown document:
<====== cut here and copy as Markdown (!!!), meaning add triple backticks to the code blocks (first code block = bash, second = text) as I cannot print markdown in markdown 1:1!
Command:
mkdir v11.5.7_linuxx64_client
tar xf v11.5.7_linuxx64_client.tar.gz -C v11.5.7_linuxx64_client
chown -R root:root v11.5.7_linuxx64_client
cd v11.5.7_linuxx64_client/client

./db2prereqcheck -c -v <IP_ADDRESS>

Output:

==========================================================================

Tue Jul 26 11:23:16 2022
Checking prerequisites for DB2 installation. Version "<IP_ADDRESS>". Operating system "Linux"

Validating "Linux distribution " ...
   Required minimum operating system distribution: "SUSE"; Version: "12"; Service pack: "3".
   Actual operating system distribution Version: "12"; Service pack: "4".
   Requirement matched.

Validating "kernel level " ...
   Required minimum operating system kernel level: "3.10.0".
   Actual operating system kernel level: "4.12.14".
   Requirement matched.

Validating "C++ Library version " ...
   Required minimum C++ library: "libstdc++.so.6"
   Standard C++ library is located in the following directory: "/usr/lib64/libstdc++.so.6.0.28".
   Actual C++ library: "CXXABI_1.3.1"
   Requirement matched.

Validating "32 bit version of "libstdc++.so.6" " ...
   Found the 32 bit "/usr/lib/libstdc++.so.6" in the following directory "/usr/lib".
   Requirement matched.

Validating "libnuma.so version " ...
DBT3610I  The db2prereqcheck utility successfully loaded the libnuma.so.1 file.
   Requirement matched.

Validating "/lib/libpam.so*" ...
   Requirement matched.
DBT3533I  The db2prereqcheck utility has confirmed that all installation prerequisites were met.

<==== until here
Step 2) try to print the markdown document as PDF using the builtin PDF export function.
Step 3) by default the produced PDF automatically should open and then scroll to the very bottom of the PDF and see the trailing dataview error messages:
Example of the trailing dataview error messages (inside the PDF document):
Dataview (inline field
'=============================================================
============
Tue Jul 26 11:23:16 2022
Checking prerequisites for DB2 installation. Version
"<IP_ADDRESS>". Operating system "Linux"
Validating "Linux distribution " ...
Required minimum operating system distribution: "SUSE";
Version: "12"; Service pack: "3".
Actual operating system distribution Version: "12"; Service
pack: "4".
Requirement matched.
Validating "kernel level " ...
Required minimum operating system kernel level: "3.10.0".
Actual operating system kernel level: "4.12.14".
Requirement matched.
Validating "C++ Library version " ...
Required minimum C++ library: "libstdc++.so.6"
Standard C++ library is located in the following directory:
"/usr/lib64/libstdc++.so.6.0.28".
Actual C++ library: "CXXABI_1.3.1"
Requirement matched.
Validating "32 bit version of "libstdc++.so.6" " ...
Found the 32 bit "/usr/lib/libstdc++.so.6" in the following
directory "/usr/lib".
 Requirement matched.
Validating "libnuma.so version " ...
DBT3610I The db2prereqcheck utility successfully loaded the
libnuma.so.1 file.
Requirement matched.
Validating "/lib/libpam.so*" ...
Requirement matched.
DBT3533I The db2prereqcheck utility has confirmed that all
installation prerequisites were met.'): Error:
-- PARSING FAILED --------------------------------------------
------
> 1 |
==============================================================
===========
| ^
2 |
3 | Tue Jul 26 11:23:16 2022
Expected one of the following:
'(', 'null', boolean, date, duration, file link, list ('[1, 2,
3]'), negated field, number, object ('{ a: 1, b: 2 }'),
string, variable

Expecations
I'd naively expect if I don't use dataview blocks or directives, that my PDF is produces normally.
Workaround
Temporarily disable dataview, export document to PDF => the resulting PDF is correct now.
Synopsis
From what's self-evident is that the one line with the horizontal "====== ..." line break of equal signs causes dataview to spasm for no apparent reason. To me personally, it's not even obsvious why dataview is involved here at all, TBH.
That's all.
Environment
Using Obsidian v0.15.9 on Windows 10.
Using Dataview v0.5.41.
If you need more info I can provide.
DQL
No response
JS
No response
Dataview Version
0.5.41
Obsidian Version
0.15.9
OS
Windows

Dataview is interpreting the codeblock starting with ============================... as an inline dataview query and attempting to evaluate it. I suspect you would see the dataview errors in Read mode, or in the upcoming Dataview errors which evaluates inline queries in Live Preview.
You can fix this by either (1) turning off inline queries in settings, or (2) changing the inline queries prefix to something less conflicting like dv=.

I changed the inline query strings to dataview-inline-query= and dataviewjs-inline-query= to make it less probable that such a thing happens again.

IMHO, there needs to be a change with the defaults of obsidian-dataview.
When I encountered this issue at first, I was under the assumption that I'm not using the dataview plugin at all, which is the main reason why I was so confused about this error.
This assumption was based on the fact that I didn't include a code block with dataview as it's language manually.
I believe it is not an unreasonable assumption to make and it's certainly unintuitive to the vast majority of obsidian users, why dataview was triggered in that instance.
Having merely a = at the beginning of any line inside code blocks trigger the inline query of dataview is "too loose/common/unspecific" and therefore an unnecessary risk to break the user experience in other parts of the software.
The workaround has been described in my previous post.
It's best if the authors waited for the next dataview release with breaking changes and use that as an opportunity to also roll out new default prefixes for the inline queries, idealy with a proper warning to users on the plugin's page that they need to adjust their previous inline queries to the new defaults.
I say this because obviously changing the defaults will break any existing users' documents which make use of dataview inline queries, so there is no quick and dirty solution to this problem, unfortunatelly.
IMHO, the current inline query trigger prefixes were of bad taste/short-sighted to begin with, and I know that's easy to say in retrospec.
I'm closing this issue right now as the workaround will help any users who come across it.


Issue when visualizing with xception network

Bug description
I have a varient of xception model which has only 2 classes in final layer. When I use this library with the model it only works with CAM and not with other activation map models.
Code snippet to reproduce the bug
This is the network i use link . Similar error can be seen in some models in Hugging Face

Error traceback
 File "cam.py", line 34, in <module>     activation_map = cam_extractor(out.squeeze(0).argmax().item(), out)   File "/hdd/2017CS128/.conda/envs/env_pytorch/lib/python3.6/site-packages/torchcam/methods/core.py", line 143, in __call__     return self.compute_cams(class_idx, scores, normalized)   File "/hdd/2017CS128/.conda/envs/env_pytorch/lib/python3.6/site-packages/torchcam/methods/core.py", line 158, in compute_cams     weights = self._get_weights(class_idx, scores)   File "/hdd/2017CS128/.conda/envs/env_pytorch/lib/python3.6/site-packages/torchcam/methods/gradient.py", line 280, in _get_weights     grad_2 = [g2.add_(grad.pow(2)) for g2, grad in zip(grad_2, self.hook_g)]   File "/hdd/2017CS128/.conda/envs/env_pytorch/lib/python3.6/site-packages/torchcam/methods/gradient.py", line 280, in <listcomp>     grad_2 = [g2.add_(grad.pow(2)) for g2, grad in zip(grad_2, self.hook_g)] RuntimeError: The size of tensor a (10) must match the size of tensor b (149) at non-singleton dimension 3
Environment
ubuntu 18.4
CUDA Version: 11.2

Hello @AnjanaSamindraPerera :wave:
Thanks for reporting this, the answer is rather simple:

the base CAM method is the oldest one and the most containing: it only works with models that have global average pooling, and a single fully connected (or conv1x1) layer for the classification.
MobileNetV3 has 2 fully connected layers in its classification head, so it cannot work

I suggest checking other methods if you want to focus on that architecture :)
I hope this helps!


need to remove BOTH console.log statments

Challenge Waypoint: Local Scope and Functions has an issue.
User Agent is: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:43.0) Gecko/20100101 Firefox/43.0.
Please describe how to reproduce this issue, and include links to screenshots if possible.
challenge only passed when I removed BOTH console.log statements. Removing only the second one as requested did not work.
My code:
function myFunction() {
  var myVar = "spam";
}
myFunction();

// run and check the console
// myVar is not defined outside of myFunction
// now remove the console.log line to pass the test

Closing as a duplicate of #5559. Thanks and happy coding!


Image update

As the last paragraph says: "Dependency Inversion Principle is telling us is to invert the dependency. The flow of control will still follow the same path. However, now both our objects will depend on the abstraction level of the interface. Thus, ClassB inverts its dependency on ClassA" but the image intro-dependency-inversion-after.avif shows the opposite, Flow of dependencies is following the same path and is not inverted, while Flow of control, on the other hand, is inverted contrarily to what was previously stated. I have tried to upload an edited version of the image with the two captions swapped, but it won't let me add it to the slides/images folder in order to load it up for the change commitment.

I apologize, last night I forgot to upload the edited image I mentioned.


Add hatch actions

Description
Add shared actions that support a hatch build backend.
Checklist

[x] I have read the contributing guide and understand what's expected of me
[x] I have signed the CLA
[ ] I have run this code in development and it appears to resolve the stated issue

This PR has been broken up into a PR for each action, and is no longer relavant.


react-native android app crash

"react": "16.9.0",
"react-native": "0.61.5",
"react-native-openalpr": "^2.1.1",
"react-native-permissions": "^2.0.9",
camera open n after 2 - 3 sec. app crashes on android

Duplicate of this https://github.com/RobertSasak/react-native-openalpr/issues/61 ?

please give solution

Without further information there is nothing to be done.

I fixed similar crash issue adding this configuration in app/build.gradle file:
android {
    ...
    defaultConfig {
       ...
        ndk {
            abiFilters "armeabi-v7a"
        }
    }
}


build_sysext: Add SELinux labeling

The build_sysext tool is now used for the OEM and in the future the internal Docker/containerd systemd-sysext image.
For Docker and containerd we need to make sure that the files are correctly labeled for SELinux to work in enforcing mode.
There were attempts to do this with the torcx tar ball but they failed.
Note that the /usr image is also not completely labeled yet https://github.com/flatcar/scripts/blob/1f1a53140cf7b3cbb4d3e8961bce7a44af295ce4/build_library/build_image_util.sh#L775 and that enforcing mode is not expected to work until we update the policy and debug any remaining issues.

The change is prepared as part of https://github.com/flatcar/scripts/pull/1517 (currently not working due to label/policy mismatch in the rest of /usr)

This should also be labelled area/selinux

You're welcome to work on it, no one else is currently looking into this. It doesn't require the issue to be assigned.


chore: release 4.5.3

:robot: I have created a release *beep* *boop*
4.5.3 (2022-11-22)
Bug Fixes

unable build in ci (e1b8ff2)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/mili-project-manager/mtpl-component/releases/tag/v4.5.3 :sunflower:


#0: umd bump

BH support in UMD is coming soon, so we'll need to bump sometime in the near future
This is a test to see if anything broke

???


Arabic translations

Here it is #59
Apparently diff with Arabic is not working so well, so it is not visible where the actual changes are.


ftu-header

I ran lint on all files still the format check test is failing.

Run npx nx format:write to fix formatting