Broken project? celery

I would really like to use this project as a foundation but am bashing my head against the wall getting this and a clone of the demo repository running.  Here are the steps I performed verbatim with a fresh setup:
╰─ mkdir foo

╭─    …/code/projects 
╰─ cd foo

╭─    …/projects/foo 
╰─ yo django-rest

     _-----_     ╭──────────────────────────╮
    |       |    │    Mess with the best,   │
    |--(o)--|    │   Django likes REST...   │
   `---------´   │          Yeah...         │
    ( _´U`_ )    ╰──────────────────────────╯
    /___A___\   /
     |  ~  |
   __'.___.'__
 ´   `  |° ´ Y `

? What is the name of your project? foo
? You want a create-react-app frontend that compiles to a separate prod branch? No
? Optionally give us the git remote url of your repo:
? ...and if you want to deploy to Heroku, the Heroku git url too:
   create docker-compose.yml
   create Dockerfile
   create HACKING.md
   create manage.py
   create Pipfile
   create Pipfile.lock
   create Procfile
   create Procfile.dev.example
   create README.md
   create scripts/deploy.sh
   create scripts/dev.sh
   create scripts/setup.sh
   create scripts/util/check-os-deps.sh
   create scripts/util/env.sh
   create scripts/util/install.sh
   create scripts/util/prod-commit.sh
   create scripts/util/prod-gitignore
   create scripts/util/prod-package.sh
   create scripts/util/prod-prepare.sh
   create scripts/util/setup-custom.sh
   create foo/__init__.py
   create foo/celery.py
   create foo/gunicorn.conf.py
   create foo/logger.py
   create foo/middleware.py
   create foo/schema.py
   create foo/settings.py
   create foo/tests.py
   create foo/urls.py
   create foo/wsgi.py
   create foo/static/index.html
   create .dockerignore
   create .editorconfig
   create .env.example
   create .npmignore

╭─    …/projects/foo 
╰─ ./scripts/setup.sh
* creating initial .env file
* install dev requirements
Courtesy Notice: Pipenv found itself running within a virtual environment, so it will automatically use that environment, instead of creating its own for any project. You can set PIPENV_IGNORE_VIRTUALENVS=1 to force pipenv to ignore that environment and create its own instead. You can set PIPENV_VERBOSITY=-1 to suppress this warning.
Installing dependencies from Pipfile.lock (a74bd1)…
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 71/71 — 00:00:08
* creating initial Procfile.dev file
* initialising the DB
The files belonging to this database system will be owned by user "wylesj".
This user must also own the server process.

The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory tmp/postgres ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok

WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    pg_ctl -D tmp/postgres -l logfile start

2019-05-25 01:05:30.623 PDT [19642] LOG:  listening on IPv6 address "::1", port 5433
2019-05-25 01:05:30.623 PDT [19642] LOG:  listening on IPv4 address "<IP_ADDRESS>", port 5433
2019-05-25 01:05:30.623 PDT [19642] LOG:  listening on Unix socket "/tmp/.s.PGSQL.5433"
2019-05-25 01:05:30.637 PDT [19644] LOG:  database system was shut down at 2019-05-25 01:05:30 PDT
2019-05-25 01:05:30.640 PDT [19642] LOG:  database system is ready to accept connections
CREATE ROLE
CREATE DATABASE
Loading .env environment variables…
Warning: There was an unexpected error while activating your virtualenv. Continuing anyway...
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying sessions.0001_initial... OK
* DB ready
2019-05-25 01:05:38.456 PDT [19642] LOG:  received smart shutdown request
* frontend already linked
2019-05-25 01:05:38.457 PDT [19642] LOG:  background worker "logical replication launcher" (PID 19650) exited with exit code 1
2019-05-25 01:05:38.457 PDT [19645] LOG:  shutting down
* git repo detected, won't commit anything automatically
* DONE :)
2019-05-25 01:05:38.492 PDT [19642] LOG:  database system is shut down

╭─    …/projects/foo 
╰─ docker-compose up
Creating network "foo_default" with the default driver
Building worker
Step 1/10 : FROM python:3.7
 ---> a4cc999cf2aa
Step 2/10 : ENV PIPENV_VENV_IN_PROJECT=1
 ---> Using cache
 ---> 9a6f935e8684
Step 3/10 : ENV PYTHONUNBUFFERED 1
 ---> Using cache
 ---> bb6e66a2a84c
Step 4/10 : RUN mkdir /code
 ---> Using cache
 ---> 79eed3bae9bc
Step 5/10 : WORKDIR /code
 ---> Using cache
 ---> 3ef30f14be2f
Step 6/10 : RUN pip install pipenv
 ---> Using cache
 ---> ed8d6a40d378
Step 7/10 : COPY Pipfile Pipfile
 ---> 7839a9e8e53b
Step 8/10 : COPY Pipfile.lock Pipfile.lock
 ---> 358cc4ef746b
Step 9/10 : RUN pipenv install --system --dev
 ---> Running in d9cdd9bf2375
Installing dependencies from Pipfile.lock (a74bd1)…
Ignoring appnope: markers 'sys_platform == "darwin"' don't match your environment
Looking in indexes: https://pypi.python.org/simple
Removing intermediate container d9cdd9bf2375
 ---> 0c03af0c3dcd
Step 10/10 : COPY . /code
 ---> fe8de0db8048
