Error - "ModuleNotFoundError: No module named 'pkg_resources'"

Issue description
Running pipenv commands such as pipenv update results in
Traceback (most recent call last):
  File "/home/lbakken/.asdf/installs/python/3.10.7/lib/python3.10/site-packages/pipenv/resolver.py", line 867, in <module>
    main()
  File "/home/lbakken/.asdf/installs/python/3.10.7/lib/python3.10/site-packages/pipenv/resolver.py", line 841, in main
    _patch_path(pipenv_site=parsed.pipenv_site)
  File "/home/lbakken/.asdf/installs/python/3.10.7/lib/python3.10/site-packages/pipenv/resolver.py", line 48, in _patch_path
    pipenv_dist, pipenv_path = find_site_path("pipenv", site_dir=pipenv_site)
  File "/home/lbakken/.asdf/installs/python/3.10.7/lib/python3.10/site-packages/pipenv/resolver.py", line 10, in find_site_path
    import pkg_resources
ModuleNotFoundError: No module named 'pkg_resources'

Expected result
No ModuleNotFoundError
Actual result
See above stacktrace.
Steps to replicate
This is on an Arch Linux system updated as of 2022-09-09. I'm using asdf to install the latest Python so I can be sure this isn't due to the Python packages that ship with Arch Linux (where I see the same issue)
asdf plugin add python
asdf install python latest
asdf global python latest
pip install --upgrade pip setuptools pipenv
git clone https://github.com/rabbitmq/rabbitmq-website.git
cd rabbitmq-website
pipenv update

$ pipenv --support
Pipenv version: '2022.9.8'
Pipenv location: '/home/lbakken/.asdf/installs/python/3.10.7/lib/python3.10/site-packages/pipenv'
Python location: '/home/lbakken/.asdf/installs/python/3.10.7/bin/python3.10'
OS Name: 'posix'
User pip version: '22.2.2'
user Python installations found:

3.10.7: /home/lbakken/.asdf/installs/python/3.10.7/bin/python3
3.10.7: /home/lbakken/.asdf/installs/python/3.10.7/bin/python
3.10.7: /home/lbakken/.asdf/installs/python/3.10.7/bin/python3
3.10.6: /usr/bin/python3
3.10.6: /usr/bin/python

PEP 508 Information:
{'implementation_name': 'cpython',
 'implementation_version': '3.10.7',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '5.15.65-1-lts',
 'platform_system': 'Linux',
 'platform_version': '#1 SMP Mon, 05 Sep 2022 15:40:39 +0000',
 'python_full_version': '3.10.7',
 'python_version': '3.10',
 'sys_platform': 'linux'}

System environment variables:

PATH
SHELL
HISTCONTROL
HISTSIZE
GIT_PS1_SHOWUPSTREAM
DOTNET_ROOT
SSH_AUTH_SOCK
GIT_PS1_SHOWDIRTYSTATE
SSH_AGENT_PID
GPG_TTY
CLOUDSDK_PYTHON_ARGS
EDITOR
PWD
LOGNAME
XDG_SESSION_TYPE
MOTD_SHOWN
HOME
LANG
HISTFILE
CLOUDSDK_ROOT_DIR
ERL_AFLAGS
SSH_CONNECTION
DOCKER_BUILDKIT
DOTNET_BUNDLE_EXTRACT_BASE_DIR
CLOUDSDK_PYTHON
GIT_PS1_SHOWSTASHSTATE
XDG_SESSION_CLASS
TERM
ASDF_DIR
GOOGLE_CLOUD_SDK_HOME
USER
SHLVL
XDG_SESSION_ID
XDG_RUNTIME_DIR
SSH_CLIENT
HISTFILESIZE
DBUS_SESSION_BUS_ADDRESS
MAIL
SSH_TTY
GIT_PS1_SHOWUNTRACKEDFILES
OLDPWD
GOPATH
PIP_DISABLE_PIP_VERSION_CHECK
PIP_PYTHON_PATH
PYTHONDONTWRITEBYTECODE
PYTHONFINDER_IGNORE_UNSUPPORTED

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

PATH: /home/lbakken/.asdf/plugins/python/shims:/home/lbakken/.asdf/installs/python/3.10.7/bin:/home/lbakken/bin:/home/lbakken/.asdf/shims:/home/lbakken/.asdf/bin:/opt/google-cloud-sdk/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/home/lbakken/.dotnet/tools:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/lbakken/go/bin
SHELL: /bin/bash
EDITOR: vim
LANG: en_US.UTF-8
PWD: /home/lbakken/development/rabbitmq/rabbitmq-website

Contents of Pipfile ('/home/lbakken/development/rabbitmq/rabbitmq-website/Pipfile'):
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

[packages]
lxml = "*"
markdown = "*"

[dev-packages]

[scripts]
preview = 'python driver.py'

Contents of Pipfile.lock ('/home/lbakken/development/rabbitmq/rabbitmq-website/Pipfile.lock'):
{
    "_meta": {
        "hash": {
            "sha256": "076e75a534bbd13b0fa3c15053b54965c90ce9e68e794344af5d29e275e78a49"
        },
        "pipfile-spec": 6,
        "requires": {},
        "sources": [
            {
                "name": "pypi",
                "url": "https://pypi.org/simple",
                "verify_ssl": true
            }
        ]
    },
    "default": {
        "lxml": {
            "hashes": [
                "sha256:04da965dfebb5dac2619cb90fcf93efdb35b3c6994fea58a157a834f2f94b318",
                "sha256:0538747a9d7827ce3e16a8fdd201a99e661c7dee3c96c885d8ecba3c35d1032c",
                "sha256:0645e934e940107e2fdbe7c5b6fb8ec6232444260752598bc4d09511bd056c0b",
                "sha256:079b68f197c796e42aa80b1f739f058dcee796dc725cc9a1be0cdb08fc45b000",
                "sha256:0f3f0059891d3254c7b5fb935330d6db38d6519ecd238ca4fce93c234b4a0f73",
                "sha256:10d2017f9150248563bb579cd0d07c61c58da85c922b780060dcc9a3aa9f432d",
                "sha256:1355755b62c28950f9ce123c7a41460ed9743c699905cbe664a5bcc5c9c7c7fb",
                "sha256:13c90064b224e10c14dcdf8086688d3f0e612db53766e7478d7754703295c7c8",
                "sha256:1423631e3d51008871299525b541413c9b6c6423593e89f9c4cfbe8460afc0a2",
                "sha256:1436cf0063bba7888e43f1ba8d58824f085410ea2025befe81150aceb123e345",
                "sha256:1a7c59c6ffd6ef5db362b798f350e24ab2cfa5700d53ac6681918f314a4d3b94",
                "sha256:1e1cf47774373777936c5aabad489fef7b1c087dcd1f426b621fda9dcc12994e",
                "sha256:206a51077773c6c5d2ce1991327cda719063a47adc02bd703c56a662cdb6c58b",
                "sha256:21fb3d24ab430fc538a96e9fbb9b150029914805d551deeac7d7822f64631dfc",
                "sha256:27e590352c76156f50f538dbcebd1925317a0f70540f7dc8c97d2931c595783a",
                "sha256:287605bede6bd36e930577c5925fcea17cb30453d96a7b4c63c14a257118dbb9",
                "sha256:2aaf6a0a6465d39b5ca69688fce82d20088c1838534982996ec46633dc7ad6cc",
                "sha256:32a73c53783becdb7eaf75a2a1525ea8e49379fb7248c3eeefb9412123536387",
                "sha256:41fb58868b816c202e8881fd0f179a4644ce6e7cbbb248ef0283a34b73ec73bb",
                "sha256:4780677767dd52b99f0af1f123bc2c22873d30b474aa0e2fc3fe5e02217687c7",
                "sha256:4878e667ebabe9b65e785ac8da4d48886fe81193a84bbe49f12acff8f7a383a4",
                "sha256:487c8e61d7acc50b8be82bda8c8d21d20e133c3cbf41bd8ad7eb1aaeb3f07c97",
                "sha256:4beea0f31491bc086991b97517b9683e5cfb369205dac0148ef685ac12a20a67",
                "sha256:4cfbe42c686f33944e12f45a27d25a492cc0e43e1dc1da5d6a87cbcaf2e95627",
                "sha256:4d5bae0a37af799207140652a700f21a85946f107a199bcb06720b13a4f1f0b7",
                "sha256:4e285b5f2bf321fc0857b491b5028c5f276ec0c873b985d58d7748ece1d770dd",
                "sha256:57e4d637258703d14171b54203fd6822fda218c6c2658a7d30816b10995f29f3",
                "sha256:5974895115737a74a00b321e339b9c3f45c20275d226398ae79ac008d908bff7",
                "sha256:5ef87fca280fb15342726bd5f980f6faf8b84a5287fcc2d4962ea8af88b35130",
                "sha256:603a464c2e67d8a546ddaa206d98e3246e5db05594b97db844c2f0a1af37cf5b",
                "sha256:6653071f4f9bac46fbc30f3c7838b0e9063ee335908c5d61fb7a4a86c8fd2036",
                "sha256:6ca2264f341dd81e41f3fffecec6e446aa2121e0b8d026fb5130e02de1402785",
                "sha256:6d279033bf614953c3fc4a0aa9ac33a21e8044ca72d4fa8b9273fe75359d5cca",
                "sha256:6d949f53ad4fc7cf02c44d6678e7ff05ec5f5552b235b9e136bd52e9bf730b91",
                "sha256:6daa662aba22ef3258934105be2dd9afa5bb45748f4f702a3b39a5bf53a1f4dc",
                "sha256:6eafc048ea3f1b3c136c71a86db393be36b5b3d9c87b1c25204e7d397cee9536",
                "sha256:830c88747dce8a3e7525defa68afd742b4580df6aa2fdd6f0855481e3994d391",
                "sha256:86e92728ef3fc842c50a5cb1d5ba2bc66db7da08a7af53fb3da79e202d1b2cd3",
                "sha256:8caf4d16b31961e964c62194ea3e26a0e9561cdf72eecb1781458b67ec83423d",
                "sha256:8d1a92d8e90b286d491e5626af53afef2ba04da33e82e30744795c71880eaa21",
                "sha256:8f0a4d179c9a941eb80c3a63cdb495e539e064f8054230844dcf2fcb812b71d3",
                "sha256:9232b09f5efee6a495a99ae6824881940d6447debe272ea400c02e3b68aad85d",
                "sha256:927a9dd016d6033bc12e0bf5dee1dde140235fc8d0d51099353c76081c03dc29",
                "sha256:93e414e3206779ef41e5ff2448067213febf260ba747fc65389a3ddaa3fb8715",
                "sha256:98cafc618614d72b02185ac583c6f7796202062c41d2eeecdf07820bad3295ed",
                "sha256:9c3a88d20e4fe4a2a4a84bf439a5ac9c9aba400b85244c63a1ab7088f85d9d25",
                "sha256:9f36de4cd0c262dd9927886cc2305aa3f2210db437aa4fed3fb4940b8bf4592c",
                "sha256:a60f90bba4c37962cbf210f0188ecca87daafdf60271f4c6948606e4dabf8785",
                "sha256:a614e4afed58c14254e67862456d212c4dcceebab2eaa44d627c2ca04bf86837",
                "sha256:ae06c1e4bc60ee076292e582a7512f304abdf6c70db59b56745cca1684f875a4",
                "sha256:b122a188cd292c4d2fcd78d04f863b789ef43aa129b233d7c9004de08693728b",
                "sha256:b570da8cd0012f4af9fa76a5635cd31f707473e65a5a335b186069d5c7121ff2",
                "sha256:bcaa1c495ce623966d9fc8a187da80082334236a2a1c7e141763ffaf7a405067",
                "sha256:bd34f6d1810d9354dc7e35158aa6cc33456be7706df4420819af6ed966e85448",
                "sha256:be9eb06489bc975c38706902cbc6888f39e946b81383abc2838d186f0e8b6a9d",
                "sha256:c4b2e0559b68455c085fb0f6178e9752c4be3bba104d6e881eb5573b399d1eb2",
                "sha256:c62e8dd9754b7debda0c5ba59d34509c4688f853588d75b53c3791983faa96fc",
                "sha256:c852b1530083a620cb0de5f3cd6826f19862bafeaf77586f1aef326e49d95f0c",
                "sha256:d9fc0bf3ff86c17348dfc5d322f627d78273eba545db865c3cd14b3f19e57fa5",
                "sha256:dad7b164905d3e534883281c050180afcf1e230c3d4a54e8038aa5cfcf312b84",
                "sha256:e5f66bdf0976ec667fc4594d2812a00b07ed14d1b44259d19a41ae3fff99f2b8",
                "sha256:e8f0c9d65da595cfe91713bc1222af9ecabd37971762cb830dea2fc3b3bb2acf",
                "sha256:edffbe3c510d8f4bf8640e02ca019e48a9b72357318383ca60e3330c23aaffc7",
                "sha256:eea5d6443b093e1545ad0210e6cf27f920482bfcf5c77cdc8596aec73523bb7e",
                "sha256:ef72013e20dd5ba86a8ae1aed7f56f31d3374189aa8b433e7b12ad182c0d2dfb",
                "sha256:f05251bbc2145349b8d0b77c0d4e5f3b228418807b1ee27cefb11f69ed3d233b",
                "sha256:f1be258c4d3dc609e654a1dc59d37b17d7fef05df912c01fc2e15eb43a9735f3",
                "sha256:f9ced82717c7ec65a67667bb05865ffe38af0e835cdd78728f1209c8fffe0cad",
                "sha256:fe17d10b97fdf58155f858606bddb4e037b805a60ae023c009f760d8361a4eb8",
                "sha256:fe749b052bb7233fe5d072fcb549221a8cb1a16725c47c37e42b0b9cb3ff2c3f"
            ],
            "index": "pypi",
            "version": "==4.9.1"
        },
        "markdown": {
            "hashes": [
                "sha256:cbb516f16218e643d8e0a95b309f77eb118cb138d39a4f27851e6a63581db874",
                "sha256:f5da449a6e1c989a4cea2631aa8ee67caa5a2ef855d551c88f9e309f4634c621"
            ],
            "index": "pypi",
            "version": "==3.3.7"
        }
    },
    "develop": {}
}

