Templating config.json fails if --limit is used in playbook

If the role is applied with host limits against the playbook (--limit myhost1) the role fails with the below error. After some testing I believe this is because it cannot access the hostvars of any host not in the play.  This becomes an issue when the consul role is applied as part of a larger playbook for all the inventory and roles/tasks, and a particular host needs to be isolated.
[edit] Using role v2.0.9 with consul v1.2.2. I also tested using the consul_gather_server_facts  variable set to 'true' and while task "Gather facts from other servers" did execute, the template still failed with the same error. Oddly, I can see from the verbose output of that task that it did in fact gather facts from the other 2 servers.

TASK [brianshumate.consul : Create configuration] ***************************************************************************
fatal: [insightosctrl.cluster1]: FAILED! =>
msg: |-
An unhandled exception occurred while running the lookup plugin 'template'. Error was a <class 'ansible.errors.AnsibleError'>, original message: Unexpected templating type error occurred on ({# This template will be passed through the 'to_nice_json' filter #}
... [entire contents of config.json.j2 printed] ...
): Undefined is not JSON serializable

Inventory snippet:
[consul_instances]
myhost1 consul_node_role=bootstrap
myhost2 consul_node_role=server
myhost3 consul_node_role=server

Sample playbook:
- hosts: consul_instances
  become: true
  gather_facts: true
  strategy: linear
  roles:
    - brianshumate.consul

Role completes successfully when applied with:
ansible-playbook consul.yml

Role fails on the confg templating step when applied with
ansible-playbook consul.yml --limit=myhost1

Hey there, limit does not work properly in this role as it is designed more for bootstrapping Consul than for ongoing maintenance.
There's a note specifically about this in the Requirements documentation

Ok looks I just missed that in the requirements Readme. We'll break the
role over to a standalone playbook.
On Thu, Sep 27, 2018 at 11:01 Brian Shumate<EMAIL_ADDRESS>wrote:

Hey there, limit does not work properly in this role as it is designed
more for bootstrapping Consul than for ongoing maintenance.
There's a note specifically about this in the Requirements documentation
https://github.com/brianshumate/ansible-consul/blob/master/README.md#requirements
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/brianshumate/ansible-consul/issues/206#issuecomment-425126016,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABNsemrIEZI-Oneo91Z7wCEh4dXSfq_Oks5ufOgygaJpZM4W8skh
.

Cool, sorry about that! I'll go ahead and close this.

My observation is that it only fails if the limit contains a specific host but it works if your limit is the group itself that contains the consul hosts. (E.g. --limit consul_instances.) This way it's possible to skip other hosts that don't need consul to be installed.

Just another example of this issue.
Everything was working fine for me, with some vars in group_vars/all.yml, development.yml & so on, plus a couple of vars in the servers's playbook. Running this servers playbook and others with --limit, everything went fine.
Then I moved the vars from the playbook in a group_vars/consul_instance.yml, :boom: . It appears the cullprit is moving the consul_node_role: server. Just this one, consul_bootstrap_expect* were fine.


Release v1.5 – (Customizable) Exception & Permission Messages

New

[ ] Listener methods for custom error/exception messages

[ ] DIH4JDAListener#onException
[ ] DIH4JDAListener#onInsufficientPermissions

[x] ExecutableCommand#requirePermissions allows to set a set of permissions which are required to execute the command (only works if ExecutableCommand#isGuildCommand is set to true)

Changes
Commands
Slash Commands

[x] GuildSlashCommand & GlobalSlashCommand → SlashCommand (define whether a command is global using SlashCommand#setGuildCommand)

Subcommand → SlashCommand#Subcommand
SubcommandGroup → SlashCommand#SubcommandGroup

[x] Remove Command Privileges (no longer supported by Discord, Privilege updates would fail)

Context Commands

[x] GuildContextCommand & GlobalContextCommand → ContextCommand (define whether a command is global using ContextCommand#setGuildCommand)
[x] Removed UserContextCommand & MessageContextCommand interfaces and replaces them with ContextCommand.User & ContextCommand.Message

Smart Queue

[ ] Smart Queue for Guilds
[x] Moved Smart Queue functionality into its own class

Other

[x] Upgraded to Java 11

funny...

Why delete?

Can you please dont change all the imports again?

Can you please dont change all the imports again?

That didn't aged well

Feature request:
- set in the DIH4JDABuilder the default value of setGuildCommand()


[resource] quicksight

https://github.com/rebuy-de/aws-nuke/issues/626

@ekristen does this issue should be closed ? I see  that you add quicksight support here

@teads-bill-met I don't think all the resources that can be removed have been implemented.

Do you have an idea of resources that is not removed when you unsubscribe.
It seems that everything is deleted  when unsubscribe

@teads-bill-met most likely. I haven't had a chance to look at this one yet. I usually start with the API docs and look for all delete operations. https://docs.aws.amazon.com/quicksight/latest/developerguide/operations.html


Set ipython verbose mode in lab mode?

Is your feature request related to a problem? Please describe.
I just found about verbose mode in IPython, and it may be interesting to activate it when using lab mode. Not sure if it will get too heavy error messages, though.
from IPython import get_ipython
ip = get_ipython()
ip.InteractiveTB.set_mode(mode="Verbose")

Not urgent at all.


New & updated spawn* methods

These changes are based off of and resolve https://github.com/bevyengine/bevy/issues/607

Renamed existing spawn method to spawn_with_bundle, which nicely mirrors the with_bundle method.
Added a new spawn_with method which nicely mirrors the existing with method.

Note: So far I've just done the root change to see if I'm going the right direction -- none of the usage has been fixed.  If I can get a 👍 that this is the way we want to go, I'll push more commit(s) to follow up with usage and stuff.

Having thought about this more, I do want to point out that this creates the opposite problem now:
People will almost certainly try to do this:
commands.spawn_with(SpriteComponents {...})

Which will work for the same reason this currently works: commands.spawn((SpriteComponents {...}, RealComponent::default()))
Without type/runtime protections, this will always be an educational problem. This change also diverges from the World::spawn api, which will likely also create confusion.
I think the biggest wins we'll get in this space are:

Renaming things like SpriteComponents to SpriteBundle, to make it clear that it is a "bundle" and not a component
Adding documentation to the Bevy Book that explicitly calls out these things

I want to think a bit more about this before committing to a path.
I have a feeling I'll end up going for the changes in this pr, but this is foundational enough that I want to be extra-super-sure.

This change also diverges from the World::spawn api

True, I was unaware of World::spawn or of a desire to remain consistent with it.  Let me talk through what I see to try to make sense of where to go.
I'm not surey it makes sense to use World::spawn as the api to mirror. Looking at bevy_hecs, I see that World::spawn expects all of the components to be known at call time, either for one entity (World::spawn) or for many entities (World::spawn_batch).  Commands is a builder -- in that sense it is more analogous to EntityBuilder.
World and EntityBuilder cleanly address separate concerns.  EntityBuilder only has new() and add(component), enforcing accepting only one component at a time.  World has only spawn (for single-entity) which expects all the components to be known at call time (either statically with a tuple or dynamically built ahead-of-time with EntityBuilder).
Commands is dealing with all the concerns at once.  As long as that is true, it is going to inherently be messier to understand than either World or EntityBuilder individually.
I don't know what the best solution to this problem is.  Here are some possibilities I have thought of:

For the sake of similarity and muscle memory, make Commands look as similar to a combination of EntityBuilder and World as possible (for spawning).

new() as in EntityBuilder - begins a new, empty entity.
spawn(bundle) as in current master and similar to World, begins a new entity with components.
.add(component) as in EntityBuilder -- requires a spawn(...) or new(..) first, adds a single component
remove with
remove with_bundle

This seems difficult to learn to me because the combination of method names doesn't seem intuitive. But maybe good documentation would overcame that?  The similarities to EntityBuilder and World could be nice.

Make Commands more like World by just removing with and with_bundle and leaving the current spawn as it is.  Document and teach people to use EntityBuilder before calling spawn.

Embrace the fact that Commands is a very different thing and do whatever feels best for it, with further discussion to figure that out.

I really don't feel strongly about any direction, but I'd be happy to take a stab at updating the PR if I can get some feedback/guidance on which way to go.

@CleanCut good points. I'll respond after thinking about this a bit more (after the 0.3 release).

@cart If you'd like to indicate some renaming scheme you would like, I'd be happy to give it a shot. In any case, the change in this PR is so trivial, it seems like it would be easier to reimplement on top of current master than resolve merge conflicts, so I'll go ahead and close this.


release changelog suggestion

With each release a section "What's Fixed" is included on the release page.
In most cases I suppose something was fixed based on a reported issue.
Can I suggest to mention the issue numbers as a link for each item in that  "What's Fixed" list?
Not sure if automating it is feasible like mentioned here;
https://www.7pace.com/blog/how-to-link-github-issues-to-github-releases
But adding the issue numbers manually would already be very helpful

--In most cases I suppose something was fixed based on a reported issue.--
most issues are found internally.  When a fix is related to issue, the issue should be linked with PR number.  See https://github.com/gravitl/netclient/issues/454  for example


Fix pypi build issue

due to the newest updates in the upload artifact v4 in action, it needed a bit of specifying the path arg in Load Release URL File from release job to turn to green.

since it's a CI fix and we got green pipeline in tag action, i go merging without review


failure to install spacy pipelines

Not sure this is a bug, a problem with the spacy packaging or with me doing something wrong so creating an issue instead of a bug to get some feedback...
as per the following instructions:
https://spacy.io/usage/models#download-pip
running the install command with pip leads to the successfull installation of the pakage:
/myproject$ pip install $(spacy info en_core_web_sm --url)
Collecting en-core-web-sm==3.5.0
  Downloading https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.5.0/en_core_web_sm-3.5.0-py3-none-any.whl (12.8 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.8/12.8 MB 2.0 MB/s eta 0:00:00
Requirement already satisfied: spacy<3.6.0,>=3.5.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from en-core-web-sm==3.5.0) (3.5.0)
Requirement already satisfied: jinja2 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (3.1.2)
Requirement already satisfied: spacy-loggers<2.0.0,>=1.0.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (1.0.4)
Requirement already satisfied: requests<3.0.0,>=2.13.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (2.28.2)
Requirement already satisfied: packaging>=20.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (23.0)
Requirement already satisfied: typer<0.8.0,>=0.3.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (0.7.0)
Requirement already satisfied: preshed<3.1.0,>=3.0.2 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (3.0.8)
Requirement already satisfied: thinc<8.2.0,>=8.1.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (8.1.7)
Requirement already satisfied: catalogue<2.1.0,>=2.0.6 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (2.0.8)
Requirement already satisfied: langcodes<4.0.0,>=3.2.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (3.3.0)
Requirement already satisfied: murmurhash<1.1.0,>=0.28.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (1.0.9)
Requirement already satisfied: numpy>=1.15.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (1.24.2)
Requirement already satisfied: srsly<3.0.0,>=2.4.3 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (2.4.5)
Requirement already satisfied: smart-open<7.0.0,>=5.2.1 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (6.3.0)
Requirement already satisfied: tqdm<5.0.0,>=4.38.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (4.64.1)
Requirement already satisfied: setuptools in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (67.3.1)
Requirement already satisfied: wasabi<1.2.0,>=0.9.1 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (1.1.1)
Requirement already satisfied: pydantic!=1.8,!=1.8.1,<1.11.0,>=1.7.4 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (1.10.4)
Requirement already satisfied: pathy>=0.10.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (0.10.1)
Requirement already satisfied: spacy-legacy<3.1.0,>=3.0.11 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (3.0.12)
Requirement already satisfied: cymem<2.1.0,>=2.0.2 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (2.0.7)
Requirement already satisfied: typing-extensions>=4.2.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from pydantic!=1.8,!=1.8.1,<1.11.0,>=1.7.4->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (4.4.0)
Requirement already satisfied: idna<4,>=2.5 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from requests<3.0.0,>=2.13.0->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (3.4)
Requirement already satisfied: charset-normalizer<4,>=2 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from requests<3.0.0,>=2.13.0->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (3.0.1)
Requirement already satisfied: certifi>=2017.4.17 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from requests<3.0.0,>=2.13.0->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (2022.12.7)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from requests<3.0.0,>=2.13.0->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (1.26.14)
Requirement already satisfied: blis<0.8.0,>=0.7.8 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from thinc<8.2.0,>=8.1.0->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (0.7.9)
Requirement already satisfied: confection<1.0.0,>=0.0.1 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from thinc<8.2.0,>=8.1.0->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (0.0.4)
Requirement already satisfied: click<9.0.0,>=7.1.1 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from typer<0.8.0,>=0.3.0->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (8.1.3)
Requirement already satisfied: MarkupSafe>=2.0 in /home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages (from jinja2->spacy<3.6.0,>=3.5.0->en-core-web-sm==3.5.0) (2.1.2)

when running the same with pipenv, the install fails with the following traceback:
myproject/$ pipenv install $(spacy info en_core_web_sm --url)
Installing https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.5.0/en_core_web_sm-3.5.0-py3-none-any.whl...
✔ Installation Succeeded
Pipfile.lock (a2172f) out of date, updating to (f082bd)...
Locking [dev-packages] dependencies...
Building requirements...
✘ Locking Failed!

Traceback (most recent call last):
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3038, in _dep_map
    return self.__dep_map
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2834, in __getattr__
    raise AttributeError(attr)
AttributeError: _DistInfoDistribution__dep_map
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/requirements.py", line 35, in __init__
    parsed = parse_requirement(requirement_string)
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/_parser.py", line 64, in parse_requirement
    return _parse_requirement(Tokenizer(source, rules=DEFAULT_RULES))
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/_parser.py", line 82, in _parse_requirement
    url, specifier, marker = _parse_requirement_details(tokenizer)
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/_parser.py", line 120, in _parse_requirement_details
    specifier = _parse_specifier(tokenizer)
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/_parser.py", line 209, in _parse_specifier
    tokenizer.consume("WS")
  File "/usr/lib/python3.8/contextlib.py", line 120, in __exit__
    next(self.gen)
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/_tokenizer.py", line 183, in enclosing_tokens
    self.raise_syntax_error(
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/_tokenizer.py", line 163, in raise_syntax_error
    raise ParserSyntaxError(
pkg_resources.extern.packaging._tokenizer.ParserSyntaxError: Expected closing RIGHT_PARENTHESIS
    extract-msg (<=0.29.*)
                ~~~~~~~^
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/resolver.py", line 857, in <module>
    main()
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/resolver.py", line 843, in main
    _main(
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/resolver.py", line 822, in _main
    resolve_packages(
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/resolver.py", line 783, in resolve_packages
    results = clean_results(results, resolver, project, dev)
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/resolver.py", line 644, in clean_results
    reverse_deps = project.environment.reverse_dependencies()
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/environment.py", line 785, in reverse_dependencies
    for req in self.get_package_requirements():
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/environment.py", line 757, in get_package_requirements
    tree = PackageDAG.from_pkgs(packages).sort()
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/vendor/pipdeptree.py", line 293, in from_pkgs
    m = {p: [ReqPackage(r, idx.get(r.key))
  File "/home/ltrojan/.local/lib/python3.8/site-packages/pipenv/vendor/pipdeptree.py", line 294, in <dictcomp>
    for r in p.requires()]
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2754, in requires
    dm = self._dep_map
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3040, in _dep_map
    self.__dep_map = self._compute_dependencies()
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3050, in _compute_dependencies
    reqs.extend(parse_requirements(req))
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3103, in __init__
    super(Requirement, self).__init__(requirement_string)
  File "/home/ltrojan/.local/share/virtualenvs/document-processor-mqluLyq5/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/requirements.py", line 37, in __init__
    raise InvalidRequirement(str(e)) from e
pkg_resources.extern.packaging.requirements.InvalidRequirement: Expected closing RIGHT_PARENTHESIS
    extract-msg (<=0.29.*)
                ~~~~~~~^

@ltrojan I am not sure -- what is the resulting value of $(spacy info en_core_web_sm --url) and also what is pipenv --version??

thanks for the resonse @matteius
reagarding your firs Q, the command is simply outputting the latest version of the language model wheel (I'm not sure why spacy does things this way...):
$ # on my system
$ spacy info en_core_web_sm --url
https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.5.0/en_core_web_sm-3.5.0-py3-none-any.whl

as for pipenv version:
$ pipenv --version
pipenv, version 2022.5.2
$ pipenv run python --version
Python 3.8.10

however, I just realized that the same error happens when installing just spacy by itself:
$ pipenv install spacy
(...)
$ pipenv graph
Error running command:  $ /home/ltrojan/repo/emulator/services/document-processor/.venv/bin/python /home/ltrojan/.loca
l/lib/python3.8/site-packages/pipenv/vendor/pipdeptree.py -l
STDERR:  Traceback (most recent call last):

(... traceback)

  File "/home/ltrojan/repo/emulator/services/document-processor/.venv/lib/python3.8/site-packages/pkg_resources/_vendo
r/packaging/requirements.py", line 37, in __init__
    raise InvalidRequirement(str(e)) from e
pkg_resources.extern.packaging.requirements.InvalidRequirement: Expected end or semicolon (after version specifier)
    extract-msg<=0.29.*

@ltrojan  To further debug, could you upgrade past 2022.5.2? -- that is kind of old at this point.

@matteius that worked!
once pipenv is upgraded to the 2023.02.18 the traceback disappears,
thanks you so much ;)
do I close the issue?

Also encountered on 2022.9.8.  Upgrading to 2023.2.18 fixed.


Store coordination.k8s.io/leases in the etcd-events

How to categorize this PR?

/area control-plane performance storage
/kind enhancement
/priority normal
What this PR does / why we need it:
Store coordination.k8s.io/leases in the etcd-events to reduce load on etcd-main.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Release note:

The `coordination.k8s.io/leases` resources are now stored in the `etcd-events`. With this change, the db of `etcd-main` will be less often updated, hence less snapshots will be taken.

What will happen to leases that are already stored in etcd-main? I guess, they won't get cleaned up, right?

What will happen to leases that are already stored in etcd-main? I guess, they won't get cleaned up, right?

Yes, they will be orphaned there. One option that comes into my mind is to run a clean-up command against etcd-main
ETCDCTL_API=3 etcdctl --endpoints=etcd-main-client:2379 del --prefix /registry/leases

However, this cannot be done from this repository now, at least not so easy.

Well, what about simply keeping them orphaned for existing clusters? They are small anyways, and they don't cause any trouble.

One minor nit - the name etcd-events will be misleading as the etcd will be no longer used only for events.

The problem is that it causes perceived data-loss. It might cause problems for end-users using the lease objects for some reasons other than healtchecks.

Hm, that's a valid point (although, I'm not sure how likely this is). I can image three ways to proceed now:

Only store the Leases in etcd-events for shooted seeds
Do it for all shoots, but put it behind a feature gate
Make it configurable per shoot

Opinions?

/hold

Shall we close this PR for now until we clarified how to proceed?

Yes.
/close


Build worker accounts

Is there any nice way for build user accounts eg Jenkins.
At the moment I have just created a jenkins user, but would need permission to all namespaces in a team.
Repository level permissions would help this a little but even better would be tag permissions if even possible so that jenkins can only publish build tags e.g sample/test:build_1304, so sample/test:latest can never be overwritten by a jenkins build.

At the moment I have just created a jenkins user, but would need permission to all namespaces in a group.

What do you mean with group? Are you talking about a team?

Repository level permissions would help this a little but even better would be label permissions if even possible so that jenkins can only publish build labels e.g build_1304, so latest can never be overwritten by a jenkins build.

What do you mean with "label", are you referring to a namespace or a repository?

Yes by group I mean team to me they are the same things at the moment.
A label I mean tag of a repository  will correct the original post to make account of this.

Unfortunately what you are asking is not possible. When you push a docker image to a certain namespace, the docker registry will ask the client to show it can actually write to that namespace. The permission requested by the registry is not about a repository or even a tag, it's about the whole namespace.
So right now the only solution would be to add your jenkins user as a contributor to your team. By doing that he will be able to push and pull to all the namespaces controlled by the team.

According to the registry docks it talks about permissions per repository in a namespace unless  I have miss interpreted the docs
'''
For example, say I (username jlhawn) am attempting to push an image to the repository samalba/my-app. For the registry to authorize this, I either need push access to the samalba/my-app repository or push access to the whole samalba namespace in general. The registry will first return this response:
'''

@mssola do you think they changed something recently? In the past they just asked for permissions against the namespace...

It mentions this on the page under the heading
https://docs.docker.com/registry/spec/auth/token/
How to authenticate
Fyi

@mad0house you are right! We will surely think about a way to have even more granular control over push and pull. What you are proposing is definitely doable.

I didn't found any hint in https://docs.docker.com/registry/spec/auth/token/ that an authorization is possible at tag level. The only information the authorization server gets is the namespace and the repository.
Thus the initial request "can only publish build tags e.g sample/test:build_1304" seems impossible to fullfill.

Yes label level may require some testing to see what the docker repository sends for tags, if its possible,
But repository level would be more then enough, as namespace is level as currently is to restrictive.

So, in the conversation there's been a bit of confusion :) The thing here is that for now Portus can only be configured on the namespace level, which can be a bit too restrictive. So:

The feature tag goes for allowing admins to set per-repo permissions.
For now the docker registry is not sending the tag, therefore it's impossible to do this on the tag level.

This has been partially implemented in #1856, and the issue #1861 has been created as a follow-up of that PR and this issue. Closing.


Disable Wiki and add tags

Let's disable the wiki page in the settings of this repo. We don't need it.
Let's also add tags to the repo to improved discoverability. E.g. when searching flatpak generate or flatpak generate manifest this repo won't show up.

Please capitalize "Python" and "Flatpak" in the description.
Suggestion: "A script ..." is not so relevant.  How about:

Convert Python package requirements to Flatpak build manifests

Bikeshedding much?  sorry!

Thank you, I updated and improved the project description using your suggestion.

Maybe add script to tags?


Invalid metadata.yaml file

https://github.com/120feet/CryptoMe/blob/5b08fa81308b329384f18c385fd46b70e723d823/metadata.yaml#L5
Looks like your missing a space between the - and sha. Should be "- sha"

doh! - Thanks for the spot


how to handle events, I just don't get it

How I can get value on select change? Is there some information about this?

@buga1234 you should listen regular DOM events on real form fields.
JCF simply creates a wrapper around native form elements and invokes proper events on native elements when needed.

Yes, I've already found out how to do it. It took a lot of time to understand how catch events. Can you add some examples in documentation? It could help others in the future. Thanks for answer btw

@buga1234 you're right. I've updated README.


TEES test

Need a test for TEES. Otherwise merging tees-code-review will be risky...

issue with the test related to ASCII versus UTF8 text files : during execution the quote char (") is replaced by " that causes TEES bug.

Progress was made: 4838dd6095d29a35affcb80463958b66b011b0eb

2b3ba1aeecdf612789f022ccbb1cf22c541f6a21


JS: FP in js/unused-local-variable when import used as type annotation

When a module is imported with import * as X, and X is used as a type definition in typescript, the import is incorrectly flagged as unused.
Example: https://lgtm.com/projects/g/synesthesia-project/server/snapshot/f005a51d7d89c42bfc64e785dcdc61fd567bf94f/files/src/main/connections/composer.ts?sort=name&dir=ASC&mode=heatmap#x77ff0d1aaf721abc:1

This problem was also reported back in February here: https://discuss.lgtm.com/t/solved-typescript-false-positive-unused-import/1771/2
Looks like it's already been fixed in #1076


Update kits documentation

This change addresses item #2761
This changes documentation.
The following changes are proposed:

Update documentation for kits to correctly reference user-local kit file

Other Notes/Information
It appears there is discrepancy between user-local kit filename (cmake-tools-kits.json) and the project-level filename (.vscode/cmake-tools.json). Was not clear if this was intended but maybe they should have the same name as they used to before the user-local filename was changed?

The image in this section of documentation also shows the old user-local kit filename in the editor tab. Wasn't clear if I should create a new image showing the new user-local kit filename since the image appears in the user-local kit section or not. The name is consistent with the current .vscode/cmake-kits.json project-level filename.

The image in this section of documentation also shows the old user-local kit filename in the editor tab. Wasn't clear if I should create a new image showing the new user-local kit filename since the image appears in the user-local kit section or not. The name is consistent with the current .vscode/cmake-kits.json project-level filename.

I updated the image.

No build is required for this change.  I'll merge it.


add schema migration

1. Enable schema migration for SQL DB
First time to table selection page, schema migration shows 'Not selected'.

If schema migration is enabled, assessment results will be checked. If any assessment issues that might fail schema migration are found, it will show the assessment results link to check the details.
If schema migration is not enabled, there are two cases. If there are missing tables on the target but users don't select 'migrate schema to target' option, it will show 'Not selected'. If there are no missing tables on target, it will show 'Not needed'.

There are three tabs after click 'Edit'：
The source tables exist on the target and have rows:

The source tables don't exist on the target and have rows:

The source tables dont have rows. These tables are not available to select for data migration. But if they dont exist on the target, schema migration is available.

2. Auto-mapping source database to target database.
Find if one of target database has the same name and collation to the selected source database, then this target database is set as dropdown component default value.

3. Integrate the assessment results with schema migration
User can click the 'Assessment results' link to check what issues might fail the schema migration

4. There are five scenarios:
4. 1. Full schema on target (Data only migration)
"Migrate schema to target" checkbox is disable.

4.2. Full schema missing on target

4.3. Partially schema missing on target

4.4. Failed migration

4.5. All source tables are empty.
If they don't exist on the target, the schema migration is still available but not available to select for data migration

5. Migration details list
Migration type: Schema only, Data only, Schema and data, Backup and restore

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
2 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.003%) to 41.573%

Files with Coverage Reduction
New Missed Lines
%

extensions/notebook/src/dialog/configurePython/configurePathPage.ts
1
57.02%

src/sql/workbench/services/connection/browser/connectionDialogWidget.ts
1
73.44%

Totals

Change from base Build<PHONE_NUMBER>:
0.003%

Covered Lines:
30786

Relevant Lines:
69355

💛  - Coveralls


Azure servicebus filters

Per this document:
https://docs.dapr.io/operations/components/setup-pubsub/supported-pubsub/setup-azure-servicebus/
It looks as if dapr will automatically create topics and subscriptions on the service bus if disableEntityManagement is not true, however one big feature of SB topic subscriptions is the ability to add filters.

I propose an additional setting called sqlFilter which is a simple yaml array of "ORs" to put into the SB subscription if disableEntityManagement is not turned off.
Full docs:
https://docs.microsoft.com/en-us/azure/service-bus-messaging/topic-filters?WT.mc_id=Portal-HubsExtension
Example:
...
- name: sqlFilter
  value:
    - StoreId IN('Store1', 'Store2', 'Store3')
    - sys.To IN ('Store5','Store6','Store7') OR StoreId = 'Store8'

Thanks for the issue, both sql filters and sessions (#289) are something I do intend to look into when I manage to get time as they're really powerful features of ASB. If you want to take a look sooner then by all means do and I'll help where I can! Thanks

Was the improvement to support filtering topics in Azure Service Bus ever implemented - this would be very useful as at the moment we have subscribers discarding messages via a default route as the messages are not being filtered in the subscription. This would enable reducing the number of irrelevant messages hitting subscribers.


App crashes during sync

App crashes randomly during sync. Error seems to have something to do with type conversion.
Fatal error: Double value cannot be converted to Int64 because it is either infinite or NaN
Happens on https://github.com/raedahgroup/dcrios/blob/master/decred_wallet/view_controller/OverviewViewController.swift#L573

This was fixed here #246


Update compiler/eslint.vim and compiler/standard.vim to use npx

Problem #1: compilers incorrectly assume binary to be somewhere in $PATH
Solution: use npx
This is a follow-up to the discussion in https://github.com/vim/vim/pull/6320 about the use of $PATH.
Problem #2: standard errorformat is wrong
Solution: rewrite it to match output of standard

I'll include it, thanks.


DDT predefined types are broken by missing C_BOOL type table entry

Original issue: https://charm.cs.illinois.edu/redmine/issues/1207

When I added MPI_C_BOOL to AMPI and CkDDT_C_BOOL to DDT, I forgot to add the definition of that type to the type table in DDT. This means that all the types besides MPI_INT and MPI_DOUBLE are wrong. It's an easy 2-line fix.

Original date: 2016-09-14 20:58:09

~~https://charm.cs.illinois.edu/gerrit/#/c/1850/~~ https://github.com/UIUC-PPL/charm/commit/5bf8ddf6805bddf423c421a226bb19a60ee7e493


Collect examples of content scenarios for screen reader testing

What
Following on from these issues:

Content and screen readers research - initial meeting with Alistair Duggin #911
Content and screen readers research - follow up meeting #924

Make sure that we have sufficient examples of content scenarios to prep prototypes for testing for these 4 issues:

[x] components and headings
[x] the inset text issue
[ ] hint text
[ ] hyphens or spaces

Sara to check for any more content examples. Note conversation about en-dashes/hyphens etc: https://github.com/nhsuk/nhsuk-service-manual-backlog/issues/206


Can the model from Huggingface be used for the quality estimation?

After loading the model with code:
    config = T5Config.from_pretrained("microsoft/codereviewer")     model = ReviewerModel.from_pretrained("microsoft/codereviewer", config=config)
I'm getting the error:
Some weights of ReviewerModel were not initialized from the model checkpoint at microsoft/codereviewer and are newly initialized: ['cls_head.weight', 'cls_head.bias'] You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.
Does it mean, that the model from Huggingface cannot be used for the quality estimation?

No. The pre-trained model needs fine-tuning for the quality estimation task.

I had the same problem, I download chekpoint from HuggingFace.
"The pre-trained checkpoint of CodeReivewer is available in Huggingface."
I use these check point directly , and then get the same error.
What are the requirements for fine-tuning with the official data set ? 3090 is OK?
"Before you start to run experiments with CodeReviewer, please download the datasets first."?

After I fine-tuning, how to use the finetuned model and checkpoint that from HuggingFace together?

I would assume that you would have to load the weights separately for each task. Merging models is a task that has been well-researched so you should be able to find a lot of documentation online for this.


Download 320kbps

Describe the feature
The m4a download is working but how to get 320 kbps Original audio like the previous extension please fix this problem as soon as possible
Suggest how to implement
No response

You have options from extensions menu to select quality. Please check readme for more details.
Customizing the Extension :
The extension comes with an options page from where you can customize the extension. You can find it in the extensions menu, just Right Click on the extension icon and click on Extension Options. You will have several options like...
Dark Mode: to toggle the dark mode.
Default: Enabled
Quality Settings: to select the quality of the songs you want to download.
Default: 160kbps
Name Format*: to change the name of the songs in a specified format.
Default: $title - $album_artist,
Params: $title, $album_artist, $artists, $album, $year, $track, $genre, $bitrate


Merge DEV_fastapi into master

@cschmidli I understood from Joris that you'd be willing to help out with this. I've made a start with the issue you created for the move to FastAPI (#178). It'd be great if you could take a look at the changes so far and review them! This pull request also includes commits for #183 (moving code out of the API and into the module).

I'll check it out @ofjpostema latest by tomorrow morning

@cschmidli Thanks a lot for the feedback! I've tried to incorporate most of it. The new commits should also incorporate your feedback from issue #185 . Could you maybe have a look at the new commits and let me know if you find any more issues?

I'll have a look @ofjpostema !


Add ODK Validate 1.5.0 jar.

I have verified that I can run this jar from where it is with java -jar ODK_Validate.jar. The UI shows the version as 1.5.0 and a form such as contains_starts-with_ends-with.txt that uses new XPath functions validates. I can also run Validate through the CLI and get the same results.
However, if I run python ./xls2xform.py on the corresponding XLSForm -
contains_starts-with_ends-with.xlsx - I get the same ODK Validate errors as I got with the old jar. Interestingly, if I then run this same jar on the resulting xml file, it validates as expected.
When I run nosetests, I get the same behavior as on master. 117 passes but there is usage: nosetests [-h] [--json] [--skip_validate] path_to_XLSForm output_path nosetests: error: too few arguments printed part way through.
Is there something special that needs to be done to update the jar? Paging @lindsay-stevens because I see you were the last to do this update and had to fix some previous issues.
Closes #114 (once verified).

The problem was that because I had already installed pyxform through pip, that was being used. Now I've uninstalled through pip and when I run python pyxform/xls2xform.py path_to_XLSForm output_path as recommended by the README, I get
  File "pyxform/xls2xform.py", line 7, in <module>
    from pyxform import xls2json, builder
ImportError: No module named pyxform

I'm not very familiar with running scripts in modules in this way. What's the right approach?

I don't know if this is the same issue. My notes on the jar are in
pyxform/#63. To see what I mean there, compare the archive structure of the
146 jar to the previous. In my fork of Validate, there is an AppVeyor build
script + other updates, to show how the jar I pushed to pyxform was built.
On 1 Jun. 2017 8:26 am, "Hélène Martin"<EMAIL_ADDRESS>wrote:
The problem was that because I had already installed pyxform through pip,
that was being used. Now I've uninstalled through pip and when I run python
pyxform/xls2xform.py path_to_XLSForm output_path as recommended by the
README, I get
File "pyxform/xls2xform.py", line 7, in
from pyxform import xls2json, builder
ImportError: No module named pyxform
I'm not very familiar with running scripts in modules in this way. What's
the right approach?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/XLSForm/pyxform/pull/116#issuecomment-305335920, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGDSNayVYWKXIxJVkdmyHxCD82a3Prwuks5r_ekmgaJpZM4NsCEw
.

Thank you, @lindsay-stevens! That extra background is very helpful and it's good to know I should verify this on Windows.
My broader problem now is just that I can't figure out how to run xls2xform.py 😖. Any advice on that appreciated.

Did you try using the module arg? E.g.
python -m pyxform/xls2xform path
See https://docs.python.org/3/using/cmdline.html
On 1 Jun. 2017 11:25 am, "Hélène Martin"<EMAIL_ADDRESS>wrote:

Thank you, @lindsay-stevens https://github.com/lindsay-stevens! That
extra background is very helpful and it's good to know I should verify this
on Windows.
My broader problem now is just that I can't figure out how to run
xls2xform.py 😖. Any advice on that appreciated.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/XLSForm/pyxform/pull/116#issuecomment-305363003, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGDSNSrBOhDEsye9ies81_NBZ2ZYjsWxks5r_hMigaJpZM4NsCEw
.

@lognaturel , to run local code, you should uninstall the pip installed version  (pip uninstall pyxform) because it probably pulled the source from pypi. Then, assuming you're running inside a virtualenv with the virtualenvwrapper helper, you can get set up as simply as:
mkvirtualenv local_pyxform # or whatever you want to name it
(local_pyxform)$ python setup.py develop
(local_pyxform)$ python pyxform/xls2xform.py --help
(local_pyxform)$ xls2xform --help

That last shortcut is available because of the entry point in setup.py.
And later, you can leave the virtualenv with deactivate and get back in with workon local_pyxform
(local_pyxform)$ deactivate
$ xls2xform --help
# -bash: xls2xform: command not found
$ workon local_pyxform
(local_pyxform)$ which xls2xform # prove we can access the scripts again
~/.virtualenvs/local_pyxform/bin/xls2xform

Thank you @dorey, @lindsay-stevens. I'll update the readme.
I can confirm that this updated jar works with OS X and Linux. Does one of you have a Windows machine/VM handy that you could quickly verify on?

Question for @lognaturel: What process went into making this ODK Validate.jar? Did you make changes or recompile the JAR?
I ask because it would be nice if we could either verify a checksum with a trusted source or compile the JAR locally when the package is installed so that we don't have to approve or disapprove binary files from new contributors.
(also, no access to a windows VM here. sorry!)

Good idea, @dorey! This is the jar that is now available on the ODK website and there's a checksum there you should be able to verify.
If this doesn't work on Windows, we should figure out what needs to be changed in the packaging process and document it on the Validate side so that we can always use the official jar.

I suggest using AppVeyor. It's Travis, but for Windows. Here's an example
config, to run a test suite and build a pyinstaller exe.
https://github.com/lindsay-stevens/odk_tools/blob/master/appveyor.yml
That repo/project was the reason for my pyxform PR so it might be
interesting to browse otherwise.
On 2 Jun. 2017 4:48 am, "Hélène Martin"<EMAIL_ADDRESS>wrote:

Good idea, @dorey https://github.com/dorey! This is the jar that is now
available on the ODK website
https://opendatakit.org/downloads/download-info/odk-validate-2/ and
there's a checksum there you should be able to verify.
If this doesn't work on Windows, we should figure out what needs to be
changed in the packaging process and document it on the Validate side so
that we can always use the official jar.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/XLSForm/pyxform/pull/116#issuecomment-305584782, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGDSNaxfA4XIxBcTHBqXogPoXH6x8h13ks5r_wdegaJpZM4NsCEw
.

I'll investigate getting set up AppVeyor. In the mean time, I have verified that this works with Windows 10, Python 2.7.13. If we think that's a sufficient verification, it should be ready to merge.

Cool, I have created an issue for Appveyor https://github.com/XLSForm/pyxform/issues/124, might take a stub later today since I linked the repo with the CI already.


Update to 1.12.5 with new url

Checklist

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

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

Failed to even lint the recipe, probably because of a conda-smithy bug :cry:. This likely indicates a problem in your meta.yaml, though. To get a traceback to help figure out what's going on, install conda-smithy and run conda smithy recipe-lint . from the recipe directory.

Seems that CI is not passing on a newline change either (https://github.com/conda-forge/go-feedstock/pull/61), can I get some guidance?
@nehaljwani
@scopatz
@sodre

closed in #54


Dependency abstraction

What was changed
Move OpenTracing, OpenTelemetry, and Tally to their own modules. For the latter, this required a full abstraction of our use of metrics.
Breaking changes:

Interceptors in master already cause breaking changes with OpenTracing
This will cause people to use a separate dependency if they want Tally. So instead of ClientOptions.MetricsScope = myTallyScope, they'll need ClientOptions.MetricsHandler = tally.NewMetricsHandler(myTallyScope) and they'll have to go get go.temporal.io/sdk/contrib/tally.
Any code using GetMetricsScope will now need GetMetricsHandler

Why?
Forcing users to use certain dependencies causes issues. This abstraction allows them to choose what to use.
This is just a draft and is intentionally missing docs and tests. I am looking for feedback.

Closing in preparation for the real thing


Enforce the minimum cluster requirements by not installing rio if the cluster doesn't meet them

Currently there's only a warning if rio detects a cluster doesn't meet the minimum installation requirements but rio will proceed with the installation.
$ rio install
Warning: detecting that your cluster doesn't have at least 3 GB of memory in total. Please try to increase memory for your nodes
We shouldn't allow the installation to continue if the minimum requirements are not met by the cluster.

Based on a discussion we think what we have today is acceptable. Closing.


Fix: ObjectAlreadyExistsException because one already exists

Triggers name are  generated with currentTimeMillis() and in some case two triggers can have same generated name.
That cause the following error on the service loading :

ERROR (com.googlecode.jmxtrans.JmxTransformer:190) - Error scheduling job for server:
Caused by: org.quartz.ObjectAlreadyExistsException: Unable to store Trigger with name: 'test.nespresso.com:9200-1490623007618' and group: 'DEFAULT', because one already exists with this identification.

I have replace  currentTimeMillis() by nanoTime() to fix this issue.

Thanks for the fix! Longer term, we need to get rid of quartz, a simple ScheduledExecutorService would be much simpler...

@yyvess let me know if you need a new release with that fix...

Thanks for the merge @gehel ! I was the one who asked @yyvess for this fix. If you can do a new release we would greatly appreciate

Minor issue with the build and PGP keys that needs to be fixed, but I'll release ASAP...

Ok, PGP key was expired, this should now work better...

release is done, should be available on maven central soon...

Thanks !!


Feature/mssql dsp api workflow

This is to support Microsoft SQL Server workload API recipe to perform Discovery, Credential registration, Protection Plan creation, Subscription of asset into ProtectionPlan and recovery of database assets.

Please Review this pull request for MSSQL workflow to Discover, Protect and Recover with API.


Consider Removing the Upload Time Limit Entirely

Is your feature request related to a problem?
A while ago #1235 proposed to increase the upload time limit so the timeout now is 45 seconds. However, with my slow internet, that is still not enough to get a 5MB plugin uploaded.
Describe the solution you'd like.
I propose to remove the upload time limit entirely so developers with slow internet speeds will not be discriminated against,
Describe alternatives you've considered.
Alternatively, a size limit could be enforced instead of a time limit if plugin size is a concern for the backend.
Other
No response

The big concern here would generally be slowlaris-esque attacks, idk how the tooling works in regards to that

I also upload my plugins to Modrinth and I'm not stopped by an upload time limit over there. If they also have a max upload time then it must be much higher, or maybe there's something else they're doing to migrate this vulnerability?
If 45 seconds is the limit, I could fallback to using external links like how I do on SpigotMC, but I would prefer to upload if I could.

I mean, I have some questions over how bad your connection is that 45 seconds is an issue, but, I do consider that to be relatively small, so it's probably worth increasing it, I just generally wouldn't condone 0 limit at all

Well, I would like to know how an internet speed this slow still exists in a UK city centre but it is what it is. Perhaps increasing it to something like 5 minutes?

long ass timeouts are a terrible user experience and potentially a resource hog when stuff hits the fan on our side (which is why these were added initially).
maybe we can implement a retry mechanism that raises or disables the limit


Testing: rpvar service

See issue #1236 - https://github.com/ansys/pyfluent/issues/1236

See https://fluent.docs.pyansys.com/version/stable/api/solver/schemeeval.html for scheme eval examples


sync: parametrize out of sync threshold and set it to 3h for mainnet

related: https://github.com/spacemeshos/go-spacemesh/issues/5036
in future we should drop it completely, and use only connectivity information to decide if node should stop participating
in consensus. there should be no risk of interrupting consensus, because of any unexpected failures in sync process.

bors merge


metrics with TLS should not check the client identity

Bug Report
We recently (in TiKV 4.0, not 3.0) added the ability to have TLS with client CN verification. There are 2 problems with getting metrics now:

If TLS is enabled, the client must authenticate using a certificate with the same CN as any other client.
Allowing clients that only need metrics to access the entire API is a security problem.

We still need TLS. The proposed solution is to not check the CN for the metrics route. From a principles perspective separate authentication from authorization. For the metrics route authorization can be different.
It is ideal to also support verifying a different CN for metrics, but I suspect most would prefer to not bother with CN verification for the metrics route since they are read-only and only reveal the operational state of the system.
I believe this issue is present in both PD & TiKV.

If TLS is enabled, the client must authenticate using a certificate with the same CN as any other client.
It's not true, the clients can use different certificate with certificate  CN

Allowing clients that only need metrics to access the entire API is a security problem
I agree to remove the CN check from the status server connection. This requires a unified opinion among other maintainers @BusyJay @lysu @wujy-cs @tennix

Status server can also contains sensitive data and administrative commands. Maybe we should handle them separately.


chore: add semantic-release as build assets

:tada: This PR is included in version 2.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Translate use of Adam Optimizer from TF 1 to TF2 causing TF2 to coredump

System information

OS Platform and Distribution: Ubuntu 21.04
TensorFlow installed from (source or binary): pip install tensorflow=2.5.0
TensorFlow version (use command below): v2.5.0-rc3-213-ga4dfb8d1a71 2.5.0
Python version: 3/8/10
CUDA/cuDNN version: cuda_11.3.r11.3/compiler.29920130_0
GPU model and memory: NVIDIA GeForce RTX 2080 Ti, 11GB

Describe the current behavior
I am trying to translate this Tensorflow 1 notebook by Matthias Groncki to do Bermudan option pricing, from Tensorflow 1 to Tensorflow 2.
To move from non-eager graph mode with placeholders to eager mode with tf.functions, I have had to unroll his code and isolate spots where the unrolling runs into problems.
My use of the Adam optimizer is causing Tensorflow versions 2.4.1 and 2.5 with GPU to coredump.
NOTE: This is pure Tensorflow 2 code with eager mode on, no use of TF 1 compatibility features, and no use of NumPy.
Describe the expected behavior
No coredump.  I think it's coredumping because the expression y = E_t[:, i+1:i+2], where i=1 and the shape of E is (10000,2), is giving an empty tensor for y with signature
    <tf.Tensor: shape=(10000, 0), dtype=float32, numpy=array([], shape=(10000, 0), dtype=float32)>
Tensorflow could do better than to coredump in this case, there should be guards in the tensor operations to raise exceptions in Python rather than simply die.
Contributing
I don't know candidate solution, I am not a TF internals programmer.
Standalone code to reproduce the issue
import tensorflow as tf

N_samples_learn = 10000
N_samples_pricing = 100000
calldates = 2
tf.random.set_seed(7)

N = tf.random.normal((N_samples_learn,calldates))
N_pricing = tf.random.normal((N_samples_pricing,calldates))
(S_0, strike, exTimes, impliedvol, riskfree_r) = (100., 110., tf.constant([1., 1.]), 0.2, 0.03)

number_call_dates = len(exTimes)
dW = tf.sqrt(exTimes)*N

S=tf.Variable(S_0)
r=tf.Variable(riskfree_r)
sigma=tf.Variable(impliedvol)
previous_exercises = 0

# Last exercise date
with tf.GradientTape() as tape:
    S_t = S * tf.math.cumprod(tf.exp((r-sigma**2/2)*exTimes + sigma*dW), axis=1)
    E_t = tf.exp(-r*tf.cumsum(exTimes))*tf.maximum(S_t-strike, 0)
    inMoney = tf.cast(tf.greater(E_t[:,-1], 0.), tf.float32)
    exercise = inMoney * (1-previous_exercises)
    npv = exercise*E_t[:,-1]
    npv = tf.reduce_mean(npv)

greeks = tape.gradient(npv, [S, r, sigma])

training_functions = []
for i in range(number_call_dates):
    w = tf.Variable(tf.random.normal((3,1))*0.1)
    b = tf.Variable(tf.ones(1)*1)
    training_functions.append((w, b))
    state = S_t[:, i]
    feature_0 = tf.pow(state,0)
    feature_1 = tf.pow(state,1)
    feature_1_mean = tf.reduce_mean(feature_1)
    feature_1_std = tf.sqrt(tf.reduce_sum(tf.square(feature_1 - feature_1_mean))/(N_samples_pricing+1))
    feature_1_norm = (feature_1 - feature_1_mean) / feature_1_std
    feature_2 = 2*tf.pow(state,2)-1
    feature_2_mean = tf.reduce_mean(feature_2)
    feature_2_std = tf.sqrt(tf.reduce_sum(tf.square(feature_2 - feature_2_mean))/(N_samples_pricing+1))
    feature_2_norm = (feature_2 - feature_2_mean) / feature_2_std
    feature_3 = 4*tf.pow(state,3)-3*feature_1
    feature_3_mean = tf.reduce_mean(feature_3)
    feature_3_std = tf.sqrt(tf.reduce_sum(tf.square(feature_3 - feature_3_mean))/(N_samples_pricing+1))
    feature_3_norm = (feature_3 - feature_3_mean) / feature_3_std
    features = tf.stack([feature_1_norm, feature_2_norm, feature_3_norm])
    X = tf.transpose(features)
    contValue = tf.add(tf.matmul(X, w),b)
    inMoney = tf.cast(tf.greater(E_t[:,i], 0.), tf.float32)
    exercise = tf.cast(tf.greater(E_t[:,i], contValue[:,0]), tf.float32) * inMoney * (1-previous_exercises)
    previous_exercises += exercise
    npv += exercise*E_t[:,i]

i=number_call_dates-1

(w, b) = training_functions[i]
y = E_t[:, i+1:i+2]
X = S_t[:, i]

X = tf.stack([X**1, 2*X**2-1, 4*X**3 - 3 * X], axis=1)

X = (X - tf.reduce_mean(X, axis=0)) / tf.math.reduce_std(X, axis=0)

epoch = 0

input_x = X[E_t[:,i]>0]
input_y = y[E_t[:,i]>0]
y_hat = tf.Variable(tf.add(tf.matmul(input_x,w), b))
pre_error = tf.Variable(tf.pow(input_y-y_hat,2))
error = lambda: tf.reduce_mean(pre_error)

opt = tf.keras.optimizers.Adam(learning_rate=0.1)

train = opt.minimize(error, [pre_error])  ### COREDUMP

Note: I tried to create a simpler coredumpy example like
import tensorflow as tf
foo=tf.Variable([[1.,1.]])
foo=foo[:,2:3]
bar=lambda: foo
opt = tf.keras.optimizers.Adam(learning_rate=0.1)
train = opt.minimize(bar, [foo])

However, this shorter version doesn't coredump, it instead raises the exception
AttributeError: 'tensorflow.python.framework.ops.EagerTensor' object has no attribute '_in_graph_mode'
Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.
tf_log.txt

@Saduf2019 ,
I was able to reproduce the issue in tf v2.4,v2.5 and nightly.Please find the gist of it here.

@catskillsresearch
Can you please refer to this comment and let us know if it helps.

@Saduf2019 I know I can fix the problem for my purposes by not passing a tensor slice which has a 0-d axis.
However it remains that TF is coredumping in that case, which is reproducible.  Coredump is never a good way to raise an exception.  There should be some checking somewhere in the process so that if it is likely to coredump on a tensor with a 0-d axis, then it raises an exception instead.

I was able to reproduce the issue on tf-nightly 2.11.0-dev20220822. Kindly find the gist of it here. Thank you!

@catskillsresearch,
The reason for the issue is that the tf.keras optimizers apply gradients to variable objects (of type tf.Variable), while you are trying to apply gradients to tensors (of type tf.Tensor). Tensor objects are not mutable in TensorFlow, thus the optimizer cannot apply gradients to it.
You should initialize the variable img as a tf.Variable. This is how your code should be:
NOTE: The original image is lost here. If this is not desired, then you can
rename the variable to something like img_var.
img = tf.Variable(img)
opt = tf.optimizers.Adam(learning_rate=lr, decay = 1e-6)

for _ in range(epoch):
    with tf.GradientTape() as tape:
        tape.watch(img)
        y = model(img.value())[:, :, :, filter]
        loss = -tf.math.reduce_mean(y)

    grads = tape.gradient(loss, img)
    opt.apply_gradients(zip([grads], [img]))

Also, it is recommended to calculate the gradients outside the tape's context. This is because keeping it in will lead to the tape tracking the gradient calculation itself, leading to higher memory usage. This is only desirable if you want to calculate higher-order gradients. Since you don't need those, try to keep them outside.
Note: Please try to change the line y = model(img)[:, :, :, filter] to y = model(img.value())[:, :, :, filter]. This is because tf.keras models need tensors as input, not variables. Thank you!


Rename repository and package to carbonplan-maps

@manzt, do you mind if we rename the package/repository so as to avoid collision with the existing carbonplan namespace: https://pypi.org/project/carbonplan/?

thank you, @manzt!

Thanks for going forward with the changes!


Video with (encoded) question mark in file name cannot be downloaded with 404 error

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting that yt-dlp is broken on a supported site
[X] I've verified that I have updated yt-dlp to nightly or master (update instructions)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and I'm willing to share it if required

Region
Europe/Czechia
Provide a description that is worded well enough to be understood
As an example the Mothy Python's "Whither Canada?" cannot be downloaded (for free without an account) from Internet Archive (http://archive.org) when using the page URL ("details" in URL) but can be downloaded with direct link ("download" in URL).
Problematic URLs are:

https://archive.org/details/mpfc-remastered_20210305_1553 (SD playlist)
https://archive.org/details/mpfc-remastered_hd (HD playlist)
https://archive.org/details/mpfc-remastered_20210305_1553/01.+Whither+Canada%3F.mkv (SD video)
https://archive.org/details/mpfc-remastered_hd/01.+Whither+Canada%3F.mkv (HD video)
All above URLs reports "ERROR: unable to download video data: HTTP Error 404: Not Found"
All above URLs tested both quoted and unquoted and from Command shell and PowerShell (Windows)

Trying to escape the question mark ends with message that no video is found: "[archive.org] Playlist Monty Python's Flying Circus: The Complete Series 1 to 4 [BLU-RAY] [SD]: Downloading 0 items"

https://archive.org/details/mpfc-remastered_20210305_1553/01.+Whither+Canada?.mkv  (not encoded)
https://archive.org/details/mpfc-remastered_20210305_1553/01.+Whither+Canada\%3F.mkv (escaped)
https://archive.org/details/mpfc-remastered_20210305_1553/01.+Whither+Canada%%3F.mkv (double-percent)
https://archive.org/details/mpfc-remastered_20210305_1553/01.+Whither+Canada??.mkv (double-question-mark)
https://archive.org/details/mpfc-remastered_20210305_1553/01.+Whither+Canada%253F.mkv ("%" encoded to %25)

The problem is probably in the last line [debug] Invoking http downloader on "https://archive.org/download/mpfc-remastered_20210305_1553/01. Whither Canada?.mkv" which indicates that the question mark in the URL was decoded from %3F to ? (or vice-versa was not correctly encoded when read from the downloaded page) which then converts the extension .mkv into QUERY parameter and server cannot find the file without the extension.
The file can be correctly downloaded via yt-dlp when manually searched for the file on server (Download options - Matroska - "01. Whither Canada?.mkv"):

https://archive.org/download/mpfc-remastered_20210305_1553/01. Whither Canada%3F.mkv
https://archive.org/download/mpfc-remastered_hd/01. Whither Canada%3F.mkv

All other parts can be downloaded from archive.org without a problem, e.g.

(above-mentioned playlists skips first part and then downloads everything else)
https://archive.org/details/mpfc-remastered_hd/03.+How+to+Recognise+Different+Types+of+Trees+from+Quite+a+Long+Way+Away.mkv
https://archive.org/details/mpfc-remastered_hd/04.+Owl-Stretching+Time.mkv

Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
--- Output for page link

[debug] Command-line config: ['-vU', 'https://archive.org/details/mpfc-remastered_20210305_1553/01.+Whither+Canada%3F.mkv']
[debug] Encodings: locale cp1250, fs utf-8, pref cp1250, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>from yt-dlp/yt-dlp-nightly-builds [05420227a] (win_exe)
[debug] Python 3.8.10 (CPython AMD64 64bit) - Windows-10-10.0.22631-SP0 (OpenSSL 1.1.1k  25 Mar 2021)
[debug] exe versions: ffmpeg 6.1-full_build-www.gyan.dev (setts), ffprobe 6.1-full_build-www.gyan.dev
[debug] Optional libraries: Cryptodome-3.20.0, brotli-1.1.0, certifi-2024.02.02, mutagen-1.47.0, requests-2.31.0, sqlite3-3.35.5, urllib3-2.2.0, websockets-12.0
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets
[debug] Loaded 1832 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp-nightly-builds/releases/latest
Latest version<EMAIL_ADDRESS>from yt-dlp/yt-dlp-nightly-builds
yt-dlp is up to date<EMAIL_ADDRESS>from yt-dlp/yt-dlp-nightly-builds)
[archive.org] Extracting URL: https://archive.org/details/mpfc-remastered_20210305_1553/01.+Whither+Canada%3F.mkv
[archive.org] mpfc-remastered_20210305_1553: Downloading webpage
[archive.org] mpfc-remastered_20210305_1553: Downloading JSON metadata
[debug] Sort order given by extractor: source
[debug] Formats sorted by: hasvid, ie_pref, source, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), channels, acodec, size, br, asr, proto, vext, aext, hasaud, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] mpfc-remastered_20210305_1553/01. Whither Canada?.mkv: Downloading 1 format(s): 3
[debug] Invoking http downloader on "https://archive.org/download/mpfc-remastered_20210305_1553/01. Whither Canada?.mkv"

ERROR: unable to download video data: HTTP Error 404: Not Found
Traceback (most recent call last):
  File "yt_dlp\YoutubeDL.py", line 3417, in process_info
  File "yt_dlp\YoutubeDL.py", line 3138, in dl
  File "yt_dlp\downloader\common.py", line 455, in download
  File "yt_dlp\downloader\http.py", line 364, in real_download
  File "yt_dlp\downloader\http.py", line 120, in establish_connection
  File "yt_dlp\YoutubeDL.py", line 4081, in urlopen
  File "yt_dlp\networking\common.py", line 114, in send
  File "yt_dlp\networking\_helper.py", line 204, in wrapper
  File "yt_dlp\networking\common.py", line 325, in send
  File "yt_dlp\networking\_requests.py", line 348, in _send
yt_dlp.networking.exceptions.HTTPError: HTTP Error 404: Not Found

--- Output for direct link:

[debug] Command-line config: ['-vU', 'https://archive.org/download/mpfc-remastered_20210305_1553/01.%20Whither%20Canada%3F.mkv']
[debug] Encodings: locale cp1250, fs utf-8, pref cp1250, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>from yt-dlp/yt-dlp-nightly-builds [05420227a] (win_exe)
[debug] Python 3.8.10 (CPython AMD64 64bit) - Windows-10-10.0.22631-SP0 (OpenSSL 1.1.1k  25 Mar 2021)
[debug] exe versions: ffmpeg 6.1-full_build-www.gyan.dev (setts), ffprobe 6.1-full_build-www.gyan.dev
[debug] Optional libraries: Cryptodome-3.20.0, brotli-1.1.0, certifi-2024.02.02, mutagen-1.47.0, requests-2.31.0, sqlite3-3.35.5, urllib3-2.2.0, websockets-12.0
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets
[debug] Loaded 1832 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp-nightly-builds/releases/latest
Latest version<EMAIL_ADDRESS>from yt-dlp/yt-dlp-nightly-builds
yt-dlp is up to date<EMAIL_ADDRESS>from yt-dlp/yt-dlp-nightly-builds)
[generic] Extracting URL: https://archive.org/download/mpfc-remastered_20210305_1553/01.%20Whither%20Canada%3F.mkv
[generic] 01. Whither Canada?: Downloading webpage
[redirect] Following redirect to https://ia903408.us.archive.org/5/items/mpfc-remastered_20210305_1553/01.%20Whither%20Canada%3F.mkv
[generic] Extracting URL: https://ia903408.us.archive.org/5/items/mpfc-remastered_20210305_1553/01.%20Whither%20Canada%3F.mkv
[generic] 01. Whither Canada?: Downloading webpage
WARNING: [generic] Falling back on generic information extractor
WARNING: [generic] URL could be a direct video link, returning it as such.
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), channels, acodec, size, br, asr, proto, vext, aext, hasaud, source, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] 01. Whither Canada?: Downloading 1 format(s): 0
[debug] Invoking http downloader on "https://ia903408.us.archive.org/5/items/mpfc-remastered_20210305_1553/01.%20Whither%20Canada%3F.mkv"
[debug] File locking is not supported. Proceeding without locking
[download] Destination: 01. Whither Canada？ [01. Whither Canada？].mkv
... then downloading continues until file is fully downloaded

This also happens with a yt-dlp from before the networking rework, though not with yt-dl master (but the yt-dl extractor can't distinguish between the single video URL and the playlist).

diff --git a/yt_dlp/extractor/archiveorg.py b/yt_dlp/extractor/archiveorg.py
index 3bb6f2e31..c1bc1ba92 100644
--- a/yt_dlp/extractor/archiveorg.py
+++ b/yt_dlp/extractor/archiveorg.py
@@ -300,7 +300,7 @@ def _real_extract(self, url):
             is_logged_in = bool(self._get_cookies('https://archive.org').get('logged-in-sig'))
             if extension in KNOWN_EXTENSIONS and (not f.get('private') or is_logged_in):
                 entry['formats'].append({
-                    'url': 'https://archive.org/download/' + identifier + '/' + f['name'],
+                    'url': 'https://archive.org/download/' + identifier + '/' + urllib.parse.quote(f['name']),
                     'format': f.get('format'),
                     'width': int_or_none(f.get('width')),
                     'height': int_or_none(f.get('height')),


Create helpers for managing untracked repos

Is your feature request related to a problem? Please describe.
Sometimes I clone repositories inside tsrc workdir that are not tracked in manifest and it would be great if tsrc had some tools that could help manage this repositories.
Describe the solution you'd like
tsrc list-untracked ideally would walk recursively through the filetree and print git repositories that are not managed by tsrc. This way I could add them to manifest in easy way.
tsrc delete-untracked could work like tsrc list-untracked but would delete untracked repositories instead.

Looks nice. I think we need to implement breadth-first search for untracked git repository (a simple call to os.walk maybe too slow). Wanna try working on a PR ?

I think I could try with os.walk, breadth-first search might be too much time consuming for me.

Could you recommend what would be the best approach to implement that in terms of repository structure?

I think I could try with os.walk, breadth-first search might be too much time consuming for me.

No problem. Go for it :) We can merge a first patch with some simple code and worry about performance later.

Could you recommend what would be the best approach to implement that in terms of repository structure?

Not sure what you mean. Do you want to talk about architecture (where to put the code in terms of modules/classes/functions) ?

Yeah, exactly this is what my question is about. :).

This is a bit hard to discuss on GitHub. I've created a room on Gitter - it should be easier to talk about architecture there.

Just a quick comment to give a usage case that could be fixed thanks to this ticket:

Current manifest:

  - url: git@github.com:foo/bar
    dest: bar

Modified manifest:

  - url: git@github.com:foo/bar
    dest: new/path/here/bar

tsrc sync:

We have two folders: bar/ and new/path/here/bar/ Therefore tsrc list-untracked should be called by sync


created a Micro:bit v2 test app, similar to the Hail test app

This app tests the supported libtock-c libraries on the Microbit. It has limited usefulness without using tockloader listen, but some tests use the LED matrix to display results.

We talked about this and qpalzmz112 knows the next steps to fix the format and build CI issues. Ping me when they're fixed and I'll do a full review of the code.

@brghena I made the changes we talked about!

@alexandruradovici Any opinions on what you want to see in a Microbit test app? This looks pretty great to me.

bors r+


net/llmnr: Fix LLMNR answer creation

answer offset was 1 byte off.
request offset, when copied into the answer, was off as well.

Fixes #16142
Signed-off-by: Tomasz Bursztyka<EMAIL_ADDRESS>

@finikorg Can you try that PR? I don't have any LLMNR server here (no windows etc...)

ping @finikorg Can you verify that this fix works ok for you?

ping @finikorg Can you verify that this fix works ok for you?

Tested , still not working

I tested this PR and it seems to work ok. I tested it like this

cd samples/net/dns_resolve
enable LLMNR in config file: CONFIG_LLMNR_RESOLVER=y, CONFIG_LLMNR_RESPONDER=y, CONFIG_NET_HOSTNAME_ENABLE=y and CONFIG_NET_HOSTNAME="zephyr-local"
edit the sample app, change all the www.zephyrproject.org queries to zephyr-local
cmake -Bbuild -DBOARD=qemu_x86 -DOVERLAY_CONFIG=../sockets/echo_server/overlay-e1000.conf -DCONF_FILE=prj.conf .
make -C build run
capture the sent LLMNR packet using wireshark, save the query to file llmbr-request.pcapng
replay the packet (edit the mac address of zeth accordingly)
sudo tcpreplay-edit -i zeth -S <IP_ADDRESS>:<IP_ADDRESS> --enet-smac=00:00:5e:00:53:ff  -b llmbr-request.pcapng
verify in wireshark that the reply packet from zephyr is correct (and it was in my case)

@finikorg What did not work in your setup?

@finikorg What did not work in your setup?

I have built netusb sample with reel_board and tried to run ping zephyr from Windows.

Ah, sorry about false hopes. Actually wireshark claims the answer from zephyr is malformed, I missed that. I can investigate this as I have a working setup.

could you post the pcap file here?

I found out the culprit, the answer was couple of bytes short. I tried to push the fixed version over this PR but got permission denied so the re-fix is now in #17350

replaced by #17350


[feature request] Add recover logic for Cloudbreak service

While a stack is in the middle of being created, deleted or updated, and the hosting machine fails for whatever reasons (e.g., power outage), after it is restarted, Cloudbreak is not able to recover and pick up the polling.
This is a potentially serious problem during stack creation, because after Cloudbreak restarts, the stack is  already running in the cloud provider, and billing is started, but Cloudbreak still show CREATE_IN_PROGRESS.

Latest version of Cloudbreak contains the ability to restart cluster operations.


macOS x86_64 test workflow

Just noting that this is unblocked now - so we can at least change the title! 😄

I guess this is now only blocked on a merge conflict?

Well, the reason I have not made this a priority is because running tests alone (without building) take around an hour and 10 minutes already. I think I'll slim this down to just the cli_run tests and keep running the full test suite once a day.

Makes sense! 👍


Problem with accessing rainloop

[X] Question
[X] Always

Description
Setup made from https://github.com/hardware/mailserver -> 1 - Prepare your environment

No changes to docker-compose
No changes to traefik.toml
.env has MAILSERVER_DOMAIN, Passwords set, VOLUMES_ROOT_PATH is set to a different location than default

If I go to webmail.mydomain.tld I get a "Bad gateway", instead of rainloop site.
Steps to reproduce

Setup (see description)
docker-compose up -d
browse to https://webmail.mydomain.tld or https://webmail.mydomain.tld/?admin

Expected results
rainloop-admin-site
Actual results
"Bad gateway" message
Debugging information
That's my question more or less. Any idea how to investigate this further?
Traeffic-Dashboard and Postfixadmin are accessible without problem ...
Thanks,
Cyber1000

"Bad gateway" means that your rainloop container is unavailable. Add LOG_TO_STDOUT env variable :
rainloop:
    image: hardware/rainloop
    container_name: rainloop
    environment:
      - LOG_TO_STDOUT=true

Post the result of this command : docker logs rainloop
Try to access to Rainloop without Traefik :
rainloop:
    image: hardware/rainloop
    ports:
      - "8888:8888"

http://webmail.mydomain.tld:8888/ and http://webmail.mydomain.tld:8888/?admin
Switch Traefik to debug mode and post your logs...etc

Any idea how to investigate this further ?

Without some logs and configuration file I can't help you.

docker logs rainloop
nginx: [alert] could not open error log file: open() "/var/lib/nginx/logs/error.log" failed (13: Permission denied) 2018/07/07 18:51:29 [emerg] 58#58: open() "/var/lib/nginx/logs/error.log" failed (13: Permission denied)
Repeats every few minutes
docker exec rainloop ps aux
PID   USER     TIME   COMMAND     1 991        0:00 /bin/s6-svscan /services    12 991        0:01 s6-supervise nginx    13 991        0:00 s6-supervise php    14 991        0:00 {php-fpm7} php-fpm: master process (/etc/php7/php-fpm.conf)  1043 root       0:00 ps aux
docker exec rainloop nc -vz <IP_ADDRESS>:8888
Doesn't output anything
http://webmail.mydomain.tld:8888/
With direct access to rainloop no result too, seems like rainloop container is running, but doesn't  do anything

Deleting with "docker image rm hardware/rainloop" and recreating with "docker-compose up -d" didn't change anything.
Wanted to eliminate the possibility, that my image of rainloop has a problem or is too old (though only 1 -2 weeks old)

Can you access http://mail.mydomain.tld?
If so, check the frontend and backends are properly linked.

No changes to traefik.toml
Did you change the {{ EMAIL }} and {{ DOMAIN }} placeholders?

Also, is it http://spam.mydomain.tld working or it says bad gateway too?
[]'s

@Cyber1000
This should fix your issue :
rainloop:
  environment:
    - UID=nginx
    - GID=nginx

Looks far better with these settings, at least I get rainloop running.
Running some tests today, but I'm confident, that I can close this issue.
Would be nice to have these settings in some kind of troubleshooting-section in wiki.
Thanks a lot, have a nice sunday.

You're right, I mentioned it here.

Yes works as intented, I'm getting mail and I can read it, thanks again.


Factor test toolchain

Please look at #962 and consider earlier uncommitted PRs first. This PR is based on those PRs and will give you smaller PRs to review.
Description

Create a new test toolchain with a provider in the normal pattern
Move scalatest jars/dependencies to the toolchain
Move scalatest flags to the toolchain
Tiny bit of cleanup (don't "_" prefix in BUILD files since they can't be loaded)

Motivation
Multiple scala version builds within the same bazel run #962

At this point, there's not enough need/support for this (including myself) to continue forward.


Functions to automatically select Device with most flops/memory

Added utility functions to automatically select the fastest Device or the Device with largest memory capacity from all available Devices.
For selecting the fastest Device, the TFLOPs/s performance of the Device is estimated. For Nvidia and AMD GPUs, the estimate is challenging due to the different number of cores per CU depending on the microarchitecture and even GPU model:

AMD GCN, CDNA: 64 cores/CU
AMD RDNA, RDNA2: 128 cores/CU (dual CUs are reported as CUs in OpenCL)
Nvidia Kepler: 192 cores/CU
Nvidia Maxwell, Pascal, Ampere: 128 cores/CU
Nvidia P100, Volta, Turing, A100, A30: 64 cores/CU

The vast majority of GPUs are captured with the correct estimate, but for some rare/old GPUs, the estimate could be wrong by a factor of 2.
For CPUs without SMT/HT as well as for very old CPUs with IPC<32 or very new CPUs with IPC=64 (AVX-512), the estimate is wrong.
Overall however, the estimated values are good enough to identify the fastest device in systems with one CPU and one or multiple GPUs.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


chore: bump min supported Node.js to v14.18.0

The transitive<EMAIL_ADDRESS>dep breaks on Node.js versions before
v14.18.0. (Actually uuid@10 is being used, which technically no longer
supports Node.js v14, but still works with later minors.)
Refs: https://github.com/googleapis/gaxios/issues/637

The gaxios package-lock update was done via npm update gaxios at the root dir.

I initially hit this over on https://github.com/elastic/elastic-otel-node/pull/279 which generated new package-lock files, which is what got the latest gaxios release. Our dependabot updates just had yet gotten to this package, I think.

The test with v14.18.0 (https://github.com/elastic/elastic-otel-node/actions/runs/9911269719/job/27383542939?pr=280) failed ... because it hit what looks like an infinite loop:
Run npm test

><EMAIL_ADDRESS>test /home/runner/work/elastic-otel-node/elastic-otel-node
> npm run --if-present --workspaces test

><EMAIL_ADDRESS>test /home/runner/work/elastic-otel-node/elastic-otel-node
> npm run --if-present --workspaces test

><EMAIL_ADDRESS>test /home/runner/work/elastic-otel-node/elastic-otel-node
> npm run --if-present --workspaces test

><EMAIL_ADDRESS>test /home/runner/work/elastic-otel-node/elastic-otel-node
> npm run --if-present --workspaces test

... hundreds more of the same ...

npm ERR!  Exit status 249
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>test script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!  Exit status 249
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>test script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!  Test failed.  See above for more details.
Error: Process completed with exit code 1.

I'm guessing there is some bug with the newer npm installed for Node.js 14 testing, from test.yml:
    - name: Update npm to a version that supports workspaces (v7 or later)
      if: ${{ matrix.node < 16 }}
      run: npm install -g npm@9 # npm@9 supports node >=14.17.0
    - run: npm ci
    - run: npm test

Lovely.

Another potential option would be to somewhat give up on supporting anything but the latest Node.js v14 release... just test with "14" as many projects -- that test with Node.js v14 at all -- seem to do.

because it hit what looks like an infinite loop:

The issue was that the logic in test.yml for installing a new-enough npm didn't work properly for matrix.node value of 14.17. It was relying written expecting version comparison, but was getting string comparison.
Those loosely-typed comparisons worked in Node.js:
> '14' < '16'
true
> '14.17' < '16'
true
> 14.17 < '16'
true
> '14.17' < 16
true
> '14' < 16
true

but I'm not sure how GH Actions were evaluating those expressions (https://docs.github.com/en/actions/learn-github-actions/expressions), but one of the workflow runs for 14.18 did not run the step to upgrade npm before the fix.

gaxios has reverted their update to uuid@10, so eventually there will be a<EMAIL_ADDRESS>that works fine with 14.17.0... so I guess we could drop back down to 14.17.0. :)
I'll put this in draft for now. The other tweaks here to clarify the min supported version and to fix the test.yml buglet are worth keeping.

There still isn't a new gaxios release and I'd like to move on. I don't think it is too painful to drop support for 14.17 and bump to 14.18 as a minimum. Eventually there will be<EMAIL_ADDRESS>that fixes the issue such that this will work with node v14.17. That's fine, but we don't need to support it.  We can go back if there is a user request/need.
As it currently stands, a user installing the current latest @elastic/opentelemetry-node will get the gaxios version that crashs with Node v14.17 and earlier, so I think we are effectively already in this state of supporting only 14.18 and later.


test(content): add no-bounce test

Short description of what this resolves:
adds a test for no-bounce. Related to this issue https://github.com/driftyco/ionic/issues/9604
Changes proposed in this pull request:

adda test for no-bounce

Ionic Version: 2.x

@brandyscarney just tested this and it definitely bounces for me without no-bounce on the iOS 10.2 emulator. Hopefully you are able to reproduce this now too with my above commit.


Refreshing the search results should not steal the focus

Open library
Ctrl+C
Ctrl+V
"Keep both"
Try to type in field
Editor loosing focus --> the search field is focues

Expectation: After the merge dialog is close,d the focus is on the field, where I pressed Ctrl+V.

I can't reproduce the issue.

Try to type in field

Before pressing Ctrl + V, the entry editor is already unfocused. If Ctrl + V is pressed while a field is focused, the value will be pasted into the field.

Open "simple-search-library.bib"
Search for "S"
Select group "g"
Double click article n4
Go to Field "Title"
Glick on Article n4 again (different to issue description)
Press ctrl+C
Press ctrl+V
Click "Keep both"
Hurry up to click into Title field
See that JabRef jumps to Search field


SphereOverlap QueryScene method should be moved out of FocusProvider and into IMixedRealityRaycastProvider

Describe the problem
FocusProvider uses IMixedRealityRaycastProvider to handle SimpleRaycast and SphereCast scene query types, but handles SphereOverlap scene query type on its own.
Describe the solution you'd like
SphereOverlap scene query types should be handled by IMixedRealityRaycastProvider as well for consistency.

This would be a breaking API change. As a rule, MRTK strives to avoid breaking changes (acknowledging that many have been made). At this point in the MRTK v2.x lifecycle, we are closing this issue as it will not apply to MRTK3


chore: update dependencies

This PR updates all dependencies in all packages to latest available versions, with the exception of node-fetch which is pinned to 3.0.0-beta.9 to avoid the current issue with 3.0.0 final (#2434)
Notable updates are rollup plugins: commonjs  17 -> 20 and nodeResolve  11 -> 13
Also updated are all versions in templates of create-svelte
The changeset includes adapter-node, as that uses rollup plugin commonjs in its own build
Before submitting the PR, please make sure you do the following

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpx changeset and following the prompts. All changesets should be patch until SvelteKit 1.0

triggered another testrun as windows fail might have been a fluke (timeout)


Free-Form Nail Cropping

Is there some way of running the code so that it will generate some set of points outlining only the nail in the image (as opposed to just a square around it)? I was hoping to extract nails out from the background around them. While cropping down to a square is extremely helpful (and I commend you on that), it doesn't go far enough for my project, unfortunately.

Sorry. At present, it is only for nail tracking.
If it is about semantic segmentation, you can try other end-to-end deep learning models.
Maybe you can use unsupervised segmentation after the nail detection, because I think data labeling is quite troublesome.

Thank you for your advice! I used your model as a base for the semantic segmentation, and it's working perfectly!

Thank you for your advice! I used your model as a base for the semantic segmentation, and it's working perfectly!

Do you have any plans to share your code/techniques? I'm quite interested as well!


PhantomJS cli testing

The version of Webkit included in PhantomJS 1.9.x does not include support for -calc or -webkit-calc. When running the tests with grunt jasmine, all tests fail.
Manually updating gruntjs/grunt-lib-phantomjs to use PhantomJS2 results in the tests hanging. Here's the relevant issue: gruntjs/grunt-lib-phantomjs/issues/74
Once this is fixed, we can use a CI service for testing.
Running "jasmine:test" (jasmine) task
Testing jasmine specs via PhantomJS

 Split
   X splits in two when given two elements
     Expected '' to be 'calc(50% - 5px)'. (1)
     Expected '' to be 'calc(50% - 5px)'. (2)
   X splits in three when given three elements
     Expected '' to be 'calc(33.3333% - 5px)'. (1)
     Expected '' to be 'calc(33.3333% - 10px)'. (2)
     Expected '' to be 'calc(33.3333% - 5px)'. (3)
   X splits vertically when direction is vertical
     Expected '' to be 'calc(50% - 5px)'. (1)
     Expected '' to be 'calc(50% - 5px)'. (2)
   X splits in percentages when given sizes
     Expected '' to be 'calc(25% - 5px)'. (1)
     Expected '' to be 'calc(75% - 5px)'. (2)
   X splits in percentages when given sizes
     Expected '' to be 'calc(25% - 5px)'. (1)
     Expected '' to be 'calc(75% - 5px)'. (2)
   X accounts for gutter size
     Expected '' to be 'calc(50% - 10px)'. (1)
     Expected '' to be 'calc(50% - 10px)'. (2)
   X accounts for gutter size with more than two elements
     Expected '' to be 'calc(33.3333% - 10px)'. (1)
     Expected '' to be 'calc(33.3333% - 20px)'. (2)
     Expected '' to be 'calc(33.3333% - 10px)'. (3)
   X accounts for gutter size when direction is vertical
     Expected '' to be 'calc(50% - 10px)'. (1)
     Expected '' to be 'calc(50% - 10px)'. (2)
   X accounts for gutter size with more than two elements when direction is vertical
     Expected '' to be 'calc(33.3333% - 10px)'. (1)
     Expected '' to be 'calc(33.3333% - 20px)'. (2)
     Expected '' to be 'calc(33.3333% - 10px)'. (3)

Down the rabbit hole. TravisCI doesn't support PhantomJS 2 (canceled for some reason: travis-ci/travis-ci/issues/3225#issuecomment-96906546). So we're using binaries from here: travis-ci/travis-ci/issues/3225#issuecomment-110416315. The problem is zeevl/phantomjs2 matches exact PhantomJS versions instead of major versions. So we fork it to get this fix: zeevl/phantomjs2/pull/4. To get it in the dependencies, we need a fork of gruntjs/grunt-lib-phantomjs, and for that, a fork of gruntjs/grunt-contrib-jasmine.
But it finally worked, and there's a little Passing badge on the readme. Hooray!


Tellstick sensor configuration cleanup

Breaking Changes
The way Tellsick sensor configuration was set up using dynamic values for named sensors will not be supported in future versions of Home Assistant.
Users that have configured the optional named sensors initiated with only_named will have to update their configuration.
Previous releases:
  - platform: tellstick
    only_named: true
    92: Outdoor
    19: Rain

From v0.88 users would receive warning for this type of configuration.
New way of configuring named sensors:
  - platform: tellstick
    only_named:
       - id: 92
         name: Outdoor
       - id: 19
         name: Rain

Description:
Corrected an invalid way of having dynamic keys in configuration. This will prevent the component to break in coming release(s).
Issue was highlighted from 0.88.x as a warning notification for keys in configuration that is not supported in coming versions.
Related issue (if applicable): fixes #21395
Pull request in home-assistant.io with documentation (if applicable): home-assistant/home-assistant.io#8716
Example entry for configuration.yaml (if applicable):
Old way - wrong:
  - platform: tellstick
    only_named: true
    92: Utomhus
    19: Regn

New way - corrected:
  - platform: tellstick
    only_named:
       - id: 92
         name: Utomhus
       - id: 19
         name: Regn

Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

If user exposed functionality or configuration variables are added/changed:

[x] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[ ] New dependencies have been added to the REQUIREMENTS variable (example).
[ ] New dependencies are only imported inside functions that use them (example).
[ ] New or updated dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[ ] New files were added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

Please highlight the breaking change in a paragraph in the PR description for the release notes.

Fixed the PR description and added Breaking Changes section.

Can be merged when build passes.

Phew.. Well i have some lessons learned, my aim is to get things more effecient, catch the basic things earlier and local before pushing..
Thanks again @MartinHjelmare for your input.

@endor-force lovely breaking changes paragraph!


No such module 'URLRouting'

I have added about this error episode 119
https://github.com/pointfreeco/episode-code-samples/discussions/119

I was missing this to my package so after add this fixed my issue
.product(name: "VaporRouting", package: "vapor-routing"),


Fix : Change API Endpoint to another

Currently API endpoint that used in this project might be unavailable. So let's find another API and let change it to another but for now this application is cannot get any data from current API.

Is seem DDC (Thailand) OpenAPI for COVID-19 on (https://covid19.ddc.moph.go.th/th/api) is now available and I believe this project It's can remain to use this api endpoint. So this issue will be close.


Speed up Azure DevOps builds with pipeline caching

Is your feature request related to a problem? Please describe.
About ~3 minutes is spent restoring NPM/NuGet packages.
Describe the solution you'd like
Consider using pipeline caching: https://docs.microsoft.com/en-us/azure/devops/pipelines/caching/?view=azure-devops#using-the-cache-task.

Hi, if no one is trying this, I would love to try. I don't know azure pipelines that well, but If you don't mind, I would push to a pull request to see if it works (or if you have any idea of another way to test, I appreciate).


fixes adding as a dependency

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thanks!

Looks like there are some custom changes in this PR. @cijo7 ,
If you could open a new PR with only the CMAKE_CURRENT_SRC_DIR change targeting develop branch, I could merge it right away.
In the interim, closing this PR.