Successfully built fe8de0db8048
Successfully tagged foo:latest
WARNING: Image for service worker was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
Creating foo_db_1    ... done
Creating foo_cache_1 ... done
Creating foo_worker_1 ... done
Creating foo_cli_1    ... done
Creating foo_web_1    ... done
Attaching to foo_db_1, foo_cache_1, foo_worker_1, foo_web_1, foo_cli_1
db_1      | The files belonging to this database system will be owned by user "postgres".
db_1      | This user must also own the server process.
db_1      |
db_1      | The database cluster will be initialized with locale "en_US.utf8".
db_1      | The default database encoding has accordingly been set to "UTF8".
db_1      | The default text search configuration will be set to "english".
db_1      |
db_1      | Data page checksums are disabled.
cache_1   | 1:C 25 May 2019 08:06:57.441 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
cache_1   | 1:C 25 May 2019 08:06:57.441 # Redis version=5.0.5, bits=64, commit=00000000, modified=0, pid=1, just started
cache_1   | 1:C 25 May 2019 08:06:57.441 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
db_1      |
cache_1   | 1:M 25 May 2019 08:06:57.442 * Running mode=standalone, port=6379.
cache_1   | 1:M 25 May 2019 08:06:57.442 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
cache_1   | 1:M 25 May 2019 08:06:57.442 # Server initialized
cache_1   | 1:M 25 May 2019 08:06:57.443 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
worker_1  | Traceback (most recent call last):
worker_1  |   File "/usr/local/bin/celery", line 6, in <module>
db_1      | fixing permissions on existing directory /var/lib/postgresql/data ... ok
db_1      | creating subdirectories ... ok
cache_1   | 1:M 25 May 2019 08:06:57.443 * Ready to accept connections
db_1      | selecting default max_connections ... 100
db_1      | selecting default shared_buffers ... 128MB
db_1      | selecting dynamic shared memory implementation ... posix
worker_1  |     from pkg_resources import load_entry_point
worker_1  |   File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3241, in <module>
db_1      | creating configuration files ... ok
db_1      | running bootstrap script ... ok
db_1      | performing post-bootstrap initialization ... ok
worker_1  |     @_call_aside
worker_1  |   File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3225, in _call_aside
worker_1  |     f(*args, **kwargs)
worker_1  |   File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3254, in _initialize_master_working_set
worker_1  |     working_set = WorkingSet._build_master()
worker_1  |   File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 583, in _build_master
worker_1  |     ws.require(__requires__)
worker_1  |   File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 900, in require
worker_1  |     needed = self.resolve(parse_requirements(requirements))
worker_1  |   File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line 786, in resolve
worker_1  |     raise DistributionNotFound(req, requirers)
worker_1  | pkg_resources.DistributionNotFound: The 'celery' distribution was not found and is required by the application
db_1      | syncing data to disk ... ok
db_1      |
db_1      | Success. You can now start the database server using:
db_1      |
db_1      |     pg_ctl -D /var/lib/postgresql/data -l logfile start
db_1      |
db_1      |
db_1      | WARNING: enabling "trust" authentication for local connections
db_1      | You can change this by editing pg_hba.conf or using the option -A, or
db_1      | --auth-local and --auth-host, the next time you run initdb.
db_1      | waiting for server to start....2019-05-25 08:06:58.631 UTC [43] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
cli_1     | Traceback (most recent call last):
cli_1     |   File "manage.py", line 15, in <module>
cli_1     |     execute_from_command_line(sys.argv)
cli_1     |   File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 371, in execute_from_command_line
cli_1     |     utility.execute()
cli_1     |   File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 317, in execute
cli_1     |     settings.INSTALLED_APPS
cli_1     |   File "/usr/local/lib/python3.7/site-packages/django/conf/__init__.py", line 56, in __getattr__
cli_1     |     self._setup(name)
cli_1     |   File "/usr/local/lib/python3.7/site-packages/django/conf/__init__.py", line 43, in _setup
cli_1     |     self._wrapped = Settings(settings_module)
cli_1     |   File "/usr/local/lib/python3.7/site-packages/django/conf/__init__.py", line 106, in __init__
cli_1     |     mod = importlib.import_module(self.SETTINGS_MODULE)
cli_1     |   File "/usr/local/lib/python3.7/importlib/__init__.py", line 127, in import_module
cli_1     |     return _bootstrap._gcd_import(name[level:], package, level)
cli_1     |   File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
cli_1     |   File "<frozen importlib._bootstrap>", line 983, in _find_and_load
cli_1     |   File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
cli_1     |   File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
cli_1     |   File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
cli_1     |   File "<frozen importlib._bootstrap>", line 983, in _find_and_load
cli_1     |   File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
cli_1     |   File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
cli_1     |   File "<frozen importlib._bootstrap_external>", line 728, in exec_module
cli_1     |   File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
cli_1     |   File "/code/foo/__init__.py", line 5, in <module>
cli_1     |     from .celery import app as celery_app
cli_1     |   File "/code/foo/celery.py", line 3, in <module>
cli_1     |     from celery import Celery
cli_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:06:58 +0000] [1] [INFO] Starting gunicorn 19.9.0
web_1     | [2019-05-25 08:06:58 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:8000 (1)
web_1     | [2019-05-25 08:06:58 +0000] [1] [INFO] Using worker: sync
web_1     | [2019-05-25 08:06:58 +0000] [9] [INFO] Booting worker with pid: 9
web_1     | [2019-05-25 08:06:58 +0000] [9] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:06:58 +0000] [9] [INFO] Worker exiting (pid: 9)
db_1      | 2019-05-25 08:06:58.762 UTC [44] LOG:  database system was shut down at 2019-05-25 08:06:58 UTC
db_1      | 2019-05-25 08:06:58.768 UTC [43] LOG:  database system is ready to accept connections
web_1     | [2019-05-25 08:06:58 +0000] [1] [INFO] Shutting down: Master
web_1     | [2019-05-25 08:06:58 +0000] [1] [INFO] Reason: Worker failed to boot.
db_1      |  done
db_1      | server started
db_1      |
db_1      | /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*
db_1      |
db_1      | waiting for server to shut down...2019-05-25 08:06:58.821 UTC [43] LOG:  received fast shutdown request
db_1      | .2019-05-25 08:06:58.824 UTC [43] LOG:  aborting any active transactions
db_1      | 2019-05-25 08:06:58.826 UTC [43] LOG:  background worker "logical replication launcher" (PID 50) exited with exit code 1
db_1      | 2019-05-25 08:06:58.827 UTC [45] LOG:  shutting down
db_1      | 2019-05-25 08:06:58.840 UTC [43] LOG:  database system is shut down
db_1      |  done
db_1      | server stopped
db_1      |
db_1      | PostgreSQL init process complete; ready for start up.
db_1      |
foo_worker_1 exited with code 1
db_1      | 2019-05-25 08:06:59.012 UTC [1] LOG:  listening on IPv4 address "<IP_ADDRESS>", port 5432
db_1      | 2019-05-25 08:06:59.012 UTC [1] LOG:  listening on IPv6 address "::", port 5432
db_1      | 2019-05-25 08:06:59.016 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
db_1      | 2019-05-25 08:06:59.187 UTC [52] LOG:  database system was shut down at 2019-05-25 08:06:58 UTC
db_1      | 2019-05-25 08:06:59.193 UTC [1] LOG:  database system is ready to accept connections
foo_cli_1 exited with code 1
web_1     | [2019-05-25 08:07:01 +0000] [1] [INFO] Starting gunicorn 19.9.0
web_1     | [2019-05-25 08:07:01 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:8000 (1)
web_1     | [2019-05-25 08:07:01 +0000] [1] [INFO] Using worker: sync
web_1     | [2019-05-25 08:07:01 +0000] [9] [INFO] Booting worker with pid: 9
web_1     | [2019-05-25 08:07:01 +0000] [9] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:07:01 +0000] [9] [INFO] Worker exiting (pid: 9)
web_1     | [2019-05-25 08:07:01 +0000] [1] [INFO] Shutting down: Master
web_1     | [2019-05-25 08:07:01 +0000] [1] [INFO] Reason: Worker failed to boot.
foo_web_1 exited with code 3
web_1     | [2019-05-25 08:07:02 +0000] [1] [INFO] Starting gunicorn 19.9.0
web_1     | [2019-05-25 08:07:02 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:8000 (1)
web_1     | [2019-05-25 08:07:02 +0000] [1] [INFO] Using worker: sync
web_1     | [2019-05-25 08:07:02 +0000] [9] [INFO] Booting worker with pid: 9
web_1     | [2019-05-25 08:07:02 +0000] [9] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:07:02 +0000] [9] [INFO] Worker exiting (pid: 9)
web_1     | [2019-05-25 08:07:02 +0000] [1] [INFO] Shutting down: Master
web_1     | [2019-05-25 08:07:02 +0000] [1] [INFO] Reason: Worker failed to boot.
foo_web_1 exited with code 3
web_1     | [2019-05-25 08:07:05 +0000] [1] [INFO] Starting gunicorn 19.9.0
web_1     | [2019-05-25 08:07:05 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:8000 (1)
web_1     | [2019-05-25 08:07:05 +0000] [1] [INFO] Using worker: sync
web_1     | [2019-05-25 08:07:05 +0000] [8] [INFO] Booting worker with pid: 8
web_1     | [2019-05-25 08:07:05 +0000] [8] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:07:05 +0000] [8] [INFO] Worker exiting (pid: 8)
web_1     | [2019-05-25 08:07:05 +0000] [1] [INFO] Shutting down: Master
web_1     | [2019-05-25 08:07:05 +0000] [1] [INFO] Reason: Worker failed to boot.
foo_web_1 exited with code 3
web_1     | [2019-05-25 08:07:07 +0000] [1] [INFO] Starting gunicorn 19.9.0
web_1     | [2019-05-25 08:07:07 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:8000 (1)
web_1     | [2019-05-25 08:07:07 +0000] [1] [INFO] Using worker: sync
web_1     | [2019-05-25 08:07:07 +0000] [8] [INFO] Booting worker with pid: 8
web_1     | [2019-05-25 08:07:07 +0000] [8] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:07:07 +0000] [8] [INFO] Worker exiting (pid: 8)
web_1     | [2019-05-25 08:07:07 +0000] [1] [INFO] Shutting down: Master
web_1     | [2019-05-25 08:07:07 +0000] [1] [INFO] Reason: Worker failed to boot.
foo_web_1 exited with code 3
web_1     | [2019-05-25 08:07:10 +0000] [1] [INFO] Starting gunicorn 19.9.0
web_1     | [2019-05-25 08:07:10 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:8000 (1)
web_1     | [2019-05-25 08:07:10 +0000] [1] [INFO] Using worker: sync
web_1     | [2019-05-25 08:07:10 +0000] [8] [INFO] Booting worker with pid: 8
web_1     | [2019-05-25 08:07:10 +0000] [8] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:07:10 +0000] [8] [INFO] Worker exiting (pid: 8)
web_1     | [2019-05-25 08:07:10 +0000] [1] [INFO] Shutting down: Master
web_1     | [2019-05-25 08:07:10 +0000] [1] [INFO] Reason: Worker failed to boot.
foo_web_1 exited with code 3
web_1     | [2019-05-25 08:07:14 +0000] [1] [INFO] Starting gunicorn 19.9.0
web_1     | [2019-05-25 08:07:14 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:8000 (1)
web_1     | [2019-05-25 08:07:14 +0000] [1] [INFO] Using worker: sync
web_1     | [2019-05-25 08:07:14 +0000] [9] [INFO] Booting worker with pid: 9
web_1     | [2019-05-25 08:07:14 +0000] [9] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:07:14 +0000] [9] [INFO] Worker exiting (pid: 9)
web_1     | [2019-05-25 08:07:14 +0000] [10] [INFO] Booting worker with pid: 10
web_1     | [2019-05-25 08:07:14 +0000] [10] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:07:14 +0000] [10] [INFO] Worker exiting (pid: 10)
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 203, in run
web_1     |     self.manage_workers()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 545, in manage_workers
web_1     |     self.spawn_workers()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 617, in spawn_workers
web_1     |     time.sleep(0.1 * random.random())
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 245, in handle_chld
web_1     |     self.reap_workers()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 525, in reap_workers
web_1     |     raise HaltServer(reason, self.WORKER_BOOT_ERROR)
web_1     | gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
web_1     |
web_1     | During handling of the above exception, another exception occurred:
web_1     |
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/bin/gunicorn", line 10, in <module>
web_1     |     sys.exit(run())
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 61, in run
web_1     |     WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 223, in run
web_1     |     super(Application, self).run()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 72, in run
web_1     |     Arbiter(self).run()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 232, in run
web_1     |     self.halt(reason=inst.reason, exit_status=inst.exit_status)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 345, in halt
web_1     |     self.stop()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 393, in stop
web_1     |     time.sleep(0.1)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 245, in handle_chld
web_1     |     self.reap_workers()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 525, in reap_workers
web_1     |     raise HaltServer(reason, self.WORKER_BOOT_ERROR)
web_1     | gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
foo_web_1 exited with code 1
web_1     | [2019-05-25 08:07:21 +0000] [1] [INFO] Starting gunicorn 19.9.0
web_1     | [2019-05-25 08:07:21 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:8000 (1)
web_1     | [2019-05-25 08:07:21 +0000] [1] [INFO] Using worker: sync
web_1     | [2019-05-25 08:07:21 +0000] [9] [INFO] Booting worker with pid: 9
web_1     | [2019-05-25 08:07:21 +0000] [9] [ERROR] Exception in worker process
web_1     | Traceback (most recent call last):
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
web_1     |     worker.init_process()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
web_1     |     self.load_wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
web_1     |     self.wsgi = self.app.wsgi()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
web_1     |     self.callable = self.load()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
web_1     |     return self.load_wsgiapp()
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
web_1     |     return util.import_app(self.app_uri)
web_1     |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
web_1     |     __import__(module)
web_1     |   File "/code/foo/__init__.py", line 5, in <module>
web_1     |     from .celery import app as celery_app
web_1     |   File "/code/foo/celery.py", line 3, in <module>
web_1     |     from celery import Celery
web_1     | ModuleNotFoundError: No module named 'celery'
web_1     | [2019-05-25 08:07:21 +0000] [9] [INFO] Worker exiting (pid: 9)
web_1     | [2019-05-25 08:07:22 +0000] [1] [INFO] Shutting down: Master
web_1     | [2019-05-25 08:07:22 +0000] [1] [INFO] Reason: Worker failed to boot.
foo_web_1 exited with code 3

Hi @johnwyles, sorry for neglecting this for a long while. Honestly, I haven't been using Django much lately, so I didn't really have time to maintain this project. I'm planning some Django-based activities in 2020 again, so I'm brushing up on this once more 🙂.
To address your issue in specific, It seems that Celery was temporarily broken (I had to install it from master). Since then, I've bumped all the package versions and it appears this is since fixed.
I've bumped the packages to Django 3.0 and the latest Whitenoise and Django-SPA (though I think I found a workaround to use Whitenoise directly, without having to monkey-patch anything with my Django-SPA package).
I've disabled the docker test, but I can locally start the server with docker-compose up. A newer version is published on npm.


Fix incorrect shorthand autocorrections in calls inside parentheses

If you happen to have a method call without parentheses that is inside outer parentheses like the following example:
(create :integration_shop, account: account)
pass

We would have still thought that we need to add parentheses to the create call during Style/HashSyntax autocorrection like so:
(create(:integration_shop, account:))
pass

While this is not a problem in isolation, it can lead to invalid Ruby autocorrections when Style/HashSyntax is used in combination with Style/RedundantParentheses (enabled by default) and Style/MethodCallWithArgsParentheses (disabled by default) with EnforcedStyle: omit_parentheses:
AllCops:
  TargetRubyVersion: 3.1
Style/HashSyntax:
  EnforcedShorthandSyntax: always
Style/RedundantParentheses:
  Enabled: true
Style/MethodCallWithArgsParentheses:
  Enabled: true
  EnforcedStyle: omit_parentheses

I have two problematic examples:
1.
receipt = create :receipt, account: account, integration_shop: (create :integration_shop, account: account)
pass

Autocorrects to broken Ruby like so:
receipt = create :receipt, account:, integration_shop: create :integration_shop, account:
pass

This happens because Style/HashSyntax puts parentheses in (create(:integration_shop, account:)), which then gets autocorrected by Style/MethodCallWithArgsParentheses to (create :integration_shop, account:) that finally gets processed by Style/RedundantParentheses to create :integration_shop, account:.
2.
bank_transaction_ids = (MatchBankTransactionsToCosts.execute object, bank_account: bank_account).keys
pass

Gets autocorrected to:
bank_transaction_ids = MatchBankTransactionsToCosts.execute object, bank_account:.keys
pass

The reason is the same, the unforunate play between Style/HashSyntax, Style/MethodsAcceptingSymbol with EnforcedStyle: omit_parentheses and Style/RedundantParentheses.
An fix is not to parenthesize the calls with value omission if they are inside parentheses. That's one of the drawbacks of omitting parentheses, sometimes folks decide to put them in funny places like around a method call.

Thanks!


[FEATURE] Save and Recall The Users Set GUI Size in Any DAW

It would be great if the developer can add the feature to allow the users preferred GUI size to be saved as either default in any DAW and for the current saved size of the plugin interface to be recalled when opening DAW projects.
Feature Request specifics:

Save NAMS GUI size as a default preset
Recall NAMS last saved GUI size when reopening DAW projects

Related curious question: are you finding it to be too small, or too big? (I assume this is because you're not happy with the default size.)

Related curious question: are you finding it to be too small, or too big? (I assume this is because you're not happy with the default size.)

Related curious question: are you finding it to be too small, or too big? (I assume this is because you're not happy with the default size.)

I have windows scaled up to 125% on 2k screen. It's just a bit too small and seeing it's resizable it would certainly enhance the user experience if the size could recall or save to the users preference :)

No, you can do that in iPlug2, but we don't do it by default:
https://gist.github.com/olilarkin/02a0618cde48f80e22f329513c044e5c


Add extensions support in Reader

There's no actually support to extensions annotation in Reader.
The extensions might be in every element of the Specification.

Q
A

Bug or feature request?
Feature Request

Which Swagger-Core version?
2.0

Which Java version?
1.8

Which JAX-RS framework & version?
2

Added in this PR: https://github.com/swagger-api/swagger-core/pull/2609


Npx support.

In order to allow extension developers to use the sandbox with npx and without a package.json, we can't really require that they have Turbine installed as a peer dependency. If I recall correctly, Turbine was marked as a peerDependency previously because we were also using Turbine from our internal extension-support-testrunner when we had our iframe-based tests, which is no longer the case.

I'm going to work on updating the readme, but feel free to review in the meantime.

I've updated the readme.


OCPBUGS-6944: recovery: Update container checks in upgrade-recovery.sh

The upgrade-recovery.sh tool uses "crictl ps" to check container status, but the format of the ps output has been updated. Rather than screen-scraping for a specific column, this update changes the script to use "crictl ps -o json", using "jq" to pull the desired data from the output.
Signed-off-by: Don Penney<EMAIL_ADDRESS>/cc @jc-rh @Missxiaoguo @sabbir-47

/jira refresh

/approve

/override ci/prow/integration

/cherrypick release-4.12

/cherrypick release-4.12


build: update dependencies to latest

I'm going ahead and merging the above w/o review since I need everything to be on the latest versions of node and such for me to fix the pipelines / GCP side of things for the bot.


Add illustrations to the warning pop-ups

We have many different possible warnings.
When uploading many pictures very quickly, there can be popup fatigue, meaning the user does not even read the message anymore.
If there was an illustration in the popup, the user would more reliably recognize the warning even at high speeds. For instance, in the middle of uploading 100 pictures without EXIF, the user would still react correctly if a "already on Commons" popup suddenly shows up, and would not skip it mechanically.
The illustrations should be compatible with our license, public domain is fine.

I'm a computer science major interested in contributing to open source. Could you assign this issue to me?

@dohyun123 Sorry would you mind using the "unassigned bug" link at https://github.com/commons-app/commons-app-documentation/blob/master/android/Volunteers-welcome!.md#developers to find an issue to work on? Thanks a lot! :-)

Anyone willing to draw such illustrations?
If not, anyone opposed to generating these illustrations with GenAI?

Feel free to post your illustrations as comments below.
If your own work, please also write "I release these illustrations to public domain" (or Apache license 2.0).
If using GenAI, please link to the tool you used and write your prompts, so that we can generate similar looking ones in the future.
Thanks a lot!


chore(main): release vpc-endpoint 0.1.0

:robot: I have created a release beep boop
0.1.0 (2024-10-05)
Features

vpc-endpoint: add a module that creates a vpc endpoint (#13) (6ed5e32)

This PR was generated with Release Please. See documentation.

🤖 Created releases:

vpc-endpoint-v0.1.0

:sunflower:


Problem with WiFi setup (MEGH-4722)

Answers checklist.

[X] I have read the Rainmaker documentation and the issue is not addressed there.
[X] I have updated my IDF branch (release/vX.Y) to the latest version and checked that the issue is present there. This is not applicable if you are using Rainmaker with Arduino.
[X] I have searched the Rainmaker forum and issue tracker for a similar issue and not found a similar issue.

IDF / ESP32-Arduino version.
ESP- Arduino 2.0.9
Operating System used.
macOS
How did you build your project?
Arduino IDE
Development Kit.
ESP-WROOM-32
What is the expected behavior?
I try to use the rainmaker software on a device. I used the switch example. I expected in installs correctly
What is the actual behavior?
It is compiling and loading correctly, producing the QR-code. When using the QR-code to setup the device, the Rainmaker app is connecting, and I chose the correct network and pwd, but at the second item (confirming network) it reacts with: WiFi-status: authentication error.
Steps to reproduce.

Step compiling the switch example
Step uploading to device
Step getting QR-code
Step Using Rainmaker app (on IOS)
Step App is connecting
Step I choose the right Wifi network and pwd
Step at the second item (confirming network) it reacts with: WiFi-status: authentication error.
...

Debug Logs.
No logs

More Information.
No

WiFi-status: authentication error is indeed received if there is Wi-Fi authentication failure. On your device serial terminal, do you see that the device eventually connected to the AP, or does it just indicate error? Does your access point have any additional settings which may disallow new devices to join directly? Can you try with a different access point, may be a simple hotspot?

Thanks for your response.
I am afraid something wrong with the device. Bought three of them together,
but none of them works. Tried to establish connection to the WiFi with the
simple ESP32 WiFi example (hard coding the WiFi credentials, but that also
didn't work (see attachment; I disguised my SSID and BSSID in the output).
What is your opinion?
On Thu, 15 Jun 2023 at 11:04, Piyush Shah @.***> wrote:

WiFi-status: authentication error is indeed received if there is Wi-Fi
authentication failure. On your device serial terminal, do you see that the
device eventually connected to the AP, or does it just indicate error? Does
your access point have any additional settings which may disallow new
devices to join directly? Can you try with a different access point, may be
a simple hotspot?
—
Reply to this email directly, view it on GitHub
https://github.com/espressif/esp-rainmaker/issues/270#issuecomment-1592654548,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKQTGRU7XIKU56R4HGVUVPDXLLFZXANCNFSM6AAAAAAZGJAN44
.
You are receiving this because you authored the thread.Message ID:
@.***>

An update: after erasing all flash with esptool, now rainmaker is working!
Thanks for your attention.
On Thu, 15 Jun 2023 at 15:44, Theo van der Krogt @.***>
wrote:

Thanks for your response.
I am afraid something wrong with the device. Bought three of them
together, but none of them works. Tried to establish connection to the WiFi
with the simple ESP32 WiFi example (hard coding the WiFi credentials, but
that also didn't work (see attachment; I disguised my SSID and BSSID in the
output).
What is your opinion?
On Thu, 15 Jun 2023 at 11:04, Piyush Shah @.***>
wrote:

WiFi-status: authentication error is indeed received if there is Wi-Fi
authentication failure. On your device serial terminal, do you see that the
device eventually connected to the AP, or does it just indicate error? Does
your access point have any additional settings which may disallow new
devices to join directly? Can you try with a different access point, may be
a simple hotspot?
—
Reply to this email directly, view it on GitHub
https://github.com/espressif/esp-rainmaker/issues/270#issuecomment-1592654548,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKQTGRU7XIKU56R4HGVUVPDXLLFZXANCNFSM6AAAAAAZGJAN44
.
You are receiving this because you authored the thread.Message ID:
@.***>


Voltage and current requirements table for power management solution

Add a file named PowerManagement.md into DragonHelmet/ directory.
Include the voltage and current requirements of each single component as a table inside PowerManagement.md file. Like this:

Component
Input Voltage
Max. Load

DLP® LightCrafter Display 3010 EVM
5V
2.6A

Standard speaker
3.3V
1A

MOXA EDS-205 Entry-level Unmanaged Ethernet Switch
5.V
2A

etc... (values inside the table are figurative)
How to create tables in Markdown

I'm thinking I need to learn a bit more about all these tools you guys are using to work on this thing. The thing I noticed early on in examining your design is that most every component runs at 5V. I think you should restrict that. Can't be that hard to find a few alternatives to the things which are not 5V. Failing that, it shouldn't be that hard to power a few odd things at a lower voltage. (Like speakers. Might want independent power for those.)

@gallomimia even though 5V looks like the standard for most the parts, necessary current is differs substantially. Someone should do a study and come up with the data.


chore(engines): engines が古かったので更新

Warnings

:warning:
Please include a description of your PR changes.

Messages

:book:
PR Title: chore(engines): engines が古かったので更新

  Generated by :no_entry_sign: dangerJS against 027327b1e944cc7a12c902a2b7d6ae4851b9bf81

:tada: This PR is included in version 1.7.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Hyperiond leaks file handles

If you repeatedly relaunch effects, you'll see lots of .py files left open
How hard would it be to completely re-init the Python engine every time an effect is started ?
This would probably make my clock effect Python 3 PIL library crash problem go away.
It would be even better if we could isolate a Python crash from taking out hyperiond too

Good question. I will investigate ...

please check if this helps:
effect.cpp line 117
fclose(file);
for me it worked ....

@penfold42 can you verify if file handles where closed with with my suggested modifikation.

Will try It over the weekend

Isolating is perhaps not possible, because py script is compiled to binary object during load. The binary code is not separated from hyperion code.
One solution can be that the effects engine is started as a process (fork) instead of thread. Ipc to hyperion can be made via proto.
Then hyperion core won't crash if effect crash and we can separate the code to be more flexible.

I really like this idea - it also stops rogue Python scrips dragging hyperiond to its knees.
How hard would it be to implement ?
I think it will become more important as people bios fancier effect scrips

I think it is manageable. Following steps could be a solution:
First clone src/hyperion-x11 to hyperion-effect and remove x11 grabber code. Then extract effect code and integrate it in hyperion-effect. Add command line options to hyperion-effect.
In hyperiond in the place where effects are started make a fork logic like in hyperiond.cpp for the forwarder thing. Then call new hyperion-effect with effect name and effect path as argument. dont forget to save the  child pid.

Not a 5 minute task, but it's managebale. When we have that, then we can remove the grabber code from hyperiond in the same way. Then we have a slim hyperion-core :-)
For the roadmap: perhaps in hyperion 3? hyperion 2 should move all stuff to qt5

Are we talking about web browser versions or is there a feature level in between?
I didn´t thought to release v2 earlier than 2 or 3 months in future (or more - no deadline).
So just add it to v2 too? v2 breaks anything with some things, no reason to move that fast to release a v3 in 6 months?

After the last release now i cleanup the repo history and than we proceed with v2

We have a lot of numbers between 1.03 and 2.00 !
I'd rather change lots of things like that  break backward compatibility (where we have to) at the same time  in a single major version jump.
Old transforms, qt4, old UDP driver, old effect engine, old git  history old grabber architecture and anything we want to deprecate now should all be done in v2 if we can
With the proposed separate process,is ther a way to gracefully terminate the effect ? Would we simply signal the child process nicely as a replacement for Hyperion.abort ?

To move faster forward we close V1 now, i test currently the last things and push afterwards a new release.
as you listed above there is enough we need to clean up and change. To get a better base (qt5,...) we move immediately to up2date versions of most libs.
I don´t want that the devs (you) waste time to just keep something outdated running (and "hack down" features just to get it)

Hi @penfold42, did you try the patch regarding open file handlers? Would be nice if we can close this issue, because a daemon eating handles isn't funny

@penfold42 ?

I tested it with hyperion-ng and it seems to be fine!
I used hyperion-remote to repeatedly change the effects:
while true; do hyperion-remote -a loungepi:19444 -e "Knight rider" ; hyperion-remote -a loungepi:19444 -e "Cold mood blobs"; done
While its running i changed the file handles with ls -l /proc/32573/fd
There were never more 1 .py file opened.
I did notice memory usage slowly increasing, (as reported by top). I dont know if its a memory leak per se or simply because the new request is needs some malloc before the old ones are freed


Does react-list work with react-motion TransitionMotion?

I want to be able to animate in-out, swapping places, and moving items between lists. I'm trying to figure out the best way to handle the more complex cases and was trying to see if react-motion might work for me.

Interested in this as well.


(0.14.1) https_total_latencies_bucket value discrepancy between Grafana and GCP

Hello, recently we noticed that values exported by the exporter and the ones in GCP don't match, the metric labels (including bucket lengths) match but the values themselves don't, even when identical queries are used within GCP.
Visually the graphs sometimes match (even with wrong values exported) when there are spikes but the data itself still isn't correct.
Query used in Grafana:
histogram_quantile(0.99,sum by (le)(increase(stackdriver_https_lb_rule_loadbalancing_googleapis_com_https_total_latencies_bucket{target_proxy_name=~"**REDACTED**"}[1m])))
Query used in GCP:
histogram_quantile(0.99,sum by **(le)(increase(loadbalancing_googleapis_com:https_total_latencies_bucket{target_proxy_name=~"REDACTED"}[1m])))

👋 I do believe this should be resolved now as of 0.15.1 which included a bugfix for histograms https://github.com/prometheus-community/stackdriver_exporter/releases/tag/v0.15.1


Add devcontainer spec

Very selfish PR here: I only brought my iPad with me on my trip, so I can’t contribute unless I do it through Codespaces 😛
This adds a container spec that includes R, Quarto, a few R packages (mostly just tidyverse and sf, as I was hoping to add a map example as well as a palmer penguins chart example) and other (imo) essentials for VSCode container work, like httpgd (for SVG chart previews).
Unfortunately I can’t get the port forwarding to work on my iPad on the train (it usually works fine though), so I can’t preview my work, but it’s a start!

I don't think I can make this a draft on my phone, but probably no need to merge this (at least for now)! I just set it up on a branch so I could develop from Codespaces!

Hah, very clever! I was wondering what that comment about an iPad was in email...


Generalized BuildTracker

There are a class of cases where object Foo is watching object Bar and we want to trigger level-based reconciliation of Foo when Bar changes.  There are two cases of this in knative/serving today:

Revision -> Build, which is done via the specialized build tracker (see https://github.com/knative/serving/issues/1267)
Route -> Configuration, which is done by relying on the labels we introduced for enforcing 1:N and hope to retain the capacity to relax (see https://github.com/knative/serving/issues/1495).

The former is complicated by our desire to loosen the coupling between our repos.

We effectively want a generalized Tracker that during reconciliation enables us to create edges from corev1.ObjectReference to a key that should be enqueued for reconciliation.
For where we are with Revision -> Build (with spec.buildName) we can use something like:
tracker.Track(corev1.ObjectReference{
  APIVersion: "build.knative.dev/v1alpha1",
  Kind: "Build",
  Namespace: rev.Namespace,
  Name: rev.Spec.BuildName,
}, rev)

For where we want to go (with spec.buildRef) we can use something like:
buildRef := rev.Spec.BuildRef.DeepCopy()
buildRef.Namespace = rev.Namespace
tracker.Track(buildRef, rev)

For Route -> Configuration and Revision we want something similar to what's outlined for Build where we are today, but needs some facility for aging out records (effectively requiring resyncs to refresh leases).

I'm going to experiment with usable APIs for this, and circle back here to summarize anything I come up with that I like.
cc @tcnghia @imikushin

So here's what I'm thinking:
package tracker

// Interface defines the interface through which an object can register
// that it is tracking another object by reference.
type Interface interface {
        // Track tells us that "obj" is tracking changes to the referenced object.
        Track(ref corev1.ObjectReference, obj interface{}) error

        // OnChanged is a callback to register with the InformerFactory
        // so that we are notified for appropriate object changes.
        OnChanged(obj interface{})
}

// New returns an implementation of Interface that lets a Reconciler
// register a particular resource as watching an ObjectReference for
// a particular lease duration.  This watch must be refreshed
// periodically (e.g. by a controller resync) or it will expire.
//
// When OnChanged is called by the informer for a particular
// GroupVersionKind, the provided callback is called with the "key"
// of each object actively watching the changed object.
func New(callback func(string), lease time.Duration) Interface {
  ...
}

To use this with a typical informer, e.g. the way Route would monitor Configurations and Revisions, you'd do something like:
	c := &Reconciler{
		Base:                 reconciler.NewBase(opt, controllerAgentName),
		...
	}
	impl := controller.NewImpl(c, c.Logger, "Routes")

        t := New(impl.EnqueueKey, 30*time.Minute)
        configInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{
                AddFunc:    t.OnChanged,
                UpdateFunc: controller.PassNew(t.OnChanged),
        })
        revisionInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{
                AddFunc:    t.OnChanged,
                UpdateFunc: controller.PassNew(t.OnChanged),
        })

        // Now use c.tracker.Track(revisionRef, route) or c.tracker.Track(configRef, route)
        // each Reconcile(route) to refresh the cross-object leases.
        c.tracker = t

To use this with a duck.InformerFactory, e.g. the way Revision will monitor BuildRefs you'd do something like:
	c := &Reconciler{
		Base:             reconciler.NewBase(opt, controllerAgentName),
		...
	}
	impl := controller.NewImpl(c, c.Logger, "Revisions")

        t := New(impl.EnqueueKey, 30*time.Minute)
        cif := &duck.CachedInformerFactory{
                Delegate: &duck.EnqueueInformerFactory{
                        Delegate: buildInformerFactory,
                        EventHandler: cache.ResourceEventHandlerFuncs{
                                AddFunc:    t.OnChanged,
                                UpdateFunc: controller.PassNew(t.OnChanged),
                        },
                },
        }

        // Now use: `c.buildInformerFactory.Get()` to access ObjectReferences.
        c.buildInformerFactory = buildInformerFactory

        // Now use: `c.tracker.Track(rev.Spec.BuildRef, rev)` to queue `rev`
        // each time `rev.Spec.BuildRef` changes (expires 30 minutes after BuildRef
        // points to something else).
        c.tracker = t


WIP Continuous Integration

Changes description
Integrate Circle CI
Checklist
Please check if your PR fulfills the following specifications:

[ ] Tests for the changes have been added
[ ] Docs have been added/updated

References

Closes #N/A

PR Duplicate.
Ref: https://github.com/TECLIB/fastlane-plugin-xcov_report/pull/19


Provide SUSE installer

With CentOS7 being replaced with openSUSE, we need to migrate alongside what is being hosted on Casper and Derecho.

Installer has been added to 3.9.0 release.


Have UserNotificationCondition and RemoteNotificationCondition been deprecated?

I'm migrating a project from Swift 2.2 to 3. In the Operations framework, it made use of UserNotificationCondition and RemoteNotificationCondition. These aren't currently present in ProcedureKit, are there any plans to reintroduce them?
Are there any tips on migrating custom conditions from Operations to ProcedureKit?

@Utsira: You are correct, those Conditions haven't made the cut. @danthorpe might have some more ideas as to why and whether they will be reintroduced.
As for migrating custom conditions from Operations 3.x to ProcedureKit 4.x, here's a quick review of some of the key changes: https://github.com/ProcedureKit/ProcedureKit/pull/681 (Look under "Breaking Changes (from prior ProcedureKit v4 betas)")

Hi @Utsira - yeah, unfortunately, these conditions didn't quite make it to ProcedureKit or rather (ProcedureKitMobile). Partly this was just a perceived lack of priority on my part (I got the sense that they are rarely used), and also, I didn't really like how they were implemented from a testability point of view.
However, I'm not adverse to the functionality coming back, its just that we don't have the time to work on it at the moment. But pull requests are welcome!!
Also, to add to the above, @swiftlyfalling has written about migration in the wiki: Migrating from Operations.

@Utsira for your own project however, it should be relatively straightforward to include the UserNotificationCondition etc from Operations in your own project and migrate it as a ProcedureKit condition. This could even form the basis of a pull-request.


Mitmproxy interferes with some downloads and streaming

Problem Description
Using mitmproxy when streaming or downloading some things, like watching media from the Jellyfin demo server, downloading from Onedrive, uploading to Youtube and downloading from Github, causes the operations to stall.
Steps to reproduce the behavior:

Setup mitmproxy
Do any of the activities listed above
See that they can't be done

System Information
Mitmproxy: 7.0.4
Python:    3.9.7
OpenSSL:   OpenSSL 1.1.1l  24 Aug 2021
Platform:  Linux-5.15.1-1-ARCH-aarch64-with-glibc2.32
This can also be due to my script -- maybe there's an issue with it:
from mitmproxy import http
from datetime import datetime
from bs4 import BeautifulSoup

def response(flow: http.HTTPFlow):
    if flow.request.headers['accept'].startswith('text/html,application/xhtml+xml,application/xml'):
        soup=BeautifulSoup(flow.response.content)
        file=str(datetime.fromtimestamp(int(flow.response.timestamp_start))).split(' ')[0]
        with open('../logs/ '[:-1]+file,'a+') as f:
            f.write(str(datetime.fromtimestamp(int(flow.response.timestamp_start)))+ ' '+soup.title.string+' '+str(flow.request.url)+'\n\n')

Thanks to #3242, I've learned it's probably because of the fact that mitmproxy is trying to cache all requests -- for large requests or for that which is streamed, it will take a while to actually get it all, so it delays the sending. Setting --set stream_large_bodies=1 fixed the problem.

Is there a way to set the proxy to stream the connection if it is a download or stream? I'm still running into issues at a few points.

See https://docs.mitmproxy.org/stable/overview-features/#streaming.


Positional Tracking for PC HMD without camera (Deepoon and Pimax)

Please, how use PsMoveService for Postional Tracking with HMD like Deepoon or Pimax (without camera).
I read wiki and see that Ps Move used only for vive controllers, but not as Positional Tracking Camera.
3rd Ps Move used only with PS Move FreePie Bridge but Vridge translate PS Move data to SteamVR, not PS Move Service.
All video and tutorial about 3 PS Move not work!! its only for Cardboard Users.
Please Help!!!

You seem very confused. It is impossible to get positional tracking without a camera. It is also impossible to use a PS Move controller for positional tracking without a camera.

Just to be a pedant... there are magnetic position tracking systems that don't use cameras (e.g., Polhemus, Razer Hydra). But I'm pretty sure that's not the topic of this post.
@vrman66 , this isn't the appropriate forum for this type of message. Please try the google group first: https://groups.google.com/forum/#!forum/psmoveservice


Removed constexpr requirement for glz::schema fields and cleaned JSON schema code

@jbbjarnason, since you helped so much with this, I wanted to let you know that I've dropped the constexpr construction requirement on glz::schema, this means that we can now use std::vector rather than std::span and it makes including examples and other unknown array length fields easier.

Hmm, I'm not sure why GCC is failing this when clang works


[GLUTEN-547] Resolve Jar dependency that conflicts with Apache Spark

What changes were proposed in this pull request?
this PR proposes to shade protobuf in gluten core to avoid the protobuf version conflicts with what is shipped with Spark distro
How was this patch tested?
(Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
test in our prod env
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this)

@FelixYBW @zhztheplayer @zhejiangxiaomai @PHILO-HE

The CI check failure is caused by other commit and has been fixed. Please rebase your branch. Thanks!

after rebasing, it failed in other places, update branch again...

CI's integrating testing is looking for a bundle jar gluten-package-1.0.0-SNAPSHOT.jar, which was installed during Gluten's mvn install. Please ensure the jar is still generated, or update the bundled jar dependency of integrating testing tool gluten-it.

Also we need to update doc:
https://github.com/oap-project/gluten#35-jar-conflicts

sorry for being late, will come back to this soon, just stuck at my daily jobs

ok, so after trying different things, I come up with the following solution

build shade jar but with the name of gluten-package-1.0.0-SNAPSHOT.jar, this will be a uber jar containing everything and will be published to local maven
I also use exec-maven plugin to make a copy of gluten-package-1.0.0-SNAPSHOT.jar to ${jar.assembly.name.prefix}-spark${sparkbundle.version}_${scala.binary.version}-${project.version}-jar-with-dependencies.jar ....this is to be consistent with the original artifact generated by assembly plugin, just in case someone relies on that file name to do anything
change gluten-it by removing  in pom.xml, so it will refer to the jar generated in 1 correctly

Thanks @CodingCat !


Balance off because of Pending Ecash transactions sent.

Hi I've been testing this walet between cashu.me web wallet and minibits android app (0.1.10-beta.2) using the same mint Minibit. It's fairly buggy on wallet balance. One specific issue I often see is when I send ecash that is then claimed by the cashu wallet. The transaction rarely show up as completed in the Minibits wallet. This causes the balance to be wrong since you don't have an "available" balance number under the main to show pending transactions. Perhaps add this. The reverse transaction of ecash from cashu.me to minibits always appears to complete normally. No hung transactions. For the minibits to cashu.me stuck pending transactions I clear it with Settings > Backup and recovery > Remove spent ecash. I'm not sure if that checks the ecash or if it just tags all pending as spent. Perhaps have that run automatically or add a refresh button to the main or transaction screen ?
I can repeat this behavior constantly. Minibits to Cashu.me always seem to stay as pending.

Thank you for reporting. I was able to simulate the issue and there is indeed a regression bug introduced with recent changes.
It causes that pending proofs that change their status to spent lose reference to the transaction they belong to.
Will work on that and fix it.
It should not cause any loss of ecash in the meantime.
Will provide more info on how to clear already impacted transactions alongside I publish the fix.
Thanks for reporting!

There is an over-the-air update with the fix available.
To clean stuck pending transactions please do the following - make sure that you DO NOT have valid pending transaction at the time:

Settings > Developer options > Force delete pending
Settings > Developer options > Resync transactions
Settings > Recovery > Remove spent ecash
Restart the wallet

Seems to be working fine now. sends back and forth from cashu.me work. It doesn't seem to update right away with shopstr but they don't support the new cashuB format and I send a old format cashuA token available from the ecash send screen. It did update after a few receives from other wallets/same mint later.


working to display seasoning. it is being loaded into the DB but is n…

…ot displaying. possibly need to add it to cart display component, using same method for producthome. Calling props of components and so forth.

Files changed are--- add another HttpGet to Seasonings Controller to display product. Add a fetch to the product home component and load it within the return calling cartDisplay. Still need to add a fetch data to CartDisplay in order to display properly. Currently, productHomeController is display Seasonings to show that it is loading in the DB, it will need to be reverted back popcorn.


TypeError: Expected int32, got <tf.Variable 'graphconvolution_1_W:0' shape=(8285, 16) dtype=float32_ref> of type 'Variable' instead.

sorry
run train.py  and this is the error
Traceback (most recent call last):
File "/home/bfs/NEW_LAB/relational-gcn-master/rgcn/train.py", line 92, in
W_regularizer=l2(L2))([X_in] + A_in)
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/keras/engine/topology.py", line 548, in call
self.build(input_shapes)
File "build/bdist.linux-x86_64/egg/rgcn/layers/graph.py", line 69, in build
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/keras/backend/tensorflow_backend.py", line 1427, in concatenate
return tf.concat(axis, [to_dense(x) for x in tensors])
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/tensorflow/python/ops/array_ops.py", line 1096, in concat
dtype=dtypes.int32).get_shape().assert_is_compatible_with(
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 836, in convert_to_tensor
as_ref=False)
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 926, in internal_convert_to_tensor
ret = conversion_func(value, dtype=dtype, name=name, as_ref=as_ref)
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/tensorflow/python/framework/constant_op.py", line 229, in _constant_tensor_conversion_function
return constant(v, dtype=dtype, name=name)
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/tensorflow/python/framework/constant_op.py", line 208, in constant
value, dtype=dtype, shape=shape, verify_shape=verify_shape))
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/tensorflow/python/framework/tensor_util.py", line 383, in make_tensor_proto
_AssertCompatible(values, dtype)
File "/home/bfs/miniconda3/envs/py27tf14_rgcn/lib/python2.7/site-packages/tensorflow/python/framework/tensor_util.py", line 303, in _AssertCompatible
(dtype.name, repr(mismatch), type(mismatch).name))
TypeError: Expected int32, got <tf.Variable 'graphconvolution_1_W:0' shape=(8285, 16) dtype=float32_ref> of type 'Variable' instead.
Process finished with exit code 1

