x/pkgsite: package removal request for github.com/sttk-sabi/sabi-go-error

What is the path of the package that you would like to have removed?
github.com/sttk-sabi/sabi-go-error
Are you the owner of this package?
Yes, I'm the only owner of this package.
What is the reason that you could not retract this package instead?
I mistook package naming, and moved to another package. So this package is no longer needed.
I tried to retract all versions of this package, but v0.0.0-... is remained. I want to remove all of this package.

Done.

Thanks!


Compression benchmark of tzdb

Try all four compression algorithms supported by mirage/decompress
EDIT: on marshalled string output, not on the sexp or JSON files

Possibly made redundant by using a different binary encoding altogether

Migrated to custom compression scheme fully in timedesc 0.8.0


modular system for source code

Is your feature request related to a problem? Please describe.
Today, the entire source code of a Blech program resides in a single *.blc file. This

reduces the clarity of the code (even for small projects)
provides only a single name space for all functions, activities, etc.
makes it hard to separate concerns

Describe the solution you'd like
I would like to be able to separate my Blech code into different source files and to import / include them if required. Example:
// @file: spi.blc - Everything related to SPI communication.
module spi
activity rxTxBytes(...)
...
end

// @file: rf.blc - Everything related to RF communication.
import spi
...
run spi.rxTxBytes(...)
...

Module system will be released in Version 0.7.0


fix: allow only numerical input for uint256 field

Fixes #212

Also a small nitpick, I think it was introduced in #206
The * is not centered correctly aligned:

The * is not centered correctly aligned:

I noticed the method to align the asterisk was to place it at flex-end, to sort of 'simulate' being centered. This means the fields with # were a bit off-center. I fixed it by using a vertically centered alternative to the asterisk.
Additionally, rather than forcing numerical input, I aligned the behavior with that of TxValueInput and when the value is invalid (e.g. string input for uint256 field), the form now shows a red border indicating an issue.

Tysm @sverps love the new approach and it works great !!! lol sorry for being PITA

Here's what the asterisk will look like after this PR:


Pylance fails to detect import structure for a module it seemingly found

Environment data

VScode 1.47.2
Win7x64
Python 3.7 win64, release (set up via pythonPath in VSCode)
Pylance language server 2020.8.2
Installed custom BlenderPy wheel module via pip successfully
Added scripts and modules folder into PYTHONPATH in .env

Expected behaviour
Imports from bpy namespace are picked up
Actual behaviour
Import of base  bpy is picked up by Pylance as valid. Any nested/included imports marked as invalid:

I can assure you that they are there.
Logs
[Info  - 10:12:10 am] Pylance language server 2020.8.2 (pyright fbe2eb4d) starting
[Info  - 10:12:10 am] Server root directory: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server
[Info  - 10:12:10 am] No configuration file found.
[Info  - 10:12:10 am] Setting pythonPath for service "BlenderAddonTools": "c:\Programs\Python37\python.exe"
[Error - 10:12:10 am] stubPath d:\Unlinked\GIT\BlenderAddonTools\typings is not a valid directory.
[Info  - 10:12:10 am] Assuming Python version 3.7
[Info  - 10:12:10 am] Assuming Python platform Windows
[Info  - 10:12:10 am] Searching for source files
[Info  - 10:12:10 am] Found 10 source files
[Info  - 10:12:10 am] Background analysis root directory: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server
[Info  - 10:12:10 am] Background analysis started
[BG] analyzing: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonImporter.py ...
[BG]   parsing: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonImporter.py (210ms)
[BG]   parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\builtins.pyi (133ms)
[BG]   binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\builtins.pyi (69ms)
[BG]   binding: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonImporter.py (36ms)
[BG]   checking: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonImporter.py ...
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\struct.pyi (10ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\struct.pyi (1ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\os\__init__.pyi (44ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\os\__init__.pyi (8ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\io.pyi (9ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\io.pyi (7ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\binascii.pyi (6ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\binascii.pyi (3ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\codecs.pyi (6ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\codecs.pyi (20ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\enum.pyi (4ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\enum.pyi (6ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\abc.pyi (1ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\abc.pyi (1ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\math.pyi (2ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\math.pyi (2ms)
[BG]     parsing: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonUtils.py (11ms)
[BG]     binding: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonUtils.py (3ms)
[BG]     parsing: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonNodeMat.py (11ms)
[BG]     binding: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonNodeMat.py (4ms)
[BG]     parsing: d:\Unlinked\GIT\BlenderAddonTools\timing.py (7ms)
[BG]     binding: d:\Unlinked\GIT\BlenderAddonTools\timing.py (1ms)
[BG]     parsing: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonMenuIcon.py (5ms)
[BG]     binding: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonMenuIcon.py (0ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\typing.pyi (20ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\typing.pyi (19ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\third_party\2and3\typing_extensions.pyi (2ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\third_party\2and3\typing_extensions.pyi (1ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\array.pyi (3ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\array.pyi (5ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\mmap.pyi (8ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\mmap.pyi (2ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\_typeshed\__init__.pyi (3ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\_typeshed\__init__.pyi (1ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\types.pyi (18ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\types.pyi (4ms)
[FG] parsing: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonImporter.py (221ms)
[FG] parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\builtins.pyi (160ms)
[FG] binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\builtins.pyi (97ms)
[FG] binding: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonImporter.py (37ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\os\path.pyi (4ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\3\os\path.pyi (2ms)
[BG]     parsing: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\genericpath.pyi (1ms)
[BG]     binding: d:\Unlinked\Users\Kein\.vscode\extensions\ms-python.vscode-pylance-2020.8.2\server\typeshed-fallback\stdlib\2and3\genericpath.pyi (1ms)
[BG]   checking: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonImporter.py (1435ms)
[BG] analyzing: d:\Unlinked\GIT\BlenderAddonTools\BlenderAddonImporter.py (1884ms)

Code Snippet / Additional information
(only first import is resolved.)
import bpy
from bpy_extras.wm_utils.progress_report import (
    ProgressReport,
    ProgressReportSubstep,
)
from bpy_extras.io_utils import ImportHelper
from bpy.props import StringProperty, BoolProperty, EnumProperty
from bpy.types import Operator
from mathutils import Quaternion, Vector, Matrix

@Kein, Thanks for the report. Since blenderpy is a compiled module, Pylance is unable to navigate the module structure and find the nested modules. In order the this discover to work and for completions, signature help, tooltips and all the other goodness to work, it will need type stubs.
Regarding PYTHONPATH, we are currently looking at when to we can start supporting it. Should have a decision soon. Sorry did not have a more positive answer for you. Thank you for using Pylance and reporting the issue.

See #275 for PYTHONPATH.

Since blenderpy is a compiled module, Pylance is unable to navigate the module structure and find the nested modules. In order the this discover to work and for completions, signature help, tooltips and all the other goodness to work, it will need type stubs.

So as i understand it - it is not supported by design?

Correct. Scraping compiled modules for completion or type info is not supported by design. But as more type stubs become available, completions and type info will be available through those stubs.
I'll close this issue, but feel free to reopen if you need to.
thanks!

Hey, I cant re-open the issue but I dont want to create a junk new one so let's re-use it, since it is relevant. The issue I'm encountering is:
https://github.com/nutti/fake-bpy-module/issues/83
project's settings.json
{
    "python.linting.enabled": false,
    "python.analysis.typeCheckingMode": "basic",
    "python.autoComplete.extraPaths": [
        "d:\\Unlinked\\Python\\FakeStubs\\bpy"
    ],
    "python.analysis.extraPaths": [
        "d:\\Unlinked\\Python\\FakeStubs\\bpy"
    ],
    "python.analysis.stubPath": "d:\\Unlinked\\Python\\FakeStubs\\bpy",
}


chore(identify): Bump Illuminate Support to 5.8

Coverage remained the same at 81.25% when pulling bdf4eb634d4318ef8d2ea297be9c381eaa3457b1 on support-laravel58 into 576415645a7eba736d2a1b10177744eba95d8150 on master.


Shifting of Unit Tests within their associated components and some Refactoring of unique identifiers.

Signed-off-by: Vedant Shrotria<EMAIL_ADDRESS>
Proposed changes
Summarize your changes here to communicate with the maintainers and make sure to put the link of that issue
This PR will: -

Shift the Cypress unit tests within their associated components.
Refactor some unique identifiers ( data-* )

Types of changes
What types of changes does your code introduce to Litmus? Put an x in the boxes that apply

[X] New feature (non-breaking change which adds functionality)
[ ] Bugfix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices applies)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[X] I have read the CONTRIBUTING doc
[X] I have signed the commit for DCO to be passed.
[X] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works (if appropriate)
[ ] I have added necessary documentation (if appropriate)

Dependency

Please add the links to the dependent PR need to be merged before this (if any).

Special notes for your reviewer:

/run-unit

Closing it...not needed now.


Customizable options: originalContent and changedContent

Setting originalContent and changedContent didn't work for me. I changed these two lines:
original = $(settings.originalContainer, this).text();
changed = $(settings.changedContainer, this).text();

... to
original = settings.originalContent || $(settings.originalContainer, this).text();
changed = settings.changedContent || $(settings.changedContainer, this).text();

... to use originalContent and changedContent when set, rather than originalContainer and changedContainer.

Hello @hl222ih - thanks for reporting this. I should really add some tests to this. It started as a quick get-it-done wrapper. For now, can you share a jsfiddle showing the problem? To me, looking at the code, it seems that, if you set the options like this:
$(selector).prettyTextDiff({
  'originalContent': 'foo',
  'changedContent': 'foobar'
});

... it should work, since the settings are extended from the given ones.
The jsfiddle demo added to the README also shows such an example.

Hi!
What I can see from your jsfiddle demo you are referencing v 1.0.4
(https://rawgit.com/shikher/jQuery.PrettyTextDiff/01222bca2a130133168dd43c9c289322f7ed9e20/jquery.pretty-text-diff.js)
which indeed has code for originalContent/changedContent, but in your
github repo only v1.0.3 is shown which does not have any code for
originalContent and changedContent. (Though the coffeescript seems
updated). Also in http://plugins.jquery.com/pretty-text-diff/ only
version up to 1.0.3 is hosted. And it was with v1.0.3 I was experiencing
this problem. So probably it was just because of this. :)
With your demo with v1.0.3. http://jsfiddle.net/q7hyfev8/124/ it is
shown it is shown that nothing happens when clicking [Diff-Functional
Parameter].
kind regards,
Hannes Ljusås
------ Originalmeddelande ------
Från: "Arnab Deka"<EMAIL_ADDRESS>Till: "arnab/jQuery.PrettyTextDiff"
<EMAIL_ADDRESS>Kopia: "Hannes"<EMAIL_ADDRESS>Skickat: 2015-01-12 17:25:00
Ämne: Re: [jQuery.PrettyTextDiff] Customizable options: originalContent
and changedContent (#9)

Hello @hl222ih - thanks for reporting this. I should really add some
tests to this. It started as a quick get-it-done wrapper. For now, can
you share a jsfiddle showing the problem? To me, looking at the code,
it seems that, if you set the options like this:
$(selector).prettyTextDiff({ 'originalContent': 'foo',
'changedContent': 'foobar' });
... it should work, since the settings are extended from the given
ones.
The jsfiddle demo added to the README also shows such an example.
—
Reply to this email directly or view it on GitHub.

@hl222ih is right, I also just stumbled across that problem as well. 1.0.4 does what the readme says, 1.0.3 does not. You must have built 1.0.3 in coffee but then not compiled it to JS and pushed it to the repository, as the JS versions in the repo are still on 1.0.3. I think you should also replace the jquery plugin because your readme is the only real source for documentation and it is confusing that the latest jquery plugin version does not work like the docs indicate.
Best,
Fabian

Ah that sounds about right. Thanks @fjahr and @hl222ih  - this must have been because I merged in PR #6 but forgot to build/push the JS. Thanks for reporting it.
It's all fixed now. Also, jQueryPlugins site appears deprecated and suggests to move to npm.js - I published this package there (iunfortunately jQuery-plugins-site is read only and so there is no way to say it there).
Also, added a v.1.0.4+ subscript to these new options so it's less puzzling when it doesn't work.


feat: svg logos and icons

Edit both logos and icon pages
Link:
https://flo-scss-init-logos-7rjdgu5tpe.herokuapp.com/docs/components/logos/
https://flo-scss-init-logos-7rjdgu5tpe.herokuapp.com/docs/components/icons
Jira:
Logos - FLO-11309
Icons - FLO-11031
FLO-SCSS is using svg-sprite, which is a module that takes a bunch of SVG files, optimizes them and puts them all into one svg sprite which is located here, _includes/icon-sprite.svg, in this app. with their names referenced in site/_data/icons.yml. The "All icons" section of icons.md loops through these names and presents the full svg list.
To add or remove an svg, update the name in the icons.yml and run npm run process-svg

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


HttpScheme class backport

Motivation:
The HTTP schemes defined by https://tools.ietf.org/html/rfc7230 don't have a common representation in Netty.
Modifications:

Add a class to represent HttpScheme

Result:
The HTTP Scheme is now defined in 1 common location.

@normanmaurer @trustin - Should we even bother back porting this to 4.0? It is a bit awkward because AsciiString is used in 4.1, and this will lead to API changes.

@Scottmitch my gut feeling tells me maybe just not worry :)

@normanmaurer - I think in this case we can just punt and not backport. Let me close for now.


Add search functionality base on container name

By clicking on "/" of F1 you will enter in search mode and then you can start typing. You can exit search mode by clicking "ESC" or "ENTER".

thanks, might be a delay before I can look into it and merge, but the PR is much appreciated

As usual I messed up the merging, but I took your base PR and expanded it into the filtering feature, thank you for the code, it was a superb base to build from

I'm really excited to contribute to this project! Since it's written in Rust and I work with Docker a lot, I'm eager to dive in and help out. I'd love any guidance you can offer so I can write better code and create some cool new features.


Sherwyn29 patch 3

Why:
Closes:

What's being changed (if available, include any code snippets, screenshots, or gifs):

Check off the following:

[x] I have reviewed my changes in staging, available via the View deployment link in this PR's timeline (this link will be available after opening the PR).

For content changes, you will also see an automatically generated comment with links directly to pages you've modified. The comment won't appear if your PR only edits files in the data

👋 Hey there spelunker. It looks like you've modified some files that we can't accept as contributions:

.devcontainer/devcontainer.json
.github/workforce

You'll need to revert all of the files you changed that match that list using GitHub Desktop or git checkout origin/main <file name>. Once you get those files reverted, we can continue with the review process. :octocat:
The complete list of files we can't accept are:

.devcontainer/**
.github/**
data/reusables/rai/**
Dockerfile*
src/**
package*.json
content/actions/deployment/security-hardening-your-deployments/**

We also can't accept contributions to files in the content directory with frontmatter type: rai.


bugfix: http2 connect before creating stream client

Issues associated with this PR
The newActiveClient function inside the http2 package creates stream client before setting up a real connection to the remote, which leads to nil pointer dereference of connection.rawConnection because creating stream client would write http2 preface and settings to connection (though the underlying connection is not ready yet).
Solutions
Move the Connect() code in front of pool.createStreamClient().

Codecov Report

Merging #1212 into master will decrease coverage by 0.07%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1212      +/-   ##
==========================================
- Coverage   56.22%   56.15%   -0.08%
==========================================
  Files         298      298
  Lines       26888    26888
==========================================
- Hits        15119    15100      -19
- Misses      10349    10360      +11
- Partials     1420     1428       +8

Impacted Files
Coverage Δ

...ream/faulttolerance/regulator/default_regulator.go
81.81% <0.00%> (-18.19%)
:arrow_down:

pkg/stream/stream.go
46.66% <0.00%> (-13.34%)
:arrow_down:

...ream/faulttolerance/regulator/default_work_pool.go
88.63% <0.00%> (-4.55%)
:arrow_down:

pkg/module/http2/transport.go
78.76% <0.00%> (-0.37%)
:arrow_down:

pkg/module/http2/frame.go
84.17% <0.00%> (-0.31%)
:arrow_down:

pkg/module/http2/server.go
81.77% <0.00%> (-0.15%)
:arrow_down:

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 a552913...4f1c2b7. Read the comment docs.

cc @taoyuanyuan PTAL


Unicode topic callables and uncamel

I don't think the uncamel function can support unicode. If proper unicode support is something that interests you it should be possible to name a class or function like so
@topic
class ΛλΛ:
    def __call__(self):
        return self.__topic__, 'message', '#general'

and get
>>> ΛλΛ.__topic__
'Λλ Λ'

In order for that to work uncamel will have to be able to to translate
>>> uncamel('ΛλΛ')
'λλ_λ'

Instead, however, we get
uncamel('ΛλΛ')
'λλλ'

I haven't found a solution for re yet, but I have found something that works with regex
>>> regex.sub(r'([\p{Ll}\d])([\p{Lu}])', r'\1_\2', 'ΛλΛ').lower()
'λλ_λ'

That seems reasonable to me. Looks like a pretty lightweight dependency.

I don't know why I didn't try this a year ago.
In [1]: import re

In [2]: re.sub(r'([a-z0-9])([A-Z])', r'\1_\2', 'ΛλΛ').lower()
Out[2]: 'λλλ'

In [3]: re.sub(r'([\w{Ll}\d])([\w{Lu}])', r'\1_\2', 'ΛλΛ').lower()
Out[3]: 'λ_λλ'

Even better. :grin:


[ci] [python-package] enable ruff-format on tests and examples

Contributes to #6304.
proposes:

enforcing ruff-format on Python modules and notebooks in examples/ and tests/
running ruff check over Python code in notebooks

Notes for reviewers
I only made 3 changes here manually:

updating python-package/pyproject.toml
updating .pre-commit-config.yaml
removing ax = assignment in examples/python-guide/notebooks/interactive_plot_example.ipynb

to fix this: F841 Local variable 'ax' is assigned to but never used

All other changes were made automatically by ruff.
Relevant docs:

https://github.com/astral-sh/ruff-pre-commit
https://docs.astral.sh/ruff/formatter/black/

Thanks for reading through all that @jmoralez !
I'll put up one more big one like this (tests/ and python-package/), and then all the Python code here will be autoformatted 😁 😁 😁


Remove reference to pipelines 'advanced mode'

This checkbox doesn't exist any more and mentions (copy and images) need removing, e.g. from https://github.com/gchq/stroom-docs/blob/master/quick-start-guide/process/process.md

Has been fixed


this should detect a change to swagger.yaml

detect swagger out-of-date
fix generated client issue

Coverage remained the same at 71.432% when pulling 5bff34123434c8d0b5de8e879fa796530f6c9d89 on feature/fix_swagger_issue into 7bbe32d4e29f082e1245f6bcd4a2ad89900cd81c on develop.


Fixes typo ('rals' --> 'rails')

I hope this helps :)

Hi @ecbrodie,
Thanks for your making your first contribution to Cucumber, and welcome to the Cucumber committers team! You can now push directly to this repo and all other repos under the cucumber organization! 🍾
In return for this generous offer we hope you will:

✅ Continue to use branches and pull requests. When someone on the core team approves a pull request (yours or someone else's), you're welcome to merge it yourself.
💚 Commit to setting a good example by following and upholding our code of conduct in your interactions with other collaborators and users.
💬 Join the community Slack channel to meet the rest of the team and make yourself at home.
ℹ Don't feel obliged to help, just do what you can if you have the time and the energy.
🙋 Ask if you need anything. We're looking for feedback about how to make the project more welcoming, so please tell us!

On behalf of the Cucumber core team,
Aslak Hellesøy
Creator of Cucumber


how can i use pure code without xib/storyboard

thanks...

Remove @IBOutlet and @IBInspectable from:
class RAMAnimatedTabBarItem: UITabBarItem {

    @IBOutlet weak var animation: RAMItemAnimation!
    @IBInspectable var textColor: UIColor = UIColor.blackColor()

Set the properties like explained in the Usage section direct on the object in your code and instantiate the custom tabBar elements (also explained in the usage). Worked fine for me, have it working just with code. :)

can u provide your sample code to me?
1: In viewdidload()
createViewContainers()
fatal error: unexpectedly found nil while unwrapping an Optional value
2. cannot set animation
RAMAnimatedTabBarItem.playAnimation.....
assertion failed: add animation in UITabBarItem
Here is my code to build tabbar
let listTabView = UIViewController()
let uploadTabView = UIViewController()
let statusTabView = UIViewController()
let settingTabView = UIViewController()

var tabViewArray = [listTabView,uploadTabView,statusTabView,settingTabView]
var tabViewTitleArray = ["list","upload","status","setting"]
var imagePath = "icons.bundle/tabIcons/"
var navArray:[AnyObject] = [];
var tag = 0
for viewController:UIViewController in tabViewArray {
    var nav:UINavigationController = UINavigationController(rootViewController: viewController)
    var title = tabViewTitleArray[tag]
    var imageName = NSString(format: "%@%@", imagePath,title)
    var tarbarItem = RAMAnimatedTabBarItem()
    tarbarItem.image = UIImage(named: imageName)
    tarbarItem.title = title
    tarbarItem.animation = RAMRotationAnimation()

    nav.tabBarItem = tarbarItem
    navArray.append(nav)
    tag++
}
self.tabController = RAMAnimatedTabBarController()
self.tabController.viewControllers = navArray

self.tabController.delegate = self
self.tabController.buildTabBarItems()

That's a big headache....Need more help

Make sure you're all the UITabBarItem have the animation object.


Failed to install the app. Make sure you have the Android development environment set up

I have followed all the steps here: https://facebook.github.io/react-native/docs/getting-started.html#android-development-environment
but still, got the same error.

I've the same issues as well. Did anyone figured out why is it so? Any help would be much appreciated. Thank you.


add pytype analysis, maybe?

before we do this, we have to await https://github.com/google/pytype/issues/244
see: https://github.com/google/pytype/issues/244#issuecomment-501108859

We need to have the following pytype issues resolved:

https://github.com/google/pytype/issues/348
https://github.com/google/pytype/issues/349
https://github.com/google/pytype/issues/350

We will fix the above mentioned issue once they are resolved on pytype side.


Remove unnecessary call to get_roi_locations in segmentation pipeline

This PR removes an unecessary call to get_roi_locations on the segmentation pipeline. This is called early and in fact unecessarily when include_roi_centroids is True as it is called again and used only in that case.

Wonder how this got through #118 - thanks for catching this! Suspect it may have been an incorrect merge conflict resolution...


Change how segment times are computed #237

@yardencsGitHub I merged in those plot functions.
Please do check this fix works for you when you get a chance.
Here's a minimal example of using the plot functions:
prep_csv_path = Path(
    '~/Documents/repos/coding/birdsong/tweetynet/results/BFSongRepository/or60yw70/predict/has_notmat_prep_200801_192730.csv'
).expanduser().resolve()
predict_df = pd.read_csv(prep_csv_path)

predict_csv_path =  Path(
    '~/Documents/repos/coding/birdsong/tweetynet/results/BFSongRepository/or60yw70/predict/or60yw70.092712.annot.csv'
).expanduser().resolve()
annots = crowsetta.csv.csv2annot(predict_csv_path)

spect_file = vak.files.spect.load(predict_df.iloc[0, :].spect_path)
s, f, t = spect_file['s'], spect_file['f'], spect_file['t']
annot = annots[0]
imshow_kwargs = dict(vmin=0, vmax=5)
fig, spect_ax, annot_ax = vak.plot.spect_annot(s, t, f, annot, tlim=(8, 25), imshow_kwargs=imshow_kwargs)

Note that vak.plot.spect_annot returns the Axes instances, so you should be able to pass the annot_ax to vak.plot.annotation and plot a second annotation on the same axes.
(I haven't actually tested this yet though.)

Verified successfully:
(1) No drift in predicted labels.
(2) No increase in error in longer files.
(3) No change in evaluations of performance metrics.
Ok to merge by me

Thank you! Merged in


React 18 renderToPipeableStream  + pre-rendering throws error

Hi, first of all hats off ! This is an awesome plugin 👍
I'm trying to run the plugin with React 18 renderToPipeableStream + hydrateRoot + render API changes and its runs fine but if I try to do pre-rendering, it throws the following error:
Error<EMAIL_ADDRESS>Failure] You stumbled upon a bug in `vite-plugin-ssr`'s source code (an internal `assert()` failed). This should definitely not be happening, and you should create a new GitHub issue at https://github.com/brillout/vite-plugin-ssr/issues/new that includes this error stack (the error stack is usually enough to debug internal errors). Or reach out on Discord. A fix will be written promptly.
    at Writable.write [as _write] (/project/node_modules/vite-plugin-ssr/dist/cjs/node/html/stream.js:66:32)
    at write (/project/node_modules/vite-plugin-ssr/dist/cjs/node/html/stream.js:212:42)
    at /project/node_modules/vite-plugin-ssr/dist/cjs/node/html/stream.js:215:47
    at Array.forEach (<anonymous>)
    at writeData (/project/node_modules/vite-plugin-ssr/dist/cjs/node/html/stream.js:215:32)
    at write (/project/node_modules/vite-plugin-ssr/dist/cjs/node/html/stream.js:150:13)
    at onData (/project/node_modules/vite-plugin-ssr/dist/cjs/node/html/stream.js:173:13)
    at async Writable.write [as _write] (/project/aio-site-template/node_modules/vite-plugin-ssr/dist/cjs/node/html/stream.js:242:17)

In principle, pre-rendering does support a streaming integration.
Let me have a look.

It's an encoding issue. Can you insert
  // node_modules/vite-plugin-ssr/dist/cjs/node/html/stream.js:66:32
+ console.log('encoding: '+encoding)
  (0, utils_1.assert)(encoding === 'utf8');

and tell me the result.

Also let's remove the assert and see what happens.

yes ReactDOMServer.renderToNodeStream works fine
encoding: buffer
and it works fine if I remove the assert

Fix released in v0.3.27.

Thanks for the swift responses 🚀

Hmm I also try to switch over to renderToPipeableStream while using SSG. Is there an example how this would look?


The font for the “Filter” text  doesn’t seem as clear. Please ensure it is using the same font and it is padded and aligned correctly

Per Filter Change Call on 3/23/2015
The font for the “Filter” text  doesn't seem as clear. Please ensure it is using the same font and it is padded and aligned correctly

SG\LG
filter font is the same \ colour is the same when active and inactive (grey or blue )


AuthenticationExtension.cs methods not called by SSRS

Hey,
I'm not sure if this is the right place to ask but I wanted to get your experience.
I have forms authentication almost working. Pretty soon I want to try something similar to this repo (automatic login)
I just have 2 major concerns:-

Some of the interface methods never seem to get called by SSRS, not sure if you ran into this..
 public bool LogonUser(string userName, string password, string authority){}
 public bool IsValidPrincipalName(string principalName){}
 public string LocalizedName

I put NLog logging in each of these methods but don't see anything.., howerver NLog works on Login.aspx.cs.

How would a user get Logged out ?
I don't think we can add buttons to the MS SSRS portal, right ?

1). LogonUser() is not needed in the default implementation but you could certainly implement it if you wanted to.
IsValidPrincipalName and Localized name are also not required. The latter is for AD lookups (Extras has no dependency on AD), and I don't quite remember what LocalizedName was for in the MS Custom Security example which this is based upon. It doesn't make things any less or more secure though.
2). Like MS' Custom Security example, ExtRSAuth generates a cookie on client browser with a token/hash value. The cookie is called "sqlAuthCookie". This cookie is only valid for a relatively short period of time (30 minutes maybe? I'll check documentation and test in the next commit). You can clear cookies to force a logout. Otherwise the SSRS session associated with the sqlAuthCookie will expire after some time.
Thanks for bringing your concerns to my attention. I hope I have addressed at least some of your concerns. Let me know if any other concerns or need answers on any of the behavior.

Ok, I did some digging and the default session length for the sqlAuthCookie is 6 hours (or 360 minutes or 21,600 seconds).
The best way I've seen to implement Logout functionality for this sqlAuthCookie involved in SSRS Custom Security is this: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/5e33949d-7757-45d1-9c43-6dc3911c3ced/how-do-you-logout-of-report-manager?forum=sqlreportingservices
I don't have a need for logout with my usage of ExtRSAuth, but now that you brought this to my attention, I plan to implement the above Logout functionality as a callable function.
I hope that helps. Let me know if anything other questions, else I'll mark this as resolved.

(the Logout functionality is basically just an automated way of clearing the connected clients sqlAuthCookie*)
        HttpCookie sqlAuthCookie = new HttpCookie("sqlAuthCookie", "sqlAuthCookie");
        sqlAuthCookie.Expires = DateTime.Now.AddDays(-1); //makes cookie expired
        HttpContext.Current.Response.Cookies.Add(sqlAuthCookie); //overwrites existing sqlAuthCookie w/expired one


what if we didn't always look for exactly two words?

Seems like a pretty reasonable idea to me -- one non-technical thing is that a lot of people who have written about this seem to love the two-word-thing (even though it has nothing to do with the function).  Lets try this out and see how it goes.


FunctionOperatorComposition L constant is discarded on init

FunctionOperatorComposition L constant is discarded on __init__.
Make sure that the creator handles correctly passing of L.

Better to use a flag estimate_Lispchitz because atm we need Lipschitz constant only using FISTA.

We should be able to use the Lipschitz also in GradientDescent for example
to ensure the step size ensures convergence. This is really important as it
is rather risky running gradient descent with a too big step size means the
algorithm may not converge and you may not notice. For example in the code
provided in the comment of
https://github.com/vais-ral/CIL-Demos/issues/40
I tested that with the chosen step size, and found it stopped making
progress, not diverging just bouncing about the same level. Taking more
iterations did not help. Only reducing the step size helped allowing
further minimization.
Can't we make the lipschitz like with the norm and calculate_norm methods
of operators, so that the Lipschitz is only computed if actually asked for?
And then once computed, stored for reuse.
On Sat, 4 Apr 2020 at 23:36, Vaggelis Papoutsellis<EMAIL_ADDRESS>wrote:

Better to use a flag estimate_Lispchitz because atm we need Lipschitz
constant only using FISTA.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/vais-ral/CCPi-Framework/issues/531#issuecomment-609092391,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACMDSCFWSX7V4LGFVJAV5R3RK6R7FANCNFSM4LXK5PXQ
.


Spec requires to implement toString on ME and TC implementations

Specification now requires to implement toString method for ManagedExecutor and ThreadContext.
Resulting String definition is very vague except that for those used in CDI, the container has to include a fully qualified name of the injection point from which the container produces the instance.
Relevant spec javadocs are:
ManagedExecutor - https://github.com/eclipse/microprofile-concurrency/blob/master/api/src/main/java/org/eclipse/microprofile/concurrent/ManagedExecutor.java#L342-L350
ThreadContext - https://github.com/eclipse/microprofile-concurrency/blob/master/api/src/main/java/org/eclipse/microprofile/concurrent/ThreadContext.java#L430-L438

Isn't it a bit crazy that the spec would specify the format of toString()?

Well, the don't specify anything except for you to have it.
I think they wanted to use this to test equality of CDI injections (as you otherwise compare proxies) and they didn't want to make the settings publicly readable.
Either way, it won't hurt to have a toString() anyway.

OK, whatever.


Fix React 'unique key prop' errors

Fix classic 'Each child in a list should have a unique "key" prop' errors

@jhlx @armaniferrante ok for merge?


Use of deprecated hook actionFrontControllerAfterInit instead of actionFrontControllerInitAfter

Expected behaviour
No PHP warning where the use of the deprecated hook is mentioned.
Actual behaviour
PHP warning appears containing the following:
The hook "actionFrontControllerAfterInit" is deprecated, please use "actionFrontControllerInitAfter" instead in module "mollie".

Steps to reproduce the behaviour
Looking at the PHP error log after loading any page in the front-office.
Environment

PrestaShop version: 8.0.5
Mollie module version: 6.0.2
PHP version: 8.2 (php-fpm)

Other remarks
I have already tried solving this in production (yes, I know, risky and potentially breaking) by:

Repositioning the module in the back-office through the webinterface
Changing actionFrontControllerAfterInit to actionFrontControllerInitAfter in getHooks() in subscription/install/HookInstaller.php/
Chaning hookActionFrontControllerAfterInit() to hookActionFrontControllerInitAfter() in mollie.php

This issue seems is non-breaking as far as I can see. Nevertheless, fixing this would clean up error logs.

Hi there @wouwouwou,
We are planning to include the fix in the upcoming release.
Once it is done, we will let you know!
Best Regards,
Invertus Support team.

Hi there,
Thanks for waiting!
The issue should be fixed in the new release. You can try it out here - https://github.com/mollie/PrestaShop/releases/tag/v6.0.4-beta
Your feedback is greatly appreciated.
Best Regards,
Invertus Support team.


chore: bdd-gh-1586833308 to 0.0.1

chore: Promote bdd-gh-1586833308 to version 0.0.1

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

Needs approval from an approver in each of these files:

OWNERS

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


Add the ability for Hosts to require custom information in the Contribution Flow

For example, Casa Hacker will need Brazilian tax information from donors.
I think this can be generically implemented and stored in order.data.

Tiers can define a customFields, that are later rendered in the contribution flow. The data from these are then stored in order.data.customData. There's no interface yet for users to set their own fields, it needs to be done in the DB directly.
Maybe we could make this issue about specifying how we could surface the feature for users?
As an example, we use it for https://opencollective.com/captainfact_io/contribute/adhesion-membre-11636/checkout, because the French law requires that people agree to your "TOS" to join your non-profit as members.
The tier settings to achieve that look like that:
{
  "id": 11636,
  "customFields": [
    {
      "name": "accepte_status",
      "type": "checkbox",
      "label": "Je déclare reconnaître l'objet de l'association, en avoir accepté les statuts et souhaiter devenir membre de l'association CaptainFact",
      "required": true
    },
    {
      "name": "accepte_reglement",
      "type": "checkbox",
      "label": "J'accepte le règlement intérieur",
      "required": true
    }
  ]
}

Tiers can define a customFields, that are later rendered in the contribution flow. The data from these are then stored in order.data.customData. There's no interface yet for users to set their own fields, it needs to be done in the DB directly.
Maybe we could make this issue about specifying how we could surface the feature for users?
As an example, we use it for https://opencollective.com/captainfact_io/contribute/adhesion-membre-11636/checkout, because the French law requires that people agree to your "TOS" to join your non-profit as members.
The tier settings to achieve that look like that:
{
  "id": 11636,
  "customFields": [
    {
      "name": "accepte_status",
      "type": "checkbox",
      "label": "Je déclare reconnaître l'objet de l'association, en avoir accepté les statuts et souhaiter devenir membre de l'association CaptainFact",
      "required": true
    },
    {
      "name": "accepte_reglement",
      "type": "checkbox",
      "label": "J'accepte le règlement intérieur",
      "required": true
    }
  ]
}

@Betree, the problem here is that this needs to be enforced at the host level since they're legally responsible for the donation.

@Betree, the problem here is that this needs to be enforced at the host level since they're legally responsible for the donation.

Given that the core implementation is here, seems to me propagating an Host setting to all Financial Contributions should be relatively simple.

Given that the core implementation is here, seems to me propagating an Host setting to all Financial Contributions should be relatively simple.

Could we use the same approach for #3297 so host admins can set a contribution policy?

Could we use the same approach for #3297 so host admins can set a contribution policy?

@alanna sure! Any suggestions where we could fit the custom information fields in the host settings?

@alanna sure! Any suggestions where we could fit the custom information fields in the host settings?

@kewitz - For now I think we could shoehorn it into "receiving money" because that's what this policy would cover. But @Memo-Es is working on an overhaul for the whole settings area so I think just putting it somewhere for MVP and then asking him to find a better place is good enough right now.

@kewitz - For now I think we could shoehorn it into "receiving money" because that's what this policy would cover. But @Memo-Es is working on an overhaul for the whole settings area so I think just putting it somewhere for MVP and then asking him to find a better place is good enough right now.

@Betree, the problem here is that this needs to be enforced at the host level since they're legally responsible for the donation.

The simplest way to implement would be to add a resolver in https://github.com/opencollective/opencollective-api/blob/87bc58a6a58944974214c39972edabe57f09a685/server/graphql/v2/object/Tier.js#L97 that would return something like:
{ ...host.settings.contributionFlow.customFields, ...tier.customFields }


Null safety

Please add support for null safety
The current Dart SDK version is 3.1.0.
Because easy_localization_loader >=1.0.0 <1.0.1 depends on http ^0.13.1 and easy_localization_loader
<1.0.0 doesn't support null safety, easy_localization_loader <1.0.1 requires http ^0.13.1.
And because easy_localization_loader >=1.0.1 depends on http ^0.13.5, every version of
easy_localization_loader requires http ^0.13.1.
So, because serv_u depends on both http ^1.1.0 and easy_localization_loader any, version solving failed.
The lower bound of "sdk: '>=2.7.0 <3.0.0'" must be 2.12.0 or higher to enable null safety.

Your problem is the http dependency. This is already updated in our code, but not released. @aissat could you release v2? (Or give me permissions to do so)

@Amrazyan In the meantime you can use the latest version via git to solve your issue

v2.0.0 is released, including newest dependencies


Request for the implementation of GraphTSR

Dear Authors,
Thanks for your great work.
In the paper "Complicated Table Structure Recognition" you propose a novel graph neural network for recognizing the table structure in PDF files, named GraphTSR. I've tried to reproduce the experiment but the results do not align with the numbers presented in the paper. I am currently working on TSR and would like to ask if you could send me the implementation for further analysis as it would help me verify your results. Please let me know if you have concerns about opening sourcing the code.
My email<EMAIL_ADDRESS>Best wishes,
Hunt Zhan

The code of GraphTSR is a part of a larger closed-source system. We have stripped out some parts of the code to this repo, and we are also willing to release all of the code. We will try to release the open-source version code as early as possible.
Just feel free to ask me any questions about the implementation details. Sorry for the inconvenience.

Thanks for the response!
Could you help confirm the details of your model structure? In the paper, the dropout is applied with p = 0.4 to the output of each sub-layer before it is added to the sublayer input. From my understanding the model looks like this:
# Input
H_v = Linear( vertex features )
H_e = Linear( edge features )

# Attention Block (only presents the edge-to-vertex attention block)
Q = H_v x W_Q
K = H_e x W_K
V = H_e x W_V

// DROPOUT!
// Note: dropout is NOT applied inside the GraphAtt, i.e. to the the attention coefficients
H˜_v = Norm( H_v + Dropout( GraphAtt( Q, K, V ) ) )

// DROPOUT!
// Note: FFN( H˜_v ) = Linear_1 ( RELU ( Linear_2 ( H˜_v ) ) ),
// and dropout is NOT applied inside the FFN.
H_v = Norm( H˜_v + Dropout( FFN( H˜_v ) ) )

// Output
Hypothesis_e = Softmax ( Linear ( H_e ) )

Questions:

Dropout is only to the results of GraphAtt and FFN in the attention block, meaning that dropout is neither applied inside the GraphAtt and FFN nor applied to the input & output linear transformations,  is that correct?
FFN consists of two weights W_1 and W_2, what your choice of the shapes?
Both the input and output linear transformations are one-layer linear transformation without non-linear activation, in contract to the FFN, is that correct?
Does the model structure described above match your implementation?

Sorry for the delayed release of the code. You can find the details of the model structure at here.

Thank you! The implementation you provided has resolved all of my questions.

The code of GraphTSR is a part of a larger closed-source system. We have stripped out some parts of the code to this repo, and we are also willing to release all of the code. We will try to release the open-source version code as early as possible.
Just feel free to ask me any questions about the implementation details. Sorry for the inconvenience.

The code of GraphTSR is a part of a larger closed-source system. We have stripped out some parts of the code to this repo, and we are also willing to release all of the code. We will try to release the open-source version code as early as possible.
Just feel free to ask me any questions about the implementation details. Sorry for the inconvenience.

@CZWin32768 Could you please help me with the inference part on new data

@CZWin32768 Could you please help me with the inference part on new data

@huntzhan Could you help me with the inference part if you have already figured it out?

@huntzhan Could you help me with the inference part if you have already figured it out?


Add Devise PR

Hello, Good Reviewer :wave:
Project Requirement

Remove current_user method in ApplicationController, devise will provide us with one.
Install and setup devise.
Can register a new user.
User logs in with a combination of email and password.
Hashed password should be stored in the database.
Ask for confirmation of email.
Can reset password.
Modify the views in devise for registration and login to match the wireframes from the Sneak Peek and your styling.

Hi @Aseadd ,
Thanks for making the requested changes 👏
Highlights ✨

Pull request 👌
Git flow ✅

Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉
Proceed to the next level 👏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


now handling exceptions

Inspired by #32

Thanks @scinos for your help with this one

[x] code
[x] tests
[x] docs

This seems like a bad default behavior, caching errors is almost always a mistake.
For example, this would break code that is used in retry-able code paths:
const memoizeOne = require('memoize-one');
const pRetry = require('p-retry');

pRetry(memoizeOne(mayThrowErrorsOnOccasion), { retries: 5 }).then(result => {
  // ...
});

You are right @jamiebuilds. I have created a follow up PR #35


Update _index.md: emphasize NixOS module requirement

Too many people get confused and don't want to enable the NixOS module. This PR changes the wording to emphasize that it is indeed required, and that you still need to install Hyprland if you just use the HM module.

I have a habit of forgetting minor details before hitting push - this should be everything though. Ready to merge unless there are other conflicts.

Sorry, there are conflicts again.

Is it a merge conflict, or merely a skill issue with git on my part?

Merge conflict likely, as I've updated the Nix pages a few days ago.

Fixed the conflict. Feel free to change the formatting if you like, I just tried to make your edits consistent with mine.


Export OSLC Perf Mon 2.0 RDF+XML

Export OSLC Perf Mon 2.0 RDF+XML for Collectd metrics.
http://open-services.net/wiki/performance-monitoring/OSLC-Performance-Monitoring-Specification-Version-2.0/

Done for CPU Utilization as well as Real Memory Utilization.


until X

Can you implement command until X to execute the code and stop on line X? Thanks.

Despite searching I haven't been able to find anything that replicates even the basic until functionality to skip having to traverse through for loops manually. Is this available under a different name?


#Added Multivision - Lisboa

Thanks @almeidaah!

Hey @almeidaah,
Do you know whether this company is or not using Nodejs?

https://github.com/ftonato/nodejs-in-portugal


[Bug] Feedback on order confirmation page is not working

After placing order, on order confirmation page, user has the possibility to write a feedback but after clinking on 'Send my feedback' button, the message 'Source email address is invalid!' appears and user is not able to send the feedback
Expected behavior
User should be able to send feedback and the message 'Thank you for sharing your feedback' should appear.
Steps to reproduce the issue

add any product to the cart
go to checkout
go through all the checkout steps
click 'place the order' button
scroll down to the 'What we can improve?' section
write feedback
click on 'send my feedback' button
see the error

Can you handle fixing this bug by yourself?

[ ] YES
[ ] NO

Environment details

Browser:
OS:
Code Version:

Additional information

This is caused by misconfig of the e-mail module is not Capybara's bug - closing for now


Get sample ID (not donor ID)

Description
I was wondering if there is information in the metadata or elsewhere about sample identifier. Donor identifier is good, but the same donor can have samples for multiple tissues and or disease states.
Thanks a lot.

Hi @stemangiola,
we considered the idea but we determined it wasn't feasible with our current schema, since it would need to be standardized across all of our datasets. You can see this issue for more details.

Thanks Emanuele,
as we would like to provide an annotation layer to census, where, among other things we heuristically derived a sample label, we would then need the correspondence between the original cell ID and the census cell ID, to transfer the label.
Do you publish it somewhere? Besides this scope, I think that linking would be very important for the community.
Thanks a lot.

There is an observation_joinid column that you can use to correlate cells from the Census to cells from the original h5ad in  CELLxGENE Discover.
Hope that helps!


ion-pane documentation missing

http://ionicframework.com/docs/api/directive/ionPane/
https://github.com/driftyco/ionic/blob/master/js/angular/directive/pane.js#L2

Greetings @fadamakis!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!


Package failed after upgrading React to 16.x

I upgraded React from 15.x to 16.x today. Is it possible to use this package with React 16.x ?
Im using React with Meteor and i get this Error when i try to Import the ImageHelper:
SyntaxError: import declarations may only appear at top level of a module
and a warning that i need React 15.x:
<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed.

I got this after upgrading to react v16
Uncaught SyntaxError: Cannot use import statement outside a module


Splash screen is blurry on Linux HiDPI screen

I guess this happened on Windows and macOS too.

Path to image:

No need to invest time on this issue since we are going to move to new GUI (new GUI does not have this splash screen).


More tests and documentation updates

Codecov Report

Merging #5 (d8f0866) into main (03e04dc) will increase coverage by 57.17%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main       #5       +/-   ##
===========================================
+ Coverage   41.07%   98.24%   +57.17%
===========================================
  Files           1        1
  Lines          56       57        +1
===========================================
+ Hits           23       56       +33
+ Misses         33        1       -32

Impacted Files
Coverage Δ

src/PlotIter.jl
98.24% <ø> (+57.17%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


chore(Dockerfile): hadolint best practices

Thanks for the PR @maxime1907!
First of all, this repository is more or less in a permanent maintenance mode, so don't expect too much activity to take place.
Would you mind describing in detail what these best practices are about? I'm personally not familiar with hadolint (https://github.com/hadolint/hadolint I presume?).

Thanks for the PR @maxime1907!
First of all, this repository is more or less in a permanent maintenance mode, so don't expect too much activity to take place.
Would you mind describing in detail what these best practices are about? I'm personally not familiar with hadolint (https://github.com/hadolint/hadolint I presume?).

Yes this is the right link, its a tool that enforces a set of best practices when writing Dockerfiles.
In this PR i have made these changes:

pin image versions to their SHA for reproducible builds
mount cache directories for faster builds
mount build files instead of using COPY so it does not add another unecessary layer (smaller image)
do not install recommended apt packages
pin apt packages for reproducible builds
optimise final image size by only building wheels inside the build stage
remove unecessary apt package build-essential (smaller image)
mount dist and wheels instead of using COPY so it does not add another unecessary layer (smaller image)
remove apt logs (smaller image)
rootless image for security measures

Released in https://github.com/hiboxsystems/marge-bot/releases/tag/0.13.0.

Released in https://github.com/hiboxsystems/marge-bot/releases/tag/0.13.0.

Thanks!
Could you publish the 0.13.0 tag on dockerhub because i dont see it listed here:

https://hub.docker.com/r/hiboxsystems/marge-bot/tags?page=1&name=0.

@maxime1907 Thanks for the heads up!
I had forgotten the quirks about the deployment target in the Makefile.. :unamused: It got pushed as hiboxsystems/marge-bot:HEAD and nothing else. But I removed that tag now and pushed the right tags (0.13.0, stable and latest). Should really get this fully automated instead.


Chrome extension to check internet connection

It is a chrome extension to check internet connection of your device.

Thanks for coming up with this @DhruviGorakhia ✨


add additional dashboard structure values

I am trying to use your CLI as a API for newrelic as you do alot of the legwork already.  I think you are selling yourself short on just calling this project newrelic-cli it also does a good job being used as a golang API for talking to newrelic since you separated the CLI and the API portions.

Hi sstarcher,
Thanks for your contribution for newrelic-cli.
I found that you added attributes for Dashboard struct.
Actually,  the response of dashboard from NR REST API was directly converted to JSON object, did not use Dashboard struct. Because so many attributes in Dashboard from NR REST response, so I did not know what's all attributes in response dashboard, so I converted the response to JSON object. It was different from others API, converted the dedicated Golang struct. So the Dashboard struct not used for any code, it just declaration.
Hope to discuss!
Thanks!


Hello World tutorial deploy error: KeyError: 'Outputs'

Description
KeyError: 'Outputs' is encountered following the steps in "Tutorial: Deploying a Hello World Application"
Steps to reproduce
$ mkdir test && cd test
$ sam init
Which template source would you like to use?
	1 - AWS Quick Start Templates
	2 - Custom Template Location
Choice: 1

Which runtime would you like to use?
	1 - nodejs12.x
	2 - python3.8
	3 - ruby2.5
	4 - go1.x
	5 - java11
	6 - dotnetcore2.1
	7 - nodejs10.x
	8 - nodejs8.10
	9 - nodejs6.10
	10 - python3.7
	11 - python3.6
	12 - python2.7
	13 - java8
	14 - dotnetcore2.0
	15 - dotnetcore1.0
Runtime: 1

Project name [sam-app]:

Quick start templates may have been updated. Do you want to re-download the latest [Y/n]:

-----------------------
Generating application:
-----------------------
Name: sam-app
Runtime: nodejs12.x
Dependency Manager: npm
Application Template: hello-world
Output Directory: .

Next steps can be found in the README file at ./sam-app/README.md

$ cd sam-app/
$ sam build
Building resource 'HelloWorldFunction'
Running NodejsNpmBuilder:NpmPack
Running NodejsNpmBuilder:CopyNpmrc
Running NodejsNpmBuilder:CopySource
Running NodejsNpmBuilder:NpmInstall
Running NodejsNpmBuilder:CleanUpNpmrc

Build Succeeded

Built Artifacts  : .aws-sam/build
Built Template   : .aws-sam/build/template.yaml

Commands you can use next
=========================
[*] Invoke Function: sam local invoke
[*] Deploy: sam deploy --guided

$ export SAM_CLI_TELEMETRY=0
$ sam deploy --guided --debug

Configuring SAM deploy
======================

	Looking for samconfig.toml :  Not found

	Setting default arguments for 'sam deploy'
	=========================================
	Stack Name [sam-app]:
	AWS Region [us-east-1]: us-east-2
	#Shows you resources changes to be deployed and require a 'Y' to initiate deploy
	Confirm changes before deploy [y/N]:
	#SAM needs permission to be able to create roles to connect to the resources in your template
	Allow SAM CLI IAM role creation [Y/n]:
	Save arguments to samconfig.toml [Y/n]:

	Looking for resources needed for deployment: Found!
Traceback (most recent call last):
  File "/usr/local/bin/sam", line 11, in <module>
    load_entry_point('aws-sam-cli==0.36.0', 'console_scripts', 'sam')()
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/click/decorators.py", line 64, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/samcli/lib/telemetry/metrics.py", line 48, in wrapped
    return func(*args, **kwargs)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/samcli/commands/deploy/command.py", line 187, in cli
    ctx.profile,
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/samcli/commands/deploy/command.py", line 235, in do_cli
    stack_name, s3_bucket, region, profile, confirm_changeset, _parameter_override_keys, parameter_overrides
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/samcli/commands/deploy/command.py", line 335, in guided_deploy
    s3_bucket = manage_stack(profile=profile, region=region)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/samcli/lib/bootstrap/bootstrap.py", line 37, in manage_stack
    return _create_or_get_stack(cloudformation_client)
  File "/usr/local/Cellar/aws-sam-cli/0.36.0/libexec/lib/python3.7/site-packages/samcli/lib/bootstrap/bootstrap.py", line 71, in _create_or_get_stack
    outputs = stack["Outputs"]
KeyError: 'Outputs'

$ echo $SAM_CLI_TELEMETRY
0
$ aws --version
aws-cli/1.16.290 Python/3.7.5 Darwin/17.7.0 botocore/1.13.26

Expected result
Stack is deployed
Additional environment details (Ex: Windows, Mac, Amazon Linux etc)

OS: MacOS 10.13.6

$ sam --version
SAM CLI, version 0.36.0

Do you have the managed stack already deployed on your account, it should be named aws-sam-cli-managed-default
Does that stack have outputs defined that are viewable in cloudformation console?

@TheSriram Yes, aws-sam-cli-managed-default is deployed. It has no outputs listed in the console.

So is aws-sam-cli-managed-default related to the new deploy where I have specified a different stack name? e.g. sam-app-3

The aws-sam-cli-managed-default stack was rolled back a couple of days ago:
2019-12-02 18:54:07 UTC-0500 | SamCliSourceBucket | CREATE_FAILED | API: s3:PutBucketVersioning Access Denied

The member account being used is restricted under an organization service control policy. We have been granting access as needed. I have now just added s3:Put/GetBucketVersioning. Should I delete the aws-sam-cli-managed-default stack?

Ah, it appears that aws-sam-cli-managed-default is used for the improved/auto packaging that sam cli now performs for us.

Correct, that stack needs to be in a state where sam cli can access it. I would delete that stack and let sam cli re-create it, as long as you have the appropriate permissions present.
Important note: if you already have packaged artifacts within that bucket, I would suggest retaining the bucket so that existing deployed SAM apps that are referencing your current bucket do not break.

I deleted the stack. Primarily it appears that adding the required permissions has resolved the issue. Thanks @TheSriram!

For me, this error was caused by using a duplicate StackName in the sam deploy --guided. Once I made the StackName unique, everything just worked.

@ggriffin - Could you tell me what permissions you added? I am facing the same issue.

Me Too!

@adheesh24, @jwilleke adding AdminstratorAccess existing policy to my user fixed it. Not sure if this is the best way to do it.


Patching of file isn't working

I'm testing the behavior when a file hasn't changed by size or date but I'd still like to be able to break it up by CDC and patch. (Using the -c checksum flag to ensure it breaks the file up by chunks and look for existing chunks on the server.)
What I'm finding is that, even though a file hasn't changed, it's not finding any matching chunks on the server and ends up transmitting the entire file still.
It's clearly returning the right number of offsets and hashes from the server. But in TryAddChunks() where it searches for matching chunk.hash it's always coming back false.
This is with syncing a file that was just sync'd on the previous run.
Wondering if I'm doing something wrong or if there's some way the hashing algorithm differs between client (Windows 10, Intel Xeon) and server (Ubuntu, Threadripper)  I was planning on verifying that next but wanted to ask whether you've seen this before.
Thanks

Odd, I've never seen that. If the server chunks have not been fully transmitted, it is possible that the chunk.hash is not found until the server catches up sending the data. In that case, the patcher will just try again later until server_chunk_receiver.AllChunksReceived() is true. Is the chunk.hash not found even after server_chunk_receiver.AllChunksReceived() becomes true?
Is this reproducible with a very small file (<1KB)? In that case, there should only be one chunk, and it should be easy to check what's going on. It could be 3 things: The chunkers/hashers on the client and server get different input data (should not be the case as the files are the same), they produce different outcomes (should not be the case as both chunker and hasher should be deterministic) or something else is wrong and the hash doesn't get transmitted properly.
Also, what version are you on? 1.0.0 or latest? If you're on latest, does it repro in 1.0.0?

Hi Lutz,
I'm on the latest in the main branch. Interestingly with a single chunk, (4kib file) it does compute the same hash and sees that it exists. I added a bit of logging:
client index:0 hash:0xbebbe3943b26b03cca080877ee363ed7
server index:0 offset:0 hash:0xbebbe3943b26b03cca080877ee363ed7
exist:1 new:0

With an 8kib test file, however the hashes don't match. Current theory is it's finding different breakpoints for some strange reason:
client index:0 hash:0x5038485c6b212bac1ca6d317030fc861
client index:1 hash:0xffb716ec699ed51f78b265ae24cb07c0
server index:0 offset:0x0 hash:0xed43e104e14bef74aba332fd3f1297e
server index:1 offset:0x1e10 hash:0xa25e0802b7476c8b450d906c012c420e
exist:0 new:1
exist:0 new:1

(TryAddChunks is being called twice which is why it's reporting exists vs new twice. )
I've verified that the full file SHA256 is the same between client and server, so it's got to be something else. I'm going to see if I can determine the FastCDC breakpoint to verify that's identical.

Yeah I was about to suggest that. We made a tiny change to fastcdc.h, which would perfectly explain those symptoms.


access token odd

is there a dependency missing or has anyone else experienced ObtainAccessTokenFromUsernamePassword not returning an access token on some machines but not others?
our build server never gets an access token but the dev machines this code works just fine

instead of just catching the exception returning null inside the proxy class I output the stack trace, this is what I am seeing:
at AxosoftAPI.NET.Helpers.SteamExtensions.DeserializeToJsonT
at AxosoftAPI.NET.Helpers.HttpWebRequestExtensions.MakeRequestT,Error in c:\Builds\95\Proctor.io Chrome Extension\Proctorio Chrome Extension - Staging (nightly)\src\packer\AxosoftAPI.NET\Helpers\HttpWebRequestExtensions.cs:line 48
at AxosoftAPI.NET.Proxy.ObtainAccessToken(IDictionary`2 parameters) in c:\Builds\95\Proctor.io Chrome Extension\Proctorio Chrome Extension - Staging (nightly)\src\packer\AxosoftAPI.NET\Proxy.cs:line 157


[lsi][Feature] Sort by frequency of access

support it.
https://github.com/ajeetdsouza/zoxide

please support in Fuzzy-Explorer-on-Terminal


[BUG] Compatibility issue with recent FFmpeg nightly builds with 8ch audio

Description of the the bug
Recent versions of nightly FFmpeg refuse to create 8ch wav files. Creating w64 files and adjusting the xml file accordingly seems to solve the problem.
Proposition
Change wav extension to w64 in deew. (at least for 8ch audios)

fixed in 2.9.5


Add the add notification functionality and fix the Google Assistant digest functionality

Fix some issues with the digest functionality and add notifications to the notifications page

I also fixed a few issues on the digest page, such as the more info button not working. It will now take the user to the individual mail piece item for that page.


Use nfs-server-provisioner subchart in support

This PR adds the nfs-server-provisioner chart as a dependency of support and allows PVCs to be provisioned as an nfs type. We would no longer need to manually provision an NFS server.

I'm noticing some circular dependencies between running python deployer deploy and python deployer deploy-support. With NFS enabled, the support chart needs to be deployed first so the hub-dir-db can be granted an NFS pvc, but that leaves the grafana and prometheus pods pending and hence the install fails. Similarly, deploying the *hub chart first leaves the hub pod in a pending state. So I currrently don't have a way of deploying either the support chart or hub-template chart first without a failure.
Possible solutions:

Give all support chart dependencies an condition: <chart name>.enabled flag so we can control the order of deployment
Something else?

but that leaves the grafana and prometheus pods pending and hence the install fails.

What are they waiting on, do you know? At first glance I don't know what there would be dependent on a hub being deployed.
Separately, only the user home directories should be on NFS. Putting our hub db on NFS will lead to poor performance, since sqlite (which is what we use with our hub) works poorly on NFS.

I have a meta question - this PR is making this NFS behavior true for all of our hubs, not just for Pangeo, right? If so, is there a place in pilot-hubs where this new functionality could be documented? I worry that, 3 months from now, it will be hard to reverse-understand how our NFS stuff is being provisioned without some digging.
Does it make sense to have a reference section that simply describes the major components of our hub template? (e.g. "where does XXX come from?" "where is YYY configured?") or is it enough to just use lots of comments in our YAML?

this PR is making this NFS behavior true for all of our hubs, not just for Pangeo, right?

Not quite true. It has to be enabled and is disabled by default (see line 37 in support/Chart.yaml - doing links to lines on the mobile app is not easy!). So other hubs shouldn't be impacted if/when this is merged.

Ah that is good to know! But I think that is actually another good example of something that we'd ideally have reference documentation on. E.g. how would somebody unfamiliar with this infrastructure quickly learn how NFS is provisioned, what the default behavior is, etc? Since it is disabled by default, how does somebody know when to enable it?

All good questions that I'm trying to figure out myself :)

@consideRatio you mentioned that you had been doing a dive into NFS stuff lately. Would you mind taking a look at @yuvipanda's questions and my questions above? Would you be willing to help advise on what kind of documentation would best-capture this? (or, whether there should be upstream documentation improvements for this?)

Ok, I think I have some solutions to my issues in https://github.com/2i2c-org/pilot-hubs/pull/613#issuecomment-901956729
(I deleted all previously created namespaces cert-manager, support and staging and tried again)
There wasn't a default storageClass set, so I set standard as the default and then deployed the support chart. This time all the pods came up Running, but the install failed with the following:
Error: failed to create resource: Internal error occurred: failed calling webhook "validate.nginx.ingress.kubernetes.io": Post "https://support-ingress-nginx-controller-admission.support.svc:443/networking/v1beta1/ingresses?timeout=10s": no endpoints available for service "support-ingress-nginx-controller-admission"

Then I deployed the hub chart into staging, all pods came up but again received:
Error: Internal error occurred: failed calling webhook "validate.nginx.ingress.kubernetes.io": Post "https://support-ingress-nginx-controller-admission.support.svc:443/networking/v1beta1/ingresses?timeout=10s": context deadline exceeded

Would you be willing to help advise on what kind of documentation would best-capture this? (or, whether there should be upstream documentation improvements for this?)

While there may be multiple points of documentation of relevance, I think one thing I would advocate for pilot hubs would be to let its Helm chart config follow a pattern similar to z2jh. In z2jh we have a schema.yaml file that defines configuration used both to generate documentation and to generate a values.schema.json file that helm install|upgrade|template use to validate configuration.
For NFS specifically, I think the practice of deploying the nfs-server-provisioner Helm chart could be a generally relevant discourse post and at some point be integrated into z2jh docs under a Tutorial or How to section perhaps.

So a lot of what I was experiencing in https://github.com/2i2c-org/pilot-hubs/pull/613#issuecomment-902597951 was to do with deploying charts that I wasn't ready to use yet. In ab9e77d, I have added similar condition: <chart name>.enabled flag but set them to be enabled by default - so behaviour doesn't change for any of the current hubs. I could then disable (mostly) everything I didn't want in order to deploy the nfs-server-provisioner, then deploy the hub, and then go back and turn on ingress-nginx, etc.
The exception to this is cert-manager. I tried adding a --skip-cert-manager-deploy flag to deploer deploy-support, but the Python logic didn't seem quite right. (It complained about number of arguments even though I followed what had been done for the --skip-hub-health-check flag to deployer deploy.) I think it's further complicated by the ClusterIssuer under templates too.

So after some discussion in Slack, @yuvipanda and I decided to remove the following lines from support/values.yaml since they are never passed to cert-manager directly.
https://github.com/2i2c-org/pilot-hubs/blob/386d9a0b351878d693d7fd8a500222e726a90792/support/values.yaml#L3-L4
We are explicitly passing this argument in the deployer here:
https://github.com/2i2c-org/pilot-hubs/blob/386d9a0b351878d693d7fd8a500222e726a90792/deployer/hub.py#L97-L103

After making the above change, I deleted all helm deployments and k8s namespaces and tried another fresh install.

I disabled prometheus, grafana and ingress-nginx in the support chart and enabled nfs-server-provisioner
I then ran python deployer deploy-support pangeo-hubs which would deploy nfs-server-provisioner and cert-manager
I received the following error RE: the cert-manager webhook

Error: failed to create resource: Internal error occurred: failed calling webhook "webhook.cert-manager.io": Post "https://cert-manager-webhook.cert-manager.svc:443/mutate?timeout=10s": x509: certificate signed by unknown authority

Upon some searching, I found the following documentation around using the webhook on private GKE clusters - which this is! https://docs.cert-manager.io/en/release-0.9/getting-started/webhook.html#running-on-private-gke-clusters

I'm actually not sure that the above issue is regarding firewall rules since we already have IP aliasing that allows outbound access to the internet? Inspecting the webhook pod, it is already using one of the two ports that private GKE clusters automatically grant access to the control plane anyway: 10250.

@sgibson91 how do you feel about just turning off the webhook validation for now, tracking it in an issue, and continuing with getting everything else going?

@sgibson91 how do you feel about just turning off the webhook validation for now, tracking it in an issue, and continuing with getting everything else going?

That's exactly what I did! (minus opening the issue, but happy to)
I'm now frustrated that I still seem to get an error about failing to connect to the ingress-nginx controller - of course you can't connect, I didn't install ingress-nginx! I have basehub.jupyterhub.proxy.https.enabled = false, but I'm wondering if there's anything in daskhub that's trying to talk to ingress-nginx that needs disabling?

What do you think about tracking the "clean install" story in a new issue before this PR gets too unwieldy? It might also help distinguish between "technically blocked because something doesn't work" and "something needs more discussion/process/documenting"

@sgibson91 +1 on opening a new clean issue.

have basehub.jupyterhub.proxy.https.enabled = false, but I'm wondering if there's anything in daskhub that's trying to talk to ingress-nginx that needs disabling?

Anything from kubectl get ingress -A? Might show us if ingress objects are being added.

Anything from kubectl get ingress -A? Might show us if ingress objects are being added.

$ kubectl get ingress -A
No resources found

Oh I had to allow 6443 before, but it seems now that they have changed the port.
  # The port that the webhook should listen on for requests.
  # In GKE private clusters, by default kubernetes apiservers are allowed to
  # talk to the cluster nodes only on 443 and 10250. so configuring
  # securePort: 10250, will work out of the box without needing to add firewall
  # rules or requiring NET_BIND_SERVICE capabilities to bind port numbers <1000
  securePort: 10250

@sgibson91 I believe that cert-manager may give you trouble if you try to disable the webhook in modern versions. What version are you installing? You pointed documentation about version 0.9 which is very old at this point (on Jul 23, 2019).

Found the same info in v1.5: https://cert-manager.io/docs/concepts/webhook/#webhook-connection-problems-on-gke-private-cluster
Version being installed: https://github.com/2i2c-org/pilot-hubs/blob/386d9a0b351878d693d7fd8a500222e726a90792/deployer/hub.py#L84
I would reenable it after I'd deployed the hub and setup a DNS record. The whole sticking point of this PR is that other stuff in the support chart is trying to do it's thing before I'm ready for it because I don't have a hub up yet.
What I want to do is the following:

Deploy nfs-server-provisioner
Deploy a hub
Deploy other support components, i.e. prometheus, grafana, ingress-nginx, setup the DNS and then let cert-manager do it's thing.

But at the minute, helm seems to be complaining about not finding things that haven't been installed yet and I'm not sure what part of basehub/daskhub/whatever is making those calls.

Deleting cluster, starting again from scratch. Only condition should be to run deploy-support and then deploy.

So on a fresh cluster:
The whole of the support chart installed fine (no disabling of any sub-charts, just enabled nfs-server-provisioner)
Then tried to deploy the hub and got:
Error: Internal error occurred: failed calling webhook "validate.nginx.ingress.kubernetes.io": Post "https://support-ingress-nginx-controller-admission.support.svc:443/networking/v1beta1/ingresses?timeout=10s": context deadline exceeded

But all pods came up successfully

Hmmmm? What is the support-ingress-nginx-controller-admission service in the support namespace? It seems like a k8s resource validation webhook is registered by the ingress-nginx controller as well, is that correct? I didn't know they did that.

@consideRatio yes it's in the docs here https://kubernetes.github.io/ingress-nginx/how-it-works/#avoiding-outage-from-wrong-configuration

@sgibson91 perhaps you can update the config so this template renders to a already allowed port?
          {{- if .Values.controller.admissionWebhooks.enabled }}
            - name: webhook
              containerPort: {{ .Values.controller.admissionWebhooks.port }}
              protocol: TCP
          {{- end }}

https://github.com/kubernetes/ingress-nginx/blob/605c243d7ae49e11202ea106bebc205b45b26333/charts/ingress-nginx/templates/controller-deployment.yaml#L169-L173

I tried adding another firewall rule to terraform as well, but that didn't seem to help
resource "google_compute_firewall" "ingress_nginx_webhook_validation_ingress" {
  count = var.enable_private_cluster ? 1 : 0

  name    = "ingress-ngix-webhook-validation"
  project = var.project_id
  network = data.google_compute_network.default_network.name

  allow {
    protocol = "tcp"
    ports    = ["8443"]
  }

  // This range contains all IP addresses that IAP uses for TCP forwarding.
  // https://cloud.google.com/iap/docs/using-tcp-forwarding
  source_ranges = ["<IP_ADDRESS>/20"]
}

let's turn off the nginx-ingress validation webhook too and try? https://github.com/kubernetes/ingress-nginx/blob/605c243d7ae49e11202ea106bebc205b45b26333/charts/ingress-nginx/values.yaml#L525

Disabling the admissions webhook seemed to work. Got a hub in CrashLoopBackOff though
  Warning  Unhealthy               61s (x12 over 83s)  kubelet                  Readiness probe failed: Get "http://<IP_ADDRESS>:8081/hub/health": dial tcp <IP_ADDRESS>:8081: connect: connection refused

Probably need to allow traffic to/from port 8081 as well

I disabled the webhook over here in #597

*collapses* https://staging.pangeo.2i2c.cloud/

I made some minor changes, this is good to go!

Great work, @consideRatio and @sgibson91!

Amazing! thanks everybody for collaborating on this and getting it through!
I've updated https://github.com/2i2c-org/pilot-hubs/issues/629 to track documenting this configuration, so that we don't lose it. I think we should document it relatively soon while the information is still fresh.


Remove shims for Django < 1.4

Now, when Django < 1.4 is not supported, this code is not required.

Yep. Nice one.


Add support for empty root nodes in MaterializedPath strategy

Right now, MaterializedPath does not support empty root nodes.
I added support for empty titles that also play correctly with other configuration options like path_starts_with_separator etc.
This is work in progress, I will add more tests to cover other configurations.

this is a big change, what do you mean by empty root nodes, if a node path element is empty, that does not make any sense. the path would simply not be valid, for example a child node could match the same root/child node.

Right now it is not possible / buggy to have a node that has an empty name and has no parent id (what yields to an empty path). I also introduced support for path_starts_with_separator, so we can have a real root node in this strategy. (/).

No, no, I cannot accept such feature, extensions are currently locked for new features (including new options) unless they are really necessary. But in your case, empty path nodes could lead to much more trouble and confusion for every user who may interact with it. I suggest you to prevent such tree paths or use NestedSet instead, you can also base your path on Node ID, and build path in separate repository method based on titles (which may be empty in your case). But this is not something I would want to include in the library at all.

I understand. But NestedSet supports the same behaviour and MaterializedPath is broken in this case. This is not really a new feature but a bugfix. I will provide an example. This should also not break existing implementations.

nested set does not depend on titles and for that reason it cannot be broken. if you use empty titles for a tree path I think that is your problem, unless I do not understand something. Please explain how you are trying to fix it?

Hello, and thank you for your contribution.
In the interest of spring cleaning and package modernization, I'm going through and closing old issues and pull requests that have had no recent activity, do not have associated tests, or have failing tests.
If you are still experiencing this issue or wish to contribute an up-to-date pull request, please create a new issue.
Thank you!


Allow autostart to be a callback

Motivation:
Unlike Solargraph (and probably most other servers), Sorbet is not a general-purpose Ruby language server. A project must have a sorbet directory at the root for the server to start, otherwise it will error out. It's very nice when the server autostarts on my projects that use sorbet! But it's annoying when it fails and prints error messages on other random ruby projects that do not.
So it would be nice if the server only was auto started on suitable projects. It would also be nice if checking for suitability was done only in ruby projects, and not all the time. I don’t know much about all the different language servers, but I figure that there may also be other servers that may benefit from deferring the decision to auto start based on the project.
This PR has two patches:
The first adds the ability for autostart to be a callback in addition to the boolean it has been. The function is called with the calculated root directly. I also pass in the path section of the utils functions since it seems like it will often be needed to poke around in the root directory to see if it's a good project for the language server or not.
The second patch uses this new callback feature on the sorbet server so that it only autostarts appropriately.

The lint error seems both incorrect and unrelated to my patch.
The dirname checker error I believe is a false positive.

The lint error seems both incorrect and unrelated to my patch.

Should be fixed if you rebase.

The lint error seems both incorrect and unrelated to my patch.

Should be fixed if you rebase.

Thanks, just rebased

I don't think this is the way to go, I'll respond in more detail later so DNM

I want to add support for 2, a rough implementation is here https://github.com/mjlbach/projects.nvim. Projects are registered ahead of time for directory triggers.
I don't like the semantics of the current change.
Autostart is "should I manually start the server with LspStart, or should I have LspConfig automatically try to start the server".
A couple options (which is kinda a placeholder until I finish works on projects.nvim)

We can add a separate, optional key that takes a callback which runs after attempting to resolve the root directory, and also takes "single_file_support"
We overload root pattern to return true/false if the server should start on the resolved root. I think this would be messy in practice, some people want to disable single_file_support for all servers (because many servers have reduced functionality if it launches with a null root. So then we'd have to pass single_file_support into root_dir, which makes the function somewhat complicated.

I agree 100% with

Autostart is "should I manually start the server with LspStart, or should I have LspConfig automatically try to start the server".

and, to me at least, this change fully keeps those semantics. It just adds the option to deferring the decision to a bit later. But it's your project and if you don’t agree that's alright I suppose.
And I figured that since everyone using this particular LSP server will have the same problem, it'd be a nice thing to solve it once for everyone. But I'm fine just solving the problem for myself with an autocommand or with projets.nvim when it's more mature. Other people if they get annoyed with the thing can probably find this issue and see the solutions and do their own manual fixes.

Just in case anyone is coming from search in the future here is now how I've solved it for myself based on @davidsierradz's autocommand and (currently unreleased) neovim 0.7 lua auotcommands
lspconfig.sorbet.setup {
  cmd = { "srb", "tc", "--lsp", "--enable-all-beta-lsp-features" },
  autostart = false,
}

local au_id
au_id = vim.api.nvim_create_autocmd("BufRead,BufNewFile", {
  pattern = "/full/path/to/my/project/**/*.rb",
  callback = function()
    vim.schedule(function()
      lspconfig.sorbet.launch()
      vim.api.nvim_del_autocmd(au_id)
    end)
  end,
})

While it seems fine to call launch over and over again, I have the autocommand delete itself here to just avoid doing extra work all the time.


Adding Semiring

It'd be nice to add semirings to this. Currently only rings are allowed.

Added semiring (and commutative monoid). Now the natural numbers implement this trait. Where do you want to use it?

Added semiring (and commutative monoid). Now the natural numbers implement this trait. Where do you want to use it?

Ohh, I think I wanted to use it on some petri net stuff but that was some time ago, right now I have no immediate need, but thank you so much!


Test case for validating AllocationDeciders not being honoured in bat…

Description
Added a test case to assert the allocation deciders not being honored in batch mode due to execution of deciders of all shards in a batch together.
Related Issues
Resolves #13702

Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] API changes companion pull request created.
[ ] Failing checks are inspected and point to the corresponding known issue(s) (See: Troubleshooting Failing Builds)
[ ] Commits are signed per the DCO using --signoff
[ ] Commit changes are listed out in CHANGELOG.md file (See: Changelog)
[x] Public documentation issue/PR created

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Draft PR.


Raising exceptions should use native strings.

In Python3, the str type is a text string.  On Python2, the str type is
a byte string.  When we raise exceptions we should use native strings
otherwise Python may end up truncating or omitting the exception
message (on Python2) or mangling them (if a byte string were to be given
on Python3).
Fixes #463
(Note, if you want some more examples of this outside of sh code, you can take a look at this documentation I wrote for the kitchen library: https://pythonhosted.org/kitchen/unicode-frustrations.html#frustration-5-exceptions )

Gnarly...I had to really think about this one.  Thanks for the fix, it will go out in the next release :+1:


0.0.4

Current coverage is 100% (diff: 100%)

Merging #177 into master will not change coverage

@@           master   #177   diff @@
====================================
  Files           9      9
  Lines         191    191
  Methods         0      0
  Messages        0      0
  Branches        0      0
====================================
  Hits          191    191
  Misses          0      0
  Partials        0      0

Powered by Codecov. Last update 755bbba...9fec970

closing in favour of #178


Disable optimization for jobserver pipe

It could be the reason why the failure still happens in https://github.com/sfackler/rust-openssl/issues/2184#issuecomment-1962453714

It still fails in macOS and I have to manually set the CMAKE_BUILD_PARALLEL_LEVEL to the number of CPU cores to bypass this issue.
make[2]: *** read jobs pipe: Resource temporarily unavailable.  Stop.

Thanks, that's strange.
We only set O_NONBLOCK when cc is compiling and cleared that afterwards, so perhaps set_blocking fails to clear O_NONBLOCK

@n-eq Can you test this PR?
I kind of suspect macOS's /dev/fd/$fd is different from Linux.
On Linux, it opens the pipe again, with a different state, so that we can set O_NONBLOCK independently.
However I suspect that things are different on MacOS,.

Never mind, tried locally and it doesn't work


Rename greeters to messages

Trello Card

Pull Request Test Coverage Report for Build 2323

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

Totals

Change from base Build 2322:
0.0%

Covered Lines:
11307

Relevant Lines:
11307

💛  - Coveralls


Use configmap for configuration handling

Purpose of PR?:
handled defaultPosture configuration changes dynamically using k8s configmap. An informer instance is added to watch for configmap changes.
It also bring changes to defaultPosture map updation logic. Now map will contain defaultPosture info for only annotated namespaces.
Fixes #754
Does this PR introduce a breaking change?
No
If the changes in this PR are manually verified, list down the scenarios covered::
Additional information for reviewer? :
Mention if this PR is part of any design or a continuation of previous PRs
Checklist:

[x] Bug fix. Fixes #754
[x] PR Title follows the convention of  <type>(<scope>): <subject>
[x] Commit has integration tests

Codecov Report

Merging #832 (70910a4) into main (2fd5776) will decrease coverage by 4.32%.
 Consider uploading reports for the commit 7203742 to get more accurate results

@@            Coverage Diff             @@
##             main     #832      +/-   ##
==========================================
- Coverage   39.91%   35.58%   -4.33%
==========================================
  Files          30       31       +1
  Lines        9285     9326      +41
==========================================
- Hits         3706     3319     -387
- Misses       5089     5547     +458
+ Partials      490      460      -30

Impacted Files
Coverage Δ

KubeArmor/core/kubeUpdate.go
37.50% <0.00%> (-1.43%)
:arrow_down:

KubeArmor/posture/posture.go
0.00% <0.00%> (ø)

KubeArmor/core/kubeArmor.go
46.92% <100.00%> (-3.74%)
:arrow_down:

KubeArmor/core/crioHandler.go
0.00% <0.00%> (-63.87%)
:arrow_down:

KubeArmor/core/dockerHandler.go
0.00% <0.00%> (-47.53%)
:arrow_down:

KubeArmor/monitor/processTree.go
86.02% <0.00%> (-9.68%)
:arrow_down:

KubeArmor/core/containerdHandler.go
52.59% <0.00%> (-4.45%)
:arrow_down:

KubeArmor/monitor/logUpdate.go
67.21% <0.00%> (-4.27%)
:arrow_down:

KubeArmor/common/common.go
39.35% <0.00%> (-4.02%)
:arrow_down:

... and 5 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Hey @daemon1024 , Can you please review this PR? Can you check if it maps to all the configuration params we have and the implementation is as expected? Thanks

@s1ntaxe770r , please fix the CI failure.

Hey @daemon1024 updated the PR however I am unsure how to proceed here:

Loop through the default posture map and updating the respective defaults of unannotated pods (this might need an improvement of logic since updating individuals defaults might not be feasible)

Let me frame the problem statement, You already have a whitelist policy enforced, What happens when you update the Default Posture using Config Map today. Does the block posture automatically update to audit? or vice versa?
You can reproduce this using https://github.com/kubearmor/KubeArmor/blob/main/getting-started/default_posture.md

@daemon1024  how's this looking now?

@daemon1024  could you test this out? It works in my testing but pod updates takes more than a few seconds

Can we add the testing you are doing  as testcase to our suite as well? This would be an important change I believe we should support it with test if possible.

ci-test-runtime passing locally :thinking:
namespace "github" deleted
deployment.apps "ubuntu-1-deployment" deleted
[DBG] Deleted github
[DBG] Finished Container Scenarios
[WARN] Skipped Host Scenarios
[INFO] Stopping KubeArmor
[DBG] Stopped KubeArmor
[PASS] Successfully tested KubeArmor```

@daemon1024 here's an example flow, let me know if anything need to be more detailed. thanks

issue #1038 needs to be closed first, for the CI tests to be passed.

Please generate deployment yamls based on the object.go changes. The deployment still contains the block default posture

LGTM!


Featured profiles not working

featured profiles are broken
look no devs

this issue is caused by a race condition that was introduced in 7f4d160697a098b279e1b51e8137d174e4ce4f97