sigal: fix build on darwin

Description of changes
Disable failing test on darwin.
Marked as broken by #173671 I think, should be backported.

Things done

Built on platform(s)

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

[X] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[X] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[X] Fits CONTRIBUTING.md.

Are you using stable?

I'm sorry, I don't understand the question. I build on top of master.
Or it was supposed to be in another of my PR that you merged/reviewed, I guess #180923 (that failed to backport) or #180914 (not building on ofborg).

I was asking because you're asking for backports, so I wondered if that's more generic or specifically for your usecase :)

No, I just read through the list of packages in #173671, that were marked as broken at the end of ZHF, to find some that I could fix and send PRs. That's why I said in my PRs that they should be backported, since nobody else fixed them before the end of ZHF.

Ah okay, thanks for going through some of those. Not sure if we'll backport everything, we'll see how that goes. For me there's more priority fixing master than anything else, but of course different users have different needs.


npm package

Hi,
what about future npm package updates? (the latest package is currently 230 days old, and is broken because of twitter stream has moved to ssl)
Cheers,
Nandor

This project is discontinued.  See the repo description.

If you pull the repo directly instead of using npm it will work.

Is it possible to use a git repo behind a dependency in package.json dependencies?

'dependencies': {
    'twitter-node': 'git://github.com/technoweenie/twitter-node.git'
}


Unit Tests for wifi.js

@rwaldron getting closer a bit at a time. How do these tests look?

@tcr or @rwaldron, do either of you know how to make Travis CI happy?

The travis errors are unrelated to the actual tests.
Take a look at https://github.com/tessel/t2-cli/pull/153#discussion_r32056615

All right, I've broken TesselSimulator out into another comment. It would be super helpful if @tcr can check out TravisCI and give me some guidance on how to fix it.

Travis is fixed and we're good to go with Grunt!


I can't get the package to work on MacOS (v2.0.0)

From the error message on build: exited with code 134

Hi @SulimanKH - could this be related to #48 ?


[FEATURE] window focus/blur events

🚀 Feature request
Is your feature request related to a problem?
Similar to the already available PAGE_VISIBILITY token for the document visibility state changed events, I also have a need for the focus and blur events on the window object. Since the page visibility might not change state when the user switches to another application or space (the macOs terminology for virtual desktops). When that happens, the window blur/focus events do get triggered
Describe the solution you'd like
Similar to the page visibility token, a token that is created from the two events on the window object (blur and focus) emitting true upon focus and false upon blur
Describe alternatives you've considered
Currently, I have this stream created in my a project, but realise this might be very useful for other to also have available.
Additional context
Be aware when developing this token, that if you have the browser's devtools open, the devtools most probably have focus. This means, the actual window object will never receive the focus (or blur) event when you switch to another app or space to test the behaviour. It took me a while to find out/realise this.
Example implementation
factory: () => {
  const windowRef = inject(WINDOW);

  return merge(
    fromEvent(windowRef, 'focus'),
    fromEvent(windowRef, 'blur'),
  ).pipe(
    startWith({ type: 'focus' }),
    map(({ type }) => type === 'focus'),
    distinctUntilChanged(),
    share(),
  );
}

Don't think you need distinctUntilChanged here, I don't think it can fire same event twice. Also you can rewrite it a little better:
factory: () => {
  const windowRef = inject(WINDOW);
  const documentRef = inject(DOCUMENT);

  return merge(
    fromEvent(windowRef, 'focus'),
    fromEvent(windowRef, 'blur'),
  ).pipe(
    startWith(null),
    map(() => documentRef.hasFocus()),
    share(),
  );
}

Otherwise each resubscription might get a wrong initial value. Not sure if document.hasFocus() is what you are after and if it's already updated upon focus and blur events from window. You would need to test that :)
While this seems like a handy snippet I'm not sure it is something that should go into this library. We focus on Web APIs and while it looks a lot like Page Visibility API it is more of a helper function. I'll keep it open for a while see if anybody else has their thoughts on the subject.

While this seems like a handy snippet I'm not sure it is something that should go into this library. We focus on Web APIs and while it looks a lot like Page Visibility API it is more of a helper function

I see, thanks for the explanation, makes sense.
And also thanks for the suggested improvement. I'll have to do some testing indeed, to see if document.hasFocus() indeed provides the right values.

Ok, so I guess let's close this and if anybody needs it, the snipped shared above can help.


portico: Make UI updates for self-hosters.

This PR makes the following adjustments for self-hosters:

Hides the "Find accounts" and "New organization" portico header items
Points the Zulip logo to https://zulip.com
Makes the Zulip Cloud tab inactive, and presents a link to https://zulip.com/plans from a rewritten subheader

Screenshots and screen captures:
Hidden "Find accounts" and "New organization" headers

Inactive Zulip Cloud tab + link:

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[x] Explains differences from previous plans (e.g., issue description).
[x] Highlights technical choices and bugs encountered.
[x] Calls out remaining decisions and concerns.
[x] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[x] Each commit is a coherent idea.
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[x] Visual appearance of the changes.
[x] Responsiveness and internationalization.
[x] Strings and tooltips.
[x] End-to-end functionality of buttons, interactions and flows.
[x] Corner cases, error conditions, and easily imagined bugs.

lgtm; posted one comment on something that might improve implementation readability.

Got a shoulder review from Alya and she doesn't have anything to add; feel free to mark to merge after CI after possibly tweaking the note above.

I decided https://github.com/zulip/zulip/pull/28137#discussion_r1422756754 was more of a pain than it's worth, merged, thanks @karlstolley!


Add support for v3

At the moment v3alpha is supported.
Add the choice of using v3 or v3alpha (go package).

Depends on https://github.com/google/deps.dev/issues/76


OAuth 2 access token generated in client-credentials pattern cannot be intropected

It seems that access token comes from client-credential mode can not be parsed correctly

@deljuven can you give more details?

@hsluoyz
I call oauth/token with grant_type set as client-credentials, and then intropect API returns some error message showed application not found.
I tried to reproduce the scenario using demo.casdoor.com, but find introspect API failed today. The only thing I can get is
{
    "active": false
}

Sorry, I think I made some mistake. The API accepts form data only, but I pass the token with json payload.

When I tried to use access token created via client-credentails mode, there is the following error.

@deljuven can you make a PR to fix it?

For client-credential mode, username in token is generated with "app/" prefix by default.


生命周期图示翻译有误

图示中  "将el外部的HTML作为template编译*"  中的  "外部的HTML"  应直译为  "outerHTML"
因为"outerHTML"与"innerHTML"同样为html元素属性,不应被翻译为中文

Sorry for the mistake. However, since"outerHTML" has its own actual meaning, it would be better if "outerHTML" remains in the main body and the translation can be left aside in small-font note (as other similar cases in the image).
If you would like to help, you can find the translated .psd file at #967 , edit it and push your PR. Your effort would be appreciated. (Note that the font used in the image should be installed first if you would like to edit.)

Anyone could help us to modify the .psd file and export a new image? Or I will revert this image back to the original one. Thanks.

Anyone could help us to modify the .psd file and export a new image? Or I will revert this image back to the original one. Thanks.

I'll try it, I'm worried about messing it up

No worry, could feel free to try :-)


Alignment and cropping

we aligned the ground-truth, baseline, and proposed videos into a template image and cropped them into the same size using similarity transformation.
How do u do it?

The baseline system generates videos of a different size than our proposed system. This was explained in Section IV.C.


Add kopia server connect helper methods

Signed-off-by: Prasad Ghangal<EMAIL_ADDRESS>Change Overview
New pkg kopia with kopia server connect helper methods
Pull request type
Please check the type of change your PR introduces:

[ ] :construction: Work in Progress
[ ] :rainbow: Refactoring (no functional changes, no api changes)
[ ] :hamster: Trivial/Minor
[ ] :bug: Bugfix
[x] :sunflower: Feature
[ ] :world_map: Documentation
[ ] :robot: Test

Test Plan
Will wait for server side implementation for the e2e testing

[ ] :muscle: Manual
[ ] :zap: Unit test
[ ] :green_heart: E2E

@PrasadG193 let's queue this behind #869 if possible. Some API changes would be required when we update Kopia

@PrasadG193 The other PR merged. Please update the helpers accordingly


Add Integer_programming_avg.py

Integer_programming_avg.py produces a partition that minimizes the sum of the positive differences from the avg, by solving an integer linear program (ILP).

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 4 committers have signed the CLA.:x: erelsgl:x: dinkubag:x: yoelchemla:x: 8onlichtmanYou have signed the CLA already but the status is still pending? Let us recheck it.


AttributeError: 'NoneType' object has no attribute 'version_sort'

Issue description
Running pipenv install --verbose failed.
Expected result
Expected a virtual env to be set up, a pipfile created, and no errors to pop up.
Actual result