Hi! have you solved this problem?

yes, thank you so much!
sorry to reply so late.
------------------ 原始邮件 ------------------
发件人:                                                                                "tkipf/relational-gcn"                                                                                @.>;
发送时间: 2022年6月9日(星期四) 晚上8:52
@.>;
<EMAIL_ADDRESS>主题: Re: [tkipf/relational-gcn] TypeError: Expected int32, got <tf.Variable 'graphconvolution_1_W:0' shape=(8285, 16) dtype=float32_ref> of type 'Variable' instead. (Issue #25)
Hi! have you solved this problem?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

Hello, I have the same problem as you.  May I ask how you solved it?


Upgrade website to Docusaurus using webpack 5

Summary
Test upgrade to latest canary of Docusaurus using Webpack 5 (https://github.com/facebook/docusaurus/pull/4089)
This should speed up build times significantly thanks to the new persistent caching system
Test plan
preview

The speed improvements are not so significant in the deploy preview (as we only build for English and most of the time is spent for yarn install etc) but we still see some benefits:

I think it will be much more noticeable in prod site.

ready :)


Background center

Could you add background-position: center to the CSS (.lazyframe) for the cover image? Otherwise the cover image doesn't look great in some situations, like with the following code:

Results in this:

With background-position: center applied, it looks correct as below:

Matt

Hi Matt,
That seems like a legit suggestion. Would you like to submit a pull request?

PR welcome


Serve non-web actions, but output warning that this will not work whe…

…n deployed

Description

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have signed the Adobe Open Source CLA.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

I'm not sure I agree with this - there's a reason why it returns 401, this is for verification that it behaves the same as the production Runtime.

This is the reason for the e2e tests - so when we add features/changes, we can verify it behaves/responds the same as production Runtime (simulate) - this change will affect these tests. An info log has a high likelihood to be forgotten. If this is to be allowed, it should be an exception -- via a flag.

@theManikJindal @pru55e11

One of the alternatives suggested by @moritzraho is, you can access a non-web action via http if you pass in the runtime credentials (this should work in prod Runtime) but of course in local dev, it can be a no-op (you just pass in the right header, like what we do for require-adobe-auth)

Hello, this was discussed in the team meeting today. We want to make sure the behavior in aio app dev is identical to the behavior on production.
cc: @pru55e11


Revert "VLC wants a newer version of libdvdnav"

Reverts NixOS/nixpkgs#6886 because these changes break mplayer: http://hydra.cryp.to/build/635259/nixlog/1/raw.

Sorry Peti, +1 for revert


Phase error in spin_sph ?

Hello,
Thanks for writing and sharing FastSphericalHarmonics. I am trying to use it to solve some PDEs on the sphere but have problems with the eth/ethbar operators for scalars.  For example :
using Plots, FastSphericalHarmonics
pcolor(args... ; kwargs...) = display(heatmap(args... ; kwargs...));
lmax = 32
Θ, Φ = sph_points(lmax+1);
f = [sin(θ)*cos(ϕ) for θ in Θ, ϕ in Φ]
pcolor(f ; title="f")
ff=Complex.(f)
spinsph_transform!(ff, 0)
ff = spinsph_ethbar(ff,0)
gradff = spinsph_evaluate(ff,-1)
pcolor(abs.(gradff) ; title="abs(gradff)")

The scalar function f has a maximum and minimum at antipodal points on the Equator.

I expect abs(grad(ff))) to be zero at these extremal points. At first glance abs(grad(ff)) is as expected : it does vanish at two antipodal points on the Equator.