@lukebakken I have made a branch that modernizes some of the patching going on and utilizes the internal pkg_resources provided by pip -- if you have a moment to give it a try I would be very curious if it solves your problem.  It is linked to this issue report.

Also will depend on https://github.com/sarugaku/requirementslib/pull/343

so let me spend some more time on this

No rush! I'll keep an eye out here!

If you want to try it @lukebakken -- I believe I got it working today with:   https://github.com/pypa/pipenv/pull/5350
Also it cleaned up a couple other issues we were having, so I am pretty excited about it.

@matteius yessir, PR #5350 fixes the issue! Output from my linux env:
$ python -m pip install git+https://github.com/pypa/pipenv@issue-5349
Collecting git+https://github.com/pypa/pipenv@issue-5349
  Cloning https://github.com/pypa/pipenv (to revision issue-5349) to /tmp/pip-req-build-r7w8taoy
  Running command git clone --filter=blob:none --quiet https://github.com/pypa/pipenv /tmp/pip-req-build-r7w8taoy
  Running command git checkout -b issue-5349 --track origin/issue-5349
  Switched to a new branch 'issue-5349'
  branch 'issue-5349' set up to track 'origin/issue-5349'.
  Resolved https://github.com/pypa/pipenv to commit 55d6f5b66d580460b850c9dbb761e8fa144e13e5
  Running command git submodule update --init --recursive -q
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: setuptools>=36.2.1 in ./.asdf/installs/python/3.10.7/lib/python3.10/site-packages (from pipenv==2022.9.9.dev0) (65.3.0)
Requirement already satisfied: virtualenv in ./.asdf/installs/python/3.10.7/lib/python3.10/site-packages (from pipenv==2022.9.9.dev0) (20.16.5)
Requirement already satisfied: virtualenv-clone>=0.2.5 in ./.asdf/installs/python/3.10.7/lib/python3.10/site-packages (from pipenv==2022.9.9.dev0) (0.5.7)
Requirement already satisfied: certifi in ./.asdf/installs/python/3.10.7/lib/python3.10/site-packages (from pipenv==2022.9.9.dev0) (2<IP_ADDRESS>)
Requirement already satisfied: filelock<4,>=3.4.1 in ./.asdf/installs/python/3.10.7/lib/python3.10/site-packages (from virtualenv->pipenv==2022.9.9.dev0) (3.8.0)
Requirement already satisfied: platformdirs<3,>=2.4 in ./.asdf/installs/python/3.10.7/lib/python3.10/site-packages (from virtualenv->pipenv==2022.9.9.dev0) (2.5.2)
Requirement already satisfied: distlib<1,>=0.3.5 in ./.asdf/installs/python/3.10.7/lib/python3.10/site-packages (from virtualenv->pipenv==2022.9.9.dev0) (0.3.6)
Building wheels for collected packages: pipenv
  Building wheel for pipenv (pyproject.toml) ... done
  Created wheel for pipenv: filename=pipenv-2022.9.9.dev0-py2.py3-none-any.whl size=3305307 sha256=dd974aca25c4e354ffeac1554521481e6027c3a44bf9fe21bf7cd77dd1d34b81
  Stored in directory: /tmp/pip-ephem-wheel-cache-togiolha/wheels/e1/b8/8d/da1025a83b19047867851c98a66e4d2dfa4c3ad91a74b4f765
Successfully built pipenv
Installing collected packages: pipenv
  Attempting uninstall: pipenv
    Found existing installation: pipenv 2022.9.8
    Uninstalling pipenv-2022.9.8:
      Successfully uninstalled pipenv-2022.9.8
Successfully installed pipenv-2022.9.9.dev0

lbakken@shostakovich ~/development/rabbitmq/rabbitmq-website (live =)
$ pipenv update
Running $ pipenv lock then $ pipenv sync.
Locking [packages] dependencies...
Building requirements...
Resolving dependencies...
✔ Success!
Locking [dev-packages] dependencies...
Updated Pipfile.lock (e78a49)!
Installing dependencies from Pipfile.lock (e78a49)...
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.
All dependencies are now up-to-date!

THANK YOU

I'm happy to do additional testing, so just let me know what you'd like.
I also have a Windows 10 pro environment I use for RabbitMQ development, which includes Python dev as well.

2022.9.20 is released


MudCarousel BulletTemplate with item as context

Feature request type
Enhance component
Component name
MudCarousel
Is your feature request related to a problem?
I would like to add carousel bullets that display some information about the content they represent
Describe the solution you'd like
Instead of only passing a bool representing whether that bullet is selected, can BulletTemplate be a render fragment that gets both the selection state AND the item so the bullet can render based on properties from the item.
Have you seen this feature anywhere else?
No response
Describe alternatives you've considered
No response
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

This would be very useful when using the carousel for form wizards, which I've done more than once now.
Then you want to show which steps are completed or which have form validation issues.
Unfortunately, the BulletTemplate itself can't change it's context type without it being a breaking change, so this likely requires another template property.

I've just done a quick test replacing bool with this and it doesn't break any tests:
{
    public CarouselBulletItem(bool selected)
    {
        Selected = selected;
    }

    public CarouselBulletItem(T item, bool selected)
        : this(selected)
    {
        Item = item;
    }

    public T Item { get; }

    public bool Selected { get; }

    public static implicit operator bool(CarouselBulletItem<T> item) => item.Selected;
}

I did have to do a check in the view and use the correct constructor depending on whether ItemSource was set or not


Workload-updater ctrl: Cleanup with fakeclient, informers, patchset and libvmi

What this PR does
workload-updater controller pkg cleanup:

Use the patch package to replace the hardcoded patch operations. This improves the readability and make the code more cohesive.
Remove the usage of the informers in the workload-updater controller.
There is no need to hold informers, narrowing down
the interface can decrease the probability of making
a mistake.
Use fake client instead of mocking in order to simulate real behavior.
Use libvmi instead of NewMinimalVMI

Partially address: https://github.com/kubevirt/kubevirt/issues/11654
Partially address: https://github.com/kubevirt/kubevirt/issues/12059
Special notes for your reviewer
A libvmi/status pkg was introduced so that it can be used by unit tests to simulate certain situations.
This pkg was created to be only used by unit tests or controllers. In any case, any outside usage (e2e or production code except controllers) will produce a vmi that will be rejected, since by the API server, since /status cannot be edited.
Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[ ] Design: A design document was considered and is present (link) or not required
[ ] PR: The PR description is expressive enough and will help future contributors
[ ] Code: Write code that humans can understand and Keep it simple
[ ] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
[ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[ ] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
[ ] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
[ ] Community: Announcement to kubevirt-dev was considered

Release note

NONE

/cc @EdDev

/hold
will be rebased on https://github.com/kubevirt/kubevirt/pull/12449

/unhold
Rebased on https://github.com/kubevirt/kubevirt/pull/12449
@jean-edouard PTAL

Thank you @EdDev for the review! I pushed the requested changes (some of them).
PTAL

@jean-edouard Rebase to handle new unit test added here https://github.com/kubevirt/kubevirt/pull/12324

/lgtm


Migrate to N-API

So, for everyone wanting to help on this migration:

We have to uncomment everything that's on here: https://github.com/pulsar-edit/superstring/compare/master...pulsar-edit:superstring:napi#diff-0d6aa7470314ca774fd7e07f67b35ecd3045fe5cb3a0e5c99f48bae897905d32

It helps quite a lot to have a LSP server running. The LSP I know that works with it uses Clang, and it expects a compile_commands.json on the root of the code. To generate this just run npm install then run:

node-gyp -- configure -f=compile_commands_json

This will generate both Debug/compile_commands.json and Release/compile_commands.json. Just select one and move to the root, like mv Release/compile_commands.json .

Some tricks to help the migration: in the Nan code, constructors of ...Wrapped classes can receive arbitrary data. This basically do not work with Napi, so we need to generate a Napi::External<arbitrary-data> and pass this to the contructor. There's an example on PointWrapper class: https://github.com/pulsar-edit/superstring/compare/master...pulsar-edit:superstring:napi#diff-ca393bd63cb0ed098a1eee4542120db434961ff60b65c22b2476c15eb954451aR52-R54

Other trick is that Nan have lots of Unwrap() and Wrap(). These are not necessary on Napi (Napi is saner in this sense)

Some APIs return nop. This is No-op, so I don't see any reason to keep them. I'm removing it completely, just so people know :)

