Running Pipenv in Dockerfile fails "Package installation failed" [/The command '/bin/sh -c pipenv install --skip-lock --system --dev' returned a non-zero code: 1]

Issue description
I am running an application with docker-compose build. If I leave out the packages azure and paramiko the installation works just fine. However as I add those dependencies to the packages, it fails with  error messages as seen below.
Expected result
Expected pipenv in dockerfile to build and install properly.
Actual result
  Building wheels for collected packages: cffi
    Created temporary directory: /tmp/pip-wheel-6v5r15g5
    Building wheel for cffi (setup.py): started
    Destination directory: /tmp/pip-wheel-6v5r15g5
    Running command /usr/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-13lwkk9h/cffi/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/pip-wheel-6v5r15g5 --python-tag cp37
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    unable to execute 'gcc': No such file or directory
    unable to execute 'gcc': No such file or directory

        No working compiler found, or bogus compiler options passed to
        the compiler from Python's standard "distutils" module.  See
        the error messages above.  Likely, the problem is not related
        to CFFI but generic to the setup.py of any Python package that
        tries to compile C code.  (Hints: on OS/X 10.8, for errors about
        -mno-fused-madd see http://stackoverflow.com/questions/22313407/
        Otherwise, see https://wiki.python.org/moin/CompLangPython or
        the IRC channel #python on irc.freenode.net.)

        Trying to continue anyway.  If you are trying to install CFFI from
        a build done in a different context, you can ignore this warning.

    running bdist_wheel
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.7
    creating build/lib.linux-x86_64-3.7/cffi
    copying cffi/lock.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/commontypes.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/ffiplatform.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/error.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/pkgconfig.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/verifier.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/api.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/model.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/vengine_gen.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/__init__.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/recompiler.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/cparser.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/_cffi_include.h -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/parse_c_type.h -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/_embedding.h -> build/lib.linux-x86_64-3.7/cffi
    copying cffi/_cffi_errors.h -> build/lib.linux-x86_64-3.7/cffi
    warning: build_py: byte-compiling is disabled, skipping.

    running build_ext
    building '_cffi_backend' extension
    creating build/temp.linux-x86_64-3.7
    creating build/temp.linux-x86_64-3.7/c
    gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -DTHREAD_STACK_SIZE=0x100000 -fPIC -I/usr/include/ffi -I/usr/include/libffi -I/usr/local/include/python3.7m -c c/_cffi_backend.c -o build/temp.linux-x86_64-3.7/c/_cffi_backend.o
    unable to execute 'gcc': No such file or directory
    error: command 'gcc' failed with exit status 1
    Building wheel for cffi (setup.py): finished with status 'error'
    Failed building wheel for cffi
    Running setup.py clean for cffi
    Running command /usr/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-13lwkk9h/cffi/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" clean --all
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'virtual:world', not found
    unable to execute 'gcc': No such file or directory
    unable to execute 'gcc': No such file or directory

        No working compiler found, or bogus compiler options passed to
        the compiler from Python's standard "distutils" module.  See
        the error messages above.  Likely, the problem is not related
        to CFFI but generic to the setup.py of any Python package that
        tries to compile C code.  (Hints: on OS/X 10.8, for errors about
        -mno-fused-madd see http://stackoverflow.com/questions/22313407/
        Otherwise, see https://wiki.python.org/moin/CompLangPython or
        the IRC channel #python on irc.freenode.net.)

        Trying to continue anyway.  If you are trying to install CFFI from
        a build done in a different context, you can ignore this warning.

    running clean
    removing 'build/temp.linux-x86_64-3.7' (and everything under it)
    removing 'build/lib.linux-x86_64-3.7' (and everything under it)
    'build/bdist.linux-x86_64' does not exist -- can't clean it
    'build/scripts-3.7' does not exist -- can't clean it
    removing 'build'
  Failed to build cffi
  Installing collected packages: setuptools, wheel, pycparser, cffi

    Creating /tmp/pip-build-env-k_nx8f41/overlay/bin
    changing mode of /tmp/pip-build-env-k_nx8f41/overlay/bin/easy_install to 755
    changing mode of /tmp/pip-build-env-k_nx8f41/overlay/bin/easy_install-3.7 to 755

    changing mode of /tmp/pip-build-env-k_nx8f41/overlay/bin/wheel to 755

    Created temporary directory: /tmp/pip-record-bngrs_0p
    Running setup.py install for cffi: started
      Running command /usr/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-13lwkk9h/cffi/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-bngrs_0p/install-record.txt --single-version-externally-managed --prefix /tmp/pip-build-env-k_nx8f41/overlay --compile
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      Package 'libffi', required by 'virtual:world', not found
      unable to execute 'gcc': No such file or directory
      unable to execute 'gcc': No such file or directory

          No working compiler found, or bogus compiler options passed to
          the compiler from Python's standard "distutils" module.  See
          the error messages above.  Likely, the problem is not related
          to CFFI but generic to the setup.py of any Python package that
          tries to compile C code.  (Hints: on OS/X 10.8, for errors about
          -mno-fused-madd see http://stackoverflow.com/questions/22313407/
          Otherwise, see https://wiki.python.org/moin/CompLangPython or
          the IRC channel #python on irc.freenode.net.)

          Trying to continue anyway.  If you are trying to install CFFI from
          a build done in a different context, you can ignore this warning.

      running install
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.7
      creating build/lib.linux-x86_64-3.7/cffi
      copying cffi/lock.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/commontypes.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/ffiplatform.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/error.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/pkgconfig.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/verifier.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/api.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/model.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/vengine_gen.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/__init__.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/recompiler.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/cparser.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/_cffi_include.h -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/parse_c_type.h -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/_embedding.h -> build/lib.linux-x86_64-3.7/cffi
      copying cffi/_cffi_errors.h -> build/lib.linux-x86_64-3.7/cffi
      warning: build_py: byte-compiling is disabled, skipping.

      running build_ext
      building '_cffi_backend' extension
      creating build/temp.linux-x86_64-3.7
      creating build/temp.linux-x86_64-3.7/c
      gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -DTHREAD_STACK_SIZE=0x100000 -fPIC -I/usr/include/ffi -I/usr/include/libffi -I/usr/local/include/python3.7m -c c/_cffi_backend.c -o build/temp.linux-x86_64-3.7/c/_cffi_backend.o
      unable to execute 'gcc': No such file or directory
      error: command 'gcc' failed with exit status 1
      Running setup.py install for cffi: finished with status 'error'
  Cleaning up...
    Removing source in /tmp/pip-install-13lwkk9h/cffi
  Cleaned build tracker '/tmp/pip-req-tracker-d388m2q6'
  Command "/usr/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-13lwkk9h/cffi/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-bngrs_0p/install-record.txt --single-version-externally-managed --prefix /tmp/pip-build-env-k_nx8f41/overlay --compile" failed with error code 1 in /tmp/pip-install-13lwkk9h/cffi/
  Exception information:
  Traceback (most recent call last):
    File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 179, in main
      status = self.run(options, args)
    File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 393, in run
      use_user_site=options.use_user_site,
    File "/usr/local/lib/python3.7/site-packages/pip/_internal/req/__init__.py", line 57, in install_given_reqs
      **kwargs
    File "/usr/local/lib/python3.7/site-packages/pip/_internal/req/req_install.py", line 945, in install
      spinner=spinner,
    File "/usr/local/lib/python3.7/site-packages/pip/_internal/utils/misc.py", line 761, in call_subprocess
      % (command_desc, proc.returncode, cwd))
  pip._internal.exceptions.InstallationError: Command "/usr/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-13lwkk9h/cffi/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-bngrs_0p/install-record.txt --single-version-externally-managed --prefix /tmp/pip-build-env-k_nx8f41/overlay --compile" failed with error code 1 in /tmp/pip-install-13lwkk9h/cffi/
  Installing build dependencies: finished with status 'error'
Cleaning up...
  Removing source in /tmp/pip-install-oykypp0l/cryptography
Removed cryptography from https://files.pythonhosted.org/packages/07/ca/bc827c5e55918ad223d59d299fff92f3563476c3b00d0a9157d9c0217449/cryptography-2.6.1.tar.gz#sha256=26c821cbeb683facb966045e2064303029d572a87ee69ca5a1bf54bf55f93ca6 (from azure-cosmosdb-table~=1.0->azure) from build tracker '/tmp/pip-req-tracker-d388m2q6'
Removed build tracker '/tmp/pip-req-tracker-d388m2q6'
Exception information:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 179, in main
    status = self.run(options, args)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 315, in run
    resolver.resolve(requirement_set)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolve.py", line 131, in resolve
    self._resolve_one(requirement_set, req)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolve.py", line 294, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolve.py", line 242, in _get_abstract_dist_for
    self.require_hashes
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 349, in prepare_linked_requirement
    abstract_dist.prep_for_dist(finder, self.build_isolation)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 125, in prep_for_dist
    "Installing build dependencies"
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/build_env.py", line 195, in install_requirements
    call_subprocess(args, show_stdout=False, spinner=spinner)
  File "/usr/local/lib/python3.7/site-packages/pip/_internal/utils/misc.py", line 761, in call_subprocess
    % (command_desc, proc.returncode, cwd))
pip._internal.exceptions.InstallationError: Command "/usr/local/bin/python /usr/local/lib/python3.7/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-k_nx8f41/overlay --no-warn-script-location -v --no-binary :none: --only-binary :none: -i https://pypi.python.org/simple -- setuptools>=18.5 wheel "cffi>=1.8,!=1.11.3; python_implementation != 'PyPy'"" failed with error code 1 in None
  File "/usr/local/bin/pipenv", line 10, in <module>
    sys.exit(cli())
  File "/usr/local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/pipenv/vendor/click/decorators.py", line 64, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/pipenv/vendor/click/decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/pipenv/cli/command.py", line 254, in install
    editable_packages=state.installstate.editables,
  File "/usr/local/lib/python3.7/site-packages/pipenv/core.py", line 1874, in do_install
    keep_outdated=keep_outdated
  File "/usr/local/lib/python3.7/site-packages/pipenv/core.py", line 1253, in do_init
    pypi_mirror=pypi_mirror,
  File "/usr/local/lib/python3.7/site-packages/pipenv/core.py", line 862, in do_install_dependencies
    _cleanup_procs(procs, False, failed_deps_queue, retry=False)
  File "/usr/local/lib/python3.7/site-packages/pipenv/core.py", line 681, in _cleanup_procs
    raise exceptions.InstallError(c.dep.name, extra=err_lines)
pipenv.exceptions.InstallError: ERROR: ERROR: Package installation failed...

Steps to replicate
The docker-compose.yml (Altough I don't think it fails because of this.)
version: '3.7'

services:
  web:
    build: ./simuloop
    command: gunicorn sloop.wsgi:application --bind <IP_ADDRESS>:8000
    volumes:
      - ./simuloop/:/usr/src/simuloop/
      - static_volume:/usr/src/simuloop/staticfiles
    expose:
      - 8000
    ports:
      - 8000:8000
    environment:
      - SECRET_KEY=please_change_me
      - SQL_HOST=db
      - SQL_PORT=5432
    depends_on:
      - db
  db:
    image: postgres:10.5-alpine
    env_file:
      - simuloop/db_env
    volumes:
      - postgres_data:/var/lib/postgresql/data/
  nginx:
    build: ./nginx
    volumes:
      - static_volume:/usr/src/simuloop/staticfiles
    ports:
      - 80:80
    depends_on:
      - web

volumes:
  postgres_data:
  static_volume:

The Dockerfile:
# pull official base image
FROM python:3.7-alpine

# set environment varibles
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

# set work directory
WORKDIR /usr/src/simuloop

# install psycopg2
RUN apk update \
    && apk add --virtual build-deps gcc python3-dev musl-dev \
    && apk add postgresql-dev \
    && pip install psycopg2 \
    && apk del build-deps

# install dependencies
RUN pip install --upgrade pip
RUN pip install pipenv
COPY ./Pipfile /usr/src/simuloop/Pipfile
RUN pip --version
RUN pipenv --version
RUN pipenv --support
RUN pipenv install --skip-lock --system --dev

# copy entrypoint.sh
COPY ./entrypoint.sh /usr/src/simuloop/entrypoint.sh

# copy project
COPY . /usr/src/simuloop/

# run entrypoint.sh
ENTRYPOINT ["/usr/src/simuloop/entrypoint.sh"]

I also tried to set these environment variables in the Dockerfile (ENV PATH /usr/local/bin:$PATH
ENV PYTHON_VERSION 3.7.2), but its the same errorlog.
The Pipfile that fails
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[packages]
django= "==2.1"
gunicorn= "==19.9.0"
"psycopg2" ="*"
paramiko = "*"
azure = "*"

[dev-packages]

[requires]
python_version = "3.7"

The Pipfile that works
[[source]]

url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[packages]

django= "==2.1"
gunicorn= "==19.9.0"
"psycopg2" ="*"

[dev-packages]

[requires]

python_version = "3.7"

The entrypoint.sh
#!/usr/bin/sh

if [ "$DATABASE" = "db" ]
then
    echo "Waiting for db postgres..."

    while ! nc -z $SQL_HOST $SQL_PORT; do
      sleep 0.1
    done

    echo "PostgreSQL started"
fi

python manage.py flush --no-input
python manage.py migrate
python manage.py collectstatic --no-input

exec "$@"

The Dockerfiles with the Pipfile.
docker-compose build
$ pipenv --support
Pipenv version: '2018.11.26'
Pipenv location: '/usr/local/lib/python3.7/site-packages/pipenv'
Python location: '/usr/local/bin/python'
Python installations found:

3.7.2: /usr/local/bin/python
3.7.2: /usr/local/bin/python3.7m

PEP 508 Information:
{'implementation_name': 'cpython',
 'implementation_version': '3.7.2',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.15.0-46-generic',
 'platform_system': 'Linux',
 'platform_version': '#49~16.04.1-Ubuntu SMP Tue Feb 12 17:45:24 UTC 2019',
 'python_full_version': '3.7.2',
 'python_version': '3.7',
 'sys_platform': 'linux'}

System environment variables:

HOSTNAME
PYTHON_PIP_VERSION
SHLVL
HOME
PYTHONUNBUFFERED
GPG_KEY
PYTHONDONTWRITEBYTECODE
PATH
LANG
PYTHON_VERSION
PWD
PIP_DISABLE_PIP_VERSION_CHECK
PIP_SHIMS_BASE_MODULE
PIP_PYTHON_PATH
PYTHONFINDER_IGNORE_UNSUPPORTED

Pipenv–specific environment variables:
Debug–specific environment variables:

PATH: /usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
LANG: C.UTF-8
PWD: /usr/src/simuloop

Contents of Pipfile ('/usr/src/simuloop/Pipfile'):
[[source]]

url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[packages]

django= "==2.1"
gunicorn= "==19.9.0"
"psycopg2" ="*"
azure = "*"
paramiko = "*"

[dev-packages]

[requires]

python_version = "3.7"

I have found the fix. Azure and especially Paramiko were missing dependencies. This post helped me with the Paramiko issue
Here is the Dockerfile that installs the Pipfile properly.
# pull official base image
FROM python:3.7-alpine

# set environment varibles
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

# set work directory
WORKDIR /usr/src/simuloop

# install psycopg2
RUN apk add --virtual .build-deps \
    gcc \
    python3-dev \
    musl-dev \
    postgresql-dev \
    openssl-dev \
    libffi-dev \
    libsodium-dev \
    build-base\
    && pip install psycopg2 && pip install pynacl && pip install cryptography --no-binary cryptography

# install dependencies
RUN pip install --upgrade pip
RUN pip install pipenv
COPY ./Pipfile /usr/src/simuloop/Pipfile
RUN pipenv install --skip-lock --system --dev

# copy entrypoint.sh
COPY ./entrypoint.sh /usr/src/simuloop/entrypoint.sh

# copy project
COPY . /usr/src/simuloop/

# run entrypoint.sh
ENTRYPOINT ["/usr/src/simuloop/entrypoint.sh"]

The new Pipfile
[[source]]

url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[packages]

django= "==2.1"
gunicorn= "==19.9.0"
numpy ="*"
azure = "*"
paramiko = "*"

[dev-packages]

[requires]

python_version = "3.7"


About style transferring

Hi, thanks for your excellent work.
I have a question about style transferring. I would like to transfer style of the target image into the content image, when inference, I test on both Contour and LineArt, but the result is not good.
With my datasets use for the inference, I use a cube with no details on it (I would like to add details for this) for the content image, and a house with details and colors for the target image. With the LineArt, the colors and some details needing to add in the content image is not filled, and with the Contour, the image changed so much and be quite messy.
Could you please give me some solutions for improving the result?
Thank you so much.

Hi @nldhuyen0047, thank you for your interest in our work. I noticed that you previously mentioned an issue related to model training. Are the inference results based your own training model?
Also, could you post the content image, style image, and the generated results?

I met the same problem. For example, when the content image and the style image are the same, the output is supposed to be the same image as well (some works introduces identity loss to guarantee this). But with StyleShot, the output  differs greatly with the input image.

Hi @zhihongz , i randomly test some cases that have same content and style image, the outputs are the same image as well, here are samples:

I think your difference comes from the resolution of inputs. Style image will be center crop in 512*512, while content image will not be processed, which might lead to difference.

Emm, the output looks similiar to the input, but there are obvious differences. For example, the color of the cat in your last screen shot changes to blue.

When you test with some natural images, the differences become even larger. You can exam this pic:

In StyleShot, styles  are integrated into style embeddings by a specially designed style-aware encoder and then incorporated into the diffusion model through a cross-attention module. This highly aggregative style information is not suitable for pixel-level reconstruction.

Got it, thanks for your patient and quick reply.

In StyleShot, styles are integrated into style embeddings by a specially designed style-aware encoder and then incorporated into the diffusion model through a cross-attention module. This highly aggregative style information is not suitable for pixel-level reconstruction.

Sorry for my late reply.
I have encountered some problems with the training model.
I got it. Thank you very much.


MIR display doesn't work

Hi there !
I'm trying to compile a code example from RustByExample book on playpen, but it doesn't work. Display is like "frozen".
Here's what happens when clicking MIR button:

Browser: Firefox 53.03.
Best regards.

I can confirm this. For now, you can use http://play.integer32.com/ where MIR display still works (you have to first select "nightly").

For now, you can use http://play.integer32.com/ where MIR display still works

It works, thanks!

#284 had a typo in MIR output formatting

Filed #290.


Protein category cannot be viewed

An error message prompt shows. For example: datanator.info/protein/

An error message prompt shows. For example: datanator.info/protein/

The solution would be to remove depth=40 from the api call.

I think it is also a good place for the to advocate for async API calls to fill in different data fields. At the moment, /proteins/proximity_abundance/proximity_abundance_kegg is the only API call used to display the entire protein specific page. Instead, at least data for the kegg meta related fields can be pulled using /kegg/get_meta/?kegg_ids={}

This specific example appears to work now. With merging RNA and proteins, the URL is now changed to http://localhost:3000/gene/K00978/Escherichia coli E1002.
@lzy7071 has this bug been fixed? If so, please go ahead and close the issue.

This appears to be fixed.


URL encodes all cli args and opts

simple fix. Fixes #381

This will have to be documented in our API docs once we have those... but is a reasonable requirement (that all X-Textile-* args/opts are url escaped).


add basic room import/export

importing just replaces the currently selected room, but the room position is saved so doing something like loading a folder of rooms into their own respective positions could be an early way to share maps.

I like the idea but i don't think i want to implement it like this. I'll merge it for now but replace it with custom maps later on.

that makes sense


Add failing test case derived from devito tti

Sorry, I should not have approved .   Why is this on aomp12 branch?

Can we dispose this PR now?

wrong branch


[performance] Defined function 2-20 times speedup

I've found a new method for checking the set status of a variable via the utility defined function.
Here is the performance testing script:
#!/bin/zsh

N=${1:-200000}
echo "testing $N times each..."
echo "system: $(uname -a)"
echo "zsh: $(zsh --version)"
local SOME_VARIABLE
SOME_VARIABLE="something"

defined () {
	local varname="$1"
	typeset -p "$varname" > /dev/null 2>&1
}

def () {
  [[ ! -z "${(tP)1}" ]]
}

TIMEFMT=$'\nreal\t%E\nuser\t%U\nsys\t%S'

echo
echo "typeset -p:"
time (repeat $N { typeset -p "SOME_VARIABLE" > /dev/null 2>&1 })

echo
echo '${+var}:'
time (repeat $N { (( ${+SOME_VARIABLE} )) })

echo
echo '[[ -v var ]]'
time (repeat $N { [[ -v SOME_VARIABLE ]] })

echo
echo 'p9k old defined'
time (repeat $N { defined SOME_VARIABLE })

echo
echo 'test def function'
time (repeat $N { def SOME_VARIABLE })

echo
echo "Variable NOT set: "
unset SOME_VARIABLE

echo
echo "typeset -p:"
time (repeat $N { typeset -p "SOME_VARIABLE" > /dev/null 2>&1 })

echo
echo '${+var}:'
time (repeat $N { (( ${+SOME_VARIABLE} )) })

echo
echo '[[ -v var ]]'
time (repeat $N { [[ -v SOME_VARIABLE ]] })

echo
echo 'p9k old defined'
time (repeat $N { defined SOME_VARIABLE })

echo
echo 'test def function'
time (repeat $N { def SOME_VARIABLE })

And here are some results after running that script on a few systems I have access to: (full output in <detail> blocks)

My personal Linux machine (5.4.2) ~2-3 times speedup
p9k old defined

real	37.55s
user	18.37s
sys	19.00s

test def function

real	12.10s
user	5.99s
sys	6.11s

p9k old defined

real	41.75s
user	21.72s
sys	19.81s

test def function

real	12.04s
user	5.75s
sys	6.29s

testing 2000000 times each...
system: Linux robo-unseptium 4.15.0-24-generic #26-Ubuntu SMP Wed Jun 13 08:44:47 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
zsh: zsh 5.4.2 (x86_64-ubuntu-linux-gnu)

typeset -p:

real	17.82s
user	8.23s
sys	9.42s

${+var}:

real	0.99s
user	0.99s
sys	0.00s

[[ -v var ]]

real	0.32s
user	0.32s
sys	0.00s

p9k old defined

real	37.55s
user	18.37s
sys	19.00s

test def function

real	12.10s
user	5.99s
sys	6.11s

Variable NOT set:

typeset -p:

real	23.88s
user	13.82s
sys	9.82s

${+var}:

real	0.96s
user	0.95s
sys	0.00s

[[ -v var ]]

real	0.29s
user	0.29s
sys	0.00s

p9k old defined

real	41.75s
user	21.72s
sys	19.81s

test def function

real	12.04s
user	5.75s
sys	6.29s

A school RHEL system (5.0.2) ~4-5 times speedup
p9k old defined

real	4.24s
user	2.22s
sys	2.02s

test def function

real	0.76s
user	0.53s
sys	0.23s

p9k old defined

real	4.83s
user	2.62s
sys	2.21s

test def function

real	0.77s
user	0.54s
sys	0.23s

testing 200000 times each...
system: Linux hydra11.eecs.utk.edu 3.10.0-862.3.2.el7.x86_64 #1 SMP Tue May 15 18:22:15 EDT 2018 x86_64 GNU/Linux
zsh: zsh 5.0.2 (x86_64-redhat-linux-gnu)

typeset -p:

real	3.02s
user	1.35s
sys	1.67s

${+var}:

real	0.15s
user	0.15s
sys	0.00s

[[ -v var ]]
./tests/variable-check.zsh:31: unknown condition: -v

real	0.00s
user	0.00s
sys	0.00s

p9k old defined

real	4.24s
user	2.22s
sys	2.02s

test def function

real	0.76s
user	0.53s
sys	0.23s

Variable NOT set:

typeset -p:

real	3.62s
user	1.83s
sys	1.79s

${+var}:

real	0.14s
user	0.14s
sys	0.00s

[[ -v var ]]
./tests/variable-check.zsh:55: unknown condition: -v

real	0.00s
user	0.00s
sys	0.00s

p9k old defined

real	4.83s
user	2.62s
sys	2.21s

test def function

real	0.77s
user	0.54s
sys	0.23s

MacOS machine I use at work (5.2) ~30-40 times speedup
This is almost 30 times faster??? Can someone else on MacOS verify this?
p9k old defined

real	71.29s
user	4.23s
sys	6.26s

test def function

real	2.02s
user	1.23s
sys	0.78s

p9k old defined

real	69.56s
user	4.77s
sys	6.49s

test def function

real	2.06s
user	1.26s
sys	0.79s

testing 200000 times each...
system: Darwin baam-os2 16.7.0 Darwin Kernel Version 16.7.0: Tue Jan 30 11:27:06 PST 2018; root:xnu-3789.73.11~1/RELEASE_X86_64 x86_64
zsh: zsh 5.2 (x86_64-apple-darwin16.0)

typeset -p:

real	44.31s
user	2.21s
sys	4.74s

${+var}:

real	0.13s
user	0.13s
sys	0.00s

[[ -v var ]]
./tests/variable-check.zsh:31: unknown condition: -v

real	0.01s
user	0.00s
sys	0.00s

p9k old defined

real	71.29s
user	4.23s
sys	6.26s

test def function

real	2.02s
user	1.23s
sys	0.78s

Variable NOT set:

typeset -p:

real	59.28s
user	2.92s
sys	5.11s

${+var}:

real	0.14s
user	0.12s
sys	0.00s

[[ -v var ]]
./tests/variable-check.zsh:55: unknown condition: -v

real	0.01s
user	0.00s
sys	0.00s

p9k old defined

real	69.56s
user	4.77s
sys	6.49s

test def function

real	2.06s
user	1.26s
sys	0.79s

I honestly didn't think that I was going to be able to get this much of a change while still using a separate function rather than the (( ${+ trick.
I still plan on changing the calls to defined over to that other method in the future, but I saw too many other WIP pull requests that I didn't want to increase the number of conflicts those would have.
Hopefully this can help out in the short term while more performance changes are considered in #817 .

(Also accidentally included #901 in this PR...)

In terms of compatibility - the (P) shell flag was introduced in 3.1.6 according to http://zsh.sourceforge.net/FAQ/zshfaq03.html (See 3.22)
So the breakdown here is:
${(tP)variable}
  (  )          - shell variable expansion flags
   t            - report type of variable: is blank / empty for unset variables, 'scalar' for var=""
    P           - perform double expansion on the variable, meaning it takes the variable contents interpreted as a variable itself
      variable  - var with name of another variable to check, which might make this preferable to ((${+ since we can still evaluate state names of prompt segments

Here is the output of my MacBook:
testing 200000 times each...
system: Darwin Dominiks-MacBook-Pro-4.local 17.5.0 Darwin Kernel Version 17.5.0: Fri Apr 13 19:32:32 PDT 2018; root:xnu-4570.51.2~1/RELEASE_X86_64 x86_64
zsh: zsh 5.5.1 (x86_64-apple-darwin17.5.0)

typeset -p:

real	8,84s
user	4,62s
sys	4,17s

${+var}:

real	0,19s
user	0,19s
sys	0,00s

[[ -v var ]]

real	0,07s
user	0,07s
sys	0,00s

p9k old defined

real	16,18s
user	9,04s
sys	7,02s

test def function

real	4,75s
user	2,96s
sys	1,69s

Variable NOT set:

typeset -p:

real	10,14s
user	5,75s
sys	4,33s

${+var}:

real	0,19s
user	0,18s
sys	0,00s

[[ -v var ]]

real	0,08s
user	0,08s
sys	0,00s

p9k old defined

real	17,45s
user	9,98s
sys	7,37s

test def function

real	4,53s
user	2,88s
sys	1,62s


DNS requests exposed to ISP

Thanks for sharing this setup.  Just a quick question with the router (or client setups) it looks like dns requests are unencrypted from the router to the hosted dns server, after that they are encrypted to <IP_ADDRESS>? So it looks like an isp will still be able to see plaintext dns request before they are encrypted further down the chain.
Currently I have my dns requests going to my docker based openvpn server and then onto <IP_ADDRESS> with dhcp-option DNS <IP_ADDRESS> in he.ovpn config. This I think keeps the dns requests from my isp but are unencrypted from the vpn to Cloudflare.
Is there a way for the vpn to pass dns requests over to the cloudfare-dns-server container so that dns requests coming from the router are encrypted over the vpn tunnel and then encrypted by dns over tls?
(My router doesn’t have open firmware so it doesn’t support dns over tls from router direct to cloudflare which would be an alternative way to set things up)

That is the correct behavior. For the first question, you will need to run the docker image in your home network lets say on a raspberry pi at ip <IP_ADDRESS> port 53. Then you can configure your router to use this dns server.
For the OpenVPN question, you just need to run the docker image on the server, configure it to be accessible from clients, then make it the default dns server.
The key is that the routing to the docker image should not leave your network since its just plain unencrypted dns queries.

Ah thanks that makes a lot more sense.  I thought the use case was a cloud hosted dns server.
(I was struggling before to understand in your diagramme why the dns servers request went back through the router to cloudflare - but now viewing it as a local network it makes sense).
Am I correct in thinking that my routers vpn client sends the dns requests encrypted over the vpn tunnel to the hosted vpn server? (currently tested ok for dns leaks - but that's hard to know if the dns requests are just redirected from the vpn server - and potentially still sent in plain text to the vpn server)
If the dns requests are encrypted, then rather than setting up a ras. pi locally (or similar) - I would rather have the dns server hosted with the vpn - as that is a better setup for me.

Hi yunti.
Thanks for your interest! And thanks to wei for helping out!
From what I understand, you should have your vpn server use the dns container.
You can also use it on your client side so that your client's ISP can't see to what domain you tunnel to, but that's essentially for paranoids.
I'll update the diagrams to show its a local area network.


orgmode very slow with this kind of files (rss feeds)

What did you expect to happen?
It should be fast to tab/cut nodes. I tried with emacs -q and it's very fast.
What actually happened?
org-cut-subtree or even cycle visibility of some nodes can take 10 seconds. I'm on a core i5 with 8GB of ram.
Steps to reproduce:

Launch emacs feeds.org
Wait lots of seconds
try to tab on a node
Wait lots of seconds

System information:

 ./.emacs.d/bin/doom info
((emacs
  (version . "26.3")
  (features . "XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD LCMS2")
  (build . "ago 29, 2019")
  (buildopts "--prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib --localstatedir=/var --with-x-toolkit=gtk3 --with-xft --with-modules 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fno-plt' CPPFLAGS=-D_FORTIFY_SOURCE=2 LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now")
  (windowsys . batch)
  (daemonp . server-running))
 (doom
  (version . "2.0.9")
  (build . "HEAD -> develop, origin/develop, origin/HEAD 3a5ef316f 2020-04-19 22:04:12 -0400")
  (dir . "~/.doom.d/"))
 (system
  (type . gnu/linux)
  (config . "x86_64-pc-linux-gnu")
  (shell . "/bin/bash")
  (uname . "Linux 5.6.6-arch1-1 #1 SMP PREEMPT Tue, 21 Apr 2020 10:35:16 +0000 x86_64")
  (path "~/.cargo/bin" "~/.local/bin" "/usr/local/sbin" "/usr/local/bin" "/usr/bin" "/usr/bin/site_perl" "/usr/bin/vendor_perl" "/usr/bin/core_perl" "/usr/lib/emacs/26.3/x86_64-pc-linux-gnu"))
 (config
  (envfile . envvar-file)
  (elc-files . 0)
  (modules :completion company ivy :ui doom doom-dashboard doom-quit hl-todo modeline nav-flash ophints (popup +defaults) vc-gutter vi-tilde-fringe window-select workspaces :editor file-templates fold snippets :emacs dired electric vc :checkers syntax :tools docker ein (eval +overlay) lookup lsp magit :lang (cc +lsp) data emacs-lisp lua markdown (org +dragndrop +present) (python +lsp) rust sh :email mu4e :app (rss +org) :config (default +bindings +smartparens))
  (packages (pocket-reader) (theme-magic))
  (unpin "n/a")
  (elpa "n/a")))

Org file

Can't reproduce this. Please provide an example org file.

This appears to be caused by org-highlight-latex-and-related, which performs some expensive fontification on the buffer. Try adding this to ~/.doom.d/config.el:
(after! org
  (setq org-highlight-latex-and-related nil))

yes thanks it's way faster now!

As of f28a972 I've set org-highlight-latex-and-related to nil by default. Thanks for bringing it to my attention!


Infer routes without using as const

What problem does this feature solve?
This allows users to omit the as const when passing the routes array to createRouter options, which results in better DX imo.
What does the proposed API look like?
This might be possible thanks to this issue comment in typescript
https://github.com/microsoft/TypeScript/issues/30680#issuecomment-752725353
Here is how I think this could be implemented
type Cast<A, B> = A extends B ? A : B

type Narrowable = string | number | bigint | boolean

type Narrow<A> = Cast<
  A,
  [] | (A extends Narrowable ? A : never) | { [K in keyof A]: Narrow<A[K]> }
>

interface RouteRecordRaw {
  path: string
  name: string
}

interface RouterOptions<Routes extends ReadonlyArray<RouteRecordRaw>> {
  routes: Narrow<Routes>
}

function createRouter<Routes extends ReadonlyArray<RouteRecordRaw>>(
  options: RouterOptions<Routes>
) {
  return options
}

const router = createRouter({
  routes: [
    {
      path: '/',
      name: 'home'
    }
  ]
})

The types are recursive but it's possible to change them in a way that infers only the routes array in case there is a nested array that should not be inferred.

Thanks, this is interesting! I think that given the status of that API being experimental and how easy as const makes it to stop or start using it, I rather keep it until it gets out of its experimental state. After all, I don't want to force everybody use this experimental API because it has performance implications with large amounts of routes, due to the nature of the types and it would make the fastest computer lag 😆
I didn't know you could narrow a const type like this, It does work with arrays. It's a good trick to remember.


[13.x] Add root variant to track_features

Checklist

[x] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

As requested at https://github.com/conda-forge/clangdev-feedstock/issues/265

Why not do this together with #267? I don't see the need to do this separately


feat(perf): solve implicit performance problem

Cache this.navLinks, specific problem can be viewed #8728. Of course, users may not notice this improvement, but it will be better. 😀

Deploy preview for docute ready!
Built with commit 2fe515bf749188f1305b3a6bb2f4d092b1edca70
https://deploy-preview-171--docute.netlify.com

Sorry, I will create a new branch next time.


Display ribbons view for all steps except results animation

It would be great to have this for prod on Thursday if possible. I'd like to see the default view (ribbons for the protein, sticks for the small molecules) everywhere except the final animation, where all sticks is OK for now.

I'll prioritize this and shoot for Thursday!

As of https://github.com/Autodesk/molecular-simulation-tools/issues/263, this will show "ribbon" before you press Run and "stick" afterwards.  I think this card requires the view to change when you click a given widget though, so it's not done yet.

https://github.com/Autodesk/molecular-simulation-tools/pull/265 will do what I think is the full solution to this card:

Closing since https://github.com/Autodesk/molecular-simulation-tools/pull/265 has been merged.


Mobile: iOS and android

I am planing to add IOS and android build script to the existing stuff we have.
with the NATS server this will allow syncing from your mobile to your desktop.
I guess we will eventually need to modify the code so that for Mobiles we don't run the systray stuff.
Please feel free to add your own thoughts here about this and anything else you might think about the Mobile aspects...

Hi, @gedw99  Thank you!
I have no plan to build a mobile app, due to there are a lot of similar apps on mobile. Google Authenticator is a useful apps but only support mobile and when I searched on web there's not a simple and usefule 2FA apps on desktop, so I developed this app.

cheers @heramerom for letting me know.
My intention is to developer it so that codes can be synced between Mobile and Desktop seamlessly. It won't break the Desktop version so dont worry about that.
SO if its ok with you I will just make the slight modifications so that it can work on both, and if you want to not use the Mobile app its cool.
The NATS thing will allow Many desktops to sync too so you can use that, and if anyone has a Mobile it will also work.


Monitor probes do not support dict IDs

The Monitor component's probes attribute expects string IDs.
It would be great if this could be updated to work with dictionary IDs as well.

Ah, yes, that's true. I never god around to that part ;). The problem that the component was originally developed to solve, has been partially addressed in the most recent version of Dash via the circular callback feature. Maybe it suits your use case?
Thanks for the pull request! I hope to get the time to go through it in the weekend :)

I have now merged the pull request (nice, short, and concise) and published a new version with the changes.


Couldn't find package "aws-serverless-express" on the "npm"registry.

❯ yarn add -D @types/aws-serverless-express
yarn add v1.6.0
warning package.json: No license field
info No lockfile found.
warning No license field
[1/4] 🔍  Resolving packages...
error Couldn't find package "aws-serverless-express" on the "npm"registry.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

Sorry, wrong project. Moved to https://github.com/DefinitelyTyped/DefinitelyTyped/issues/26277


Empty space under image on the small screens (AutoWidth option problem)

Empty space appears  in Chrome browser under the picture on first load. If happends if screen size is smaller then image, I guess.

As you see, gallery div has a wrong size:

You can see this problem on this site too:
http://cultura.burjassot.org/teatro/la-asombrosa-historia-de-mr-snow/

JSFiddle for this problem: http://jsfiddle.net/musuk/hyksqk9b/6/
and my workaround:
http://jsfiddle.net/hyksqk9b/7/

Can someone verify that this is still an issue?

I can verify that @musukvl fix does make the widths work but then navigation and autoplay seem to not work.

The fix not work correctly.


[nextjs] Update the withPigment API to accept config

through pigment key from the nextConfig object itself instead of as a 2nd argument to the call. This is a standard approach followed by other nextjs plugins
Fixes: #83
Fixes: #88

[x] I have followed (at least) the PR section of the contributing guide.

I'd say it's a deprecates the current API as it can still take the input as second argument. But I'll update the docs to note this.

I am dropping my thought here based on my user expectation and writing docs.
I would like all bundler plugin to use the same name, e.g. createPigmentPlugin:
Next.js
import { createPigmentPlugin } from '@pigment-css/nextjs-plugin';

const pigmentPlugin = createPigmentPlugin(…pigment config);

export default pigmentPlugin(…next config)

Vite:
import { createPigmentPlugin } from '@pigment-css/vite-plugin';

const pigmentPlugin = createPigmentPlugin(…pigment config);

export default defineConfig({
  plugins: [pigmentPlugin()]
})

With the above signature, writing docs will be a lot easier because we can refer to the setup once and later refer to only "pigment config" for other feature.

Seems like now Next.js warns users when it finds an unknown key in the config
 ⚠ Invalid next.config.mjs options detected:
 ⚠     Unrecognized key(s) in object: 'pigment'
 ⚠ See more info here: https://nextjs.org/docs/messages/invalid-next-config

Now, I am not so sure that we should do this.


Lost connection to device. exited (sigterm)

Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.
Originally posted by @TahaTesser in https://github.com/flutter/flutter/issues/54970#issuecomment-723959430

lutter: ^[[38;5;244m│ #0   GoogleSignupButtonWidget.build.() (package:pjtinspection/widget/google_sign.dart:35:2<…>
flutter: ^[[38;5;244m│ #1   _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:993:1<…>
flutter: ^[[38;5;244m├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄<…>
flutter: ^[[38;5;244m│ here<…>
flutter: ^[[38;5;244m└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────<…>
[VERBOSE-2:profiler_metrics_ios.mm(184)] Error retrieving thread information: (ipc/send) invalid destination port
Lost connection to device.
Exited (sigterm)
Here is flutter doctor -v
-ricketts@Michaels-MBP pjtinspection % flutter doctor -v
[✓] Flutter (Channel unknown, 1.22.6-0.0.pre.4, on macOS 11.0.1 20B29 darwin-arm, locale en-US)
• Flutter version 1.22.6-0.0.pre.4 at /Users/m-ricketts/documents/development/flutter
• Framework revision 0da92fc4f5 (2 weeks ago), 2021-01-07 19:20:09 -0700
• Engine revision ae90085a84
• Dart version 2.10.4
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at /Users/m-ricketts/Library/Android/sdk
• Platform android-30, build-tools 30.0.3
• ANDROID_HOME = /Users/m-ricketts/Library/Android/sdk
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 12.3)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.3, Build version 12C33
• CocoaPods version 1.10.0
[!] Android Studio (version 4.1)
• Android Studio at /Applications/Android Studio.app/Contents
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] Connected device (1 available)
• iPhone 12 Pro Max (mobile) • 7B85AE41-A2FF-499C-8B48-B6B8709994BD • ios •
com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
! Doctor found issues in 1 category.
Whenever if click the google sign in button the iOS simulator just exit the app and I have to restart the app again.
Would try appreciate a response.

lutter: ^[[38;5;244m│ #0   GoogleSignupButtonWidget.build.() (package:pjtinspection/widget/google_sign.dart:35:2<…>
flutter: ^[[38;5;244m│ #1   _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:993:1<…>
flutter: ^[[38;5;244m├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄<…>
flutter: ^[[38;5;244m│ here<…>
flutter: ^[[38;5;244m└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────<…>
[VERBOSE-2:profiler_metrics_ios.mm(184)] Error retrieving thread information: (ipc/send) invalid destination port
Lost connection to device.
Exited (sigterm)
Here is flutter doctor -v
-ricketts@Michaels-MBP pjtinspection % flutter doctor -v
[✓] Flutter (Channel unknown, 1.22.6-0.0.pre.4, on macOS 11.0.1 20B29 darwin-arm, locale en-US)
• Flutter version 1.22.6-0.0.pre.4 at /Users/m-ricketts/documents/development/flutter
• Framework revision 0da92fc4f5 (2 weeks ago), 2021-01-07 19:20:09 -0700
• Engine revision ae90085a84
• Dart version 2.10.4
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at /Users/m-ricketts/Library/Android/sdk
• Platform android-30, build-tools 30.0.3
• ANDROID_HOME = /Users/m-ricketts/Library/Android/sdk
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 12.3)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.3, Build version 12C33
• CocoaPods version 1.10.0
[!] Android Studio (version 4.1)
• Android Studio at /Applications/Android Studio.app/Contents
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] Connected device (1 available)
• iPhone 12 Pro Max (mobile) • 7B85AE41-A2FF-499C-8B48-B6B8709994BD • ios •
com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
! Doctor found issues in 1 category.
Whenever if click the google sign in button the iOS simulator just exit the app and I have to restart the app again.
Would try appreciate a response.

This is my button onPressed =====>>>>>>
onPressed: () {
final provider = Provider.of(context, listen: false);
provider.login();
logger.v('here');
},
I will say am new to flutter so am doing a lot of shifting with code. I notice after setting listen:true the simulator didn't stop but direct me to setting listen to false which I believe is crashing the simulator

This is my button onPressed =====>>>>>>
onPressed: () {
final provider = Provider.of(context, listen: false);
provider.login();
logger.v('here');
},
I will say am new to flutter so am doing a lot of shifting with code. I notice after setting listen:true the simulator didn't stop but direct me to setting listen to false which I believe is crashing the simulator

Hi @Michael-ricketts
 final provider = Provider.of<GoogleSignInProvider>(context, listen: false);, this is a third-party provider package and this seems an issue with your code.
It seems you are asking for assistance on personal code. Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you

Hi @Michael-ricketts
 final provider = Provider.of<GoogleSignInProvider>(context, listen: false);, this is a third-party provider package and this seems an issue with your code.
It seems you are asking for assistance on personal code. Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you


fix: core_encryption_salt placeholder

Description of changes
Fixed minor inconvenience during installation. README files mention %%CORE_ENCRYPT_SALT%% substitution but actual values file contain %CORE_ENCRYPT_SALT%.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Superseded by https://github.com/epam/ai-dial-helm/pull/74


Package update

Please can you update dependencies? And is this package still supported?
Because every version of flutter_secure_file_storage depends on flutter_secure_storage ^5.0.2 and 'myProject' depends on flutter_secure_storage ^8.0.0, flutter_secure_file_storage is forbidden. So, because 'myProject' depends on flutter_secure_file_storage ^0.0.8, version solving failed.

Fixed in 1.0.0


How to customize view in Portfolio Plans (Beta) via priority instead of A-Z sorting

Hi, at the moment when you add epics and stories together, some of the stories goes unrelated epics. Can you please make sure child goes under parent item?
Best regards,
Abdullah

Sorry, but this code in this repo is not currently being maintained. We recommend you use the Delivery Plans feature that is core to Azure DevOps.


Palladium Rifts by Grinning Gecko v1.6.0 - Features & Fixes

Submission Checklist
Required

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

Changes / Description
[1.6.0] - 2020-04-18
Added

Add calculated Movement section to profiles.
Add option to whisper rolls to GM.
Add WP Paired to ancient and modern.
Add Drunken Style Kung Fu and Mystic Drunken Style.
Add 'actions' to duration/frequency units.
Add whitespace to the bottom of the sheet to make it easier to add rows.

Changed

Fix issue where PS Type wasn't showing up in Active Profile.
Fix issue where 'Giant Robotic' displays for PS Type when it should be 'Robotic'.
Roll template fixes for dark mode.
Layout fixes.
Make Modern WP level read-only.
Separate dice and unit on ability/magic/psionic damage summary row.

Character Sheet Info Roll20 Internal Use only.


Object fields containing objects may not return proper object value in certain circumstances.

Fix for #89 and #92

Weird... wonder why Azure Pipelines didn't pick this up

Ah, looks like Github credentials expired as we're on an "old" version of Azure Pipelines, compared to what Akka.NET itself uses. I'll get that swapped out.

@Arkatufus queued these up manually inside Azure Pipelines. Should all be automatic now moving forward. Old Github credentials expired because I set them up with OAuth originally. Went back to using the Github App authentication method.

CI passed but didn't push any of its checks

OK, thanks man.


WIP Notify

Adds Outbox, Pushover, and Settings
Adds reddit:notify to process submissions

To do: Need to marked submissions as "notified" when they are done and handle some clean up.


Update how-to-perform-left-outer-joins_1.cs

Typo correction in line 33, the current code does not compile.
Ternary operator not necessary.
Title
Fix the code not compiling anymore
Summary
Deleted the old ternary operator not needed.
Details
Fix typo, a parenthesis and a part of the ternary operator was still there in how-to-perform-left-outer-join_1.cs

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@Pyrobolser Great fix -- thanks! :rocket:


Expose strategy types

What does this PR do?
Exposes Strategy  Type and affirmative, unanimous strategies to be used in the Express and React packages
Type of change

[ ] 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 added necessary documentation (if appropriate)
[x] I did review existing Pull Requests before submitting mine
[x] I have added tests that prove my fix is effective or that my feature works

Hey Alfredo, thanks a lot for creating this PR!
When you created your commits, didn't you get a message to follow some conventional commits https://www.conventionalcommits.org/en/v1.0.0/
it'd be nice to rebase your commits to follow that standard so, we can have the CHANGELOG file updated https://github.com/wizeline/access-decision-manager/blob/master/CHANGELOG.md
let me know if you have questions, I'd like to merge this PR


tools: add symbiflow support and re-enable CI on all supported tools

Signed-off-by: Alessandro Comodi<EMAIL_ADDRESS>This PR adds symbiflow support and re-enables all exhaustive tests.

@mithro Seems all tests passed, I may introduce here nextpnr as well if https://github.com/SymbiFlow/conda-packages/pull/89 gets merged:
Merging results
+-------------------------+--------------+---------+--------------+--------+---------------------+--------+
| Project                 | Toolchain    | Family  | Part         | Board  | Options             |        |
+-------------------------+--------------+---------+--------------+--------+---------------------+--------+
| ibex                    | vivado       | xc7     | a35tcsg324-1 | arty   | xdc_carry-n         | passed |
| ibex                    | vpr          | xc7     | a35tcsg324-1 | arty   | pcf_sdc_xdc_carry-n | passed |
| ibex                    | yosys-vivado | xc7     | a35tcsg324-1 | arty   | xdc_carry-n         | passed |
| litex-linux             | vivado       | xc7     | a35tcsg324-1 | arty   | xdc_carry-n         | passed |
| litex-linux             | vpr          | xc7     | a35tcsg324-1 | arty   | pcf_sdc_xdc_carry-n | passed |
| murax                   | vivado       | xc7     | a35tcpg236-1 | basys3 | xdc_carry-n         | passed |
| murax                   | vpr          | xc7     | a35tcpg236-1 | basys3 | pcf_sdc_carry-n     | passed |
| oneblink                | vivado       | xc7     | a35tcpg236-1 | basys3 | xdc_carry-n         | passed |
| oneblink                | vivado       | xc7     | a35tcsg324-1 | arty   | xdc_carry-n         | passed |
| oneblink                | vivado       | xc7     | z010clg400-1 | zybo   | xdc_carry-n         | passed |
| oneblink                | vpr          | xc7     | a35tcpg236-1 | basys3 | pcf_carry-n         | passed |
| oneblink                | vpr          | xc7     | a35tcsg324-1 | arty   | pcf_carry-n         | passed |
| oneblink                | vpr          | xc7     | z010clg400-1 | zybo   | pcf_carry-n         | passed |
| oneblink                | yosys-vivado | xc7     | a35tcpg236-1 | basys3 | xdc_carry-n         | passed |
| oneblink                | yosys-vivado | xc7     | a35tcsg324-1 | arty   | xdc_carry-n         | passed |
| oneblink                | yosys-vivado | xc7     | z010clg400-1 | zybo   | xdc_carry-n         | passed |
| picorv32-wrap           | vivado       | xc7     | a35tcsg324-1 | arty   | xdc_carry-n         | passed |
| picorv32-wrap           | vivado       | xc7     | z010clg400-1 | zybo   | xdc_carry-n         | passed |
| picorv32-wrap           | vpr          | xc7     | a35tcsg324-1 | arty   | pcf_carry-n         | passed |
| picorv32-wrap           | vpr          | xc7     | z010clg400-1 | zybo   | pcf_carry-n         | passed |
| picosoc-simpleuart-wrap | vivado       | xc7     | a35tcpg236-1 | basys3 | xdc_carry-n         | passed |
| picosoc-simpleuart-wrap | vpr          | xc7     | a35tcpg236-1 | basys3 | pcf_carry-n         | passed |
| picosoc-spimemio-wrap   | vivado       | xc7     | a35tcpg236-1 | basys3 | xdc_carry-n         | passed |
| picosoc-spimemio-wrap   | vpr          | xc7     | a35tcpg236-1 | basys3 | pcf_carry-n         | passed |
| picosoc-wrap            | vivado       | xc7     | a35tcpg236-1 | basys3 | xdc_carry-n         | passed |
| picosoc-wrap            | vpr          | xc7     | a35tcpg236-1 | basys3 | pcf_sdc_carry-n     | passed |
| vexriscv-verilog        | vivado       | xc7     | a35tcpg236-1 | basys3 | xdc_carry-n         | passed |
| vexriscv-verilog        | vpr          | xc7     | a35tcpg236-1 | basys3 | pcf_carry-n         | passed |
+-------------------------+--------------+---------+--------------+--------+---------------------+--------+
| Passed:                 | 28           | Failed: | 0            |        |                     | 100%   |
+-------------------------+--------------+---------+--------------+--------+---------------------+--------+

Should there be output files from the run, containing details like logs from the tools, final timing results, etc?

@litghost Yeah, I am updating the CI config to upload the final results produced

@litghost Done, all log files are now copied in the artifacts.

@acomodi - Yay the @symbiflow-robot did the right thing I think? (Rerunning the CI and then merging when it went green?)

@acomodi Can you also log some github issues around cleaning up conda and python usage to match the environment.yml and requirements.txt style stuff so PYTHONPATH doesn't need to be changed in other repositories?

@acomodi - Yay the @symbiflow-robot did the right thing I think? (Rerunning the CI and then merging when it went green?)

Indeed. I am thinking though that this may be dangerous, in the sense that there should be at least one green review for each PR. If a merge-if-green label is erroneously added and no review has been done, the PR gets merged "unseen".

@acomodi Can you also log some github issues around cleaning up conda and python usage to match the environment.yml and requirements.txt style stuff so PYTHONPATH doesn't need to be changed in other repositories?

What other repositories you have in mind? I think this should be done only in repos that do use conda packages, which, as far as I know, there is arch-defs only (also sv-tests, but that makes use of environment.yml as well)

@acomodi - Yay the @symbiflow-robot did the right thing I think? (Rerunning the CI and then merging when it went green?)

Indeed. I am thinking though that this may be dangerous, in the sense that there should be at least one green review for each PR. If a merge-if-green label is erroneously added and no review has been done, the PR gets merged "unseen".

The code is at https://github.com/SymbiFlow/symbiflow-robot -- maybe log an issue?

@acomodi Can you also log some github issues around cleaning up conda and python usage to match the environment.yml and requirements.txt style stuff so PYTHONPATH doesn't need to be changed in other repositories?

What other repositories you have in mind? I think this should be done only in repos that do use conda packages, which, as far as I know, there is arch-defs only (also sv-tests, but that makes use of environment.yml as well)

Symbiflow-Arch-Defs is probably the big one. Project X-Ray uses conda too.


training expert_args

This PR is a subset of #1634 which deals with serving and training additional_args. I have decided to split out the training implementation since its a bit more figured out.
This work introduces expert_args a new part of the training config which holds less commonly edited options. Users can edit
expert_args {

}

to their _train config class to set some of these options.
expert_args also lives in persistent storage in  ~/.local/share/instructlab/internal/train_configuration/expert/expert_args.yaml This involved creating a few new subdirectories.
_train has been flattened since all of the torch_args were moved into the expert_args this is what a template config.yaml train section currently looks like:
train:
  ckpt_output_dir: /home/cdoern/.cache/instructlab/checkpoints
  data_output_dir: /home/cdoern/.local/share/instructlab/internal
  data_path: /home/cdoern/.local/share/instructlab/datasets
  deepspeed_cpu_offload_optimizer: false
  deepspeed_cpu_offload_optimizer_pin_memory: false
  deepspeed_cpu_offload_optimizer_ratio: 1
  effective_batch_size: 3840
  expert_args: {}
  lora_alpha: 32
  lora_dropout: 0.1
  lora_quantize_dtype: nf4
  lora_rank: 4
  lora_target_modules:
  - q_proj
  - k_proj
  - v_proj
  - o_proj
  max_batch_len: 10000
  max_seq_len: 4096
  model_path: instructlab/granite-7b-lab
  num_epochs: 10
  save_samples: 250000

the expert args I have moved out of _train so far are:
is_padding_free: false
learning_rate: 2.0e-06
nnodes: 1
node_rank: 0
nproc_per_node: 1
random_seed: 42
rdzv_endpoint: <IP_ADDRESS>:12222
rdzv_id: 123
warmup_steps: 1000

These expert_args are still populated into the default_map for the ilab model train flags. They will not, however, show up as defaults in the config.yaml. If the users adds an override for one of these options in their expert_args portion of the config.yaml, we will honor that.

This work introduces expert_args a new part of the training config which holds less commonly edited options.

If/when you rebase/squash, please include all of this super useful information in a commit message so it's captured in git log for future

I'm curious, what gives us the confidence that expert_args won't become commonly used arguments? This doesn't seem like an easy decision to make.
Also, it's unclear to me how this will handle additional_args. Are we planning to have both?
Thanks!

@leseb good point, I should have clarified all of this! expert_args is additional_args for training. The training squad expressed interest in expert rather than additional for the naming scheme. I can update all of this in my corresponding dev-doc!
As for the confidence of which args should be "expert" I am leaving that up to the discretion of @RobotSail @Maxusmusti and @JamesKunstle . the initial set I put in here was what I first thought of :)
Regardless, trimming the size of the cfg while still supporting all the same options is a win IMO, I am just trying to find the best way to do that

after discussing some UX norms with @mairin we are going with additional_args rather than expert_args


Board Review: Azure Communication Services (SPOOL) - Mobile UI Library - Localization  (Android & iOS)

Contacts and Timeline

Responsible service team: Mobile UI Team
Main contacts: Wayne (iOS), James (Android)
Expected release date: April  4th

About the Service

Link to documentation introducing/describing the service:

iOS Localization Concept
Android Localization Concept

About the client library

Name of the client library: Mobile UI Library
Languages for this review: iOS (swift), Android (Java)

Artifacts required (per language)
iOS (Swiftt)

APIView Link:
AzureCommunicationUI

Android (Java)

APIView Link:
azure-communication-ui

Champion Scenarios
Quickstarts
Android
iOS

scheduled for 3/23 2-4pm pst. @garchiro7 -- please include APIViews and Champion Scenarios ASAP

Recording (MS INTERNAL ONLY)


Unify Request/Response toString

Make body parens consistent (don't include parens when body isn't empty)
Remove un-needed quotes
Add Method to request toString
Description
The toString of Request/Response is a recommended tool for debugging. However there are some inconsistencies. The readme even shows the http method but it wasn't actually being written out.
Type of change
Check all that apply

[X] Bug fix (a non-breaking change which fixes an issue)

(Unless users are parsing the toString currently, which they shouldn't)
How Has This Been Tested?
Added unit test
Checklist:

[X] I have performed a self-review of my own code
[X] I have made corresponding changes to the documentation, if necessary
[X] My changes generate no new compiler warnings
[X] I have added tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes

Can you make this change against #534? Some of this is already implemented.
The README.md reflects master-SNAPSHOT, not 1.16.0.

So are you asking me to rebase this against the feature/request-features branch and update the PR to merge against that branch?

Unfortunately this didn't update all the documentation instances, but I'll do that.
Thanks for the PR! 👍


Mac Support

Hi, thank you for your initiate! Are you planning on releasing a mac version of this? If you release it via the app store I can even pay for this!

The top bar is so annoying. There is no way to change certain tabs when sharing a browser.

Hey, pretty late reply, sorry for that. I got my hands on a macbook and see if I can come up with something.


[PA128] News controller and api

https://aura-cz2006.atlassian.net/browse/PA-128?atlOrigin=eyJpIjoiOTY2YTZjOTk2YzU3NGZiNGE3NjJmMWE5OTIzMDRkZTEiLCJwIjoiaiJ9
done, but yet to be tested with new backend api
need to check that parsing of json in api handler is consistent with backend design

still missing lat and long for location

still missing lat and long for location

added in last commit

ISSUE: FAB in news is missing


Pymoo for hyperparameter tuning

Hi, I would like to use Pymoo for hyperparameter tuning for machine learning algorithms. I want to get help in selecting, mutating, and crossover from the dictionary of categorical string variables. For example, the kernel hyperparameter of the SVR model can take only values from ["poly", "rbf", "sigmoid"]. I read through the customization section from the website but still do not understand how this could be done with Pymoo.
Your help is much appreciated.

You can define a mixed-integer optimization problem as shown here:
https://pymoo.org/customization/mixed_variable_problem.html
You map the integer to the kernel, e.g. 0 -> poly, 1-> rbf, and so on. This assumes, however, that all the other variables do not heavily depend on the kernel choice. It might be better to do independent runs for each kernel.


Convert Wrangler to Vitest

Refactor Wrangler tests to use Vitest for a consistent and standardized test environment
The team has made the decision to adopt Vitest for several reasons:

Improved performance: Vitest offers significantly faster testing speeds compared to Jest, particularly for larger projects.
Enhanced developer experience: Vitest provides a better DX than Jest by offering features such as hot module reloading and automatic test discovery, making testing more efficient and enjoyable.
Increased flexibility: Vitest offers greater flexibility compared to Jest, allowing for customization of the test runner to cater to specific project requirements.
Simplified learning curve: Vitest has a simpler API compared to Jest, making it easier to learn and use for developers new to the testing ecosystem.
Future-proofing: Vitest is built on the Vite framework, which is newer and more modern than Jest. By adopting Vitest, we ensure our testing infrastructure remains up to date and aligned with current industry practices.

To maintain consistency and establish a standardized test environment within the monorepo, I am in the process of converting Wrangler tests to utilize Vitest. This change will streamline our testing processes and ensure a cohesive approach across the codebase.

Vitest also has in-source tests just like Rust.. loving the new experience..
https://vitest.dev/guide/in-source.html
// src/index.ts

// the implementation
export function add(...args: number[]) {
  return args.reduce((a, b) => a + b, 0)
}

// in-source test suites
if (import.meta.vitest) {
  const { it, expect } = import.meta.vitest
  it('add', () => {
    expect(add()).toBe(0)
    expect(add(1)).toBe(1)
    expect(add(1, 2, 3)).toBe(6)
  })
}

There have been some serious setbacks with this, mainly due to the Jest mocking the migration to Vitest is pretty non-trivial.
@penalosa @admah


build(snap): Remove helper scripts from staged snaps

The 2.3 (latest/stable) App Service Configurable and eKuiper parts add files that have duplicate names with those in the edgexfoundry snap. Moreover, there are some files that are stages but never used. This PR unstages those files.
Duplicate files prevent the snap build.
Signed-off-by: Farshid Tavakolizadeh<EMAIL_ADDRESS>

If your build fails  due to your commit message not passing the build checks, please review the guidelines here: https://github.com/edgexfoundry/edgex-go/blob/main/.github/Contributing.md
PR Checklist
Please check if your PR fulfills the following requirements:

[x] I am not introducing a breaking change (if you are, flag in conventional commit message with BREAKING CHANGE: describing the break)
[x] I am not introducing a new dependency (add notes below if you are)
[ ] I have added unit tests for the new feature or bug fix (if not, why?)
[x] I have fully tested (add details below) this the new feature or bug fix (if not, why?)
[ ] I have opened a PR for the related docs change (if not, why?)

Testing Instructions

New Dependency Instructions (If applicable)

I reverted the eKuiper unstaging because that is not enough to fix this issue. It involves other changes to work including the refactoring of staged files (to keep eKuiper snap's helper-go at a different location) and the addition of the logic removed from the eKuiper snap's install hook. We'll stick with the 1/stable which tracks eKuiper v1.5.1 right now. The bundled kuiper app is deprecated and not worth the change at this point.
Deployment should use the standalone edgex-ekuiper from the latest/stable channel.


Method to manually destroy automaton?

Hi,
Is there a method I can call or a way to manually ensure the Automaton is destroyed? In my case I am repeatedly creating an Automaton assigned to the same variable and searching based on it, but memory seem to accumulate, which should not be the case if the previous Automaton was automatically garbage collected. Is there a way I could perhaps trigger the garbage collection?
Thanks,
Ayaan

You should use gc module (https://docs.python.org/3/library/gc.html). Invoke gc.collect() to force garbage collection.


Resources need both variants on each side, depending on import/export.

To be checked, related to #5

should be fixed by various recent commits


Create new Item Version

From release plan spreadsheet
Estimate from release plan: 14 hours
Expressing interest: none
Related to #780
Depends on REST Ticket https://github.com/DSpace/DSpace/issues/2844

@tdonohue we are interested on this task

Thanks @atarix83 .  Assigning to you for your team to start work on.


[wip] Flannel helper that runs etcd and flannel in a pod.

@dcbw

Should probably add a README

lgtm


MSBuild improperly sets 'Configuration' in Visual Studio.

Describe the bug
Visual Studio improperly handles 'Configuration' property for '.pyproj' projects.
Steps to Reproduce

Create a new Python Application project (.pyproj)
Modify Project's configurations (rename Debug/Release)
Exit configuration name editor window.

Expected behavior
Visual Studio shows properly configuration names.
Additional context and screenshots
https://imgur.com/UBSk1RW
Diagnostics file
Diagnostic Info 2020-06-25T180058.txt
Aditional files
7a2b2ffffa7a41dea08e5da048862c78.designtime.log
autocls.zip

Looking at your screenshot, I don't see your definition of <PythonVersion>, which would explain why it evaluates to empty.

It's imported from 'AutoCLS.Common.props' file. It's constructed from a REGEX capture of 'Configuration', the Regex capture works as the same property was used in an associated Visual C++ Python project.

This worked fine for me:
    <MyNewProp>hello</MyNewProp>
    <OutputPath>bin\$(MyNewProp)</OutputPath>

You can turn up the verbosity of msbuild output in "tools/options/projects and solutions/build and run", that might help you debug why your property is not defined.

@huguesv I found the actual cause of the issue, I updated this issue to reflect it.

Another thing I noticed, when saving the project, Visual Studio replaces the original value of the properties with the final computed result.= ('WorkingDirectory' is a prime example)

Thanks. I can see the value is overwritten if you make any change in the General page and save.
We could probably be more fine grained with the 'dirty' flag and only apply changes to that field if it actually changed instead of applying all the fields if any of them changed.
Or we could show the unevaluated property in the text box.
As for the configuration rename, I'm not sure how to reproduce. If I rename the debug configuration for the project, it shows the renamed value in the UI.

I noticed very strange wierdness in the Solution Configuration Manager in regards to renaming configurations.
Sometimes, it reverts the name back to the previous, other times, it obliterates the other configuration.
In the case of it obliterating the other configuration, recreating it somehow causes it work properly (minus the fact it doesn't affect MSBuild)


Using "context" instead of "error" key when logging non-errors

Using context instead of error key when logging operations that are not representative of actual errors. This should eliminate extraneous error keys within logs generated from rpull
Signed-off-by: Yasin Turan<EMAIL_ADDRESS>Eg Log:
{"context":"exec: \"fusermount\": executable file not found in $PATH","key":"default/1/extract-198840019-FSRo sha256:d543b8cad89e3428ac8852a13cb2dbfaf55b1e10fd95a9753e51faf393d60e81","level":"info","mountpoint":"/var/lib/soci-snapshotter-grpc/snapshotter/snapshots/1/fs","msg":"fusermount not installed; trying direct mount","parent":"","time":"2023-02-08T18:22:39.001486489Z"}
{"context":"skipping mounting layer sha256:5063b4e8e15250a2ed6aaa980e813b2d9145f67a57f1ca884078498fdf36d44b as FUSE mount: no ztoc for layer","key":"default/2/extract-155573583-fJQ7 sha256:91deb04bc1d7ee311492676790144a0d4ca41ce306e3bca19bb04e416ef3cf62","level":"warning","msg":"failed to prepare remote snapshot","parent":"sha256:d543b8cad89e3428ac8852a13cb2dbfaf55b1e10fd95a9753e51faf393d60e81","remote-snapshot-prepared":"false","time":"2023-02-08T18:22:39.158989711Z"}

Issue #, if available:
Fixes: #361
Testing performed:
make check && make test && make integration
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

There is an easier and system wide way to do this which is to change logrus' ErrorKey:
https://pkg.go.dev/github.com/sirupsen/logrus#ErrorKey
Doing so would mean all errors get logged under the "context" key, but that might be easier than trying to remember whether to use WithError(err) or WithField("context", err). I think this is OK because we have a log level to indicate whether we're logging an application-level error.

Doing so would mean all errors get logged under the "context" key, but that might be easier than trying to remember whether to use WithError(err) or WithField("context", err). I think this is OK because we have a log level to indicate whether we're logging an application-level error.

While I agree, there are some instances where we might like to explicitly call out errors that were not "expected" (really non-errors) like the one @djdongjin pointed at above. We could potentially have a very hacky workaround wrapper like:
func (entry *logrus.Entry) WithContext(err error) *logrus.Entry {
	return entry.WithField("context", value)
}

although this would not really be the place for it.

We already decide if a go error is an application error by whether we call entry.Error vs entry.Info. Does it add additional value to also decide between WithError vs WithField?

I agree with Kern. Generally speaking, it is fine to use WithError even if the level is lower than Error.
containerd/containerd
https://sourcegraph.com/search?q=context:global+repo:containerd/containerd+/WithError.*(Warn|Info)f%3F\(/&patternType=standard&sm=1&groupBy=repo
Go in general
https://sourcegraph.com/search?q=context:global+/WithError.*(Warn|Info)f%3F\(/+lang:go&patternType=standard&sm=1&groupBy=repo

What we'd like to achieve by using context instead of error?

I think the issue was seeing extraneous "error" keys in the log that were not truly representative of real errors making logs harder to parse through. I think @Kern-- has a good point, changing the error key to something like context should suffice as the application level log levels already provide enough to determine actual "errors".

making logs harder to parse through

It may be hard if you use grep, but you should check the level key to see whether errors are there or not.
Setting ErrorKey is better than the original, but we still ask operators to see context key in SOCI snapshotter, error key in containerd.

{"error":"foo", "level":"error"},
{"error":"foo", "level":"warning"},
{"error":"foo", "level":"info"},
{"error":"foo", "level":"debug"},

It is difficult for me to pin down precisely why this pattern concerns me. The best I can do is this much more subjective statement: Seeing this in my logs while trying to track down actual errors, especially seeing hundreds of such lines when there's just a single real failure, slows down my troubleshooting efforts.
Implementing #362 would make this less problematic, possibly enough so, but not entirely.

What you want may be https://pkg.go.dev/github.com/sirupsen/logrus#TextFormatter (https://github.com/sirupsen/logrus has its screenshot). You don't have to make JSON eyegrep-friendly.

@kzys Can you clarify, are you suggesting we change the codebase to output formatted text logs instead of json by default, or that an individual developer patch their local environment to produce logs more appropriate to their specific situation?

Sorry. I wasn't clear.
If your goal is making JSON-formatted logs easier for eyes by renaming and sorting the keys, I recommend to add an option to not use JSON. It wouldn't be hard (e.g. you could just use logrus.TextFormatter), better (e.g. have colors) and keep our JSON schema close to what containerd uses, which most of SOCI snapshotter customers know already.


feat: add missing tags in solid state questions

in solid_state_21.json in the first answer:
"Branched (HDPE) - Because it has a higher degree of amorphousness and lower melting point.": 0,
does it make sense to say in the answer "lower melting point" when you are asking for a "higher melting point" form?
in solid_state_22.json:
"HDPE is transparent due to its amorphous nature, which allows visible light to pass through.": 0,
"LDPE is opaque because it has a more crystalline structure that scatters visible light.": 0,
"LDPE is opaque due to its high degree of crystallinity, which scatters visible light.": 0

does it make sense to say in the answers “HDPE is transparent” and “LDPE is opaque” when the question states the opposite? this makes the correct answer obvious

does it make sense to say in the answers “HDPE is transparent” and “LDPE is opaque” when the question states the opposite? this makes the correct answer obvious

you are right. I have now updated the options, can you maybe check again

@vgvinter Thanks for the corrections 🙏


Message types

Not really an issue, but I've realized that the script isn't grabbing superchats. I feel like it's --message_types superchat_message but the script isn't working after being run. But then again, can I know what to use for grabbing both text and superchats? Since all_message is definitely wrong.

Hi there. The correct usage is as follows:
chat_downloader https://www.youtube.com/watch?v=5qap5aO4i9A --message_groups "messages superchat"

Note this uses --message_groups. If you want more control, you can specify --message_types, for example:
chat_downloader https://www.youtube.com/watch?v=n5aQeLwwEns --message_types "text_message paid_message membership"

This is my fault as I am still busy writing the documentation. The keys are message groups and the elements in the lists are message types. So, the message group superchat contains membership_item, paid_message and paid_sticker. Here are the different message groups and message types for YouTube in the meantime.
_MESSAGE_GROUPS = {
    'messages': [
        'text_message'  # normal message
    ],
    'superchat': [
        # superchat messages which appear in chat
        'membership_item',
        'paid_message',
        'paid_sticker',
    ],
    'tickers': [
        # superchat messages which appear ticker (at the top)
        'ticker_paid_sticker_item',
        'ticker_paid_message_item',
        'ticker_sponsor_item',
    ],
    'banners': [
        'banner',
        'banner_header'
    ],

    'donations': [
        'donation_announcement'
    ],
    'engagement': [
        # message saying live chat replay is on
        'viewer_engagement_message',
    ],
    'purchases': [
        'purchased_product_message'  # product purchased
    ],

    'mode_changes': [
        'mode_change_message'  # e.g. slow mode enabled
    ],

    'deleted': [
        'deleted_message'  # old: 'deleted_state_message'
    ],
    'bans': [
        'ban_user'
    ],

    'placeholder': [
        'placeholder_item'  # placeholder
    ]
}

It's alright, I mean everyone here depends on your script in the first place. So thank you for making this.
Also, I prioritize text messages, although having both superchats and members are also nice. Thanks for the quick reply!

@artiction I wrote a short guide on how to use message groups and types: https://github.com/xenova/chat-downloader/wiki/Message-groups-and-types
Hope it helps!


Converting between 'viewport zoom' and 'image zoom'

I'd like to convert 'viewport zoom' to 'image zoom' from a log where only viewport zoom was recorded. However, when I use the definitions from the documentation, the image zoom isn't correct (I checked this by looking at the numbers displayed on the sidebar when using the application.
Viewport zoom: ratio of the displayed image’s width to viewport’s width.
Image zoom: ratio of the original image size to displayed image size.
Rearranging these equations, image zoom = original image size / [(viewport width * viewport zoom) * (viewport height * viewport zoom)]
My original image size is:
height = 33423
width = 64256
As an example, I've logged viewport zoom = 148.36, viewport size = (433 x 252). The displayed image zoom is 2.77.
When I use the equation, I get image zoom =<PHONE_NUMBER>)/[(433148)(252148)] = 0.9
Is there something I'm missing or perhaps I'm misunderstanding what 'displayed image size' is?

I don't think you should include the height at all, so it should be:
image zoom = original image width / (viewport width * viewport zoom)
Using your numbers, I find that 433 * 148.36 = 64239.88. Dividing 64256 by that number gives an image zoom of 1.00025093, which seems about right to me. I'm not sure how to explain the 2.77 you're getting, though.
One thing to be aware of is that the viewport zoom formula (ratio of the displayed image’s width to viewport’s width) only holds true if you are leaving the image to its default viewport coordinates. If you explicitly set it to some other width in the viewport, it'll be a different ratio.

Hi Ian,
Thank you for your quick reply. I'm still trying to work backwards to understand the numbers I'm getting. I see how the equation would work, but the 2.77 image zoom makes more sense to me because when I replicate the viewport size/zoom with my pathology image it seems past the native image resolution.
I believe the image is left to its default viewport coordinates, but I'll check.
The image is tiled as a pyramidal jpg since its so large. I'm wondering if this would cause an issue with the zoom values? I see the documentation says "  Note: not accurate with multi-image. "

The image is tiled as a pyramidal jpg since its so large. I'm wondering if this would cause an issue with the zoom values? I see the documentation says " Note: not accurate with multi-image. "

Whether it's a tiled pyramid or not shouldn't have an effect. Either way, it's still considered a single "image", even if it's made of multiple tiles. What's meant by "multi-image" is if there are more than one such image displayed in the viewport… Then of course it's not possible to know the image zoom at the viewport level because it doesn't know which image you're referring to. In those cases, you would need to access the image's conversion functions. Anyway, you have just a single (tiled pyramid) image, right? So it doesn't affect you.

I figured out where my numbers are coming from. The image zoom is the width of the displayed image canvas (which in my case, 1200 px wide) divided by the viewport width.  Alternatively, the viewport zoom * 1200 px / original image width. For instance, if I am fully zoomed out (showing the entire image in the display and viewport), the image zoom is displayed as 0.02  (or 1200 / 64256 px).


Upgrade to Qt 5.10

Qt 5.10.x seems to solve all of the issues that we've had to add workarounds for in OS X (and potentially other systems too). We should consider upgrading to Qt 5 as soon as possible. From Gunther: Hi another reference point, I am building VisIt on MacOS X 10.13.3, though not with VisIt's own Qt but a Qt installed through HomeBrew. For a long time, I had problems with toolbars not showing up properly (despite the workarounds Kevin added a while back). I also encountered odd rendering problems etc. However, once HomeBrew transitioned to Qt 5.10 all of these problems disappeared. I am currently using Qt 5.10.1 and could remove the workarounds of using "QCoreApplication::setAttribute(Qt::AA_ImmediateWidgetCreation)" in vtkqt/vtkQtRenderWindow.C and all toolbars still show up as they are supposed to do. It seems that this Qt version fixed a couple of problems that were causing this issues. If there are no other issues holding us back, updating from Qt 5.6 to 5.10 may solve a lot of problems we are encountering. PySide2 seems to be at least working on an implementation for Qt 5.10, though I am not sure if that is in production, yet. Gunther From Kathleen:Looks like on the dev version of pyside2 they are working on support qt5.11 so I think we should be good to uprade qt to 5.10. Still no official releases, though. Kathleen
-----------------------REDMINE MIGRATION-----------------------
This ticket was migrated from Redmine. As such, not all
information was able to be captured in the transition. Below is
a complete record of the original redmine ticket.
Ticket number: 3029
Status: Pending
Project: VisIt
Tracker: Feature
Priority: Normal
Subject: Upgrade to Qt 5.10
Assigned to: Kevin Griffin
Category: -
Target version: 3.0
Author: Kevin Griffin
Start: 02/28/2018
Due date:
% Done: 0%
Estimated time:
Created: 02/28/2018 10:21 am
Updated: 05/15/2018 06:16 pm
Likelihood:
Severity:
Found in version: 2.12.3
Impact: 3 - Medium
Expected Use: 3 - Occasional
OS: All
Support Group: Any
Description:
Qt 5.10.x seems to solve all of the issues that we've had to add workarounds for in OS X (and potentially other systems too). We should consider upgrading to Qt 5 as soon as possible. From Gunther: Hi another reference point, I am building VisIt on MacOS X 10.13.3, though not with VisIt's own Qt but a Qt installed through HomeBrew. For a long time, I had problems with toolbars not showing up properly (despite the workarounds Kevin added a while back). I also encountered odd rendering problems etc. However, once HomeBrew transitioned to Qt 5.10 all of these problems disappeared. I am currently using Qt 5.10.1 and could remove the workarounds of using "QCoreApplication::setAttribute(Qt::AA_ImmediateWidgetCreation)" in vtkqt/vtkQtRenderWindow.C and all toolbars still show up as they are supposed to do. It seems that this Qt version fixed a couple of problems that were causing this issues. If there are no other issues holding us back, updating from Qt 5.6 to 5.10 may solve a lot of problems we are encountering. PySide2 seems to be at least working on an implementation for Qt 5.10, though I am not sure if that is in production, yet. Gunther From Kathleen:Looks like on the dev version of pyside2 they are working on support qt5.11 so I think we should be good to uprade qt to 5.10. Still no official releases, though. Kathleen
Comments:

This is complete. We are using Qt 5.10.1 on the develop branch.


performance question

Hi,
first of all thanks for his lib. It makes really easy to use HTTP2 in python.
I hava a http2 framework using h2 (pure python) and now I compared it with this solution.
I used h2load to test an echo server (h2load -n10000 -c3 -m20 http://localhost:8080)
I expected that c binding is at least 10 time faster but it can handle 'only' ~3000msg/sec (the pure h2 soulution can handle 1120).
Using uvloop the result a bit better: 3680 vs 1288.
In h2load page I saw result like:
'finished in 7.08s, 141164.80 req/s, 555.33MB/s' :-O
(However it is possible that the latter was ran on multicore, while the python version is ran on single core.  )
Do you have any measurement or advise how to make it even faster?
thanks

@drv1234 I very sorry that I answer you one year late :disappointed: Life required my full intention over the last months.
To be honest, I never did performance tests. I used this library primarily as scriptable HTTP/2 client for a study project. Hence, performance was not the main objective.
You can run cProfile and visualize the stats with KCacheGrind. There is a nice blog post explaining the steps in detail. The call graph gives you insights about the bottle necks in the code.
My wild guess is that the Python buffer handling (concatenation of bytes) is the main performance  brake.

hi,
thanks for your reply!
never mind. Unfortunately your solution does not support ssl but it was a requirement for me.
Yes I used cProfile to see the bottleneck.
So meanwhile I changed the code and use nghttp2 python bindings to encode/decode http2 messages (because it is the most time consuming task). And this way I managed to reach 2200 msg/sec (with the whole framework) and this is now enough.
best regards
drv


relay client's preferred language in link preview requests

Closes #1440.

@xPaw, could you test that this stops German Twitter from your server located in Germany? :D

Hmm, I just realized this will fundamentally conflict with #1952. I'm not sure what course of action to take here.

@xPaw, I would say that this PR needs to go first, then in #1952 instead of storing with link as the key, it needs to be a pair link+lang.

@astorije That most likely will defeat the purpose because accept-language header have rather high entropy (browser/os/language dependant).

What about using a normalized version of the accept-language header when storing link previews?

@xPaw, I understand but on the other hand, I'd rather have correct content and imperfect queuing than perfect queuing and incorrect content :man_shrugging:
That said, @williamboman's suggestion is pretty good. Accept language header does indeed vary a lot, but in the boundaries of a standard that we can use to extract language from.
This and that are not what we're looking for exactly because we don't want to provide a list of supported locales I think, but there might be some logic to re-use (or maybe other packages, I haven't looked to far).
I'm still in favor of this PR so we can improve #1952 on top of it.

@williamboman, sorry we just introduced this, but could you fix the conflict? It should be pretty simple.