However these points are shifted by 90 degrees of longitude relative to the extrema of f.
Am I missing something ?
I am running Julia 1.7.1.
Thanks,
Thomas

I can confirm your results. Yes, this looks wrong.
The spin-weighted spherical harmonics of the FastTransforms C library might be defined differently than usual. This page lists the definition (see near the bottom of the page).
Incidentally, I encountered a similar problem as you with this library yesterday (!). I am now comparing to the ssht library. Any help or insight from your side will be appreciated!

I confirm that FastTransforms.jl and, by implication, FastSphericalHarmonics.jl use an unexpected sign convention for spin-weighted spherical harmonics. To the best of my knowledge, this function
function change_signs!(flm::AbstractArray{<:Complex}, s::Integer)
    for rowcol in CartesianIndices(flm)
        row, col = Tuple(rowcol)
        m = col == 1 ? 0 : (col % 2 == 0 ? -1 : 1) * (col ÷ 2)
        l = row + max(abs(s), abs(m)) - 1
        sign = (isodd(s) && m < -s) || (m >= -s && isodd(m)) ? -1 : +1
        flm[row, col] = flipsign(flm[row, col], sign)
    end
    return flm
end

converts between this and the "standard" Wikipedia sign convention. With this transformation, the gradient is zero on the x axis.
I will updated/document the code.