Replaced by https://github.com/pulsar-edit/superstring/pull/5, that is a more complete version


Update to Beta 6 - Delete useless images

This PR update dependencies  to 2.0.0 beta-6 and delete unused images

Ready for review.

Version was updated to beta 8


Allow using Chopsticks from Jupyter Notebook

Would be interesting to make Chopsticks available in Jupyter notebooks - ie. the ability to create a function without a notebook cell and call it on a remote host.
This would require serialising the function code, which might require a new serialisation method.

Functions defined in a notebook are defined within the __main__ module. inspect.getsource() can find the source code for a function defined in __main__, meaning it could be serialised as source code. It would also be possible to inspect the AST or bytecode for LOAD_GLOBAL operations, allowing the call to close over globals that are needed to execute the function (in particular, imported modules).
Special-casing the behaviour of callables defined in __main__ to work in this way would both make Chopsticks work in notebooks, as well as removing some of the complications of how to define single-file Chopsticks scripts. It would, however, be a backwards-incompatible change.

I have an implementation of this idea working in ed9179c38ed3d43db52862b6f0fc663a0cfa54a4.


logstash: fix passthru.tests

Motivation for this change
hydra failure on master https://hydra.nixos.org/build/151770288/nixlog/1 for the tarball job
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Since this is a channel blocker and the tests pass, I'm going to be a little brash and merge.


Test tpch about arrowStream node

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
How was this patch tested?
(Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this)

Looks like this PR is not needed any more. Closing it for now. Feel free to reopen it if it's still needed.


Bug report - Overlapping Menus

Testing out Volt on the following Android Device:
- Device: Huawei P20
- Model: EML-L29
- EMUI version: 10.0.0
- Android version: 10
- Processor: HiSilicon Kirin 970

Initial installation went well without any problems. Used the provided volt-0.4.4.apk to install it

This was the 1st overlap that I saw when clicking on the three dots (menu) in the top right of the screen & then clicking on the Backup option. The 4 circles run over the number 2. This happens in other screens asking for the pin as well but i don't have pics of them as well.

When viewing your Mnemonic the 1st & 6th words are covered by the Mnemonic | Descriptor "switch box" which makes them illegible.

Same happens with the Descriptor option as the "switch box" runs over the top of the QR code.

Additional Notes
- When viewing your `xpub` there is no problem with the way it is displayed & nothing is blocking the QR code.
- When viewing your Backup via the actual `Backup` button, there is no problem with being able to view the entire Mnemonic Phrase
- I know it's probably on the roadmap already but can we please add as many African fiat currencies as possible to help erase the need for mental conversations into local fiat currencies? Will also help people know the app was made with them in mind.

Thank you for all the hard work you guys have put into this. Will be testing it our more & more over the rest of this month as my spending wallet.

Hi @BigBossRabbit, thank you for the thorough testing and surfacing the overlapping issue!
I'll go through each and adjust the styling for this screen size range. These changes will be reflected in the next version v0.4.5-beta.1.
RE currencies, correct, I'll be adding more African currencies for sure; depends on finding another source other than Coingecko to get those additional currencies.

Hi @Zero-1729 many thanks for your reply & consideration of the above testing.
Looking forward to fully utilizing  your project & introducing it to more people on my side of the continent.
Will keep testing & report any other findings in the same manner 🫡

Thanks again for reporting and the tests. Should be all good now in the v0.4.5-beta.1 update.


[AutomatedAnalysisV0] Fix critical security issues