Traceback (most recent call last):
  File "c:\python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Python38\Scripts\pipenv.exe\__main__.py", line 7, in <module>
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 73, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\python38\lib\site-packages\pipenv\cli\command.py", line 231, in install
    retcode = do_install(
  File "c:\python38\lib\site-packages\pipenv\core.py", line 1924, in do_install
    ensure_project(
  File "c:\python38\lib\site-packages\pipenv\core.py", line 581, in ensure_project
    ensure_virtualenv(
  File "c:\python38\lib\site-packages\pipenv\core.py", line 495, in ensure_virtualenv
    python = ensure_python(three=three, python=python)
  File "c:\python38\lib\site-packages\pipenv\core.py", line 385, in ensure_python
    path_to_python = find_a_system_python(python)
  File "c:\python38\lib\site-packages\pipenv\core.py", line 347, in find_a_system_python
    return next(iter(finder.find_all_python_versions()), None)
  File "c:\python38\lib\site-packages\pipenv\vendor\pythonfinder\pythonfinder.py", line 328, in find_all_python_versions
    path_list = sorted(versions, key=version_sort, reverse=True)
AttributeError: 'NoneType' object has no attribute 'version_sort'

Steps to replicate
Provide the steps to replicate (which usually at least includes the commands and the Pipfile).
pipenv install --verbose on win10 machine.
$ pipenv --support
Pipenv version: '2020.5.28'
Pipenv location: 'c:\\python38\\lib\\site-packages\\pipenv'
Python location: 'c:\\python38\\python.exe'
Python installations found:
Traceback (most recent call last):
  File "c:\python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Python38\Scripts\pipenv.exe\__main__.py", line 7, in <module>
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1236, in invoke
    return Command.invoke(self, ctx)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 73, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\python38\lib\site-packages\pipenv\cli\command.py", line 138, in cli
    get_pipenv_diagnostics()
  File "c:\python38\lib\site-packages\pipenv\help.py", line 33, in get_pipenv_diagnostics
    python_paths = finder.find_all_python_versions()
  File "c:\python38\lib\site-packages\pipenv\vendor\pythonfinder\pythonfinder.py", line 328, in find_all_python_versions
    path_list = sorted(versions, key=version_sort, reverse=True)
AttributeError: 'NoneType' object has no attribute 'version_sort'

I'm getting the same error. Looking forward to someone smarter finding a resolution

I found a workaround, but I'm not good enough with computers/python/virtual environments to know why it works.
From Terminal:

Download virtualenv (if your pip install of pipenv didn't already)
Create a virtual environment in virtualenv --> look online for instructions
once inside the virtualenv go to the folder you want your pipfile
pipenv install [python_package]
Should create the pipfile and lock files. Then exit the virtual environment
Navigate to the folder for your project with pipenv files
type pipenv shell. This should create a virtual environment within the pipenv construct.

i've got the same error, anything to resolve it?

this issue still persists on win10 with python 3.8.3 and pipenv 2020.6.2
DVCL643@10NB03610:~/workspace/python/mailswitch_security$ pipenv shell
Traceback (most recent call last):
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Scripts\pipenv.exe\__main__.py", line 9, in <module>
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 73, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\cli\command.py", line 428, in shell
    do_shell(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 2363, in do_shell
    ensure_project(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 576, in ensure_project
    ensure_virtualenv(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 498, in ensure_virtualenv
    python = ensure_python(three=three, python=python)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 388, in ensure_python
    path_to_python = find_a_system_python(python)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 350, in find_a_system_python
    return next(iter(finder.find_all_python_versions()), None)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\vendor\pythonfinder\pythonfinder.py", line 328, in find_all_python_ve
rsions
    path_list = sorted(versions, key=version_sort, reverse=True)
AttributeError: 'NoneType' object has no attribute 'version_sort'

I have solved this by reverting to
pip install pipenv==2018.11.26

Windows 10, Python 3.8.3, pipenv 2020.6.2
I managed to solve this by typing in the full path to the python.exe:
pipenv install --python="C:\Users\my_name\AppData\Local\Programs\Python\Python38\python.exe"
Viola! Virtual environment created.

Still getting the same error with full path to python.exe.
Windows 10, Build 20161
Miniconda Python 3.7.4
pipenv 2020.6.2
pipenv install --python="C:\Users\Han\Miniconda3\python.exe"

Pipfile:
[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]
pytest = "*"
v = {editable = true,version = "*"}

[packages]
numpy = "==1.19"
tensorflow = "==2.2"
pillow = "*"
requests = "*"
nltk = "*"
matplotlib = "*"

[requires]
python_version = "3.7"

I ended up having to specify Python version on pipfile in order it to work with 3.8
[requires]
python_version = "3.8"

where is pipfile located ?

where is pipfile located ?

@vincentclaes thanks issues has been solved..

I am also seeing this error on OSX 10.14.6:
Pipfile:
[requires]
python_version = "3.7.6"

pipenv install --dev --python $(pyenv root)/versions/3.7.6/bin/python
Finally,
AttributeError: 'NoneType' object has no attribute 'url'

Did you ever find a solution to this @mracette ?

@sigtot I also had to revert to 2018.11.26

@sigtot pip-tools and run of-the-mill venv? :smile:

I am getting this too. Is there any specific reason as to why this is happening? Does it use the PATH / PYTHONPATH env variable?
I had multiple versions of python installed, along with trying out chocolatey and this error just appeared one day. Probably after I upgraded it. I went through, uninstalled every listed version of python, reinstalled 3.8.6 at system-level and still got this error. Uninstalled that and used chocolatey to install 3.8.6 and, yet again, still popped up.
I'm not sure if somehow my environment variables got messed up with the multiple versions and chocolatey, but I thought it would have been fixed with an uninstall/reinstall.

I also got that error!!! Centos enviroment makes no sense as well.. have tried 2 computers under pipenv&pyenv,same message

as others have stated, resolved downgrading to 2018.11.26

create file pipenv.rb with content of https://raw.githubusercontent.com/Homebrew/homebrew-core/fd7578b01f869570c0748a4e0ba54e064870e91d/Formula/pipenv.rb
run
brew uninstall pipenv brew install ./pipenv.rb

Running pip3 install pipenv==2018.11.26 in terminal solved the below issue for me
AttributeError: 'NoneType' object has no attribute 'url'

Running pip3 install pipenv==2018.11.26 in terminal solved the below issue for me
AttributeError: 'NoneType' object has no attribute 'url'

I went in to "pythonfinder.py" where the error occurs, and commented out the sorting of the python version list. Felt comfortable doing it because of the comment.
So from:
       # This list has already been mostly sorted on windows, we don't need to reverse it again         path_list = sorted(versions, key=version_sort, reverse=True)
to:
        # This list has already been mostly sorted on windows, we don't need to reverse it again         # path_list = sorted(versions, key=version_sort, reverse=True)         path_list = versions
This solved it for me.

I went in to "pythonfinder.py" where the error occurs, and commented out the sorting of the python version list. Felt comfortable doing it because of the comment.
So from:
       # This list has already been mostly sorted on windows, we don't need to reverse it again         path_list = sorted(versions, key=version_sort, reverse=True)
to:
        # This list has already been mostly sorted on windows, we don't need to reverse it again         # path_list = sorted(versions, key=version_sort, reverse=True)         path_list = versions
This solved it for me.

@PatrikWiklund I created a PR to filter out None results before the sorted call as well.

@PatrikWiklund I created a PR to filter out None results before the sorted call as well.

I went in to "pythonfinder.py" where the error occurs, and commented out the sorting of the python version list. Felt comfortable doing it because of the comment.
So from:
 # This list has already been mostly sorted on windows, we don't need to reverse it again path_list = sorted(versions, key=version_sort, reverse=True)
to:
 # This list has already been mostly sorted on windows, we don't need to reverse it again # path_list = sorted(versions, key=version_sort, reverse=True) path_list = versions
This solved it for me.

After implementing above solution, I'm getting the Value Error "Unable to find t64.exe in package distlib"(despite the existence of t64.exe)

run it with "--three"
pipenv --three

run it with "--three"
pipenv --three

Thanks JadJabbour
This worked for me
ex: pipenv --three install django~=3.1.0

Still happening with latest versions of pip and pipenv?
$ python38 -m pip --version
pip 21.1.1 from D:\Python38\lib\site-packages\pip (python 3.8)
 $ python38 -m pip freeze | grep pipenv
pipenv==2020.11.15
$ python38 -m pipenv install rich
Traceback (most recent call last):
  File "D:\Python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "D:\Python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "D:\Python38\lib\site-packages\pipenv\__main__.py", line 5, in <module>
    cli()
  File "D:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "D:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "D:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "D:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "D:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "D:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 73, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "D:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "D:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "D:\Python38\lib\site-packages\pipenv\cli\command.py", line 233, in install
    retcode = do_install(
  File "D:\Python38\lib\site-packages\pipenv\core.py", line 1920, in do_install
    ensure_project(
  File "D:\Python38\lib\site-packages\pipenv\core.py", line 576, in ensure_project
    ensure_virtualenv(
  File "D:\Python38\lib\site-packages\pipenv\core.py", line 498, in ensure_virtualenv
    python = ensure_python(three=three, python=python)
  File "D:\Python38\lib\site-packages\pipenv\core.py", line 388, in ensure_python
    path_to_python = find_a_system_python(python)
  File "D:\Python38\lib\site-packages\pipenv\core.py", line 350, in find_a_system_python
    return next(iter(finder.find_all_python_versions()), None)
  File "D:\Python38\lib\site-packages\pipenv\vendor\pythonfinder\pythonfinder.py", line 328, in find_all_python_versions
    path_list = sorted(versions, key=version_sort, reverse=True)
AttributeError: 'NoneType' object has no attribute 'version_sort'

Running pip3 install pipenv==2018.11.26 in terminal solved the below issue for me
AttributeError: 'NoneType' object has no attribute 'url'

this is solution is a life saver

Same error on win10 pipenv==2021.5.29 installing 2018.11.26 makes pipenv work as expected.

Same error i encountered but when i used pipenv --python 3.8 it worked.I hope it helps....

Workaround for pipenv 2021.5.29:
specify your version of python when running pipenv for the first time:
pipenv --python 3.9.5
pipenv install
If you don't know your version of python:
python --version
All previous versions of pipenv appear to run as expected.

I solved it by adding:  C:\Users\Username\AppData\Roaming\Python38\Scripts and C:\Users\Username\AppData\Roaming\Python38\site-package to environment variables.

The issue is still present in Windows Python 3.9.7 installed from Microsoft Store, pipenv, version 2021.5.29
@kevillion workaround solved the problem.


feat(processIssueComment): added Project Management

Added the PM category from all-contributors/all-contributors#199.

@Berkmann18 thanks 🙏 way to cover all the extra cases.
Looks like the snapshots may be outdated. May have to bump the version of all-contributors-cli

Yeah, I just noticed the markdown bits in the snapshot, I'll update all-contributors-cli and update the snapshots in a few seconds.

@Berkmann18 I can't see any snapshots?

@jakebolam On https://github.com/all-contributors/all-contributors-bot/pull/166/commits/9113d83b37050c4614d5d0a20f2cc691f9f93008?

Hmmm the changes aren't on the files tab? https://github.com/all-contributors/all-contributors-bot/pull/166/files

@jakebolam How weird, it shows up on the commit file changes but once you remove the filter it doesn't.

@Berkmann18 the CI is failing due to lint https://github.com/all-contributors/all-contributors-bot/pull/166/checks?check_run_id=82301923

Fixed.

Deploying: https://circleci.com/workflow-run/8311d3a3-5893-4775-a62a-9cf08efd5978
Once its deployed to the sandbox want to test it on https://github.com/all-contributors-sandbox/test-all-contributors/issues/1


[FEAT] Pre-Release for debian

It would be great to have pre-release packages for debian

Hi @enricovittorini
Agreed. However, the nightly builds are created in the GitHub CI/CD environment which does not provide Debian runners, only Ubuntu runners (and Windows and macOS).
Since rebuilding .deb packages for TSDuck on Debian is as simple as make installer, there is no real need to look for a complicated external CD/CD setup for Debian.

@lelegard I was trying to build tsduck on debian:stable docker could not install prerequisites. To fix them I had to install the following packages:

sudo
lsb-release
locales
locales-all

Hi @enricovittorini
Packages such as sudo and the like are basic. I assumed that they are installed everywhere.
For the rest, execute first the script scripts/install-prerequisites.sh as documented here.

@lelegard  on debian:stable docker form dockerhub it is not the case:
# sudo
/bin/sh: 1: sudo: not found
#

After installing sudo only, pre-req script does not install anything:
root@9be689751d70:/tsduck/scripts# ./install-prerequisites.sh
root@9be689751d70:/tsduck/scripts#

after installing lsb-release, the script gets executed correcty.
root@9be689751d70:/tsduck/scripts# ./install-prerequisites.sh  Packages: git git-lfs g++ cmake flex bison dos2unix curl tar zip linux-libc-dev dpkg-dev python3 libedit-dev pcscd libpcsclite-dev libcurl4 libcurl4-openssl-dev libsrt-openssl-dev librist-dev libusb-1.0-0-dev default-jdk doxygen graphviz Hit:1 http://deb.debian.org/debian stable InRelease Hit:2 http://deb.debian.org/debian stable-updates InRelease Hit:3 http://deb.debian.org/debian-security stable-security InRelease Reading package lists... Done Building dependency tree... Done
Still not enough, without locales-all (indeed no need for "locale" package) there are warnings during the "make"
root@9be689751d70:/tsduck# make bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
Once isntalled locales-all, all is ok
root@9be689751d70:/tsduck# make   [DEP] base/xml/tsxmlElement.cpp   [DEP] base/xml/tsxmlDocument.cpp   [DEP] base/xml/tsxmlDeclaration.cpp   [DEP] base/xml/tsxmlComment.cpp   [DEP] base/xml/tsxmlAttribute.cpp

Rationale:

sudo : without it, you cannot install anything.
lsb-release : required to identify the system and version, required to decide which packages to install with which command.
locale during the build : previously, some people had issues with their locale which affected the sort order of some shell commands during the build, therefore the locale of the build process is forced to en_US.UTF8 to enforce a reproductible build.

I would say that a docker container is an execution environment for applications, not a developer's environment. Developers need many tools and a typical full operating system. This is why scripts/install-prerequisites.sh assumes a reasonable developer's environment and installs specific tools and libraries which are needed to build TSDuck.
Reading this script, you will see it supports a large number of operating systems and versions. It took years to get there. All addressed configurations were tested at some point, typically in a virtual machine. So, there is no room to add "non-standard" development environments.

@lelegard thanks.
My goal was to give a clue to those who will have the same issue in the future. Maybe it could be worth to add a note in "how to build" tsduck section.

Maybe it could be worth to add a note in "how to build" tsduck section.

Precisely, there is a complete section about this in the TSDuck programmer's guide: https://tsduck.io/doxy/building.html
This section has been existed for a long time and I often post a link to it, almost every time someone new needs to build TSDuck, for instance to take advantage of a new feature or bug  fix. I hardly see what to add.

@lelegard I was trying to build tsduck on debian:stable docker could not install prerequisites. To fix them I had to install the following packages:

sudo
lsb-release
locales
locales-all

You can omit the locales-all package, and instead do this:
RUN echo "en_US.UTF-8 UTF-8" >>/etc/locale.gen && \
locale-gen


Opening links in existing window from the command line

If I open a gemini or gopher link from the command line (or say from another program that calls Lagrange), a whole new session/window of lagrange opens. It'd be great if the link could automatically open as a tab in an existing lagrange window.

Hmm, I'll give this some thought... Multiple concurrent instances are not handled gracefully at the moment — they will merrily overwrite each others' runtime files (bookmarks, visited URLs, etc.).

b97462993b00ecc5cd04051b4fc2abd164fefb04 implements an IPC mechanism that enables sending commands to a running instance of Lagrange.
I'll still need to document the options in --help.

I use a rofi dmenu to launch things and I have noticed the most use I get from just running my script that runs several different executables with   , but with lagrange this doesn't work. The lagrange will not be launching at all if the clipboard content is not a valid URL. For example most web browsers launch a new tab with the search of the  on the set default search engine. I wish lagrange did the same.
behaviour:
$  lagrange anything
Invalid URL/file: anything

wanted behaviour in my case:
Lagrange launches a new tab in an existing lagrange instance if it exists, otherwise in a new instance, with the page
gemini://geminispace.info/search?anything
I will throw in here another unrelated small "enhancement" idea or an opinion. With certificates when adding a new identity, I wish the "valid until" had some default value (that you could set maybe in settings even). It's a bit tedious to type in the YYYY-MM-DD HH:MM:SS but I guess we're not creating new identities so often so this is not a problem.

@khlsvr Would it work for you to have a command line option that causes Lagrange to treat the next argument as URL field input, so it can work both with URLs and search queries? I'm not familiar with Rofi but it's always possible to make an alias/script that runs lagrange with such an option.
I'm not willing to make this default behavior since that would mean any mistake in the command line arguments automatically means making a search query.

With certificates when adding a new identity, I wish the "valid until" had some default value (that you could set maybe in settings even). It's a bit tedious to type in the YYYY-MM-DD HH:MM:SS

It is sufficient to write just the year, or YYYY-MM-DD. I should display a help tip about this somewhere in the UI.

#!/bin/bash

ARG=$@

if [ -n "${ARG}" ]
then
    if [[ "$ARG" != "$date" && "$ARG" != kill ]]
    then
        coproc ( $ARG "$(xclip -o)" > /dev/null  2>&1 )
        exec 1>&-
    elif  [ "${ARG}" == "kill" ]
    then
         coproc ( $(i3-msg kill) > /dev/null  2>&1 )
        #exec i3-msg exec sleep 1 && i3-msg kill
    fi
else
    #echo "$(date)"
    echo "qutebrowser"
    echo "mpv"
    echo "mpv --ytdl-format=best"
    echo "translation_lojban_run"
    echo "text-to-speech"
    echo "translation_speak"
    echo "translation_google"
    echo "translation_japanese"
    echo "feh"
    echo "lagrange"
    echo "kill"
fi

That script is run in rofi, rofi gives me a popup of options from that "else" and I then choose one option and it executes it with clipboard content being the argument. So every other time I might want to copy gemini URL to clipboard and other times just a search word, or just run the lagrange if it's not running to access tabs from last session (and just ditch the new tab it opens from some random clipboard content I had.)
So do you mean that if lagrange had a flag like lagrange --url <url> it would treat it like it does now without flags, and in that version of lagrange if no flags given, it would treat it with search? I guess in that scenario I would need to add another lagrange row to the "else" with a flag.  As it stands now, I could add another "elif" for lagrange to process the argument, but I was just wondering that since it's a common feature in web browsers to evaluate the argument whether it's an URL or a search string that maybe it could be possible to do natively with lagrange too.
But sure if it's a lot of work to have it process it, then I guess better work on some other issues that may be more important. As for whether the flag helps me I'm not sure how much. If it's useful for some other people too then I guess it's worth going for it.
As for YYYY-MM-DD ok, that's an improvement. However not having to focus that field at all is more than twice the better but yeah, not a big problem :)

Thanks for showing the script, that clarifies things for me.
I meant that there could be a flag like --url-or-search <text> that opens a new tab and inserts  in the URL input field. The behavior would be equivalent to typing  in the URL field and pressing Enter. So if it's an URL, it gets opened, and if it's not, it goes to the configured search URL as a query parameter.

Oh ok! In that case it would be very helpful and solve my problem and get instant use.

Added #232 so this is not forgotten.

--url-or-search (#232) implemented for v1.5.


Machine-readable requirement example

In WFS 3 there is this requirement block:
Requirement 2
/req/core/root-success

A successful execution of the operation SHALL be reported as a response with a HTTP status code 200.

The content of that response SHALL be based upon the OpenAPI 3.0 schema root.yaml and include at least links to the following resources:

* /api (relation type ‘service’)
* /conformance (relation type ‘conformance’)
* /collections (relation type ‘data’)

Is the following a good example of the textual representation?
[requirement,label="/req/core/root-success",subject="endpoint",obligation="shall"]
====

[description]
A successful execution of the operation SHALL be reported as a response with a HTTP status code 200.

[routine,run="CoreRoot"]
----
CoreRoot(success): HttpResponse
if (success)
  recommendation(label: success-response)
end
----

[requirement,label="success-response"]
--

[description]
---
The content of that response SHALL be based upon the provided OpenAPI 3.0 schema and include at least links to the following resources:

* `/api` (relation type "service")
* `/conformance` (relation type "conformance")
* `/collections` (relation type "data")
---

[specification,type="oapi30"]
======
'/':
  get:
    responses:
      '200':
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/root'
            properties:
              type: array
              items:
                $ref: '#/components/schemas/link'
              match:
                - href: '/api'
                  rel: service
                - href: '/conformance'
                  rel: conformance
                - href: '/collections'
                  rel: data
          text/html:
            schema:
              type: string
======
--

====

@opoudjis what does this mean?

I have found that you want import as an attribute to denote the label of an imported/nested requirement. I am renaming it "inherit", so it does not collide with "import" as denoting a code stub.

Name collision:

inherit X: a requirement inherits from requirement X, and is a subclass of it
import X: a reference to sourcecode which will be imported from elsewhere

As already pointed out, the obligation is not required, because we differentiate requirements, recommendations and permissions at tag level.

OK. But there may be more than one "obligation" of a requirement. We could support them on the tag level, but we want to make customization/extensions easy (for us).

I think the description should not be marked up: it should be all content of the requirement which is not in a labelled block. That is to make it easier to mark up requirements; a requirement without any internal markup should be resolvable to a text-based description.

The description of a requirement must:

Be a part of the requirement.
Support richer text.

Imagine a system that lists out requirements but want to look at what the requirement means. For example, https://nvd.nist.gov/download/800-53/800-53-controls.xml . It looks something like this:
    <ns3:control>
        <control-class>Technical</control-class>
        <family>Access Control</family>
        <number>AC-1</number>
        <title>Access Control Policy and Procedures</title>
        <priority>P1</priority>
        <description>
            <ns2:div>
                <ns2:p class="align_left">The organization develops, disseminates, and reviews/updates [<ns2:em>Assignment: organization-defined frequency</ns2:em>]:</ns2:p>
                <ns2:ol>
                    <ns2:li>A formal, documented access control policy that addresses purpose, scope, roles, responsibilities, management commitment, coordination among organizational entities, and compliance; and</ns2:li>
                    <ns2:li>Formal, documented procedures to facilitate the implementation of the access control policy and associated access controls.</ns2:li>
                </ns2:ol>
            </ns2:div>
        </description>
        <supplemental-guidance>
            <ns2:div>
                <ns2:p class="align_left">This control is intended to produce the policy and procedures that are required for the effective implementation of selected security controls and control enhancements in the access control family. The policy and procedures are consistent with applicable federal laws, Executive Orders, directives, policies, regulations, standards, and guidance. Existing organizational policies and procedures may make the need for additional specific policies and procedures unnecessary. The access control policy can be included as part of the general information security policy for the organization. Access control procedures can be developed for the security program in general and for a particular information system, when required. The organizational risk management strategy is a key factor in the development of the access control policy. Related control: PM-9.</ns2:p>
            </ns2:div>
        </supplemental-guidance>
        <references>
            <reference href="http://csrc.nist.gov/publications/nistpubs/800-100/SP800-100-Mar07-2007.pdf">NIST 800-100</reference>
            <reference href="http://csrc.nist.gov/publications/nistpubs/800-12/handbook.pdf">NIST 800-12</reference>
        </references>
    </ns3:control>

I do not see the reason for differentiating between run and type attributes.

The point was to differentiate a specification vs a piece of code that can be run as validation.
For example, let's say we have a requirements document for a web service.
I can provide all the following at the same time:
. Specification: a spec in Open API syntax. (that can be run by an external validation tool)
. Specification: description of the specification
. Example: a (or more) piece of Ruby code that can be run to test (e.g. rspec) to validate 1 input vs 1 output
. Validation: code or validation description
How do we structure this?

The course to be pursued is 3: we still encode machine-readable requirements and textual requirements separately.

Yes but they need to be the same "requirement" if they are about the same actual requirement.

There will be provision for extracting .req files, although I presume each requirement will need to be a separate file.

Good call.

I do not yet understand what you mean by nested requirements. The example you have given is in fact a cross-referenced requirement, and it properly requires a Metanorma xref (which will be resolved within Metanorma; it is not clear whether it will be resolved within a .req document.)

I think the point is we can have clauses and subclauses, and therefore there are requirements and sub-requirements. We just need to support that.
For example, you can have a "control set" vs a "control". As long as we can model this, I'm happy.

@opoudjis have a look at https://nvd.nist.gov/download/800-53/800-53-controls.xml .
Do we want to support this data model for requirements? I think it is a good reference.
e.g.
    <ns3:control>
        <control-class>Technical</control-class>
        <family>System and Communications Protection</family>
        <number>SC-26</number>
        <title>Honeypots</title>
        <priority>P0</priority>
        <description>
            <ns2:div>
                <ns2:p class="align_left">The information system includes components specifically designed to be the target of malicious attacks for the purpose of detecting, deflecting, and analyzing such attacks.</ns2:p>
            </ns2:div>
        </description>
        <supplemental-guidance>
            <ns2:div>
                <ns2:p class="align_left">None.</ns2:p>
            </ns2:div>
        </supplemental-guidance>
        <control-enhancements>
            <control-enhancement sequence="1">
                <description>
                    <ns2:div>
                        <ns2:p class="align_left">The information system includes components that proactively seek to identify web-based malicious code.</ns2:p>
                    </ns2:div>
                </description>
                <supplemental-guidance>
                    <ns2:div>
                        <ns2:p class="align_left">Devices that actively seek out web-based malicious code by posing as clients are referred to as client honeypots or honey clients.</ns2:p>
                    </ns2:div>
                </supplemental-guidance>
            </control-enhancement>
        </control-enhancements>
    </ns3:control>

You have two long meandering discussions above, which I am going to break up here.

Obligations.

OK. But there may be more than one "obligation" of a requirement. We could support them on the tag level, but we want to make customization/extensions easy (for us).

... I would rather keep requirements, recommendations, permissions completely separate at the tag level, since they are treated as completely separate assets in documents. Maybe if multiple obligations materialise I can add an override attribute with multiple values that allows that kind of vagueness about obligations, and treat "requirement" as a generic category in limited circumstances; but that really sounds like an edge case, and I'm not going to implement it until I see it: it is confusing.
Will not fix.

Descriptions with rich text:

I think the description should not be marked up: it should be all content of the requirement which is not in a labelled block. That is to make it easier to mark up requirements; a requirement without any internal markup should be resolvable to a text-based description.
The description of a requirement must:

Be a part of the requirement.
Support richer text.

Both of which are met by the tagging as I have created it, and I see no earthly reason why I would need to introduce explicit tags around descriptions, when what I have implemented works fine.
Your requirement from the example above is that descriptions include paragraphs, ordered lists, italics, and paragraph alignment. No problem:
.Generic Structure for Permutation Testing
[requirement,type="pseudocode",label="/iid-testing/permutation-test/"]
====

[align=left]
The information system includes components specifically designed to be the target of malicious attacks for the purpose of detecting, deflecting, and analyzing such attacks.

The organization develops, disseminates, and reviews/updates [_Assignment: organization-defined frequency_]

. A formal, documented access control policy that addresses purpose, scope, roles, responsibilities, management commitment, coordination among organizational entities, and compliance; and
. Formal, documented procedures to facilitate the implementation of the access control policy and associated access controls.

[verification,type="pseudo-fortress"]
--
[source,lang="DecideIID"]
----
import FisherYatesShuffle, TestStatistic
----
--

====

Rendered into XML as:
<requirement id="_e5872aac-8537-4512-a4fe-a4a37db46133">/iid-testing/permutation-test/<description>
The information system includes components specifically designed to be the target of malicious attacks for the purpose of detecting, deflecting, and analyzing such attacks.

The organization develops, disseminates, and reviews/updates [Assignment: organization-defined frequency]

A formal, documented access control policy that addresses purpose, scope, roles, responsibilities, management commitment, coordination among organizational entities, and compliance; and

Formal, documented procedures to facilitate the implementation of the access control policy and associated access controls.

</description><verification exclude="false" type="pseudo-fortress"><sourcecode id="_73f30284-185b-45f3-92dd-72fea0ad0e02">import FisherYatesShuffle, TestStatistic</sourcecode>
</verification></requirement>

Nothing further for to do here

Validation vs Specification

I do not see the reason for differentiating between run and type attributes.
The point was to differentiate a specification vs a piece of code that can be run as validation.

For example, let's say we have a requirements document for a web service.

I can provide all the following at the same time:
. Specification: a spec in Open API syntax. (that can be run by an external validation tool)
. Specification: description of the specification
. Example: a (or more) piece of Ruby code that can be run to test (e.g. rspec) to validate 1 input vs 1 output
. Validation: code or validation description

How do we structure this?

Specification: a spec in Open API syntax. (that can be run by an external validation tool):

[specification]
--
[source]
----
sourcecode
----
--

Will become <specification><sourcecode>
Specification: description of the specification
Text within requirement that is not otherwise wrapped in an open block: will become <description>.

. Example: a (or more) piece of Ruby code that can be run to test (e.g. rspec) to validate 1 input vs 1 output
. Validation: code or validation description

I do not understand the distinction you are making between the example, which is used for validation, and the validation code. The latter, which is a general description of validation, would be tagged as [verification], and will become <verification>, optionally containing <sourcecode> blocks.
The former is... well, I don't know what it is. But if you have a semantic distinction you want to make between them, it is not at the attribute level of "run" vs "type", which makes no sense to me: it is at the level of container. And if the code is not there for the purposes of verification, I do not know what it is there for. Onus is on you to explain this better, or point to some prior art explaining the difference.
Pending clarification from Ronald

Separation of machine readable and textual requirements

The course to be pursued is 3: we still encode machine-readable requirements and textual requirements separately.

Yes but they need to be the same "requirement" if they are about the same actual requirement.

They will be. A single [requirement] container will contain, as separate open text blocks, specifications ([specification]) which may be machine readable (sourcecode), and which may be suppressed from document output (%suppress attribute); and human-readable text as descriptions (untagged text).
Nothing further to do here

Extraction of requirements

There will be provision for extracting .req files, although I presume each requirement will need to be a separate file.

New issue: https://github.com/riboseinc/metanorma/issues/39

Nested requirements

I do not yet understand what you mean by nested requirements. The example you have given is in fact a cross-referenced requirement, and it properly requires a Metanorma xref (which will be resolved within Metanorma; it is not clear whether it will be resolved within a .req document.)

I think the point is we can have clauses and subclauses, and therefore there are requirements and sub-requirements. We just need to support that.

For example, you can have a "control set" vs a "control". As long as we can model this, I'm happy.

Of course, this is just like figures and subfigures: the containing requirement is not meant to have any content of its own.
Since examples in Asciidoc can be nested, there is no problem with marking up nested requirements:
.Generic Structure for Permutation Testing
[requirement,type="pseudocode",label="/iid-testing/permutation-test/"]
====

[requirement,type="pseudocode",label="/iid-testing/permutation-test/1"]
=====
[align=left]
The information system includes components specifically designed to be the target of malicious attacks for the purpose of detecting, deflecting, and analyzing such attacks.

The organization develops, disseminates, and reviews/updates [_Assignment: organization-defined frequency_]

. A formal, documented access control policy that addresses purpose, scope, roles, responsibilities, management commitment, coordination among organizational entities, and compliance; and
. Formal, documented procedures to facilitate the implementation of the access control policy and associated access controls.
=====

[requirement,type="pseudocode",label="/iid-testing/permutation-test/2"]
=====
[verification,type="pseudo-fortress"]
--
[source,lang="DecideIID"]
----
import FisherYatesShuffle, TestStatistic
----
--
======

====

Renders as:
<requirement id="_b8918432-2b37-450b-be30-a7a901e2a813">/iid-testing/permutation-test/<requirement id="_18e15a05-0e29-4211-a46a-8e7b22a5b2a6">/iid-testing/permutation-test/1<description>
The information system includes components specifically designed to be the target of malicious attacks for the purpose of detecting, deflecting, and analyzing such attacks.

The organization develops, disseminates, and reviews/updates [Assignment: organization-defined frequency]

A formal, documented access control policy that addresses purpose, scope, roles, responsibilities, management commitment, coordination among organizational entities, and compliance; and

Formal, documented procedures to facilitate the implementation of the access control policy and associated access controls.

</description></requirement>
<requirement id="_df73feaa-f470-4e86-8127-021a98d7344b">/iid-testing/permutation-test/2<verification exclude="false" type="pseudo-fortress"><sourcecode id="_a62a4bcc-165f-4a25-9877-becc047c6e2b">import FisherYatesShuffle, TestStatistic</sourcecode>
</verification><description>
<example id="_3c17c129-1d6d-4b1c-862a-4f23f8651529">

</example></description></requirement></requirement>

Nothing further to do here

As just ranted on message, I do not have a data model for NIST SP 800 53, I have some tags whose definition I do not know. What I can guess is completely idiosyncratic to security, and I am not interested in domain-specific modelling.

Taking the tags we have defined so far for Requirements:

Control-Class: xxx
Family: xxxx
Number: requirement/label
Title: requirement/title (which I've just realised I had not implemented: implementing)
Priority: xxx
Description: requirement/description
Supplemental Guidance: xxxx
Control Enhancements: xxxx

I am not going to add control classes, families, or priorities as tags to the model, because they are idiosyncratic. I am instead going to add key-value pairs to requirement metadata, where the key as well as the value is open-ended, because the number of classifications people can come up with for requirements is open-ended. So:

Control-Class: /requirement/classification[@type = "control-class"]
Family: /requirement/classification[@type = "family"]
Priority: /requirement/classification[@type = "priority"]

I'm not impressed by control enhancements or supplemental guidance either: far from a "good reference", I think this is too vague to be useful.
Supplemental guidance is defined in SP 800 53 as "Statements used to provide additional explanatory information for security controls or security control enhancements." These are mere notes, and I would not dignify them with more than /requirement/description/note (that's Metanorma Notes).
Control Enhancements are some sort of supplement of the original security control; these are arguably merely nested requirements: requirement/requirement.

The clarification provided by @ronaldtse is: an Example is a unit test, or code that tests a single feature or input or output; Verification code is a test suite that comprehensively tests a module.

That is not a semantic distinction, since both are verifications; they are only distinctions of scope of what they apply to. I am inclined not to make the distinction machine readable. All sorts of intermediate scopes of validation can be devised (single parameter vs single routine? routine vs module? module vs package? package vs organisational policy?), and it is pointless to come up with a controlled vocabulary, let alone a tagset, to differentiate them. They will both be verification, and I will add a type attribute to verification.

An XSLT is, I guess, feasible, but I'm not going to do it yet. But this is the Metanorma equivalent of the foregoing:

<requirement>
  <classification>
    <tag>control-class</tag>
    <value>Technical</value>
  </classification>
  <classification>
    <tag>family</tag>
    <value>System and Communications Protection</value>
  </classification>
  <classification>
    <tag>priority</tag>
    <value>P0</value>
  </classification>
  SC-26
  <title>Honeypots</title>
  <description>

The information system includes components specifically designed to be the target of malicious attacks for the purpose of detecting, deflecting, and analyzing such attacks.

    <note>None</note>
  </description>
  <requirement>
    1
    <description>

The information system includes components that proactively seek to identify web-based malicious code.

    </description>
  </requirement>
  <requirement>
    1
    <description>

The information system includes components that proactively seek to identify web-based malicious code.

      <note>
Devices that actively seek out web-based malicious code by posing as clients are referred to as client honeypots or honey clients.
</note>
    </description>
  </requirement>
</requirement>

Obligations.
Maybe if multiple obligations materialise I can add an override attribute with multiple values that allows that kind of vagueness about obligations, and treat "requirement" as a generic category in limited circumstances; but that really sounds like an edge case, and I'm not going to implement it until I see it: it is confusing.

OK.

Descriptions with rich text:

I noticed that there is a <description> tag that separates it from the requirement. Good enough. Thanks.

Validation vs Specification

Clarification: "validation" are the audit rules. "specification" is the specification on what has to be done. It is true that a "full validation" = checking the "full specification", but life isn't always that way. Hence we need to make a distinction between them.
We should be able to place "description" (i.e. rich text) and "sourcecode" in both. For example, I can place multiple <sourcecode> pieces inside validation as audit rules (within <validation>). The same for <specification>.
And there could be multiple of them -- multiple validation rules and multiple specifications.
If we can do this it's all good.

Separation of machine readable and textual requirements

All good.

Extraction of requirements

All good.

Nested requirements

There is an empty <example> block in the example, can we get rid of that?
<example id="_3c17c129-1d6d-4b1c-862a-4f23f8651529">

</example>

Notice that we need two "types" of <examples> in this sort of markup:

<example> in <description>, which is a example of the requirement or of its description.
<example> in the machine-readable portions such as <validation>, which is a example of the rule specified.

That is not a semantic distinction, since both are verifications; they are only distinctions of scope of what they apply to. I am inclined not to make the distinction machine readable. All sorts of intermediate scopes of validation can be devised (single parameter vs single routine? routine vs module? module vs package? package vs organisational policy?), and it is pointless to come up with a controlled vocabulary, let alone a tagset, to differentiate them. They will both be verification, and all requirement subparts already permit type attributes; so that would be  vs .

Agree. This can be an arbitrary separation. The solution is fine.

An XSLT is, I guess, feasible, but I'm not going to do it yet. But this is the Metanorma equivalent of the foregoing:

This looks good to go!

Obligations.
Maybe if multiple obligations materialise I can add an override attribute with multiple values that allows that kind of vagueness about obligations, and treat "requirement" as a generic category in limited circumstances; but that really sounds like an edge case, and I'm not going to implement it until I see it: it is confusing.

Changed my mind: I implemented it.

Validation vs Specification

Clarification: "validation" are the audit rules. "specification" is the specification on what has to be done. It is true that a "full validation" = checking the "full specification", but life isn't always that way. Hence we need to make a distinction between them.

Sure, and the distinction between validation and specification is already being made. Type on validation allows us to differentiate unit test from full spec, for example.

We should be able to place "description" (i.e. rich text) and "sourcecode" in both. For example, I can place multiple <sourcecode> pieces inside validation as audit rules (within <validation>). The same for <specification>.

Yes, that is the case. Everything that is meant to be machine readable is meant to be in sourcecode; and every requirement subpart can contain both rich text and sourcecode.

And there could be multiple of them -- multiple validation rules and multiple specifications.

Yes, there is an arbitrary number of intermixed requirement subparts.

Nested requirements

There is an empty <example> block in the example, can we get rid of that?

Fixed, markup error.

Notice that we need two "types" of <examples> in this sort of markup:

<example> in <description>, which is a example of the requirement or of its description.
<example> in the machine-readable portions such as <validation>, which is a example of the rule specified.

But the markup in Asciidoctor to leads to the two is the same. That's in order.
I think we're good.

But the markup in Asciidoctor to leads to the two is the same. That's in order.

The markup is the same but in different contexts :wink:


Question: Is anyone else getting Timestamps and assets out of sync with 5.5.0f3?

I already submitted a ticket with Unity, but I'd like to make sure I'm not the only one.
Seems to happen in any project I've ported from the HTK editors and seems to always involves the same 3 guids:
Asset with GUID 67e9dad5654047ebbe623cce9dbf7b38 has empty path but has assettimestamp???
Asset with GUID 52a206b72a8f4f749c28d8b18b42dd19 has empty path but has assettimestamp???
Asset with GUID f48df919adea4fa095a7407e773e5aa4 has empty path but has assettimestamp???

None of these projects I'm getting this warning in shares assets nor code.
I've already tried deleting the Library, Temp folders, and all project .meta files but still returns.
All 3 GUIDs seem to point to:
C:/Program Files/Unity/Editor/Data/PlaybackEngines/MetroSupport/Managed/UAP/UnityEngine.Networking.dll

Noticed it just now too

Yeah, this has actually been happening through all the the 5.5 beta builds as well.  I basically just ignore the error, it doesn't seem to cause anything to break or builds to fail...

...That we know of...

@ChimeraScorn is this something we could ask Unity folks?
@HodgsonSDAS a screen shot would be perfect.

Status Update:
https://issuetracker.unity3d.com/issues/unity-does-not-rebuild-guid-cache-on-boot

5.5.0p1 Fixes this issue.


Adding bernese / tokenfactory / osmosis

Bernese is a tokenfactory brand new token based on snapshots from the stakers and consensus closure operation of a deadchain. https://medium.com/@berniedogmoney/proposed-distribution-for-a-dog-token-8bab3614b393

this PR has been superseded by PR #4440 in order to make easier commit of the logo.
logo has been updated to squared logo, and token at the end of the list within newer PR #4440


GetProjection NullPointerException

Issue Type
[ ] Question
[X ] Bug
[ ] Improvement
[ ] Build system related
[ ] Performance
[ ] Documentation
Description and/or steps/code to reproduce the problem
When the user moves the map and changes the rotation or zoom level of the map very quickly a NullPointerException appears. Here is the stack :
java.lang.NullPointerException: Attempt to invoke virtual method 'void org.osmdroid.views.Projection.adjustOffsets(double, double, boolean, int)' on a null object reference         at org.osmdroid.views.MapView.getProjection(MapView.java:354)         at org.osmdroid.views.MapView.getMapCenter(MapView.java:676)         at org.osmdroid.views.MapView.getMapCenter(MapView.java:669)
In our application we are using the function getMapCenter() to calculate a distance from an other point.
Version of osmdroid the issue relates to:
6.0.3

hmm, strange. looking into this now

i'm guessing this is a fun concurrency problem whereby the project is set to null while the call to getProjection is called

@SopraSteriaAndroid so i think this is fixed, although i wasn't able to reproduce it before or after the change. i'll update the snapshots shortly.  if you can test and/or attempt to reproduce, i'd appreciate it


Aks

Description
Adding Azure k8s Service plugin
Issues Resolved
Added Azure Kubernetes Service Plugin
updated resource group naming convention (doesn't' like spaces)
Contribution Check List

[x] All tests pass.
[ x] New functionality includes testing.
[ x] New functionality has been documented in the README if applicable
[ x] New functionality has been documented in CHANGELOG.MD

@gonzalez Can you add a link in the root readme as well.


The AppMap extension has categories and keywords populated in the Marketplace.

Categories: (from a pre-defined set)
Linters, Debuggers, Other, Visualization
Keywords: (max 5)
Diagram, Dependency Map, UML , Trace, Webservice

Fixed by https://github.com/applandinc/vscode-appland/pull/107

Fixed by https://github.com/applandinc/vscode-appland/pull/107


C++ Call Stacks

terminate called after throwing an instance of 'paddle::platform::EnforceNotMet'
what():

C++ Call Stacks (More useful to developers):
0   std::string paddle::platform::GetTraceBackString<std::string const&>(std::string const&, char const*, int)
1   paddle::PaddleBuf::Free()
2   paddle::PaddleTensor::~PaddleTensor()

Error Message Summary:
Error: An error occurred here. There is no accurate error hint for this error yet. We are continuously in the process of increasing hint for this kind of error check. It would be helpful if you could inform us of how this conversion went by opening a github issue. And we will resolve it with high priority.

New issue link: https://github.com/PaddlePaddle/Paddle/issues/new
Recommended issue content: all error stack information
[Hint: Expected length_ > 0UL, but received length_:0 <= 0UL:0.] at (/paddle/paddle/fluid/inference/api/api.cc:107)

已放弃

terminate called after throwing an instance of 'paddle::platform::EnforceNotMet'
what():
C++ Call Stacks (More useful to developers):
0 std::string paddle::platform::GetTraceBackString<std::string const&>(std::string const&, char const*, int)
1 paddle::PaddleBuf::Free()
2 paddle::PaddleTensor::~PaddleTensor()
Error Message Summary:
Error: An error occurred here. There is no accurate error hint for this error yet. We are continuously in the process of increasing hint for this kind of error check. It would be helpful if you could inform us of how this conversion went by opening a github issue. And we will resolve it with high priority.

New issue link: https://github.com/PaddlePaddle/Paddle/issues/new
Recommended issue content: all error stack information
[Hint: Expected length_ > 0UL, but received length_:0 <= 0UL:0.] at (/paddle/paddle/fluid/inference/api/api.cc:107)

已放弃

请提供一下运行LAC的上下文？

显存/内存溢出错误
Error Message Summary:
Error: An error occurred here. There is no accurate error hint for this error yet. We are continuously in the process of increasing hint for this kind of error check. It would be helpful if you could inform us of how this conversion went by opening a github issue. And we will resolve it with high priority.

New issue link: https://github.com/PaddlePaddle/Paddle/issues/new
Recommended issue content: all error stack information
[Hint: Expected desc->type != FREE_CHUNK, but received desc->type:0 == FREE_CHUNK:0.] at (/paddle/paddle/fluid/memory/detail/memory_block.cc:107)


Swipe issue in child elements when having an element inside

Child elements can be swiped (move sideways) again when another element is inside it even if you call the preventDefault() method in the custom DOM event.

Some Heading

Some text

I believe this is fixed by PR #100 (described in issue #45).


Create @IgnoreMetaExport so methods that cause swagger errors can be ignored from public interface

Create @IgnoreMetaExport so methods that cause swagger errors can be ignored from public interface

Added annotation @HideMethod.


France overseas

We also should add french overseas territories.
There are a lot for UK, why not France ;)
Otherwise, avoid some territories and islands without label at all (French Guyana, Reunion, New Caledonia...)

This PR is now outdated.
Have a look at https://github.com/tilery/mae-boundaries/pull/7 in the other repository


Possible issue with CEX practical use case cited in README

Firstly, thanks a lot for this awesome project!
I am wondering about this line of README.md, which states:

Bob uses Umbra to withdraw his 1,000 Dai each week. He only need provide an address to send it to. Obviously, it's best for him to use an address that's not tied to his identity. He usually chooses to send it straight to an exchange, where he sells it for fiat as needed.

Due to the mention of fiat, I'm assuming that "exchange" refers to a centralized exchange (CEX) such as Coinbase or Binance.
If Bob sends ETH (say) or some ERC-20 assets from stealth1 to a CEX, and then later from stealth2 to a CEX, typically the following holds:

stealth1 and stealth2 have both sent assets to the same CEX deposit address
This CEX deposit address is unique to Bob's CEX account (necessarily, since otherwise the CEX wouldn't know which of its users' accounts to credit with the deposit - because Ethereum doesn't support including some kind of per-transaction reference with ETH or ERC-20 transfers).

(I say "typically" because it's possible that the deposit address can change over time, but at least in the case of Binance, Coinbase, Bitstamp, and Bitpanda, it does not change regularly.)
If the CEX requires KYC and comes under sufficient pressure (e.g. from regulators), they could disclose the identity behind the CEX deposit address.  In this case, the stealth addresses start to look like they could be tied to Bob's identity.  As long as Alice continues to respect Bob's privacy, there is no public proof that stealth1 and stealth2 are owned by this same identity, so Bob still has plausible deniability that the payments came from different sources.  But nevertheless his privacy is starting to be weakened.
Let's review what Umbra has achieved in this scenario.  It has introduced potential for:

Alice claiming that she paid two separate people Charlie and Colin
Alice claiming that she doesn't know Bob
Bob claiming that he was paid by two separate people Charlie and Colin
Bob claiming that he doesn't know Alice

These claims are fairly plausible with only two stealth addresses.  However, if Alice makes 50 payments to Bob in this way, it significantly weakens the plausibility.  If investigators spotted all of these transactions, and did manage to obtain Bob's identity from the CEX, they would probably have strong evidence connecting Alice to Bob.
Of course this is not a criticism of Umbra; it is a weakness of using any CEX which requires KYC.  But given that it is the only example of a practical use of Umbra given in the README, I would suggest considering the following two actions:

Give another example which doesn't have a similar weakness
Tweak the wording of this example to clarify the privacy risks associated with using Umbra in combination with a CEX in this way.

Hope that is useful food for thought.  Thanks again!

Hey @aspiers! You are totally right on all of this. This is a great explanation of the downsides of withdrawing to a CEX, and I agree it would be useful to be more explicit about this in the README or the FAQ.
In regards to another example which doesn't have a similar weakness, we are in the process of integrating with Tornado Cash and will update the docs with info on that once the integration is complete. Once complete, this will make it easy to deposit funds directly from a stealth address into Torndao, which is a big privacy improvement over simply withdrawing to a CEX

Great observations by @aspiers! A few nitpicks or rather questions.

Let's review what Umbra has achieved in this scenario. It has introduced the potential for:

Alice claiming that she paid two separate people Charlie and Colin

Is this really true given the observation that Charlie and Colin, i.e., the two stealth addresses stealth1 and stealth2 deposited to the same CEX deposit address? Given this blockchain data, it should be enough for any blockchain analyst to conclude that Charlie and Colin are indeed the same person! What am I missing? See Section 5.1. in this paper (Address clustering heuristics for Ethereum by Friedhelm Victor)!

Alice claiming that she doesn't know Bob

This holds for blockchain analysts but not from the point of view of the CEX.

Bob claiming that he was paid by two separate people Charlie and Colin

This holds against blockchain analysts as well as the CEX. IMO, in this scenario, this is the real added value of Umbra, i.e., plausibly deny any relationship between Alice and him as you correctly identify this in your last bullet point.

Bob claiming that he doesn't know Alice

@seresistvanandras commented on July 31, 2021 11:33 AM:

Great observations by @aspiers! A few nitpicks or rather questions.

Let's review what Umbra has achieved in this scenario. It has introduced the potential for:

Alice claiming that she paid two separate people Charlie and Colin

Is this really true given the observation that Charlie and Colin, i.e., the two stealth addresses stealth1 and stealth2 deposited to the same CEX deposit address?

Note I wrote that it has introduced the potential for Alice to make this claim, not that it gives her a cast-iron indisputable claim.

Given this blockchain data, it should be enough for any blockchain analyst to conclude that Charlie and Colin are indeed the same person! What am I missing?

They can infer that is likely, but they cannot prove it beyond doubt, because anyone who knows Bob's CEX deposit address can send funds to it.  There is nothing stopping Bob sharing this address with anyone, or even announcing it publicly.

See Section 5.1. in this paper (Address clustering heuristics for Ethereum by Friedhelm Victor)!

I haven't time to read this right now unfortunately, but the presence of the word "heuristics" in the title strongly suggests that the paper covers inference of likely associations between addresses rather than solid proofs.

Alice claiming that she doesn't know Bob

This holds for blockchain analysts but not from the point of view of the CEX.

I think it does for the reasons stated above - there is no solid proof that stealth1 and stealth2 are owned by the same person, only a suspicion (which can grow stronger with the appearance of further single-use addresses in between Alice and Bob's CEX deposit account).

Bob claiming that he was paid by two separate people Charlie and Colin

This holds against blockchain analysts as well as the CEX.

If you agree that the CEX could not deny this claim then I'm not sure why you would argue against the CEX's view of Alice's claim above.

IMO, in this scenario, this is the real added value of Umbra, i.e., plausibly deny any relationship between Alice and him as you correctly identify this in your last bullet point.

Yes, it's plausible (albeit suspicious) if there are only 2 single-use stealth addresses in between Alice and Bob's CEX deposit account, but if there are more then it seems to me that the plausibility rapidly decreases.

Thanks for the clarifications! Indeed you're right in that Bob's CEX address could be known by others than Bob. I missed this possibility! Hence, any inference between the stealth addresses and Bob's CEX address is just heuristic.

No worries, thanks for the good discussion! :grin:


[Bug]Non existing Pokémon appear

Sometimes pokémon appear at random spots which doesn't exist (checked it with other tools). They always have a low time counter, mostly around 2:20.

By checking it with other tools do you mean that it appears on all tools, or just on this app?

just this app, if an area get scanned, they appear close to the scanned area. In the screenshot attached you can see it. magnemite and poliwag popped up as the area under them got scanned.

if they popped up while the area underneath was being scanned then they might actually be in the scanned area, it could be placing the images in the wrong place.
Also I could be wrong but the coordinates also don't translate to the correct location either. not sure if changed them on the image before posting it or not.
This may be a valid issue with incorrect pokemon showing up in the wrong places.

On a sidenote, three squirtles and a wartortle, you're a lucky man

At least according to google maps the coordinates are correct, haven't edited them. But I noticed that every false message have either a shorter coordination length or a
lot of same digits in a row. I checked all pokemon around the location with other apps, I didn't found them.

@StephanBijzitter I just have squirtles here, not a single charmander or bulbasaur..

I can confirm this problem. I thought it was just because of the bad update rates that I see all of them with only 2min 45secs left after they appear on the app, but I checked other scanning Apps as well and none of these specific "3 min pokemons" where to be found there.


bigtable: update samples to follow samples guide

Fixes: #992
Fixes: #990

Closing this PR as it's stale and there's noone working on this at the moment.
We have #990 and #992 for tracking.


WIP: Only testing ARM self-hosted runners

Rationale for this change

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

@raulcd Should this be kept open?

I want to keep testing the possibility of adding cross-compilation capabilities but we can close the PR as my tests can be performed outside the PR. I can reopen once there is something that could potentially be merged.


allow_unbalanced_panel = False is not working

from csdid.att_gt import ATTgt
import pandas as pd
# Load the CSV file
file_path = 'C:/Users/Alexander/Documents/GitHub/csdid/data/cohort_2023.csv'
data = pd.read_csv(file_path)
# Prepare  the data
data['customer_id_numeric'] = data['customer_id'].astype('category').cat.codes
# Create an instance of the ATTgt class and fit the model
out = ATTgt(yname="ln_gms",gname="first.treat", idname="customer_id_numeric",
     tname="time_period", data=data, allow_unbalanced_panel = False).fit(est_method='ipw', bstrap = True)
# Display the results
out.summ_attgt().summary2

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
c:\Users\Alexander\anaconda3\envs\tensorflow\lib\site-packages\pandas\core\indexing.py in _validate_tuple_indexer(self, key)
    903             try:
--> 904                 self._validate_key(k, i)
    905             except ValueError as err:

c:\Users\Alexander\anaconda3\envs\tensorflow\lib\site-packages\pandas\core\indexing.py in _validate_key(self, key, axis)
   1517         else:
-> 1518             raise ValueError(f"Can only index by location with a [{self._valid_types}]")
   1519

ValueError: Can only index by location with a [integer, integer slice (START point is INCLUDED, END point is EXCLUDED), listlike of integers, boolean array]

The above exception was the direct cause of the following exception:

ValueError                                Traceback (most recent call last)
C:\Users\ALEXAN~1\AppData\Local\Temp/ipykernel_24432/3877272001.py in <module>
     10 data['customer_id_numeric'] = data['customer_id'].astype('category').cat.codes
     11 # Create an instance of the ATTgt class and fit the model
---> 12 out = ATTgt(yname="ln_gms",gname="first.treat", idname="customer_id_numeric",
     13      tname="time_period", data=data, allow_unbalanced_panel = False).fit(est_method='ipw', bstrap = True)
     14 # Display the results

c:\Users\Alexander\anaconda3\envs\tensorflow\lib\site-packages\csdid\att_gt.py in __init__(self, yname, tname, idname, gname, data, control_group, xformla, panel, allow_unbalanced_panel, clustervar, weights_name, anticipation, cband, biters, alp)
...
--> 906                 raise ValueError(
    907                     "Location based indexing can only have "
    908                     f"[{self._valid_types}] types"

ValueError: Location based indexing can only have [integer, integer slice (START point is INCLUDED, END point is EXCLUDED), listlike of integers, boolean array] types
Output is truncated. View as a [scrollable element](command:cellOutput.enableScrolling?4242d70f-e8c8-4f7f-938c-97ed0d0531c4) or open in a [text editor](command:workbench.action.openLargeOutput?4242d70f-e8c8-4f7f-938c-97ed0d0531c4). Adjust cell output [settings](command:workbench.action.openSettings?%5B%22%40tag%3AnotebookOutputLayout%22%5D)...

Fixed when checking the non-balanced options.


Type declarations for TypeScript is missing

TypeScript is complaining it cannot find any type declarations. I can use the declare module workaround described as one of the solutions in the picture below, but this will not provide any linting to the functions.

Sure since this library is written in JS, but feel free to make a PR to add TS support.

Sure since this is written in JS there are no type declarations


Update package.json

Add talib to packages as required to talib indicators.

Talib is very hard to compile on windows, you only need talib for methods that use talib indicators. I rather keep it out of package.json because else Gekko cannot be installed by npm on windows (without proper compile toolchain). If you right now try to run Gekko with a talib method, it will prompt you to install talib manually.

My thoughts exactly


Support passing Tailwind config to tailwind

Closes #926.

This also resolves tailwind not working on Windows, similar to #889.

Should be released as 0.21.5


Scaled sprites have their large version for placement

Description

When trying to place an entity that's had it's sprite component scaled, the placement ghost uses the full scale version and not the scaled down version, making it hard to see where you're placing something.
Ideally the icon or placement mode should take scale into account, or the Icon component should have a scale value too (iirc this icon component shouldn't be necessary and should use the sprite comp but that's also not been working?
Reproduction

Place a scaled entity and notice how it's huge. Not sure there's examples in our codebase but there are in my fork as we use 64x64 sprites.
Screenshots

Additional context

Already a PR https://github.com/space-wizards/RobustToolbox/pull/3058


[t-BFHmSPtu] Add Metadata Node support

Codecov Report

Merging #166 into master will decrease coverage by 0.14%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #166      +/-   ##
==========================================
- Coverage   99.61%   99.46%   -0.15%
==========================================
  Files          58       58
  Lines        1030      942      -88
==========================================
- Hits         1026      937      -89
- Misses          4        5       +1

Impacted Files
Coverage Δ

src/Services/Adapters/PaymentAdapter.php
100% <100%> (ø)
:arrow_up:

src/Services/Adapters/RequestAdapter.php
98.24% <0%> (-1.76%)
:arrow_down:

src/Services/Refund.php
100% <0%> (ø)
:arrow_up:

src/Services/Adapters/CancelAdapter.php
100% <0%> (ø)
:arrow_up:

src/Services/Gateways/EbanxAccount.php
100% <0%> (ø)
:arrow_up:

src/Models/Configs/CreditCardConfig.php
100% <0%> (ø)
:arrow_up:

src/Services/Gateways/DebitCard.php
100% <0%> (ø)
:arrow_up:

src/Services/Adapters/CaptureAdapter.php
100% <0%> (ø)
:arrow_up:

src/Services/Gateways/Sencillito.php
100% <0%> (ø)
:arrow_up:

... and 25 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d308870...e5a738b. Read the comment docs.


Do not share identity cache between builds

We revert that change for 6.8 and will re-introduce it in 7.0.
This reverts #15610 and #14926.

@bot-gradle test this

Sorry some internal error occurs, please contact the administrator @blindpirate

@bot-gradle test this

OK, I've already triggered ReadyForMerge build for you.


Create the mock-ups

Create the mock-ups with Pencil.

I created the mock-ups with Pencil in the branch mockups


chore(dependabot): add ignore config for chalk

Coverage remained the same at 100.0% when pulling 2e3f5b98d1af4fa89f49a51efed9879934003e52 on depowell/dependabot into d98a7d4bed142fb724ad670599ed87b5caf0f5a9 on main.

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


conversation-links-on-repo-lists is redundant on organizations

Description
Links are redundant on old org repo list, GitHub already includes them:

Links also not needed on feature preview (feature does nothing, no change needed here):

Links are still needed for users:

How to replicate the issue + URL
https://github.com/orgs/microsoft/repositories
Extension version
23.12.1
Browser(s) used
Google Chrome

It feels like this was reported before 🤔

I don't see any existing issues on this
https://github.com/refined-github/refined-github/issues?q="conversation-links-on-repo-lists"

It was mentioned before the feature was even added:

https://github.com/refined-github/refined-github/issues/1130#issuecomment-549547269

Likely a regression caused by:

https://github.com/refined-github/github-url-detection/pull/170

I should revert to using isUserProfileRepoTab and add a note regarding this issue


Add rest repo hash

like this:

Label prediction was below confidence level 0.6 for Model:ServiceLabels: 'Azure.Core:0.081212476,EngSys:0.052487124,Storage:0.03486478'


This issue is used to store images used in my wiki pages

CSS theme

eos.css.txt

You can add an image to a comment in an open issue, and copy and paste the link without saving the comment.

.. But it's more difficult to find it again later ;-)

A JGit based command line tool (created with Launch4J)
jgit-20200103.zip

Notepad2 configuration file to use Javascript syntax highlighting with jArchi scripts (.ajs).
Notepad2.ini.zip

A strip down (and portable) version of WinFontsForAll
WinFontsForAll-portable.zip

Can I put pictures of cats here?

Can I put pictures of cats here?

Of course, but don't expect me to use them on wiki pages ;-)

Sorry, still no cats...


RSDK-4522 RSDK-4275 RSDK-3601 Add complex module example

RSDK-4522
RSDK-4275
RSDK-3601
Adds a complex module example (based on the Python and Go implementations). Validates that dependencies exist in the ModuleService. Catches errors from construct_resource in ModuleService::AddResource and returns them to parent through gRPC.

can you add links out to the example module repos like in https://github.com/viamrobotics/viam-cpp-sdk/pull/152?

@benjirewis - I know there was some discussion about making the example modules standalone projects embedded within this repo, much like the example projects are today. I'd suggest for that to happen in another ticket / review rather than this one.

@cheukt added a reference similar to the ones you added in #152 for the complex module (thanks for adding those other ones).
@acmorrow filed https://viam.atlassian.net/browse/RSDK-5131. I won't do that work as part of this PR.

@benjirewis - Do you think it might be possible to pull the fix for https://viam.atlassian.net/browse/RSDK-4275 out into its own PR, which I would immediately LGTM, in the interest of getting that fix committed? It's just the two try/catch things around construct_resource but it fixes a big ergonomic headache when working with modules implemented in C++, since the status quo is that if you make any mistake in the module configuration you get failure but no actionable details.

@acmorrow yeah I can do that right now. Apologies for the delay on this PR, lots of small obstacles 😮💨 .

@stuqdog Adding tests is not super trivial (having some issues linking the generated protobuf files into the existing test suite architecture). If you don't mind I'm gonna kick out that work into another ticket/PR (https://viam.atlassian.net/browse/RSDK-5226). I tested the custom base, gizmo and summation with the Python complex module client, and everything seems to be working.


[core] Replace invalid characters in the generated path

Replace invalid characters with the hex equivalent (and hope
there is no collision).
Addresses https://github.com/alanmcgovern/monotorrent/issues/491

Hi Alan,
Thanks for the fix.
The torrent downloaded correctly, however, the " were replaced by the string 22.
Not a huge problem by itself, but then I cannot locate the actual final torrent folder by doing
Path.Combine(Options.Instance.OutputDirectory, torrent.Name)
since torrent.Name doesn't reflect the "fixed" folder name and still contains the invalid characters.
Maybe you should add a read only property for the final folder full path?
You are very close though. Thanks again.

You can find the full paths to all files by accessing the TorrentManager.Files list and checking the FullPath property.
In the meantime, ill have a think about the best way to expose a "ContainingDirectory" property which represents the sanitized path!

There's a new TorrentManager.ContainingDirectory property. I added xml docs which explain the difference between this and TorrentManager.SavePath. For a single file torrent ContainingDirectory and SavePath are the same. For a multi-file torrent, when TorrentSettings.CreateContainingDirectory is enabled, the escaped version of Torrent.Name is appended to SavePath and is stored in the ContainingDirectory property.
If you use the public APIs to move files to different locations then these properties will have no clear/accurate meaning. However TorrentFileInfo.FullPath  will always be correct. You can get this by looping over all the files in a torrentmanager :)
I'll merge this, and release an updated nuget package, as it seems to solve your first issue, and your followup issue has been solved too!
Do let me know if you have any further issues/questions!


Add support for hedged requests

From http://blog.acolyer.org/2015/01/15/the-tail-at-scale/:
Hedged requests: send the same requests to multiple servers, and use whatever response comes back first. To avoid doubling or tripling your computation load though, don’t send the hedging requests straight away:
defer sending a secondary request until the first request has been outstanding for more than the 95th-percentile expected latency for this class of requests. This approach limits the additional load to approximately 5% while substantially shortening the tail latency.

Note that there may be different kinds of queries that have different latency histograms (e.g. a plain search, a faceted search or a spelling suggestions). They need to be differentiated when deciding to start a second request.


boot: Take maximum of READ_SIZE and WRITE_SIZE when checking sizes, fixes #2382

I run into this issue when using async firmware updater on rp2040. Because READ_SIZE is 4 and WRITE_SIZE is 1 the aligned buffer of 1 is insufficient causing the flash subsystem to return an error.

Thanks!


fix(deps): update dependency @dcos/ui-kit to v3.66.0

This PR contains the following updates:

Package
Type
Update
Change

@dcos/ui-kit
dependencies
minor
3.65.0 -> 3.66.0

Release Notes

dcos-labs/ui-kit
v3.66.0
Compare Source
Bug Fixes

textinputwithbadges: does not submit form when pressing enter (76391e7)

Features

globally styles all anchor tags (7c58658)

Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Enabled.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

Available now for Enterprise: Renovate Pro with real-time webhook handling and priority job queue.

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

master+v2.154.12
GitHub release

Your semantic-release bot :package::rocket:


Examples of memory leaks fixed by the adoption of generation checks

As I understand it the generation hidden variable in this proposal exists precisely to be able to know if a computed could be dirty or not by comparing it against the generation of the signals it depends on, when needed, since if a computed is not watched the signals it depends on won't hold a reference to the computed anymore, so the signals won't be able to directly tell the computed that it might be dirty.
As I understand it the idea is that by trading some performance to keep around and update these counters one gets the ability to garbage-collect these computeds.
I'm not sure about the trade-offs here, I think it would be good to provide more details in this regard, in particular:

Are we sure this is better than making those references from the signals to the computeds weak references instead?
Can some example code where this implementation would actually enable some computed to be garbage-collected automatically be added to the proposal for extra clarity? This seems one of the key wanted behaviors that some important decisions seem based upon, and just thinking about the code where I use signals I can't actually think of a single scenario where I'm leaking memory this way, nor I'm sure what that scenario could look like.
Is this really actually about the lack of an auto-disposal mechanism for computes and watchers? Because thinking about a modern signals-only framework like Solid I'm not actually sure these kinds of memory leaks exist there. It would be good to know if this is meant to address an issue that all signals frameworks are subjected to or not, to better evaluate the trade-offs.

Yes, I agree that it will be important to improve documentation here. The goal is to enable separation of the view from the model. If computeds always have to be owned by part of the view (for auto-disposal), the separation is less flexible. This vague claim that I just made should be substantiated with a concrete code example.


Add ZeroMQ package

http://zeromq.org/
There appears to be multiple C++ bindings for ZeroMQ:
http://zeromq.org/bindings:cpp

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/30024983-add-zeromq-package?utm_campaign=plugin&utm_content=tracker%2F1032790&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F1032790&utm_medium=issues&utm_source=github).

Added by @tatraian


🍒Allow enabling C++ interop without explicit version (#6416)

The Swift compiler now supports -cxx-interoperability-mode=default flag.
This change makes sure SwiftPM accepts nil as a version of Swift/C++ interoperability.
rdar://107908465
(cherry picked from commit a54a87f4dec65ca958bb53a637fc3bdf54856cba)

@swift-ci please test

@swift-ci smoke test

@swift-ci please test