I created a new package ssht.jl based on the ssht library. It uses, of course, a different API. I ran thorough checks and I believe that the sign conventions used there are less surprising.


How do I redirect/export maxcso text output to a log?

Since maxcso can be operated via the command line, I was hoping to batch script the conversion process for my entire PSP collection. However, from what I can tell, maxcso text output isn't redirectable via streams at all. Consequently, I don't know how to create a log that would allow me to double check that the conversion was successful for each game or inform me of any errors...
How can I export/redirect any errors as well as output from maxcso --crc input.iso or maxcso --crc output.cso to a log?
Many thanks to all the people who worked on this project.

On Linux, you can use script.  For example:
script
maxcso --crc *.iso *.cso
^D
cat typescript

That said, for crc and the final status of compression for a line, it probably makes sense to output that even when not attached to a tty.  Currently it intentionally suppresses output when not using a tty (which happens sometimes in scripting and usually means the ANSI it uses to display progress % won't be processed properly.)
I may get to it later, I would also accept a pull request as long as it maintains the current output pattern and progress display on a tty.
-[Unknown]

I've made it so that stderr can be piped to a file and show final results, including CRC.
Use:
maxcso --crc input.iso 2> maxcso-crc.log

The 2> pipes stderr, while > or 1> pipes stdout.  I might in the future detect if stdout is a TTY or pipe, and send success to stdout instead so you could do > and get progress still in the terminal.  If you have an opinion on whether that would be useful or detrimental, let me know.
-[Unknown]

Thanks for adding this feature. I'm sure that it'll be useful to many people.
I should've mentioned before that I'm using maxcso on Windows. I used a workaround with powershell and converted my  entire PSP library. If you were to release an updated exe, I'd be happy to test it and use it to verify checksums in the future.
In terms of your question, then I'd say that having the progress still displayed in the terminal and having a "SUCCESS"/"ERROR"/<crc> output send to a log after the process completes would be best.
For me, the most the most important features (on top of the conversion itself) is to have the conversion result (success/error) and the CRC (of the iso) logged when I batch convert multiple games.
Example:
cmd input
(1) for %a in (*.iso) do (echo %~na & maxcso "%a") >> maxcso.log or for %a in (*.iso) do (echo %~na & maxcso "%a") >> maxcso.log 2>&1
(2) for %a in (*.cso) do (echo %~na & maxcso --crc "%a") >> maxcso_crc.log
Log output
(1)
<name of the game>
SUCCESS/ERROR
(2)
<name of the game/cso>
<crc of the iso used to create the cso>
When pointed at a .cso file maxcso already calculates the crc of the underlying iso and not of the .cso file itself, which is phenomenal. Sadly, the most popular compression format/program of them all, i.e. chd/chdman, doesn't offer such luxuries. This makes it extremely painful to verify original/source files/isos against redump/NI and, afaik, necessitates decompressing the files first...

You can try this:
https://github.com/unknownbrackets/maxcso/actions/runs/2405125828#artifacts
These aren't release builds, so they're not using PGO (profile guided optimization) and are therefore a bit slower.  But the speed impact is most significant with zopfli, and already small for general compression.  But for CRC calculation the speed difference should be unnoticeable.
Also, in case it helps, maxcso will give a failure exit code if any file compression fails in any case.  For compression at least, you could use this to fail early:
for %a in (*.iso) do (
  maxcso "%a" || (echo %a FAILED && exit /b 1)
)

Or to move successfully processed files to a subfolder:
if not exist compressed (
  mkdir compressed
)
for %a in (*.iso) do (
  maxcso "%a" && move "%a" compressed
)

That doesn't help for CRC, though (the CRC operation will essentially never fail unless there's a disk read error.)
Thinking I may make it so if you pipe stdout to something other than a TTY, it will output to stdout.
-[Unknown]