Required Information
Entering this information will route you directly to the right team and expedite traction.
Question, Bug, or Feature?
Type: Bug
Enter Task Name: AutomatedAnalysisV0
list here (V# not needed):
https://github.com/Microsoft/azure-pipelines-tasks/tree/master/Tasks
Issue Description
Compliance build started to report new critical security alerts since 12/08.
To reproduce this issue: run npm audit
AppCenterTestV1 task right now has 3 critical issues.
Audit log attached.
Task logs
AutomatedAnalysisV0.json.txt
Troubleshooting
Checkout how to troubleshoot failures and collect debug logs: https://docs.microsoft.com/en-us/vsts/build-release/actions/troubleshooting

Does not have own dependencies, so npm audit resolves root dependencies of repository.
This issue can be closed


Select all Teams option fails

When we select all Teams it appears to select them but when the message comes to be sent, it only sends it to 12 out of 5K teams.  The report seems to indicate that the message was only set-up to send to 12 teams.  Further investigation i.e. saving a message to all teams then re-editing it, shows that it loses all but a handful of teams from it's send list.
This is happening in 2 out of three domains.

Hi @David-hughes8 ,
Thank you for raising the query. We will get back to you soon.

Hi @David-hughes8 ,
Through which sending option, the message has been sent.

The version in question is the community version, which has the option to Select All the teams which have TCC installed in them.
However we are also experiencing the same problems, after the update in relation to actually accessing the Authors page in the two domains we've updated to the resolve the authentication problem, caused by the update to accommodate Teams 2.

Hi @David-hughes8 ,
Please share your mail d id(teams id or outlook id) so that we can discuss the issue internally.


Use example domain for email

<EMAIL_ADDRESS>could be an actual email so use a reserved domain instead.

Thanks!


Move PatientAge to study level

In code and database schema.

Closing.

Performance and usability of the DICOM browser have been improved in https://github.com/commontk/CTK/pull/886
Use of display tables to allow showing derived and custom columns in DICOM browser added in https://github.com/commontk/CTK/pull/858


STAT-186 ⁃ update endpoint configuration name

I would like to propose the following config option name changes:

listen-endpoint > p2plisten-endpoint
public-endpoint > p2pserver-address
http-server-endpoint > httplisten-endpoint, http-server-address
remote-endpoint > p2ppeer-address

*endpoint is used by the server as an internal bind address for listening
*address is publicized for clients to use as a connect-to address.
A listen endpoint should typically contain an IP address of <IP_ADDRESS> (INADDR_ANY) whereas
a publicly accessible address should use a dns-resolvable canonical hostname.
I feel like the current p2p config names are ambiguous and the http server address should be
split into separate internal/external values

➤ Brian Johnson commented:
[~phil.mesnier]
3. http-server-endpoint > httplisten-endpoint, http-server-address
Which am I suppose to rename this to?  Adding a second parameter is out of scope of this.  I will do this:
3. http-server-endpoint > httpserver-address
unless I hear otherwise.

➤ Phil Mesnier commented:
I was trying to point out that http-server-endpoint is overloaded, it is both the address the listen socket binds to and the address potentially advertised or otherwise referenced by clients, Depending on context these may be different. However I agree with you about not adding a new parameter now, so you chose correctly.

➤ Brian Johnson commented:
Created PR and will need [~phil.mesnier] to confirm before committing.

➤ Corey Lederer commented:
[~brian.johnson] could you please add Acceptance test criteria to this for the HK team to specifically know what/how to test?  Moving this back to code review while we place ATC in the ticket.

➤ David Moss commented:
[~brian.johnson] Was this confirmed?

➤ Corey Lederer commented:
Moving to finished, this was moved to closed-withdrawn by mistake.


Need factory mechanisms

Originally reported on Google Code with ID 127

In the following code, A has a method to create a B. But there is no way
anywhere to create any subclass of B (C or D). This means people have to
write extra boilerplate code.
class A
{ * -- 1 B; }
class B
{ bAttr; }
class C
{ isA B; cAttr; }
class D
{ isA B; dAttr; }
Simple extra methods in A to create and add each subclass of B would be
one solution. See the FactoryMethod and AbstractFactory patterns for other
solutions.

Reported by @umple on 2011-06-24 20:34:42

You can create a C (or a D) in the example given, and then pass it to the constructor of A.


changes made to handle multiple provider name

Poor literary style using many ands, but I guess it works for GFF.
There is a danger of it choking if it doesn't get any providers back.

not keen on using "and" as a separator - ; or , would be better I feel. Also, the |'' bit should probably be |[] though I much prefer an explicit if(defined && scalar>0) rather than a binary statement, but that might be too verbose for some.

The problem with ';' and ',' as separators is that they have special meaning in GFF; so they would have to be escaped... It's pretty uncommon to have more than one provider (I think?) and if there are multiple providers, then there will probably be two of them. So " and " isn't a good separator in general, but here I think it works.

where does this go in GFF anyway? Would seem overkill to be on each feature!

it is just part of the meta data in the header

So, do ; and ' have special meaning in the header?

No, metadata is just text; I was thinking of attributes in my earlier comment, so that's not pertinent.

I'm happy to take the changes in, as it does not change anything for Ensembl species where we don't have any providers
would be nice if you could come to a consensus as to what you'd like to have for eg though

My inclination is ';' as a separator as this is in the header, but thats
just my view, not an authorative statement.

@ckongEbi can you make the appropriate changes in your repo for the pull request?

Sure, i can do that.


Support unauthorized devices when perform ListDevices()

Currently, the ListDevices method is returning error if there are unauthorized devices in the list of physical-connected devices. Moreover, when we perform State() on such devices, an error will arise.
This PR intends to:

Remove 5-field-constraint check when perform devices-l since the returned string would not meet the requirement
Explicitly return StateUnauthorized if the error message from State() contains unauthorized

@zach-klippenstein please take a look on this one. Thanks!

@zach-klippenstein  Btw, feel free to write squash commit message to match the project's vibe. :D


artifacts: add support for artifacts spec

https://github.com/notaryproject/notation
https://github.com/oras-project/artifacts-spec
https://github.com/oras-project/artifacts-spec/blob/main/artifact-manifest.md

Support included in v1.3.4
https://github.com/orgs/anuvu/packages?repo_name=zot
https://github.com/anuvu/zot/releases


Update npm package to 2.1.0

Hello,
Thank you for providing us with this great library but the latest version available with Composer is 2.1.0 while the version available with npm is still 2.0.4 and I like to manage frontend dependencies with npm.
Could please update the npm package ?
Thank you

Done mate, thanks for your warning.


Smoke Tests: Configure authority host from AZURE_CLOUD, use dynamic resources

configure authority host from AZURE_CLOUD and use dynamic resource allocation/deallocation

/azp run java - smoke-tests


Question: How to set the magnification of an image.

I have images that are 40x and images that are 20x zoom. I want to open them both at 20x zoom. How can I open the 40x images at 20x zoom? Is there any supported way other than opening the image and calling read_block with a manual size of width/2 and height/2? Is calling read block with a halved resolution the same as reading the image at a different magnification?
Thank you for your help!

Yes, it is correct. To get 20x from 40x image, you need to divide block sizes by 2. Unfortunately, there is no direct way to specify desired magnification. Do you think, it would be helpful to introduce the possibility to specify magnificatoin instead of the size?

The reason I asked is because I know with open slide there are "levels" at different magnifications. However, I realized that the levels do not correspond to every magnification anyway (i'm not sure if this is a scanner issue, a code issue, or an SVS issue).
For instance my 40x images have magnifications of 40x, 10x, etc. I was hoping to avoid a simple resizing function because I was worried that resizing an image is potentially meaningfully different from viewing it at a different magnification (a difference that I'm sure would be minor). I did not want to introduce bias into my dataset for deep learning to bias towards.
I've been having a memory issue with openslide where slideio is able to easily read these large files into memory but openslide is not (and slideio is about 50% faster too). For that reason I wanted to use slideio where possible, so I'm replacing openslide with slideio in my code and resizing as above.
To answer your question: I don't think a magnification feature is necessary (maybe a level feature, but only if there is a functional difference between resizing and reading at a different level - I'm afraid I wouldn't know).
Does that make sense?

Yes, it makes sense. SlideIO also uses "levels," although it conceals their usage. When read_block is invoked with the 'size' parameter, the library searches for the most appropriate level for resizing. If your image has levels such as 40x, 10x, and 5x, and you call read_block with a downscaling factor of 2 (resulting in a magnification of 20x), the library will use the 40x level for resizing. If your image contains a 20x level, this level will be directly read without resizing. In cases where the requested magnification falls between two levels, the library will select the larger of the two and use it for downsampling to achieve the requested magnification.
I'm glad that you find the library useful. Do not hesitate to contact me should you have any questions or a feature request.
I would appreciate if you add a star to the repository.

Done! That's what I figured you were doing.
I will say it would be nice to be able to get the dimensions of the various levels so that if I want to display at a specific level I can set the size to those dimensions. That would be my only feature request.
Thank you for everything you have done to make this and support it!


Update generic.py Improve error message for unsupported URLs

Mention that this PR addresses issue #5704 by enhancing the error message for unsupported URLs to make it more informative.

Thanks for your suggestion, but it seems to me that the proposed new text is just saying what the existing code does in more words?
Other readers may care to comment ...

agree with @dirkf .
Thanks for the effort! This might not have enough changes to warrant a PR—let's revisit if more updates are needed.


⚠ Ansible Galaxy API has degraded performance

In 56bd96f, Ansible Galaxy API (https://galaxy.ansible.com/api/v2/) experienced degraded performance:

HTTP code: 200
Response time: 1689 ms

Resolved: Ansible Galaxy API performance has improved in 7ef3b28.


fix(gh-pages): add new favicon icons

fix(gh-pages): add new favicon svg and png
Added new favicon files to the site assets for better compatibility with modern browsers.
Closes #1533.

:tada: This PR is included in version 4.5.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add support for charLength

See https://groups.google.com/a/chromium.org/forum/m/#!msg/blink-dev/SwwNS8tPkzw/K1UaiYgqCAAJ

Intent to ship: https://groups.google.com/a/chromium.org/forum/m/#!msg/blink-dev/wXbIl5mq4eo/GSyt-hXeBQAJ


Better err handling to customer

Which issue this PR addresses:

Fixes
What this PR does / why we need it:
The current error handling will display API errors to the customer, mistaken as input errors by the customer. For example, if the API call has a timeout, we currently display that to the customer and tell them their subnet was wrong. This restricts those messages to only 404 not founds.

Test plan for issue:

Is there any documentation that needs to be updated for this PR?

e2e has no influence on these changes so merging.


Better error messages when builds break

Just had an issue where I was unable to deploy the blog successfully due to a broken build. It turned out I was missing a link from a menu item in the YAML, but I did not see any useful output in the console that would help me diagnose this.
Can we fail more loudly here, with an error message that might help me debug issues like these?

We can show more detailed errors in the output, either in the console or browser. Can you share what the scenario was that caused the error so we can reproduce it?

Yes. Consider the following YAML from navigation.yml:
-
  name: "Ignoring errors"
  link: "/nodejs/configuration/ignore-errors.html"

If you add a menu item to the YAML file and omit the link: key, the build will fail, but without a helpful error message.


Splash screen not showing anymore

Hello, I'm using the latest version of Bitcoin Core on Windows 11. The splash screen showing how many blocks still need to be retrieved and how long it will take is not showing anymore after the blockchain has been 100% syncronized. I recall I could hide that window but I don't remember if I accidentally hid it or if Bitcoin Core automatically closed if after finishing syncronizing. I also reset Bitcoin Core's options and replaced default ones but that didn't help. Can you please let me know how I can recall that window again, which was shown just after launching Bitcoin Core?

This is the issue tracker for the website. You can open an issue on the bitcoin-core/gui repo for GUI related issues.


[Bug] Remove cookie check when validating offline sessions

WHY are these changes introduced?
Offline sessions don't need or require cookies in order to be used, yet validateAuthCallback always checks for cookies.
This makes it difficult to use offline sessions in a scenario where cookies cannot be used, despite it being possible.
WHAT is this pull request doing?
Add a isOnline parameter to validateAuthCallback. By default it is set to true so the change is non-breaking.
If it is set to false, all steps where cookies are checked are bypassed. Also, the session is loaded from the default offline session instead of from the cookie.
Type of change

[x] Patch: Bug (non-breaking change which fixes an issue)

Checklist

[x] I have added a changelog entry, prefixed by the type of change noted above
[x] I have added/updated tests for this change
[x] I have documented new APIs/updated the documentation for modified APIs (for public APIs)

I also removed the tests that were checking to see if the cookies were updated for offline sessions.
They didn't break before because I forgot to add the isOnline = false parameter to them.

Hi @thecodepixi
Could this be committed please?

@thecodepixi it would still be great to get this in!
Given there are now conflicts, if we fix them, could we get a commitment from the Shopify side to get this reviewed and merged in a reasonable amount of time?

@shoenseiwaso Thanks for raising this to our attention.
The code does seem to make sense but wondering what specific scenario where cookies cannot be used for which you are trying to solve?  Depending on the scenario, there might be an alternative way to solve for it.

@mkevinosullivan would you be able to take another look at this? We would very much like to get this merged.

@mkevinosullivan would you be able to take another look at this? We would very much like to get this merged.

@mkevinosullivan Rebased and updated changelog!

@fjij Would you mind rebasing again?  Sorry, lots of recent changes being merged in.

@fjij, @shoenseiwaso, sincere apologies on the delay on this one.  We've been going back-and-forth with our OAuth team in relation to a variety of OAuth items as part of a larger review and it appears that we're unable to commit this change.
We need to keep the cookie check in place as a countermeasure against CSRF attacks against redirect-uri.  While we inherently know the value of the session id in the offline scenario and don't need the cookie value to look up the session details, the presence of the cookie is needed to confirm that the browser at the end of the OAuth flow is the same as the one that originated it to mitigate against this particular attack vector.
While we'll likely make some minor improvements to this component in the near future, we're unable to get rid of the cookie.


Actions run on pull requests

Signed-off-by: Yadunund Vijay<EMAIL_ADDRESS>

Any clue what is happening with the build failure?
Run cd /home/rmf_demos_ws/src/rmf/rmf_demos
  cd /home/rmf_demos_ws/src/rmf/rmf_demos
  git checkout "${GITHUB_REF:11}"
  shell: bash --noprofile --norc -e -o pipefail {0}
error: pathspec '25/merge' did not match any file(s) known to git.
##[error]Process completed with exit code 1.


[reprounzip-docker] copy extracted DATA directory instead of data.tgz

Hello,
Regarding reprounzip docker, you can achieve smaller image sizes by copying over the untarred DATA directory instead of copying and then extracting data.tgz. The delta image size is the size of data.tgz. Is there a reason to have data.tgz inside the image?
Also, all of the COPY instructions can be merged into one, because they copy into the same directory (/). The Dockerfile could look like this:
FROM debian:stretch
COPY busybox DATA rpz-files.list rpzsudo /
RUN chmod +x /busybox /rpzsudo

If this looks OK, I would be more than happy to submit a PR.
Thanks,
Jakub

Hi and thanks for looking into this!
Basically the semantics I want:

Copy the files from the TAR into the image (with UNIX permissions/ownership)
Replace existing files with the ones from the image
For directories that exist in both, use the UNIX permissions from the TAR
If overwriting with a different type (eg extracting a file over a directory, or a directory over a file) use the version from the image

I have been struggling a long time with the extraction of data in the image. I have changed the tar flags multiple times, and there are still issues, like #145.
One set of flags I was using before correctly merged the files from the image with the files from the TAR, but failed if overwriting a directory with a file (as it can happen when unpacking the Fedora tree structure over the Debian one). The current flags (11929b30) don't fail in that case, but tend to remove existing files from directories when extracting files into it.
I actually considered writing the Docker image manually so that I have better control over this. Instead of writing out a Dockerfile and running it, just assembling an image tar or container tar, and loading it with docker load or docker import.
The issue I see with your own approach is that file and directory ownership would not be carried over. Permissions can also be lost if you are doing this on Windows, since you are round-tripping through the Windows file system that doesn't support them.
Indeed it is very unfortunate that the data.tgz still takes unnecessary space as an image layer. I will probably go with writing out a container tar for docker import when I have time, but I am open to all suggestions.

Thanks for your detailed reply. The COPY instruction should preserve metadata (including permissions?) but I did not consider the effects of round-tripping through the host. With that and your desired semantics in mind, I will test a few possibilities.
On a related note, I am working on an alternative method to minimize Docker containers with neurodocker reprozip-trace. At the moment, that command (1) creates a miniconda environment that has reprozip, (2) runs reprozip trace on an arbitrary number of commands, (3) runs reprozip pack, and (4) copies the pack file onto the host. The user would use reprounzip docker to create a new Docker image from that pack file.
The alternative I am working on is to remove all of the files within the running container that were not caught by the trace, and then docker export that container to squash it into a newly minimized image. In my opinion, this would give the smallest image possible. I might do what reprounzip docker does and install /busybox. I am still in the process of testing this, but how does that sound to you?

I think the best solution for both of us is to write out a Docker container TAR directly for docker import, you by going through the config file and copying from the old image to the new TAR, and me by extracting from the RPZ.

That sounds good.

Also note that being able to trace Docker images is something we are interested in! Tracing without installing ReproZip inside the container should be possible (but not super straightforward).
I do not have time to work on it now unfortunately, as other matters are more pressing (but less fun). However should you find a reliable method to trace Docker images it is definitely something we'll want to support and distribute as part of ReproZip.

Can you explain a little bit how one could trace inside a container without installing ReproZip? I might be able to work on this.

The processes in the container's PID namespace also exist as processes on the host, so you can attach to them from the outside. However you would need the application to wait for ReproZip to attach before it starts.
I imagine something like this:

Create container
Inject a little dummy executable that STOPs (or does PTRACE_TRACEME, like normal ReproZip does) before calling the actual entrypoint
Run container (starting with dummy)
Attach ReproZip to process 1 of container (dummy), send it CONTINUE signal
Trace application as normal, being aware that the filesystem is different (paths used by the container refers to inside the container, not the host where ReproZip is running)

Packing would be a different process, reading files from the original image instead of the filesystem.
There might even be a way to have the ReproZip tracer itself be in a (separate) container, putting it in the same PID namespace as the container we want to trace using docker run --pid=container:othercontainername

Also note that if using things like docker-machine or "docker native" the "host" is the VM, which would make this a bit annoying (unless ReproZip is also running in a container).
I have most of the code for this and might take a shot at it when I find the time, of course you are welcome to try and make sense of my code 😅

Thanks, that makes sense to me. Is the code you wrote in a branch in this project?
The Docker documentation for --pid option is really helpful.

Have you considered using the ADD instruction for data.tgz? That instruction will extract the .tgz automatically. I tested this and the image size delta (between using COPY data.tgz and ADD data.tgz) is the size of data.tgz. But I haven't tested this further, so I do not know what happens to file permissions and whether existing files/directories are overwritten.

I think ADD didn't behave properly when the permissions for directories differ between the tar and the container, and when the same path is a file and a directory. Also we can't rely on Docker's command behavior staying consistent across versions...

Hi @remram44 - can you share the code you have to run a trace without having reprozip installed? I'd like to have a go at it.

Hi @kaczmarj, unfortunately I have no code for this yet. This would be a change in the beginning of the tracer (instead of current fork_and_trace()) + some wrapper for the Docker container (to wait for ReproZip to attach).

I misunderstood you when you said to try to make sense of your code :)

Using multi-stage builds would fix the original issue (that the .tar.gz file is still counted towards image size after decompression). A pseudo-Dockerfile would look like this:
FROM debian:stretch
COPY data.tar.gz /
RUN tar xzf tar.gz --strip-components 1

RUN rm /data.tar.gz
FROM debian:stretch
COPY --from=0 / /

the new pieces to the dockerfile would be those last three lines. it will start a build from scratch and copy root over. this will copy all of the necessary files but the data.tar.gz file will no longer count towards the build.
if this looks ok with you @remram44 i would be happy to submit a pr

I will look into it.
Do you think it would be possible to use a "reprounzip" docker image as the other container, so that anyone can build a Docker image from an RPZ like this? (apologies for the syntax, I have never used multi-stage builds, hopefully you get the idea)
FROM reprounzip
COPY experiment.rpz /data
RUN reprounzip-docker-setup /data/experiment.rpz /output

FROM scratch
COPY --from=0 /output /

yes i think that would work. bootstrapping scratch is also a good idea, but the contents of /output will probably have to be present in the root directory. maybe busybox can be copied as well, and the contents of /output can be moved up to / with busybox mv.


V2 Support

Not really an issue, but I forked your library and ported it over to InfluxDBv2.0 so it works with the new release. See https://github.com/davidgs/ESP8266_Influx_DB_V2

I woudl be happy to merge your Pull Request..
Already checked if I could quickly create a PR to merge back your changes but it seems that you copied all the code into a new repo, instead of creating a fork.

I looked at doing this as a PR, etc. but given the changes, it did not appear to be possible to make the v1.x library co-exist with the v2 stuff since the Authentication, etc. has changed so much.
I can, if you'd rather, look again at doing it that way and do it as a fork of your code instead. Let me know if you'd like me to do that.

Went back and did this as a fork/PR, now submitted.

Thanks, added it as separate brancht.


Updated Confirmation Page Icons and Styling

What (if anything) did you refactor?

Updated confirmation: icons and section styling.

More of a question than a request right now. . . How is the icon being aligned right now? Some of them look like they're top aligned with the heading in the section and some look like they're hitting the middle of the heading text? Just wanna get some clarity on this and probably make sure they're all aligned the same way.

I've updated this PR. The icons are now consistently aligned to the top.

More of a question than a request right now. . . How is the icon being aligned right now? Some of them look like they're top aligned with the heading in the section and some look like they're hitting the middle of the heading text? Just wanna get some clarity on this and probably make sure they're all aligned the same way.

I've updated this PR. The icons are now consistently aligned to the top.

Thanks @mexi-cano! This looks good on my end now.

Looks good. @sydney-devine let me know if I can merge.

Looks great - go for it!


Using keep-awake in react application seems not to be supported.

Hi.
I'm building a React application that runs on tip of capacitor-ionic. I've added the keep-awake plugin to my react project. I'm using keep-awake version 1.0 due to the version of capacitor i'm using (i'm using version 2.4.7, latest stable).
When i try to keep awake the screen i receive this message in the console: Line 2 - Msg: KeepAwake does not support web.
Newer versions of keepawake do support webview applications? Is it a limitation of version 1.0 or there is no way to get this functionalities available to web applications?
Thanks in advance.

Please make sure that the plugin is imported correctly.
Usage example:
import { Plugins } from '@capacitor/core';

@Component({
  template: `
    <button (click)="keepAwake()">keep awake!</button>
    <button (click)="allowSleep()">let me sleep!</button>
  `,
})
export class AppComponent {
  async keepAwake() {
    await Plugins.KeepAwake.keepAwake();
  }

  async allowSleep() {
    await Plugins.KeepAwake.allowSleep();
  }
}

I'm sorry robin, I've been out of the office these days.
I've tried your code and it runs like a charm (i've had an error on plugin initialization on my MainActivity), sorry for that and thanks for this good job.


Incorrect evaluation of type compatibility involving string literal types as generic type parameters

TypeScript Version:  2.1.1 / nightly (2.2.0-dev.201xxxxx)
2.1.4
Code
interface HalObjectLinks {
  self: HalLink;
  [rel: string]: HalLink;
}

interface HalLink {
  href: string;
}

interface HalObject<R> {
  '_links': HalObjectLinks;
  // other properties of the object
  [key: string]: any;
}

type CustomerRels = 'addresses';

interface Customer extends HalObject<CustomerRels> {
  name: string;
}

class CustomerModel implements Customer {
  public name: string;

  public '_links' = {
    self: { href: 'self' }
  };
}

function findHref<R extends string>(hal: HalObject<R>, rel: R): string {
  let link = hal._links[<string>rel];
  if (!link) {
    throw new Error('HAL object did not have link: ' + rel);
  }

  return link.href;
}

let x = new CustomerModel();
findHref(x, 'test');

Expected behavior:
TSC should flag the findHref() call for incorrect types.
Actual behavior:
The compiler types the call as:
function findHref<"test">(hal: HalObject<"test">, rel: "test"): string

However, x is clearly not compatible to HalObject<"test">, it's rather compatible to HalObject<"addresses">.
The compiler flags no type error.

Please first read the FAQ. https://github.com/Microsoft/TypeScript/wiki/FAQ#why-doesnt-type-inference-work-on-this-interface-interface-foot---
TypeScript has structural typing which means

interface HalObject<R> {
  '_links': HalObjectLinks;
  // other properties of the object
  [key: string]: any;
}

is equivalent to having no type parameter at all.

Thanks for the pointer to the FAQ, I was indeed missing that. I realise this should have better been a question on Stackoverflow for modelling this, but coming from a C# Background structural typing feels unintuitive when TS does otherwise a very good job of making me productive.


Fix test.sh pod naming for mongo-replicaset

This PR fixes leftovers from #223

The only update needed is to test.sh, to change the name of the pod from mongodb- to mongodb-rs-.

As name switched from "mongodb" to "mongodb-replicaset", I had to limit the length of pod name string.

@k8s-bot ok to test

Thanks @iMelnik!
cc @foxish

Looks like tests are still running on k8s 1.4

@iMelnik yes, for now we will need to test this manually.

@k8s-bot e2e test this

Test cluster is now on 1.5.1
Thanks @iMelnik. Feel free to submit a PR moving this to stable at your leisure.

@viglesiasce submitted in https://github.com/kubernetes/charts/pull/428


Update how-to-send-an-email-with-dynamic-transactional-templates.md

Description of the change:
Reason for the change:
Link to original source:

Closes #

Hello @Whatthefoxsays,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX


some stream nodes don't curate

The following
import shed.event_streams as es
s = Stream()
s2 = Stream()
s3 = es.zip(s,s2)
s.emit((name1, doc1))
s.emit((name2, doc2))

yields something like:
((name1, doc1), (name2, doc2))

i.e. the stream is not curated. Should we have it curated (as done by other routines) so that it becomes:
((name1, doc1, doc2))

or a RuntimeError if name1 != name2 (as defined in curate_streams).
Note that the stream curation is handled automatically by the next element in the stream so this would not pose an issue for most use cases.

Thank you for reporting!

In disucssion with @ordirules: yes everything should have a call to curate_streams somewhere, we should be very strict that we only ever deal with (name, (tuple of dicts)).

Closed by #55


Autocompletion for Commands

Added a new feature: Autocompletion while typing commands

nice

Maybe you can try to change the font size of the autocompletion box bigger?

and also try to add some css to beautify it, cause now it looks not very compatible with addressbook theme.


Fungal Hills will generate trees and huge mushrooms underwater

Maybe this isn't a bug and is actually intentional, but I thought I might as well report it anyway.
In oceans of a Single Biome Fungal Hills world, the trees and giant mushrooms will generate on the ocean floor.
Related to #2 and perhaps would be fixed if #2 is fixed.
Biospherical Expansion 1.20.x-2.1.1

single biome worlds are not supported, but that looks cool anyways


chore: bdd-spring-1572537536 to 0.0.1

chore: Promote bdd-spring-1572537536 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Can't go to the previous folder, in the file browser

.
..
<files>
when you try to visit the ../ directory, using the file browser, it fails, on the assertion:-
ded: src/common.c:102: read_entire_file: Assertion 'sb->items != NULL && "Buy more RAM lol"' failed.
The problem is that my machine has 8 gigs of ram, which should be enough for a minimal editor like this, but I could be wrong.
Does anyone know, if the issue regarding my machine, or ded?
Memory: 3778MiB / 7833MiB
OS: Ubuntu 20.04.5 LTS x86_64
Kernel: 5.15.0-58-generic
CPU: Intel i5-9400 (6) @ 4.100GHz
Thanks.

There's no folder support currently:
https://github.com/tsoding/ded/blob/6bb06d32ebffb4dadf4a8ff4002bc4a5f58ea9e4/src/main.c#L201
You should get the error Could not open file ..: Is a directory, but the code isn't really robust enough to handle this well, as it relies on an error from fopen() when trying to open a directory.


QGB Orchestrator should stop signing if no longer in the valset

Currently, the QGB orchestrator keeps signing attestations even if it  is not part of the valset. These signatures will  be eventually rejected. Thus, the orchestrator should check if it is in the valset before signing attestations.

one point to note, is that a validator could potentially fall into and out of the validator set every other block, and ideally the orchestrator would be able to handle this as well, although this might be a premature feature.

100% it's still too early for this. Except that I wanted to keep track of all ideas so that after QGB 1.0,  we have a list of improvements we can work on.
Btw, once the IT tests are set, let's go for a call to decide on the set of features we want for QGB 1.0.


Day288

Resolves #590.

Pull Request Test Coverage Report for Build 1105

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 1103:
0.0%

Covered Lines:
5

Relevant Lines:
5

💛  - Coveralls


Add Sphinx gallery

We want to have preview galleries like Squidpy which link to respective notebooks. Ideally they would also have a binder link or directly open Binder to run these notebooks.

https://squidpy.readthedocs.io/en/stable/tutorials.html
I copied some snippets from squidpy but I guess they should just be removed and everything should be done from scratch.

So sphinx gallery does not use jupyter notebooks directly but it actually consumes Python scripts. Jupytext allows us to convert notebooks into python scripts.
We should likely create a new repository just for the tutorials aka gallery and ensure that on every PR to THIS repository the tutorials are run.
See: https://github.com/theislab/squidpy_notebooks/blob/master/CONTRIBUTING.rst#main-examples-and-tutorials

Need to move all tutorials to another repository now and ensure that they are running on push events.


After project delete the docs are still available

Details
After project delete the docs are still available. I removed project months ago and the hosted docs page are still available. How can I remove it?

Project URL: http://ongr-handbook.readthedocs.io/en/latest/
Read the Docs username (if applicable): saimaz

Expected Result
When the project is deleted also do not see the docs website as well.
Actual Result
The docs are still hosted after project removal.

Hi @saimaz! The project you mentioned seems it's not deleted. Check http://readthedocs.org/projects/ongr-handbook/
I don't remember exactly, but reading this http://docs.readthedocs.io/en/latest/faq.html#how-do-i-change-my-slug-the-url-your-docs-are-served-at it seems that it may delete the docs.
On the other hand, there is some positions about this in https://github.com/rtfd/readthedocs.org/issues/2722

Thank you. Didn't notice that someone forked a repo and created a project in the readthedocs.


means to adjust pseudo windows

Description
Maybe I miss something on wiki, I try to get my pseudo terminal window a bit larger, I don't know hyprland shrink it based on what rule, anything I can alter.

you can use the resizewindow mouse bind on it. by default super + rmb
You can also use resizewindow for keybinds

you can use the resizewindow mouse bind on it. by default super + rmb
You can also use resizewindow for keybinds

can I set rules about pseudo instead of adjust everytime

uhh you can use the size windowrule iirc?

how could I bind 'resizewindow' to keys, since wiki of dispatchers and binds did not reveal it.

you sure?

I seen it ,just try to run "hyprctl dispatch resizewindowpixel 100 100, ^alacritty$" inside alacritty window ,nothing happens except of the comfortable 'ok'.
'size' rule I use it only on floating window, I assume the rule will apply on newly opened window.

#!/bin/dash
state=$(hyprctl activewindow -j |jq -r ".floating")
if [ $1 = inc ];then
if $state ;then
hyprctl --batch 'dispatch resizeactive 32 18; dispatch moveactive -16 -9'
else
hyprctl dispatch resizeactive 32 18
fi
elif [ $1 = dec ];then
if $state ;then
hyprctl --batch 'dispatch resizeactive -32 -18; dispatch moveactive 16 9'
else
hyprctl dispatch resizeactive -32 -18
fi
fi

I use the script to resize floating windows avoid of tiled windows, I found It works on pseudo window too ,so add 'else' condition, but it resize the opposite way, hyprctl activewindow -j did not tell pseudo or not, why not? so I cannot make it works on only floating and pseudo window.

how could I bind 'resizewindow' to keys, since wiki of dispatchers and binds did not reveal it.

I mean 'resizewindow' works only for mouse,isn't it? keyboard cannot trigger resize state and use up or right to resize it like 'xfwm' can do.

wdym works the opposite way? Seems to be working the same way on my end both floating and pseudo

Hyprland, built from branch HEAD at commit 1c460e98f870676b15871fe4e5bfeb1a32a3d6d8  (props: bump ver to 0.36.0).
Date: Wed Feb 28 00:32:40 2024
Tag: v0.36.0

flags: (if any)

it's a bit outdated, but its the stable version on arch test-extra, I will stick to it.
I use the script, the same key makes a floating window get larger while get a pseudo window smaller,  but I will swap commands just fine.
is there any way to tell apart from a tiled pseudo window from a normal tiled window?

#!/bin/dash
state=$(hyprctl activewindow -j |jq -r ".floating")
if [ $1 = u ];then
	if $state ;then
	hyprctl --batch 'dispatch resizeactive 32 18; dispatch moveactive -16 -9'
	else
	hyprctl dispatch resizeactive 0 -16
	fi
elif [ $1 = l ];then
	if $state ;then
	hyprctl --batch 'dispatch resizeactive -32 -18; dispatch moveactive 16 9'
	else
	hyprctl dispatch resizeactive -16 0
	fi
elif [ $1 = r ];then
	if $state ;then
	hyprctl --batch 'dispatch resizeactive 32 18; dispatch moveactive -16 -9'
	else
	hyprctl dispatch resizeactive 16 0
	fi
elif [ $1 = d ];then
	if $state ;then
	hyprctl --batch 'dispatch resizeactive -32 -18; dispatch moveactive 16 9'
	else
	hyprctl dispatch resizeactive 0 16
	fi
fi

just use this to make resize floating or tiled window consistently


Start SAP HANA, express edition Server

The password rules for the hxeadm user password are ridiculous and extremely disruptive to the user experience.

Hi Rob - I've passed your feedback on to PM. Closing issue.

Rob - we confirmed that the hxeadm user password rules are the same as for HANA. For example, HANA studio has the same rules for a new user: https://blogs.sap.com/2013/05/15/hana-password-security/

Hi John,
Thanks for following up, but the restriction on using passwords that include a dictionary word as part of the password is not  a HANA restriction. Both skimming and searching the blog, I do not see any mention of a restriction on dictionary words being part of a HANA password. Of course the product documentation would be the definitive source, rather than a blog. Note that I also happen to have upgraded or reinstalled 3 separate HANA systems on Monsoon VM’s since the SPS03 release. I can guarantee you that HANA does not impose a limitation on using passwords that include a dictionary word as part of the password.
Robert Waywell, MBA
SAP HANA Product Management
SAP | 445 Wes Graham Way | Waterloo, ON N2L 6R2
T +1-519-883-6226, M +1-519-574-2353
From: John Currie<EMAIL_ADDRESS>Sent: Thursday, May 31, 2018 10:09 AM
To: SAPDocuments/Tutorials<EMAIL_ADDRESS>Cc: Waywell, Robert<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [SAPDocuments/Tutorials] Start SAP HANA, express edition Server (#2381)
Rob - we confirmed that the hxeadm user password rules are the same as for HANA. For example, HANA studio has the same rules for a new user: https://blogs.sap.com/2013/05/15/hana-password-security/
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/SAPDocuments/Tutorials/issues/2381#issuecomment-393542310, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AUHJ9eP5UD61uTH1udrzE9oVN9uQEeSQks5t3_lngaJpZM4UT3Hv.


Refactor GC

simplify heap grow code

It's a lot more readable this way, but obviously there's still a bug somewhere. One functional change is that the old version still did a collection if the GC is disabled but the OS does not return more memory.
Regarding style: please don't put if(cond) statement; in a single line, that's not used elsewhere and doesn't help readability.

old version still did a collection if the GC is disabled but the OS does not return more memory.

I sometimes use GC.disable to prevent crashes when using libraries that allocate in destructors, so it really does look like a bug.

And it doesn't seem to be the reason for the test failure. I'd also say disable should be disable.

I sometimes use GC.disable to prevent crashes when using libraries that allocate in destructors, so it really does look like a bug.

There is also the use case "I want my program fast for this section of code but I don't want it to fail arbitrarily" where the current behaviour makes sense. Maybe it should be some multi-level option?
BTW: a collection is run at the very end of the program even if the GC is disabled.

BTW: a collection is run at the very end of the program even if the GC is disabled.

Not if I exit(0).

OK, found the bug.
Who would have thought that allocPage(bin) might fail even though fullcollect() says that it has freed some pages. That might happen when all the freed pages are in pools for large objects, and therefor aren't resused for bin sized allocations.
Now it uses the same logic as bigAlloc.
https://github.com/D-Programming-Language/druntime/pull/1081/files#diff-6f1ab0423fff9dcd084ecf9a677dc426R2089

This pull contains one semantic change, namely disable really means disable and we never collect.
The previous behavior was most likely a bug.

The previous behavior was most likely a bug, and if it's wanted we should add a new allocTillYouBounce switch.

I think we should be more conservative here. Hitting the address space limit is not so uncommon for 32-bit processes, especially if you don't have the /LARGEADDRESSAWARE bit specified.
I think the old behavior should be the default, with a switch (gc-opt?) to enable the hard limit.

I think we should be more conservative here.

Thanks for being so persistent about this, a simple look on the docs would have solved the question.
http://dlang.org/library/core/memory/gc.disable.html
Now fixed, it's also the reason for the tricky logic.

I wasn't aware it's in the docs. LGTM, though I'll probably hate it for the conflicts it will cause for other changes to the GC. ;-)

Auto-merge toggled on

LGTM, though I'll probably hate it for the conflicts it will cause for other changes to the GC.

True, but the bad/fragile code is one of the biggest hurdles to actually improve the GC.
I want to improve the growth strategy, hence this change. This is the biggest issue currently.
This graph is from running Higgs unittests, black is heap size, red is used mem and the x-axis is number of collections. Couldn't be worse than that.

BTW, I already tried to use SIMD in the marking code with pretty bad results. Either the benchmark was completely mem-bandwidth limited (SIMD just adds more instructions) or it was CPU limited (slist) and suffered from the increased complexity. It should be possible though to turn almost the whole mark function into SIMD code, thereby saving somewhat on instruction count. That will only return a marginal interest.
I'm not too optimistic for parallel marking either as that doesn't help with the memory-bandwidth. It can only help a little with interleaving execution and memory latency.
Ultimately we have to figure out how to do incremental collections, it really hurts having to mark 500MB to collect 10MB.
So I actually looked at write barriers to build a generational GC. There are quite some caveats but it's doable. Quite a lot of people would hate the 1-5% slowdown for write barriers though, not sure how to deal with this. The write barrier itself could be a function in object.d, that might be enabled with some version (UseNewGC), but then we'd need to ship different phobos libs???
I found an extremely interesting paper (Connectivity-Based Garbage Collection) that achieves incremental collection by using type information rather than age of allocations and it doesn't require barriers or compacting.
The main idea here is that to collect data of type Foo you only need to mark anything that might actually point to Foo. In that sense our NO_SCAN area is already a bipartition.

The new growth strategy really looks promising, same graph as above, much less time spend collecting.
https://github.com/MartinNowak/druntime/tree/gcGrowth
It still needs a little polishing though.

I agree, this definitely is a pain to rebase upon, especially with the change to the location of setBits, as I get to do the rebase and attempt to keep it with the design it had at the time... (refering to the struct destructors PR)

I agree, this definitely is a pain to rebase upon, especially with the change to the location of setBits, as I get to do the rebase and attempt to keep it with the design it had at the time... (refering to the struct destructors PR)

Sorry for that, but there are many more changes to come, because the code base is crap.
Without refactoring it's not possible to do architectural changes.

@MartinNowak can you post how you generate these graph ? I'd be interested to generate them for SDC if that is possible.

I patched the GC using this, the fed the result into dub run plotd -- -d lx,ly,ly --margin-bounds 50,1000,50,1000. The output will be somewhere in ~/.dub/packages/plotd-0.6.0/plotcli.png.
diff --git a/src/gc/gc.d b/src/gc/gc.d
index 4ce4ccf..50768d2 100644
--- a/src/gc/gc.d
+++ b/src/gc/gc.d
@@ -2401,6 +2401,8 @@ struct Gcx
     {
         MonoTime start, stop, begin;

+        printStats();
+
         if (GC.config.profile)
         {
             begin = start = currTime;
@@ -2454,16 +2456,34 @@ struct Gcx
         {
             stop = currTime;
             recoverTime += (stop - start);
-            ++numCollections;
         }

         running = false; // only clear on success
+        printStats();
+        ++numCollections;

         updateCollectThresholds();

         return freedLargePages + freedSmallPages;
     }

+    private void printStats() nothrow
+    {
+        size_t heap, free;
+        foreach (p; pooltable[0 .. npools])
+        {
+            heap += p.npages * PAGESIZE;
+            free += p.freepages * PAGESIZE;
+        }
+
+        foreach (n; 0 .. B_PAGE)
+            for (auto el = bucket[n]; el; el = el.next)
+                free += binsize[n];
+
+        assert(free <= heap);
+        printf("%zu,%zu,%zu\n", numCollections, heap, heap - free);
+    }
+
     /**
      * Returns true if the addr lies within a marked block.
      *


[Webhooks: ServiceUpgrade] Labels used for creating webhook to upgrade a service are case sensitive

Rancher Versions:
Server:v1.5.0-rc1
**Docker Version:**1.13.1
**OS and where are the hosts located? (cloud, bare metal, etc):**Ubuntu, Cloud
**Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)**Single node
**Environment Type: (Cattle/Kubernetes/Swarm/Mesos)**Cattle
Steps to Reproduce:

Create a webhook to upgrade a service with label test=value and tag latest
Add the URL obtained from step1 to Docker hub webhooks
Create services service1 and service2 with label TEST=VALUE
Push the image with tag latest to dockerhub

Results:
The services are not upgraded as they have labels in caps TEST=VALUE
Expected
The labels used in webhooks should not be case sensitive. The services should get upgraded.

Tested with master. Labels used for webhook creation are not case sensitive. Webhooks created with lower case labels will upgrade services which have the same upper case labels.


Clock format is only applied on main monitor

I have the Multi Monitors Add-On (GitHub) installed to have a top panel on every screen.
The format string is only applied to the top panel on the main screen, the secondary screen uses the system format.

I don’t have the hardware to test this. Maybe raise the issue in their project because, well, everyone there has the required hardware. It might be an issue here. I just don’t know.

No worries, I'm for obvious reasons motivated to fix this myself. (time is as always the key resource)
I was hoping, though, that you know how to iterate monitors, or menu bars to be more precise. I'll see if I can find anything in the MM Add-On source code.

If you fix it, let me know, I'm interested myself, but i have no idea where to start, thanks.


Add top bar for host view

Should contain play/pause button, roomid, round number

Moved to JIRA board


Re-enable pkgdown generation and pass along git PAT for proper install

Improved version was merged in #87


Describe your issue and include the command you're running, flutter_web version, browser version

Hi @Tek-hp
Closing this as duplicate #49482
Thank you

A

Hi @Tek-hp
Closing this as duplicate #49482
Thank you

After closing duplicate. when i run my project it will occurs again and again. is there any permanent solution ???


Rewrite gen::random_range

This is a proposed fix to #21
Basically rewritten to straight "down to earth" implementation, which maps the random u64 value onto specified range. Not sure if that is the proper way to do this, but let's start a discussion

Have you checked the distribution of numbers this generates? The currently used method is an implementation of a de-biased method, although I forgot which specific ones.

Have you checked the distribution of numbers this generates? The currently used method is an implementation of a de-biased method, although I forgot which specific ones.

Have you checked the distribution of numbers this generates? The currently used method is an implementation of a de-biased method, although I forgot which specific ones.

It uses u64::random() as source of randomness, same as the current implementation, so I guess the distribution ought to be the same?

Have you checked the distribution of numbers this generates? The currently used method is an implementation of a de-biased method, although I forgot which specific ones.

It uses u64::random() as source of randomness, same as the current implementation, so I guess the distribution ought to be the same?

@spitfire05
lower = 1
upper = 3
MAX = 7

n = (3 - 1) + 1
  = 3
boundary = 7 / 3
         = 2
random = { 12.5%:0 12.5%:1 12.5%:2 12.5%:3 12.5%:4 12.5%:5 12.5%:6 12.5%:7 }
result = ({ 12.5%:0 12.5%:1 12.5%:2 12.5%:3 12.5%:4 12.5%:5 12.5%:6 12.5%:7 } / 2) + 1
       = { 25%:0 25%:1 25%:2 25%:3 } + 1
       = { 25%:1 25%:2 25%:3 25%:4 }

expected = { 33%:1 33%:2 33%:3 }

@spitfire05
lower = 1
upper = 3
MAX = 7

n = (3 - 1) + 1
  = 3
boundary = 7 / 3
         = 2
random = { 12.5%:0 12.5%:1 12.5%:2 12.5%:3 12.5%:4 12.5%:5 12.5%:6 12.5%:7 }
result = ({ 12.5%:0 12.5%:1 12.5%:2 12.5%:3 12.5%:4 12.5%:5 12.5%:6 12.5%:7 } / 2) + 1
       = { 25%:0 25%:1 25%:2 25%:3 } + 1
       = { 25%:1 25%:2 25%:3 25%:4 }

expected = { 33%:1 33%:2 33%:3 }

I'll take a look at re-doing the random_range later

I'll take a look at re-doing the random_range later

Yeah, so much for coding in the middle of the night. Let me re-think that after work and get back to you.
Thanks.

Yeah, so much for coding in the middle of the night. Let me re-think that after work and get back to you.
Thanks.

I believe this has been solved in https://github.com/aspenluxxxy/nanorand-rs/commit/7e1704e6a80697b7b4bda4d93a8a476748379463

I believe this has been solved in https://github.com/aspenluxxxy/nanorand-rs/commit/7e1704e6a80697b7b4bda4d93a8a476748379463


philadelphia-core: Improve 'FIXValue#asTimeOnly'

Set the fields all at once rather than one by one. This makes the method 33% faster.

I noticed this while working on #141 and #142.


convert_batch_and_push_to_input_thread: error: NvBufSurfTransform failed with error -3 while converting buffer

When sgie is connected, the pipeline starts to have the following error at the end of the video. I checked the source code of nvinfer.cpp and found that this is caused by the type mismatch when the sgie node is zoomed and changed. Have you ever encountered this problem? How to solve it?

In this pipeline, I did not use tracker behind pgie, but put sgie directly behind pgie, and added a queue in the middle. I just tried to add the tracker between pgie and sgie, and the above problem did not appear. What is the problem? If I don't want to use tracker to avoid this problem, is there any other solution?

@Song-Gy Which gst-nvinfer are you using? I don't think this problem is associated with nvtracker. As logs mentioned above, can you add some outputs for checking in source codes of gst-nvinfer?
  if (batch->frames.size() > 0) {
    /* Batched tranformation. */
    err = NvBufSurfTransformAsync (&nvinfer->tmp_surf, mem->surf,
              &nvinfer->transform_params, &batch->sync_obj);
  }

  nvtxDomainRangePop (nvinfer->nvtx_domain);

  if (err != NvBufSurfTransformError_Success) {
    GST_ELEMENT_ERROR (nvinfer, STREAM, FAILED,
        ("NvBufSurfTransform failed with error %d while converting buffer", err),
        (NULL));
    return FALSE;
  }

Thank you for your hint. After adding the test, I found that the left parameter of src_rect in the incoming transform_params is max_unsigned_int =<PHONE_NUMBER>. This is because the left in the incoming object_meta.rect_params is less than zero and converted to unsigne int. In the post-processing, CLIP has been used to limit the left to the range of [0, network_info->width-1]. After investigation, I found that I set symmetric-padding=1 in the config of pgie, which resulted in the result of subtracting offset_left from the left coordinates in the subsequent processing of attach_metadata_detector to be less than zero, which caused the initial pipeline crash. .


Copy constructor of org.bouncycastle.cms.SignerInfoGenerator

The class org.bouncycastle.cms.SignerInfoGenerator has a constructor which combine origin generator and additional attribute table generator.
public SignerInfoGenerator(SignerInfoGenerator original, CMSAttributeTableGenerator sAttrGen, CMSAttributeTableGenerator unsAttrGen)
This constructor combines the fields of the original object with the parameters attrGen and unsAttrGen, but it does not retain the certHolder from the original object. I'm unsure whether this is a bug or intended behavior.
Please check the line about 70 in file SignerInfoGenerator.java
https://github.com/bcgit/bc-java/blob/94fadb56f60b55cebf1028ef444362a9e8820bde/pkix/src/main/java/org/bouncycastle/cms/SignerInfoGenerator.java#L70C1-L84C1
    public SignerInfoGenerator(
        SignerInfoGenerator original,
        CMSAttributeTableGenerator sAttrGen,
        CMSAttributeTableGenerator unsAttrGen)
    {
        this.signerIdentifier = original.signerIdentifier;
        this.signer = original.signer;
        this.digestAlgorithm = original.digestAlgorithm;
        this.digester = original.digester;
        this.sigEncAlgFinder = original.sigEncAlgFinder;
        this.sAttrGen = sAttrGen;
        this.unsAttrGen = unsAttrGen;
    }

I think I'd classify that as a bug. Thanks for the report, I've pushed a fix for it which should appear shortly.


Compatibility issue with react 16.2.0

Hi, is there any plan to make the project compatible with the latest react?

Hi there @ufo2mstar currently react-d3-graph has as peer dependency<EMAIL_ADDRESS>and it's working properly. Still this was not yet released but you can target master branch and test it to see if it suits your needs.

Should i try updating react-d3-graph to 16.4.1 and upgrade my project too?
Pretty new to resolving these issues.
Thank you again for the awesome pkg.

I've seen many projects using<EMAIL_ADDRESS>with react version 16.4.x so if you just update to react latest you should be good to go although it's not officially supported as I said in the previous comment.

@madanagopal, I'm closing this with PRs #92 and #95 react-d3-graph proves to be free of issues regarding its usage with react version 16.x.x


Remap Alt to Command for microsoft keyboard

Is it possible? I looked over the code list here https://github.com/tekezo/Karabiner/blob/version_10.6.0/src/bridge/generator/keycode/data/KeyCode.data
I there anyway to remap the alt key to command and the windows key to alt/option. I'm a mac user trying to use a Microsoft keyboard. http://www.amazon.com/Microsoft-Natural-Ergonomic-Keyboard-4000/dp/B000A6PPOK/ref=sr_1_1?ie=UTF8&qid=1426065091&sr=8-1&keywords=microsoft+keyboard+4000
thank you

Ah eventviewer reports the keys as Command_L Option_L & Option_R. I'll try these codes instead.

Ah even better the options I needed are already available as checkboxes. Excellent software!

You can confirm KeyCode by EventViewer.
https://pqrs.org/osx/karabiner/document.html.en#eventviewer

Hi Just in case someone find this post looking for settings.
This is how I set my Microsoft keyboard - German layout to use with my Mac Mini.
Hope it helps someone out there.

@Leoaraujo79
Could you show the custom items you have written in the xml? I am trying to do the same (use mechanical keyboard from windows on mac osx). If it is possible, only activate this on external keyboards?

@NicolasVanhecke
Sorry, I am not using this setup anymore...

Did you find another tool, or a better way to remap  keys on macOSX? I am quiet fond of my mechanical and would like to code with it on mac.

@NicolasVanhecke
I end up getting used to the keyboard without additional software.


Syncinc between Browsers/Devices

When setting up the plugin with an already existing repo, it should try to sync the number of already solved problems.
Also, a list of solved/open problems would be nice.

Btw I know this is somehow related to #312. But to me, it seems like a different topic after all.

I can agree, this would certainly be a lovely feature to have, especially for individuals who move between devices semi-regularly! Fantastic extension otherwise :)


Negative reward in PPO training

Hi, I'm trying to reproduce Stack-LLaMa using the default config settings. However, after training hundreds of steps, the reward score remains negative.

Also, my objectives look strange.

However, the total loss of PPO looks fine:

The reward model and SFT model I use are based on https://huggingface.co/trl-lib/llama-7b-se-rm-peft and trl-lib/llama-7b-se-peft. Could some tell me what's wrong with my RL training? Thanks!

Which script are you using to run this? Have you looked at #401 ?

Yeah, I'm following mnoukhov's instructions to reproduce Stack-LLaMa, is it possible that these issues are due to V100?


Deal with paths with unicode characters

Files with a path including unicode or non-ASCII characters (eg, á) break the extension.

It now works, but ideally it should still use "run 'filename'" or something of the sort even for non-ASCII paths, but I don't have an inmediate solution

With the release of 0.7.1, this issue (only?) appears when the relative path from the workspace to the file includes non-ASCII characters.

The paths thing is a sub-issue of this more general problem: I can't send text with "encoding ambiguity" to the terminal and have Octave accept it.
So for instance Tomás = 42 cannot be executed. Not by writing it in the terminal, not by sending it through Ctrl + Enter, not by including it in a file and executing the file.


How long does GCP take to run the Dopamine example

Hi, I've not done much cloud training before so thought I would check it out. Typically how long does it take to train using the Dopamine example?

The guide says over 24 hours
https://github.com/Unity-Technologies/obstacle-tower-env/blob/master/examples/gcp_training.md

Hi @Sohojoe
It takes about two days to reach 10 million training steps.

Great, thanks!


Scrolling a popup window using a popup-filter and setting 'firstline' does not work smoothly together

Describe the bug
When firstline is passed to popup_create(), and the popup window is scrolled using a popup-filter, Vim always first jumps to the first buffer line before scrolling the window. Only after hitting <C-L>, scrolling will start at firstline. This jump does not occur when the popup window is scrolled with the mouse.
To Reproduce

Run vim --clean popup.vim -c "source %"

" popup.vim
function! s:popup_filter(winid, key)
    if a:key ==# "\<c-k>"
        call win_execute(a:winid, "normal! \<c-y>")
        return v:true
    elseif a:key ==# "\<c-j>"
        call win_execute(a:winid, "normal! \<c-e>")
        return v:true
    elseif a:key ==# 'q' || a:key ==# 'x'
        return popup_filter_menu(a:winid, 'x')
    endif
    return v:false
endfunction

let winid = popup_create(range(50)->map('string(v:val)'), #{
        \ filter: function('s:popup_filter'),
        \ firstline: 20,
        \ close: 'button',
        \ minwidth: 60,
        \ maxwidth: 60,
        \ minheight: 10,
        \ maxheight: 10
        \ })

Press <c-j> or <c-k> to scroll the popup window down or up, respectively. Vim will first jump to the first buffer line before it scrolls the window. Pressing <C-L> will redraw the popup window. Now <c-j> and <c-k> will start scrolling the window from the buffer line that was set with firstline.
Workaround: Adding call win_execute(winid, 'normal! zz') to the above file will prevent the jumping (thanks to @nickspoons).

Expected behavior
Scrolling should start from the buffer line that was set with firstline, without first jumping to the first buffer line.
Environment
Vim version v8.1.1939

Describe the bug
When firstline is passed to popup_create(), and the popup window
is scrolled using a popup-filter, Vim always first jumps to the
first buffer line before scrolling the window. Only after hitting
<C-L>, scrolling will start at firstline. This jump does not occur
when the popup window is scrolled with the mouse.
To Reproduce

Run vim --clean popup.vim -c "source %"

" popup.vim
function! s:popup_filter(winid, key)
    if a:key ==# "\<c-k>"
        call win_execute(a:winid, "normal! \<c-y>")
        return v:true
    elseif a:key ==# "\<c-j>"
        call win_execute(a:winid, "normal! \<c-e>")
        return v:true
    elseif a:key ==# 'q' || a:key ==# 'x'
        return popup_filter_menu(a:winid, 'x')
    endif
    return v:false
endfunction

let winid = popup_create(range(50)->map('string(v:val)'), #{
        \ filter: function('s:popup_filter'),
        \ firstline: 20,
        \ close: 'button',
        \ minwidth: 60,
        \ maxwidth: 60,
        \ minheight: 10,
        \ maxheight: 10
        \ })

Hmm, you tell Vim to put line 20 at the top of the popup, and then you
also tell it to show different lines by scrolling up or down.  Vim then
doesn't know which one to use.

Press <c-j> or <c-k> to scroll the popup window down or up,
respectively. Vim will first jump to the first buffer line before it
scrolls the window.

That looks like a bug.

Pressing <C-L> will redraw the popup window. Now <c-j> and <c-k>
will start scrolling the window from the buffer line that was set with
firstline.

But using CTRL-L again will apply the "firstline" value.  That is
probably not what you want.  But you can't reset "firstline".  I'll make
that possible by accepting the value zero.

Workaround: Adding call win_execute(winid, 'normal! zz') to
the above file will prevent the jumping (thanks to @nickspoons).

Expected behavior
Scrolling should start from the buffer line that was set with
firstline, without first jumping to the first buffer line.

I'll make a patch, please check that your problem is fixed.  But you may
want to set "firstline" to zero at some point.
--
hundred-and-one symptoms of being an internet addict:
139. You down your lunch in five minutes, at your desk, so you can
spend the rest of the hour surfing the Net.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Thank you for the patch. CTRL-J and CTRL-K work now as intended.
I wrote a small ftplugin for the quickfix window that previews the current quickfix error in a popup window. firstline is set to something like getqflist()[line('.')-1].lnum, so that the line with the quickfix error is at the top of the window.
Having CTRL-L re-apply firstline is actually useful. After scrolling up or down, I can jump back to the quickfix error at any time with CTRL-L.
Here's a screenshot:


SARIF Viewer does not show issues even when issues show in problems pane on Import SARIF File

I attempted to run a static analysis build and found that even though SARIFs generated successfully in a fresh folder, the SARIF Viewer does not automatically open. When I attempt to import the SARIF file directly, they populate in the problems pane but the SARIF Viewer is still blank (see image).

Update: When I click on an issue in the Problems Pane, the SARIF Viewer does populate with defect-specific details but not a summary or general view.

Also confirmed that this is an issue.

We can document this quirk in our internal documentation for pilot customers - we should remove the ship blocker tag for this. Customers need an option for the viewer to open by default, so it's aligned with the VSCode experience.

Perhaps add a message that says something to the effect of "select an error to see details"

Agreed - we need some indication that the SARIF Explorer does not enable you to explore multiple sarif files at once - it is a drilldown view of a single SARIF file (for now).
It is important to note that this is not at parity with VSCode.

Feedback from Kyle Sabo further validates this issue ( @GabeDeBacker / @lgolding)

The information shown in the Errors list is inexplicably not shown in the extension pane that shows all the other details about an issue. I keep my Errors list auto-hidden. There appears to be no way to view what the actual error is that is shown in the Sarif Explorer pane except through the Errors list.

Looks like the real issue here is documentation: We need to have folks use the problems pane to select issues in VS - we don't want to pop up UI that wasn't asked for.

@Miaku  So then if the Error List is not active/open during a VS session, should we pop that open so they know the build is running + outputs are present?

@HenokAddis - Visual Studio itself has an interesting behavior. Let's take IntelliSense errors as an example. When you "single click" an IntelliSense error in the list, the editor is not navigated to the file or location where the IntelliSense error occurred. The navigation only happens on "double click".
This is the same behavior the SARIF errors exhibit.
Now, we could add a message to the SARIF viewer when it is "empty" to say something like "select an error to see details" (guess it would have to say double-click actually) but even that message would be confusing because you can show the SARIF viewer when there are no SARIF errors in the list, or there are other errors in the list that are not SARIF errors.
In my opinion this is unfortunately consistent with things like visual studios "properties" window under solution explorer which is (at least for my usage of VS) empty most of the time with no message in it.


Test factories.md: Use struct! to check for key validity

I made a typo in an attribute name and this would have helped catch it.
And it's probably just a good pattern here. If someone wants to support passing in non-attributes, they can use Keyword.delete before passing to struct!.

Sounds good! Let's also make the other one a complete pipeline as you proposed.

Thanks, José! Made another PR.


Chore: bump go to 1.21

Related PR:

https://github.com/neutron-org/neutron-query-relayer/pull/84

lets bump version in the .tool-versions file


GSLUX-686: Profil component

JIRA issue
https://jira.camptocamp.com/browse/GSLUX-686
Description
Improve Profile component:

added api folder for api calls, now call profile.json for graph
download csv
handler geomarker when hovering the graph
handler the graph tooltip when hover the feature on map
clean and simplify d3js code from v3
add 2 specific components and one specific store for elevation profile in v3

For v3 https://github.com/Geoportail-Luxembourg/geoportailv3/pull/3198

Thanks for the adaptions @AlitaBernachot!
Hover pointer now also shows up in v3, just a little slow on my side, but my chromium currently a little slow in general. Firefox is fluid on my side, which just made me notice that the hovering seems to stay active on the line when selecting another (point) geometry, for example.


[DNM] Pull container image in backgroud to prevent salt timeout

This PR will run cephadm pull in background to guarantee it will never reach salt timeout (5 min by default).
Signed-off-by: Ricardo Marques<EMAIL_ADDRESS>

This PR does not prevent salt-master timeout.

This issue was caused by a network overload when all nodes in the cluster were pulling a container image via podman pull.

Closing in favor of https://github.com/ceph/ceph-salt/pull/353


Can an Akamai Property be imported/adopted through Pulumi?

I have an Akamai Property created manually that I would like to import (adopt) through Pulumi. From the Pulumi docs I know I can import an AWS resource into Pulumi (and I've tested it out), but can Pulumi do the same for an Akamai Property? If so what would the command look like?

The latest version of the Pulumi Akamai provider (1.0.0) now supports this.
pulumi import akamai:index/property:Property example prp_123

See https://www.pulumi.com/docs/reference/pkg/akamai/property/#import for more detail.


Fixed path to certfile, added debug echos

Follow-up to #379
@buchdag in the previous pull request the certfile variable did not contain the full path to cert, so the patch was pretty useless. This pull request is checked better and fixes my mistake.

The debug output is still a bit too verbose to my taste but I'll go ahead and merge it like this.


[REFACTORED RELATIONSHIP DOC]: bubbleset documentation

Notes for Reviewers
This PR fixes #
Refactored relationships
Signed commits

[X] Yes, I signed my commits.

🚀 Preview for commit fe421e48e2ee2cd07769851aface6c6ba723714a at: https://657c45b503d8d20824c09f32--meshery-docs-preview.netlify.app

🚀 Preview for commit b43d4f70d812d8a220768a261a6d215f1b00bd99 at: https://657cac3fe9642c27229d8518--meshery-docs-preview.netlify.app


Add verify bundle functions

Added a script which verifies that the currently committed head is up-to-date. Also added this script to the verify target.
Also added a make target which installs the operator-sdk locally. And changed the environment variable name $VERSION to $BUNDLE_VERSION because it collides with the same environment variable in the build container.

/assign @alebedev87 @thejasn

/lgtm