Thanks for your continued support @unknownbrackets!
I did some quick testing and just wanted to note two things.
There seems to be a small error here:
for %a in (*.iso) do (
  maxcso "%a" && move "%a" compressed
)

It'll move the iso to the "compressed" folder rather than the cso. This should fix it:
for %a in (*.iso) do (
  maxcso "%a" && move "%~na.cso" compressed
)

The following code works as expected, which is really great and what I always wanted to see:
maxcso --crc input.iso 2> maxcso-crc.log
maxcso input.iso 1> maxcso-error.log
However, it's been my understanding that errors are supposed to be redirected via 2>, whereas command outputs are supposed to be redirected via 1>. It seems to be the other way round in this case. It makes no difference to me personally, just wanted to mention it :)


Update AppPattern templates with TAC apps version 2-1-0 info

Initially, the version should have been updated to 2.0.1, but we now already have 2.1.0 upcoming.
However, before the templates can be updated, Thorsten needs to finalize the TAC applications.

Versions updated in AP and all TAC elements


Version 1.9.5 does not work

Adapter is "red"
Log:
`

host.iobroker
2024-12-20 17:28:47.634
error
instance system.adapter.echarts.0 terminated with code 1 (JS_CONTROLLER_STOPPED)

host.iobroker
2024-12-20 17:28:47.634
error
Caught by controller[1]: Node.js v20.18.1

host.iobroker
2024-12-20 17:28:47.634
error
Caught by controller[0]: }

host.iobroker
2024-12-20 17:28:47.634
error
Caught by controller[0]:   path: '/opt/iobroker/node_modules/iobroker.echarts/src/src-chart/src/Components/ChartModel.js'

host.iobroker
2024-12-20 17:28:47.634
error
Caught by controller[0]:   syscall: 'open',

host.iobroker
2024-12-20 17:28:47.634
error
Caught by controller[0]:   code: 'ENOENT',

host.iobroker
2024-12-20 17:28:47.634
error
Caught by controller[0]:   errno: -2,

host.iobroker
2024-12-20 17:28:47.634
error
Caught by controller[0]:     at Module.load (node:internal/modules/cjs/loader:1288:32) {

host.iobroker
2024-12-20 17:28:47.633
error
Caught  by controller[0]:     at Object.newLoader [as .ts]  (/opt/iobroker/node_modules/@alcalzone/esbuild-register/dist/node.js:2318:11)

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:     at extensions..js (/opt/iobroker/node_modules/@alcalzone/esbuild-register/dist/node.js:2755:24)

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:     at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:     at Module._compile (/opt/iobroker/node_modules/@alcalzone/esbuild-register/dist/node.js:2314:28)

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:     at Module._compile (node:internal/modules/cjs/loader:1469:14)

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:     at Object. (/opt/iobroker/node_modules/iobroker.echarts/src/main.ts:15:1)

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:     at prepareReactFiles (/opt/iobroker/node_modules/iobroker.echarts/src/main.ts:40:26)

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:     at Object.readFileSync (node:fs:452:35)

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:     at Object.openSync (node:fs:573:18)

host.iobroker
2024-12-20 17:28:47.633
error
Caught  by controller[0]: Error: ENOENT: no such file or directory, open  '/opt/iobroker/node_modules/iobroker.echarts/src/src-chart/src/Components/ChartModel.js'

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:         ^

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]:         throw error;

host.iobroker
2024-12-20 17:28:47.633
error
Caught by controller[0]: /opt/iobroker/node_modules/@alcalzone/esbuild-register/dist/node.js:2758

host.iobroker
2024-12-20 17:28:46.608
info
instance system.adapter.echarts.0 in version "1.9.5" started with pid 392915

iobroker in a proxmox debian container, node.js 20.18.1, js-controller 7.0.6.
I changed back to v1.9.2, works fine`

Same here, seems that path to ChartModel.js is wrong
node_modules/iobroker.echarts/src/src-chart/src/Components/ChartModel.js
two times src isn't correct - ChartModel.js is here
node_modules/iobroker.echarts/src-chart/src/Components/

Same here, back to 1.9.2

Me too.

What is the command to revert back to version 1.9.2 of echarts? Thanks for your hints

same Problem here ... 1.9.2 is working

What is the command to revert back to version 1.9.2 of echarts? Thanks for your hints

At the iobroker page change to expert mode, then you can choose the version at the Adapter screen.

same Problem here ... 1.9.2 is working

What is the command to revert back to version 1.9.2 of echarts? Thanks for your hints

At the iobroker page change to expert mode, then you can choose the version at the Adapter screen.

thank you very much for this hint, it works

same problem
<html>
<body>
<!--StartFragment-->
2024-12-28 16:39:21.505 | info | Restart adapter system.adapter.echarts.0 because enabled
-- | -- | --
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | instance system.adapter.echarts.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: Node.js v20.18.1
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: }
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: path: '/opt/iobroker/node_modules/iobroker.echarts/src/src-chart/src/Components/ChartModel.js'
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: syscall: 'open',
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: code: 'ENOENT',
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: errno: -2,
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: at Module.load (node:internal/modules/cjs/loader:1288:32) {
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: at Object.newLoader [as .ts] (/opt/iobroker/node_modules/@alcalzone/esbuild-register/dist/node.js:2318:11)
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: at extensions..js (/opt/iobroker/node_modules/@alcalzone/esbuild-register/dist/node.js:2755:24)
host.iobroker-x64 | 2024-12-28 16:39:21.505 | error | Caught by controller[0]: at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: at Module._compile (/opt/iobroker/node_modules/@alcalzone/esbuild-register/dist/node.js:2314:28)
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: at Module._compile (node:internal/modules/cjs/loader:1469:14)
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.echarts/src/main.ts:15:1)
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: at prepareReactFiles (/opt/iobroker/node_modules/iobroker.echarts/src/main.ts:40:26)
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: at Object.readFileSync (node:fs:452:35)
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: at Object.openSync (node:fs:573:18)
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: Error: ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.echarts/src/src-chart/src/Components/ChartModel.js'
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: ^
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: throw error;
host.iobroker-x64 | 2024-12-28 16:39:21.504 | error | Caught by controller[0]: /opt/iobroker/node_modules/@alcalzone/esbuild-register/dist/node.js:2758

<!--EndFragment-->
</body>
</html>

Hallo,
bei mir das gleiche.
Gutes neues Jahr Wünsche ich.
Gruß berniiii


Close Method

why this NewClient has no Close method?

@xing00lian, what NewClient are you referring to? There's not enough information in this issue.

In go-hbase package,
Method: func NewClient(zkHosts []string, zkRoot string) *Client
this 'client' has no Close method?

Are you talking about github.com/pingcap/go-hbase package? You should direct your question at that package, its developers/maintainers and users.
This issue tracker is for tracking bugs in the gddo project (as well as talksapp and lintapp), so this is not the right place to ask about this.
Please see https://golang.org/wiki/Questions.


Add padding for convTranspose2d ops of fast style transfer example

According to ONNX ConvTranspose op spec 1, the shape of the output can be explicitly set which will cause pads values to be auto generated. The previous code misses the padding that will cause WebNN output size validation error.
/cc @miaobin

LGTM and Thanks for the fix!


vscode.env.openExternal in VS Code 1.57 does no longer spawn the associated process as external

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

VS Code Version: 1.57.0
OS Version: Darwin arm64 20.5.0 (macOS Big Sur 11.4)

Steps to Reproduce:
vscode.env.openExternal(Uri.file('/home/xxx/test.pdf'))

VS Code tries to open the PDF document in the editor as binary. The previous 1.56 have been opened the PDF file with desktop-associated viewer.
According to the guide described in https://code.visualstudio.com/api/advanced-topics/remote-extensions#opening-something-in-a-local-browser-or-application, VS Code looks like recommends using openExternal() to spawn the external process than using opn (open) module.
I felt this change about spawning might become to have been restricted by some security reason or proposed API change, but anyway it may break existing workflow provided by extensions.

@joaomoreno I believe this is because of your changes in external uri land. A breakpoint here shows that the uri has been turned into code-oss:workspace?file%3A%2F%2F%2FUsers%2Fjrieken%2FDocuments%2FCOMPUTER_GRAPHICS_AND_ART_May1976.pdf (from file:///...)

@jrieken Yeah could be. Does that transformation happen here?
https://github.com/microsoft/vscode/blob/a6f7aa5e4c5832c3d788ab9a8146ac69a6e5a77f/src/vs/editor/browser/services/openerService.ts#L217


MOBILE-1377 ui: Center avatar on side menu and profile screen

Note that MOBILE-1377 is based on MOBILE-1371


Unable to create Azure Databricks access connector following the steps in the document.

[Enter feedback here]
"Step 1: Create an Azure Databricks access connector" fails unless sign-in Azure Databricks workspace at least once in the same AAD tenant. Shoud add it to requirement section in the document.

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

ID: aea50f33-143f-780d-c4b4-676541228d7f
Version Independent ID: aea50f33-143f-780d-c4b4-676541228d7f
Content: [Use Azure managed identities in Unity Catalog to access storage - Azure Databricks](https://docs.microsoft.com/en-us/azure/databricks/data-governance/unity-catalog/azure-manage

d-identities)
Content Source: databricks/data-governance/unity-catalog/azure-managed-identities.md
Service: azure-databricks
GitHub Login: @mssaperla
Microsoft Alias: saperla

@rsk800
Thanks for your feedback! We will investigate and update as appropriate.

@rsk800
Thanks for your feedback! We have assigned the issue to author and will provide further updates.

Thanks for your dedication to our documentation. Unfortunately, we have been unable to review your issue and apologize for the delayed response. The requested updates have not yet been made. The timeline for resolution varies based on resourcing. We've created an internal work item (DOC-7172) to incorporate your suggestions. We are closing this issue for now, but feel free to comment here as necessary.
#please-close

#please-close


Add the Progress layout

Add the Progress layout and its components: the white boxes to indicate the different states. The section is in Design Library.

I'll like to implement this.

@mercyikpe start with creativecommons/vocabulary#112.

Alright, Thank you.

We're not really sure if we'll implement this in Vue Vocabulary.


Delegation: Stopping a delegation

Task description
Besides registering and updating a delegation, the user must also be able to stop their delegation again.
In practice, this is done by making a ConfigureDelegation transaction, setting the amount to 0. From the users perspective, there will be a "Stop delegation" on the delegation status page.
A delegation can only be stopped if there a no pending decreases to the delegation amount, or if there has not been a "Stop delegation" transaction already, effectively decreasing the amount to 0. In those cases, the "Stop delegation" button will not be active, as shown in Delegation status scenario 3.
In Flow 5 in Figma, the "Stop delegation" transaction can be seen. The first page is a carousel with some info on what it means to stop a delegation, and how it will be affected by a cool down period. Else it's just page 2 and 3 showing the transaction slip with an overview before an after submission. Lastly, before returning to the delegation status page as seen in Delegation status scenario 4, there will be a notification reminding the user about the cool down.

Verified.
3.0.5 (89)


API way to manage notifications

Is your feature request related to a problem? Please describe
In current application users and admins can change/manage their notifications using GUI only. But we want to have control over it using API, so we can setup predefined notifications for different user types (during the user provisioning)
Describe the solution you'd like
Add API endpoint that will allow admin/user to specify what kind of notification would like to receive.  It can be just translation from GUI approach to API way of controlling.

merged into dev / 2.2.0


Floating windows get closed after calling SetFocusedDockable

I am trying to write a function for showing/opening tools. I have this function inside my DockFactory class implementation. Im not sure if this is a bug, or if I have something implemented wrong, but whenever I call either of the functions:
SetActiveDockable(dockable);
SetFocusedDockable(toolDock, dockable);

All of my floating windows get closed. Does anyone know why this is happening?
Here is my full function:
public void ShowTool(string toolId)
{
	try
	{
		if (DockableLocator.TryGetValue(toolId, out Func<IDockable?>? getDockable))
		{
			IDockable? dockable = getDockable();
			if (dockable != null)
			{
				Console.WriteLine("Dockable object retrieved successfully.");
				if (dockable.Owner is ToolDock toolDock)
				{
					if (toolDock.VisibleDockables != null && toolDock.VisibleDockables.Contains(dockable))
					{
						//then the tool has not been closed
						SetActiveDockable(dockable);
						SetFocusedDockable(toolDock, dockable);
					}
					else
					{
						//tool has been closed
						FloatDockable(dockable);
					}
				}
				else
				{
					//tool has never been opened
				}
			}
		}
	}
        catch(Exception ex)
	{

	}
}

Found another clue while debugging.
If I go through the following steps:

Float Tool with float option in GUI provided by the library.
Hit the X on the floating tool to close it.
Call my ShowTool function, which then calls FloatDockable as shown above.

Then the floating window will work perfectly. It wont be closed by subsequent calls to the ShowTool function, and calling that function with the ToolId for it, it will properly set as active.

Another interesting thing I've noticed while doing more debugging, is that when a floating tool is in a good state (See previous post as to how to get Tool into a good state), there are two RootDocks that are returned when querying the function FactoryBase.Find like so:
var results = Find(x => x is IRootDock);

This line is pulled directly from the function FactoryBase.SetFocusedDockable.
When a tool is floating in a bad state, there is only 1 RootDock that is returned from that function (which checks FactoryBase.DockControls).
I believe this may be why the bad state floating Tools are getting destroyed. The DockControl for the floating Tool doesn't get created until after going through the 3 steps to enter the tool into the good state.


Creating a spritesheet fails if source svg has xml declaration.

If the source file does not start with the <svg> tag right away, but e.g. has a XML preamble <?xml version="1.0" encoding="utf-8"?> the plugin fails.

Done in v1.1.1