WIP: Fix missing console log output in verbose mode

Summary
This PR fixes missing / overwritten console.log output in verbose mode.
The monkey-patch of stderr and stdout streams' write methods that clears and rewrites the status report at the bottom is not used when streams are in "inherit" mode. Because of that, live unbuffered output from the child workers gets overwritten by subsequent write instructions.
This runner is used in watch mode, which force-sets runInBand to false when there are 2 or more tests to run, and its combined with a regular streaming console (not a buffered one) when verbose is set to true.
Therefore the test case that can be used to reproduce the issue is configured with {verbose: true}, runs in watch mode and contains two tests:
https://github.com/spion/jest-logging-repro
yarn install; yarn repro

To make sure the patched version receives those stdout/stderr writes, its necessary to switch the child processes streams from "inherit" mode to "pipe" mode. This way the process outputs are available as streams in the child process instead of directly going to the main stdout/stderr. The streams are then piped manually to the parent process, which ensures the right write instruction gets called.
In most cases, the right test behavior is preserved by passing FORCE_COLOR with the right value as an environment variable to the child process, and setting it to 0 in runJest. However, istanbul-lib-reporter uses an old version of supports-color which incorrectly implements support for the FORCE_COLOR environment variable. Therefore I updated a few of the snapshot tests to strip ansi codes manually themselves from the coverage reports.
Fixes https://github.com/facebook/jest/issues/2441
Test plan
WIP: I will try to add my repro case (except with runInBand = false) to the e2e test suite. Any other thoughts on tests welcome. Would like some feedback before I proceed further.

Exciting! Thank you so much for tackling it.
I don't get why we have to mess with force color?

@SimenB when the child streams switch from 'inherit' to 'pipe', process.stdout.isTTY / process.stderr.isTTY are no longer true on them so most colorizes decide to stop adding their colors in the output unless that env var is set (e.g. the dark gray line log line number gets removed)
Another approach would be to have something like BufferedConsole, except instead of sending the output at the end of the method run it sends messages continuously to the parent worker via process.send.

Not sure why the tests aren't passing in CI, locally I get
Test Suites: 283 passed, 283 total
Tests:       7 skipped, 2855 passed, 2862 total
Snapshots:   1166 passed, 1166 total
Time:        88.746s
Ran all test suites in 13 projects.

Can you run yarn jest worker -u locally?

Codecov Report

Merging #6871 into master will decrease coverage by 3.55%.
The diff coverage is 50%.

@@            Coverage Diff             @@
##           master    #6871      +/-   ##
==========================================
- Coverage   66.98%   63.42%   -3.56%
==========================================
  Files         250      235      -15
  Lines       10358     9119    -1239
  Branches        4        4
==========================================
- Hits         6938     5784    -1154
+ Misses       3419     3334      -85
  Partials        1        1

Impacted Files
Coverage Δ

packages/jest-runner/src/index.js
46.47% <0%> (-1.35%)
:arrow_down:

packages/jest-worker/src/worker.js
92.42% <100%> (+0.23%)
:arrow_up:

packages/jest-cli/src/TestScheduler.js
38.34% <0%> (-5.93%)
:arrow_down:

packages/jest-config/src/normalize.js
91.33% <0%> (-0.11%)
:arrow_down:

packages/jest-each/src/index.js
77.77% <0%> (ø)
:arrow_up:

packages/jest-jasmine2/src/each.js
0% <0%> (ø)
:arrow_up:

packages/expect/src/jest_matchers_object.js

packages/expect/src/index.js

packages/expect/src/spy_matchers.js

... and 14 more

Continue to review full report at Codecov.

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

@mjesun could you take a look?

Maybe @rafeca has an opinion? :D

A few things I forgot to mention, in case it helps:

While the fix does ensure that the output is there, I still get some non-deterministic results. For example, a worker will send its "I'm done" message before flushing the stderr/stdout buffers. If that flush happens after all the tests in all workers complete, the main Jest process will accept the output but will not re-render the status report (instead the output will appear below the status report and shortcuts text blub)
I can't figure out if its possible to force flush the console buffers and/or (more importantly) wait for that event to happen. Reimplementing the console (i.e. the StreamingConsole approach) would allow us to wait for this flush to happen before sending the "I'm done" message.

@spion mind rebasing 🙂
@rickhanlonii can you test this at FB somehow? I tested in a smaller project at work and it worked out fine there

Rebased - the patch is now quite tiny because color stripping for snapshots has already been implemented...

cc @cpojer

Bump. Would love to get this merged. Super annoying :)

Thanks so much for your work @spion! It's been years of this being a consistent issue.

I think we hit this bug https://github.com/yarnpkg/yarn/issues/6042 :(

Removing nohoist helps (and it turned out we don't need it, because we only have 1 version of RN). Also tested locally on Jest repo and it seems to work just fine.

Thanks @spion, appreciated!

released as alpha.9 (jest@beta)


Refactor fillTokens function from ValidationPackage POC into ARCTokenization

Not sure about the naming though. Reminder @omaus , this is the section:
https://github.com/nfdi4plants/arc-validate/blob/bf1995584a06eb0a0353ac4a35a038d45dd6e48e/playgrounds/qcPackage_prototypes/invenio_prototype_v0.1.0.fsx#L83-L93

Wouldn't this fail? This function needs ARCTokenization functionality (okay so far) and ARCExpect functionality (as of now, since ARCGraph is still part of ARCExpect). But ARCExpect itself also depends on ARCTokenization, so both libraries would depend on each other.

Yeah i meant arcexpect sorry


Add Caddy

I've created a list on Caddy.

Hi, please have a read of Creating Your Own List:

Wait at least a couple of weeks after creating a list before submitting to this list to give it a chance to mature.

Once the list is ready again you can send a message here and we'll review it again, it would be great if some of the empty sections in the list were filled in too. :smiley:


Monorepo setup

What is this PR doing?
This PR adds a streamlined setup process and documentation for the monorepo of bls-wallet components. It does this by:

Adding a setup.ts script for initial repo setup.
Consolidating contract addresses and deployment metadata into a network.json file, which can be loaded/parsed with NetworkConfig type and functions in clients.

How can these changes be manually tested?

Clone a fresh copy of the repo and checkout this branch OR (WARNING this will clear all untracked files) checkout this branch and run git clean -xdf.
Follow the setup instructions in the top level README.md
Ensure tests run and pass for ./aggregator.
Ensure tests run and pass for ./contracts.
With contracts deployed, aggregator running, and extension added to a browser, ensure a new BLS wallet can be created and a txn sent.

Does this PR resolve or contribute to any issues?
Resolves https://github.com/jzaki/bls-wallet/issues/4
Checklist

[x] I have manually tested these changes
[x] Post a link to the PR in the group chat

Guidelines

If your PR is not ready, mark it as a draft
The resolve conversation button is for reviewers, not authors

(But add a 'done' comment or similar)

TODO

[x] Move contract addresses and other deployments to network JSON file (if agreed that it is a good idea)
[x] docker-compose file ~to easily start all services~
[x] Setup script
~- [ ] Replace remaining usages of VERIFICATION_GATEWAY_ADDRESS in ./extension~ Ran into some config issues getting webpack to properly read in deployed contracts config at build time, will need to revisit.
[x] Complete main READMEs
[x] Update sub READMEs
[x] Add local depoy setup and documentation.

Re:

Good call on not importing directly from that package, forgot that yarn link is a thing. Moved to bls-wallet-clients imports and added a section to top level README. Could make more sense in ./clients but seemed better aligned top level.
I was successfully able to bring in and use io-ts to validate the config, and it worked in Deno! I was not able to to test the full esm.sh linkage path, we likely need to publish an early version of bls-wallet-clients (@x.y.z-alpha) to ensure it works.

Also and unfortunately, when esm.sh loads in io-ts, it also does not appear to cache its peer dep fp-ts:

Still sorting through indentation issues on my end.

This should now be up to date with latest changes from main. I've retested what I can but there appear to be a couple points that have broken with recent updates:

extension has not been updated with latest changes from contracts/clients. TS typechecking errors.
clients and aggregator may not have been fully updated with CREATE2 changes in contracts. Seeing this in some errors running tests on aggregator.

That being said, I feel pretty comfortable/safe merging this in its current state and tackling the above moving forward.
@voltrevo your re-review would be appreciated when you're back in.


Avoid loading version info unless option is specified

This should also improve start-up performance a teeny-weeny bit because the version information was being loaded on each and every run irrespective of whether the version option (-v or --version) was specified.

good catch - thanks!


The checkbox in repositories filter of dashboard will always be empty after click

Description
the checkbox of private and archived will always be empty after click.
if you refresh the page, it will show rightly.
Im trying to fix this.

after click, title is same but the checkbox is empty

Gitea Version
1.19.0+dev-442-g3ae78bc0a
Can you reproduce the bug on the Gitea demo site?
Yes
Log Gist
No response
Screenshots
No response
Git Version
No response
Operating System
No response
How are you running Gitea?
try.gitea.io
gitea.com
Database
None

The problem is mixing Vue and Fomantic UI together improperly.
In history, the code was not well but it just worked.
After upgrading to Vue3, the template is splitted into a <template> tag, then the Fomantic UI JS doesn't work on these checkbox elements correctly anymore.

According to my test, these checkbox elements will be updated by Fomantic UI's Function correctly:
https://github.com/go-gitea/gitea/blob/d5fa2e7510844ad092804b7c11bf6847f7c4e45d/web_src/js/components/DashboardRepoList.js#L159-L190
But after get the response of searchRepo, they will be updated by something. Maybe by Vue?
Because v-if is used in template file to set the title:
https://github.com/go-gitea/gitea/blob/d5fa2e7510844ad092804b7c11bf6847f7c4e45d/templates/user/dashboard/repolist.tmpl#L49-L98
I tried to remove v-if so that the checkbox worked, but the title was missing.
Are there any other ways to fix this?

The only correct way:
Do not mix them together.


The Haunted Forest still contributes strength after being knelt.

Steps to Reproduce:

Play an opponent using The Haunted Forest.
Initiate and win a challenge against this opponent.
Opponent is forced to kneel The Haunted Forest.
Subsequent challenges in which none of the opponent's characters are declared as a defender are not unopposed. The Haunted Forest is still contributing strength to the challenge.

Fixed in bdb6f03d004140cc5c413992dcb081e06209c3ae just waiting for a deployment

Cheers! Thanks for the hard work on this.


[Cheapest Fare(Python) setup] no way to verify if the service is running.

ran the commands in the project wiki, server runs on port 8000.
How do i test that its running as it should ?
you might wanna look into the logs

@KalaRaja This issue was also linked to the previous DB related issue. There were also few ambiguous python statements in wiki which caused the error, it has been updated now. For this service to work, java service needs to works which at the time you were testing was down. Try it now and let me know of any other issues.


Fixed BaseAddress Selection Menu

Ticket: https://github.com/bcgov/entity/issues/18997
Description of changes:
Before:

After:

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the business-filings-ui license (Apache 2.0).

@seeker25 I'm hoping it's OK now, this is the default:

The issue was that an empty string was being assigned initially.


Create SUSE OVAL importer

Implements #1079

@pombredanne @TG1999 The suse_oval importer is ready for your review.
All 10 GH checks passed -- 1 test failed when I ran make test locally but that was due to the new release of Black -- see https://github.com/nexB/vulnerablecode/issues/1126 and https://github.com/nexB/vulnerablecode/pull/1127.

@pombredanne @TG1999 Following up on today's jit.si meeting, this PR has been open for a while and awaits your feedback.
This PR is also related to open PR https://github.com/nexB/vulnerablecode/pull/1127, both of which involve the use of Black and the effect of running make valid  Back in early 2023 with make valid, Black changed the line spacing in more than 40 files to enforce a then-new single-line rule -- not a result we want to have to attend to.  I have stopped using make valid in my VulnerableCode work since then for that reason, awaiting a reply to the question posed here and in https://github.com/nexB/vulnerablecode/pull/1127.

You may want to merge the latest main in your branch too.

Thanks.  This has also been awaiting a reply since February -- will attend to when time permits.

@pombredanne @TG1999  @mjherzog   Back when I opened this PR on Feb. 13, all 10 GH tests passed and the only test that failed when I ran make test locally was due to the then-new release of Black.  The PR was overlooked for 7 months, and when I finally got feedback in August, the feedback concerned only (1) pinning Black 22.3.0 and (2) "trimming" the test file sizes.
I just updated main and merged main into my branch 1079-create-suse-oval-importer -- no merge conflicts -- but when I ran make test, 6 tests failed.  3 are related to this PR, 3 are not:
vulnerabilities/tests/test_view.py::PackageSearchTestCase::test_package_view_with_purl_fragment

vulnerabilities/tests/test_view.py::PackageSearchTestCase::test_package_view_with_valid_purl_and_incomplete_version

vulnerabilities/tests/test_view.py::PackageSearchTestCase::test_package_view_with_valid_purl_without_version

vulnerabilities/tests/test_suse_oval.py::test_suse_oval_importer_leap_micro_5_3

vulnerabilities/tests/test_suse_oval.py::test_suse_oval_importer_leap_micro_5_3_patch

vulnerabilities/tests/test_suse_oval.py::test_suse_oval_importer_CVE_2008_5679

I'm happy to tackle this now, but with the passage of time since I finished my work in early February, this could take a while -- delaying my work on several other VCIO issues/PRs that have seemed higher priority than this overlooked PR.  Unless you advise otherwise, I will put aside my other VCIO work to focus on this PR.  Hopefully it will be straightforward and quick.

BTW, rerunning make test after some initial work on the suse tests, the 3 non-suse tests that failed initially no longer fail.  Magic?

@johnmhoran I have rebased your PR with the latest main and removed the merge conflicts as well, please ensure you take a latest pull of your branch locally before making any changes on your machine this may cause conflicts locally while pushing.

Also, as @pombredanne and @tdruez recommended a long time ago, I do not force push any more but rather I do a git pull in main, then check out the branch in question, then do a git merge as they suggested.

@TG1999 Thank you for making the change to black in setup.cfg.  I've updated main, checked out the branch, updated the branch, merged main (no conflicts), and am about to change list(set(matching_tests)) to sorted(set(matching_tests)) as @pombredanne suggested in our earlier jit.si -- and will run make test to be sure all is good.

In oval_parser.py as @pombredanne suggested on line 94 I changed return list(set(matching_tests)) to return sorted(set(matching_tests)), but when I reran ran make test  (did so just before the change and 332 passed, 0 failed), this time 1 test failed.
============================================================================================ short test summary info ============================================================================================
FAILED vulnerabilities/tests/test_data_source.py::test__collect_pkgs - TypeError: '<' not supported between instances of 'OvalTest' and 'OvalTest'
====================================================================== 1 failed, 331 passed, 1 skipped, 1 deselected, 9 warnings in 52.74s ======================================================================
make: *** [Makefile:116: test] Error 1

(venv) Tue Dec 12, 2023 12:34 PM  /home/jmh/dev/nexb/vulnerablecode jmh (1079-create-suse-oval-importer)
$

I haven't worked on this code since January or so, so it may take a while to refresh my recollection on how this all worked....

@TG1999   I see that the test that failed is a test @ziadhany wrote 14 months ago in /vulnerablecode/vulnerabilities/tests/test_data_source.py -- def test__collect_pkgs().
            # Test for len == 2 because this IDs a pair of nested `object` and `state` elements.
            if len(oval_test.element) == 2:
                _, state = self.get_object_state_of_test(oval_test)
                valid_test = True
                for child in state.element:
                    if child.get("operation") not in self.translations:
                        valid_test = False
                        continue
                    elif (
                        child.get("operation") in self.translations
                        # "debian_evr_string" is used in both Debian and Ubuntu test XML files; SUSE OVAL uses "evr_string".
                        # See also https://github.com/OVALProject/Language/blob/master/docs/oval-common-schema.md
                        and child.get("datatype") in ["evr_string", "debian_evr_string"]
                    ):
                        matching_tests.append(self.oval_document.getElementByID(ref))

        # return list(set(matching_tests))
>       return sorted(set(matching_tests))
E       TypeError: '<' not supported between instances of 'OvalTest' and 'OvalTest'

vulnerabilities/oval_parser.py:95: TypeError
=============================================================================================== warnings summary ================================================================================================
venv/lib/python3.8/site-packages/django/conf/__init__.py:240
  /home/jmh/dev/nexb/vulnerablecode/venv/lib/python3.8/site-packages/django/conf/__init__.py:240: RemovedInDjango50Warning: The USE_L10N setting is deprecated. Starting with Django 5.0, localized formatting of data will always be enabled. For example Django will display numbers and dates using the format of the current locale.
    warnings.warn(USE_L10N_DEPRECATED_MSG, RemovedInDjango50Warning)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
============================================================================================ short test summary info ============================================================================================
FAILED vulnerabilities/tests/test_data_source.py::test__collect_pkgs - TypeError: '<' not supported between instances of 'OvalTest' and 'OvalTest'
========================================================================================= 1 failed, 1 warning in 0.69s ==========================================================================================

(venv) Tue Dec 12, 2023 12:51 PM  /home/jmh/dev/nexb/vulnerablecode jmh (1079-create-suse-oval-importer)
$

@TG1999 Is it possible that the change @pombredanne asked me to make is not a change we actually want?  Or perhaps I misinterpreted his suggestion?  The change is inside def get_tests_of_definition(self, definition: OvalDefinition) -> List[OvalTest] in oval_parser.py, which @sbs2001 wrote 4 years ago and I updated early this year.
        # return list(set(matching_tests))
        return sorted(set(matching_tests))

In any event, I'm unable so far to figure out what this means, how my change led to the failure, or how to fix:
TypeError: '<' not supported between instances of 'OvalTest' and 'OvalTest'

@pombredanne @TG1999   Been digging into the wonderful world of OVAL a bit, refreshing my recollection etc.  I'm wondering if the OvalTest instances mentioned in the failure message above are the <definition> elements in an OVAL .xml file, for example, our suse_oval_data.xml test file.
If so, perhaps the error message is simply informing us that one cannot carry out a < comparison of two such entities?  And thus changing list(set(matching_tests)) to sorted(set(matching_tests)) asks Python to execute a comparison that cannot be executed given the nature of the objects being compared?
FWIW, the failing test test__collect_pkgs() expected result (in this test file) is expected_suse_pkgs = {"cacti-spine", "apache2-mod_perl", "cacti", "apache2-mod_perl-devel"}, and each of those four values can be found nested in the <objects> element at the bottom of that suse_oval_data.xml test file:
<objects>
        <rpminfo_object id="oval:org.opensuse.security:obj:2009031246" version="1" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#linux">
            <name>openSUSE-release</name>
        </rpminfo_object>

        <rpminfo_object id="oval:org.opensuse.security:obj:2009031297" version="1" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#linux">
            <name>cacti</name>
        </rpminfo_object>

        <rpminfo_object id="oval:org.opensuse.security:obj:2009037882" version="1" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#linux">
            <name>cacti-spine</name>
        </rpminfo_object>

        <rpminfo_object id="oval:org.opensuse.security:obj:2009040947" version="1" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#linux">
            <name>apache2-mod_perl</name>
        </rpminfo_object>

        <rpminfo_object id="oval:org.opensuse.security:obj:2009041273" version="1" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#linux">
            <name>apache2-mod_perl-devel</name>
        </rpminfo_object>
    </objects>

@pombredanne @TG1999 TL;DR  imho the failing test can and should be resolved by reversing the change I made yesterday from return list(set(matching_tests)) to return sorted(set(matching_tests)) -- we're attempting to sort OvalTest objects, which by their nature cannot be sorted.  What do you think?

I've just committed and pushed and you can see the failing test error here, for example: https://github.com/nexB/vulnerablecode/actions/runs/7199601614/job/19611624377?pr=1085

Looks like there's also one commit with a missing signoff:
Commit sha: 52e2ec1, Author: Tushar Goel, Committer: GitHub; The sign-off is missing.

@johnmhoran we have to add comparators to the class to allow sorting of OVAL tests

@TG1999 Thanks for your comment -- let's discuss this via a huddle.  I've reviewed a number of related files but it is not clear how the concept of versions is involved in these OvalTest() objects or how to implement your suggestion of adding comparators to enable sorting of OvalTest() objects.
The Oval ecosystem bears no recognizable similarity to the VersionConstraint() objects -- with their comparator attributes -- that I worked on roughly 12 months ago in apache_tomcat.py, apache_httpd.py, test_apache_tomcat.py and test_apache_httpd.py -- all of which included the concept of version ranges (not present with the OvalTest() class).  The OvalTest() class, in contrast, comprises this simple bit of code created 4 years ago in lib_oval.py:
class OvalTest(OvalElement):
    def __init__(self, element):
        # self.element = element.getElement()
        self.element = element

    def getType(self):
        return OvalElement.TEST

There is no mention of OvalTest() versions there or, as far as I can understand, anywhere else in lib_oval.py.  (That file does refer to schema versions, but these appear unrelated to the version references in the .xml test data <test> sections, discussed briefly below.)
If I look at the test that failed when I changed the return in the OvalParser class' get_tests_of_definition() function from return list(set(matching_tests)) to return sorted(set(matching_tests)), that test -- test__collect_pkgs() in test_data_source.py -- defines a variable translations = {"less than": "<"} , but it's not clear to me how that variable is used, or what OvalTest versions are being sorted and causing the failure.  Sample use in test__collect_pkgs():
found_suse_pkgs = MockOvalImporter()._collect_pkgs(
        OvalParser(translations, xmls["suse"]).get_data()
    )

There are three Oval-related test .xml data files (debian_oval_data.xml, suse_oval_data,xml and ubuntu_oval_data.xml), and each <tests> section includes nested sections each of which themselves includes version="1".   But what these refer to, and whether those are the versions involved in the now-failing test, is elusive.
When time permits, let's discuss how the version-related bits of the OvalTest() structure and testing work together.

@TG1999 I've modified the __lt__ method of the OvalElement class (inherited inter alia by the OvalTest class) to handle the sorting-by-version we need (including converting strings to ints for correct sorting), and have added a test as well.  Running make test, no tests fail: 333 passed, 1 skipped, 1 deselected, 9 warnings in 51.41s
In addition to any other comments you or @pombredanne might have, the only remaining item is that one of your commits is missing your signoff -- https://github.com/nexB/vulnerablecode/pull/1085/checks?check_run_id=19931480766.  I'll leave that for you to fix.

@TG1999 I saw that you did some more merges into main since I updated my PR on Saturday, and this created merge conflicts which GH alerted me too.  I have just finished doing a git pull of main, merging main into my local branch of this PR, and resolving merge conflicts in importer.py and test_data_source.py.  These looked straightforward to me.
However, after committing but before pushing, I ran make test to be sure all was OK, and I got a huge number of error messages that I cannot decipher.  The error output begins like this:
(venv) Tue Dec 26, 2023 03:58 PM  /home/jmh/dev/nexb/vulnerablecode jmh (1079-create-suse-oval-importer)
$ make test
-> Run the test suite
. venv/bin/activate; python3 -m pytest -vvs -m "not webtest"
============================================================================================== test session starts ==============================================================================================
platform linux -- Python 3.8.10, pytest-7.1.1, pluggy-1.0.0 -- /home/jmh/dev/nexb/vulnerablecode/venv/bin/python3
cachedir: .pytest_cache
django: settings: vulnerablecode.settings (from ini)
rootdir: /home/jmh/dev/nexb/vulnerablecode, configfile: pyproject.toml
plugins: django-4.5.2
collected 239 items / 54 errors / 1 deselected / 238 selected

==================================================================================================== ERRORS =====================================================================================================
_______________________________________________________________________________ ERROR collecting vulnerabilities/import_runner.py _______________________________________________________________________________
vulnerabilities/import_runner.py:23: in <module>
    from vulnerabilities.improvers.default import DefaultImporter
venv/lib/python3.8/site-packages/_pytest/assertion/rewrite.py:168: in exec_module
    exec(co, module.__dict__)
vulnerabilities/improvers/__init__.py:10: in <module>
    from vulnerabilities.improvers import valid_versions
venv/lib/python3.8/site-packages/_pytest/assertion/rewrite.py:168: in exec_module
    exec(co, module.__dict__)
vulnerabilities/improvers/valid_versions.py:20: in <module>
    from fetchcode import package_versions
E   ImportError: cannot import name 'package_versions' from 'fetchcode' (/home/jmh/dev/nexb/vulnerablecode/venv/lib/python3.8/site-packages/fetchcode/__init__.py)
_______________________________________________________________________________ ERROR collecting vulnerabilities/import_runner.py _______________________________________________________________________________
ImportError while importing test module '/home/jmh/dev/nexb/vulnerablecode/vulnerabilities/import_runner.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
venv/lib/python3.8/site-packages/_pytest/python.py:608: in _importtestmodule
    mod = import_path(self.path, mode=importmode, root=self.config.rootpath)
venv/lib/python3.8/site-packages/_pytest/pathlib.py:533: in import_path

. . .

@TG1999 I am going to try to push my merge commit so you can see the current merged code.  At this point I have no idea what the underlying cause is.

Just 1 test failure on the GH side: test_suse_oval_importer_CVE_2008_5679 (inside test_suse_oval.py), a test a wrote 11 months ago when I initially opened this ancient PR.  I'll give this a look locally.

@TG1999 I fixed 1 test locally (add the url field to an expected JSON test file, per one of your recent changes), ran make dev (that's what I was missing before), and no more errors or failed tests:
 333 passed, 1 skipped, 1 deselected, 12 warnings in 70.96s (0:01:10)

I've committed and pushed, and all GH checks passed except for an earlier commit of yours which is missing the signoff.  https://github.com/nexB/vulnerablecode/pull/1085/checks?check_run_id=19969783903


SDK implementation for Radiology Insights (in public preview)

Packages impacted by this PR
Issues associated with this PR
Describe the problem that is addressed by this PR
What are the possible designs available to address the problem? If there are more than one possible design, why was the one in this PR chosen?
Are there test cases added in this PR? (If not, why?)
Provide a list of related PRs (if any)
Command used to generate this PR:**(Applicable only to SDK release request PRs)
Checklists

[ ] Added impacted package name to the issue description
[ ] Does this PR needs any fixes in the SDK Generator?** (If so, create an Issue in the Autorest/typescript repository and link it here)
[ ] Added a changelog (if necessary)

/azp run prepare-pipelines

API change check
APIView has identified API level changes in this PR and created following API reviews.
@azure-rest/health-insights-radiologyinsights

/check-enforcer reset

/check-enforcer evaluate

/azp run prepare-pipelines

/azp run


Enhancements in Gradle, UI, and SDK Versions

Description:
This pull request introduces several key updates to improve the app's build process, user interface, and compatibility with the latest Android standards.
Key Changes:
Gradle Update: Gradle has been upgraded to version 8.1.4. This update ensures compatibility with the latest tools and plugins, and offers performance improvements and bug fixes.
UI Update for Image Sizes: To enhance user experience, particularly on devices with gesture control, the size of images in the UI has been changed to 150dp X 150dp. This adjustment addresses usability issues related to swiping and viewing the bottom sheet, making it more accessible and user-friendly.
SDK Version Update: Both compileSdk and targetSdk have been updated to version 34. This update ensures that the app is built against the latest Android SDK, offering improved features and security enhancements. It also helps in maintaining compatibility with recent Android versions and ensuring the app is utilizing the latest platform capabilities.
Android Studio Version: The project is now compatible with Android Studio Giraffe | 2022.3.1 Patch 4 and working perfectly on Pixel 6 Pro with Android 13. This ensures that developers can use the most recent and stable version of Android Studio for development, benefiting from the latest IDE features and enhancements.
These updates collectively aim to enhance the build process, ensure a better user experience, and keep the app up-to-date with the latest technological standards. They are critical for maintaining the app's performance, security, and compatibility.

Let me know if anything else is required for reviewing this pull request.


Fix addListener typo

Replaced setLiestener for setListener

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


Merge from upstream

Yeah, the last lint problem is already solved.  No idea what it's complaining about so I give up.


Skip accessible format notice in integrity checker

Trello
There are instances where the proposed payload body for an attachment may include the 'request an accessible format' notice, whereas in the Publishing API body the attachment does not display this notice.
This notice occurs in Whitehall when a checkbox is selected, whereas in Content Publisher, the accessibility notice is determined by the file type.
It may be the case that Whitehall displays this notice, whereas Content Publisher may not. For example, a PDF in Content Publisher will always be deemed in-accessible, whereas in Whitehall, a publisher could mark the content as accessible.
Co-authored-by: 1pretz1<EMAIL_ADDRESS>

Thanks @emmabeynon. Have amended.


As a user, I'd like to browse RKS entries from the desktop client

RKS Visualizer.pdf

Acceptance Criteria
The only things that should be implemented in this ticket are what is described below. Anything additional should be saved for future tickets or cleared with Sal or Kyle first.
ui
This should behave just like the nested finder view in OSX. See the attached document for the UI specification. The only thing not pictured that needs to be included is a selection mechanism for the bucket or context to use when querying.
code
Care should be taken to ensure that queries are performed efficiently (and only when needed) and the results are stored in an extensible way (since filtering options might be added in the future).

Can you add the ability to delete an rks record (probably should prompt user before actually deleting as well)

Having a scroll bar in a scroll bar for the right side pane is a little painful. For example:
Context: 57b309920040cedd8ea4619f9e01a960
record: 006-17-15cd
Follow the RKS path all the way to the treatment_plan (39db6d4f-21d6-4e15-bac0-de6570c9d39b). It's very difficult to scroll through the editor when you have to manipulate two scroll bars at the same time everytime you scroll to the end of one.


fix: delete lvmcluster successfully when CR includes wrong path

Lvmcluster was not deleted when CR includes wrong path, with
this commit we update the status of node when VGs are failing to create,
so that lvmcluster CR can get updated
information about VGs from lvmvolumegroupnodestatus CR.
Signed-off-by: riya-singhal31<EMAIL_ADDRESS>Bug: https://bugzilla.redhat.com/show_bug.cgi?id=2124202

/cherry-pick release-4.12


Don't Merge - Testing Coveralls

CI was very shortly temporarily down on my previous push.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall first build on tmp at 91.336%

Totals

Change from base Build<PHONE_NUMBER>:
91.3%

Covered Lines:
29507

Relevant Lines:
32306

💛  - Coveralls


Relicense under dual MIT/Apache-2.0

This issue was automatically generated. Feel free to close without ceremony if
you do not agree with re-licensing or if it is not possible for other reasons.
Respond to @cmr with any questions or concerns, or pop over to
#rust-offtopic on IRC to discuss.
You're receiving this because someone (perhaps the project maintainer)
published a crates.io package with the license as "MIT" xor "Apache-2.0" and
the repository field pointing here.
TL;DR the Rust ecosystem is largely Apache-2.0. Being available under that
license is good for interoperation. The MIT license as an add-on can be nice
for GPLv2 projects to use your code.
Why?
The MIT license requires reproducing countless copies of the same copyright
header with different names in the copyright field, for every MIT library in
use. The Apache license does not have this drawback. However, this is not the
primary motivation for me creating these issues. The Apache license also has
protections from patent trolls and an explicit contribution licensing clause.
However, the Apache license is incompatible with GPLv2. This is why Rust is
dual-licensed as MIT/Apache (the "primary" license being Apache, MIT only for
GPLv2 compat), and doing so would be wise for this project. This also makes
this crate suitable for inclusion and unrestricted sharing in the Rust
standard distribution and other projects using dual MIT/Apache, such as my
personal ulterior motive, the Robigalia project.
Some ask, "Does this really apply to binary redistributions? Does MIT really
require reproducing the whole thing?" I'm not a lawyer, and I can't give legal
advice, but some Google Android apps include open source attributions using
this interpretation. Others also agree with
it.
But, again, the copyright notice redistribution is not the primary motivation
for the dual-licensing. It's stronger protections to licensees and better
interoperation with the wider Rust ecosystem.
How?
To do this, get explicit approval from each contributor of copyrightable work
(as not all contributions qualify for copyright, due to not being a "creative
work", e.g. a typo fix) and then add the following to your README:
## License

Licensed under either of

 * Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
 * MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)

at your option.

### Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any
additional terms or conditions.

and in your license headers, if you have them, use the following boilerplate
(based on that used in Rust):
// Copyright 2016 leaf developers
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.

It's commonly asked whether license headers are required. I'm not comfortable
making an official recommendation either way, but the Apache license
recommends it in their appendix on how to use the license.
Be sure to add the relevant LICENSE-{MIT,APACHE} files. You can copy these
from the Rust repo for a plain-text
version.
And don't forget to update the license metadata in your Cargo.toml to:
license = "MIT/Apache-2.0"

I'll be going through projects which agree to be relicensed and have approval
by the necessary contributors and doing this changes, so feel free to leave
the heavy lifting to me!
Contributor checkoff
To agree to relicensing, comment with :
I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

Or, if you're a contributor, you can check the box in this repo next to your
name. My scripts will pick this exact phrase up and check your checkbox, but
I'll come through and manually review this issue later as well.

[ ] @hobofan
[ ] @MichaelHirn
[x] @homu
[ ] @kschmit90
[x] @killercup

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

Am 10.01.2016 um 17:14 schrieb cmr<EMAIL_ADDRESS>This issue was automatically generated. Feel free to close without ceremony if
you do not agree with re-licensing or if it is not possible for other reasons.
Respond to @cmr https://github.com/cmr with any questions or concerns, or pop over to
#rust-offtopic on IRC to discuss.
You're receiving this because someone (perhaps the project maintainer)
published a crates.io package with the license as "MIT" xor "Apache-2.0" and
the repository field pointing here.
TL;DR the Rust ecosystem is largely Apache-2.0. Being available under that
license is good for interoperation. The MIT license as an add-on can be nice
for GPLv2 projects to use your code.
Why?
The MIT license requires reproducing countless copies of the same copyright
header with different names in the copyright field, for every MIT library in
use. The Apache license does not have this drawback. However, this is not the
primary motivation for me creating these issues. The Apache license also has
protections from patent trolls and an explicit contribution licensing clause.
However, the Apache license is incompatible with GPLv2. This is why Rust is
dual-licensed as MIT/Apache (the "primary" license being Apache, MIT only for
GPLv2 compat), and doing so would be wise for this project. This also makes
this crate suitable for inclusion and unrestricted sharing in the Rust
standard distribution and other projects using dual MIT/Apache, such as my
personal ulterior motive, the Robigalia project https://robigalia.org/.
Some ask, "Does this really apply to binary redistributions? Does MIT really
require reproducing the whole thing?" I'm not a lawyer, and I can't give legal
advice, but some Google Android apps include open source attributions using
this interpretation. Others also agree with
it https://www.quora.com/Does-the-MIT-license-require-attribution-in-a-binary-only-distribution.
But, again, the copyright notice redistribution is not the primary motivation
for the dual-licensing. It's stronger protections to licensees and better
interoperation with the wider Rust ecosystem.
How?
To do this, get explicit approval from each contributor of copyrightable work
(as not all contributions qualify for copyright, due to not being a "creative
work", e.g. a typo fix) and then add the following to your README:
License
Licensed under either of

Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)

at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any
additional terms or conditions.
and in your license headers, if you have them, use the following boilerplate
(based on that used in Rust):
// Copyright 2016 leaf developers
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.
It's commonly asked whether license headers are required. I'm not comfortable
making an official recommendation either way, but the Apache license
recommends it in their appendix on how to use the license.
Be sure to add the relevant LICENSE-{MIT,APACHE} files. You can copy these
from the Rust https://github.com/rust-lang/rust repo for a plain-text
version.
And don't forget to update the license metadata in your Cargo.toml to:
license = "MIT/Apache-2.0"
I'll be going through projects which agree to be relicensed and have approval
by the necessary contributors and doing this changes, so feel free to leave
the heavy lifting to me!
Contributor checkoff
To agree to relicensing, comment with :
I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.
Or, if you're a contributor, you can check the box in this repo next to your
name. My scripts will pick this exact phrase up and check your checkbox, but
I'll come through and manually review this issue later as well.
@hobofan https://github.com/hobofan
@MichaelHirn https://github.com/MichaelHirn
@homu https://github.com/homu
@kschmit90 https://github.com/kschmit90
@killercup https://github.com/killercup
—
Reply to this email directly or view it on GitHub https://github.com/autumnai/leaf/issues/38.

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.


couldn't connect to display error

I am trying to run poretools hist remotely, but it fails due to display error:
INFO:poretools:100 files processed.
INFO:poretools:200 files processed.
INFO:poretools:300 files processed.
INFO:poretools:400 files processed.
INFO:poretools:500 files processed.
INFO:poretools:600 files processed.
INFO:poretools:700 files processed.
INFO:poretools:800 files processed.
X11 connection rejected because of wrong authentication.
Traceback (most recent call last):
  File "/ifs/home/id/.local/bin/poretools", line 9, in <module>
    load_entry_point('poretools==0.5.1', 'console_scripts', 'poretools')()
  File "/ifs/home/id/.local/lib/python2.7/site-packages/poretools-0.5.1-py2.7.egg/poretools/poretools_main.py", line 513, in main
    args.func(parser, args)
  File "/ifs/home/id/.local/lib/python2.7/site-packages/poretools-0.5.1-py2.7.egg/poretools/poretools_main.py", line 53, in run_subtool
    submodule.run(parser, args)
  File "/ifs/home/id/.local/lib/python2.7/site-packages/poretools-0.5.1-py2.7.egg/poretools/hist.py", line 39, in run
    plot_hist(sizes, args)
  File "/ifs/home/id/.local/lib/python2.7/site-packages/poretools-0.5.1-py2.7.egg/poretools/hist.py", line 19, in plot_hist
    plt.hist(sizes, args.num_bins)
  File "/local/apps/python/2.7.3/lib/python2.7/site-packages/matplotlib-1.4.3-py2.7-linux-x86_64.egg/matplotlib/pyplot.py", line 2885, in hist
    ax = gca()
  File "/local/apps/python/2.7.3/lib/python2.7/site-packages/matplotlib-1.4.3-py2.7-linux-x86_64.egg/matplotlib/pyplot.py", line 828, in gca
    ax =  gcf().gca(**kwargs)
  File "/local/apps/python/2.7.3/lib/python2.7/site-packages/matplotlib-1.4.3-py2.7-linux-x86_64.egg/matplotlib/pyplot.py", line 462, in gcf
    return figure()
  File "/local/apps/python/2.7.3/lib/python2.7/site-packages/matplotlib-1.4.3-py2.7-linux-x86_64.egg/matplotlib/pyplot.py", line 435, in figure
    **kwargs)
  File "/local/apps/python/2.7.3/lib/python2.7/site-packages/matplotlib-1.4.3-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py", line 81, in new_figure_manager
    return new_figure_manager_given_figure(num, figure)
  File "/local/apps/python/2.7.3/lib/python2.7/site-packages/matplotlib-1.4.3-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py", line 89, in new_figure_manager_given_figure
    window = Tk.Tk()
  File "/local/apps/python/2.7.3/lib/python2.7/lib-tk/Tkinter.py", line 1685, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: couldn't connect to display "localhost:10.0"

I thought that adding --saveas would prevent that, but it doesn't. Is there any way to get around that?

This seems to be en error related to matplotlib rather then poretools. This happens when you are running a headless system (that is no display connected) or if you are ssh'ing into a system and dont have X-forwarding setup. I was able to get this to run by following the directions given here http://stackoverflow.com/questions/2801882/generating-a-png-with-matplotlib-when-display-is-undefined which basically involved fininding the .matplotlibrc and making a setting change.

I encountered this same error and fixed by editing the scripts directly (with help from this page), changing the order that matplotlib is imported relative to the other libraries:
/usr/local/lib/python2.7/dist-packages/poretools-.0.5.1-py2.7.egg/poretools/hist.py
import sys
import time

import matplotlib
matplotlib.use('Agg')
from matplotlib import pyplot as plt

import seaborn as sns
import Fast5File

import logging

/usr/local/lib/python2.7/dist-packages/poretools-.0.5.1-py2.7.egg/poretools/yield_plot.py
import Fast5File
import matplotlib
matplotlib.use('Agg')
from matplotlib import pyplot as plt

import numpy as np
import pandas as pd
import seaborn as sns

#logging
import logging

Here's a tutorial I wrote that includes poretools, with this fix in the middle: http://angus.readthedocs.io/en/2016/analyzing_nanopore_data.html

Hi @ljcohen,
do you mean delete the "#" before matplotlib.use('Agg') in both files?
I tried, but it still not working. Any suggestion? Thank you!
~/opt/poretools/test_data$ poretools squiggle --saveas pdf 2016_3_4_3507_1_ch13_read1474_strand.fast5
/usr/local/lib/python2.7/dist-packages/IPython/html.py:14: ShimWarning: The IPython.html package has been deprecated. You should import from notebook instead. IPython.html.widgets has moved to ipywidgets.
"IPython.html.widgets has moved to ipywidgets.", ShimWarning)
Traceback (most recent call last):
File "/home/wzylin/opt/poretools/poretools/scripts/poretools", line 5, in
poretools.poretools_main.main()
File "/home/wzylin/.local/lib/python2.7/site-packages/poretools-0.6.0-py2.7.egg/poretools/poretools_main.py", line 533, in main
args.func(parser, args)
File "/home/wzylin/.local/lib/python2.7/site-packages/poretools-0.6.0-py2.7.egg/poretools/poretools_main.py", line 55, in run_subtool
submodule.run(parser, args)
File "/home/wzylin/.local/lib/python2.7/site-packages/poretools-0.6.0-py2.7.egg/poretools/squiggle.py", line 85, in run
do_plot_squiggle(args, first_fast5)
File "/home/wzylin/.local/lib/python2.7/site-packages/poretools-0.6.0-py2.7.egg/poretools/squiggle.py", line 61, in do_plot_squiggle
plot_squiggle(args, fast5.filename, start_times, mean_signals)
File "/home/wzylin/.local/lib/python2.7/site-packages/poretools-0.6.0-py2.7.egg/poretools/squiggle.py", line 39, in plot_squiggle
grid = sns.FacetGrid(df, row="cat", sharex=False, size=8)
File "/home/wzylin/.local/lib/python2.7/site-packages/seaborn-0.7.1-py2.7.egg/seaborn/axisgrid.py", line 307, in init
fig, axes = plt.subplots(nrow, ncol, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/pyplot.py", line 1177, in subplots
fig = figure(**fig_kw)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/pyplot.py", line 527, in figure
**kwargs)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/backends/backend_qt4agg.py", line 46, in new_figure_manager
return new_figure_manager_given_figure(num, thisFig)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/backends/backend_qt4agg.py", line 53, in new_figure_manager_given_figure
canvas = FigureCanvasQTAgg(figure)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/backends/backend_qt4agg.py", line 76, in init
FigureCanvasQT.init(self, figure)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/backends/backend_qt4.py", line 68, in init
_create_qApp()
File "/usr/local/lib/python2.7/dist-packages/matplotlib/backends/backend_qt5.py", line 138, in _create_qApp
raise RuntimeError('Invalid DISPLAY variable')
RuntimeError: Invalid DISPLAY variable


Running Static analysis build tools

Currently we analysis tools but that increases time for build.
Run all the tools in parallel.
For e.g.
CredScan
BinScope
Policheck
Static Analysis tool
Cost: 8

We should also look into what we run the tools against. Do run against the entire repo if only compute has changed.

This seems to be obsolete considering new engeenering system,


 The older shrink and grow props will be removed in the next major release.

Closing in favor of #235


Use native types in PageIndex (#3575)

Which issue does this PR close?

Closes #3575
Relates to #3577
Rationale for this change

See tickets
What changes are included in this PR?

Are there any user-facing changes?

cc @Ted-Jiang


Create a .gitignore File

Type
Advancement
Description
Our Repository currently lacks a proper Gitignore Setup. Add a .gitignore setup so that we don't actually push code that we don;t actually intend to in the long run.

Can I do it @HarshCasper?

Sure, I am assigning this issue to you @AdityaAshvin

Closing this issue as it has been resolved for now.


Support frontend schedule scripts

https://github.com/iTwin/itwinjs-backlog/issues/92
As a prerequisite for applying schedule scripts on the front-end, add logic for taking an input vertex table and splitting it into multiple vertex tables based on the element Ids associated with each vertex.
Also, split the corresponding vertex attributes.
This will allow us to request ordinary tiles and apply the schedule script to decompose them into animation nodes. That bit should probably be deferred to a subsequent PR.
TODO (see various ###TODO comments in diff):

[ ] Support material atlases (frontend currently never produces material atlases. We'd need a minimal representation to handle those supplied by the backend in tiles).
[ ] Support indexed edges and edge tables.
[ ] Remove constraint that prohibits instancing and animation by splitting up groups of instances based on node Id (separate PR?)

@DStradley I will finish this.

@DStradley I will finish this.

I just posted a fix for materialFromAtlasEntry that I hadn't posted yet.  I didn't bother with the half baked tests I had started.

@dassaf4 @bbastings or @mgooding please review small set of core-geometry changes.


Add Support For Runtime limit exceed error: "Emotional Damage"

Description
Add Error for run-time limit exceed with "Emotional Damage
Domain
Bhai Lang
Type of Contribution
Enhancement
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of bhai-lang.

"Emotional Atyachaar"


Question

Is it okay to use your music discs in projects? My friends and I wanted to know before our project went out :)

What do you mean under “use music discs in projects”?

10 days, no answer, I'm closing this


Allow custom parameters to be set as alias

This way we can set the alias 'btc' => 'wolfram-alpha 1 BTC in US$.
<hashworks> !btc
<Phergie> Processing...
<Phergie> $238.94 (US dollars)

Thanks!


Support checklist style list items in status resolver

The current status resolver mechanism adequately accounts for lists in the Status H2 but a list containing a checklist style list gets ignored because the square brackets remain.
https://github.com/mrwilson/adr-viewer/blob/f3d5fdc10471370e5f8d7b97b0b04b5e178ff74a/adr_viewer/__init__.py#L35-L44
This could be modified to use needle in haystack instead of haystack.startswith(needle), or
https://github.com/mrwilson/adr-viewer/blob/f3d5fdc10471370e5f8d7b97b0b04b5e178ff74a/adr_viewer/__init__.py#L23
could handle the HTML better by removing [ ] or [X] or [x] that precedes text, or looks for text inside of the li (skipping input[type=checkbox] if present).

To be clearer,
## Status

- Accepted

works but
## Status

- [ ] Accepted

does not.
Ideally, I'd like to have something like this work:
## Status

- [X] Pending
- [X] Accepted
- [ ] Amended
- [ ] Superceded

should result in accepted status.
## Status

- [X] Pending
- [X] Accepted
- [ ] Amended
- [X] Superceded

should result in superceded, and so on. We tend to add dates after these but the startswith() check handles that.
So, if the check box is present, use the last checked.


Correcting admin role language

Global admin is a role not a security group in Azure. The additional note referred to global admin role, but actually means the Device Administrator role (global admin role works fine regardless of role changes after OOBE).

Interesting update, looks very useful. May I request a cosmetic MD Note spacing change, seeing that you are already editing that section?
MarkDown quote markers should ideally have 1 single space between them and any following text (as long as the line is not empty).
My suggestion pertains to your PR lines 342, 343 and 345. If you prefer, I can add suggestions in the source code view.

Hi Trond,
I’m afraid I don’t know what you mean, I’m new to both MarkDown and GitHub. I just know the Surface Hub product.
Please do add any spacing changes you feel are needed, I’m just trying to make the content more accurate.
Thanks,
Dan Pandre
Sr. Escalation Engineer
Windowshttps://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide.Teamhttps://support.microsoft.com/hub/4343507 & Holographichttps://support.microsoft.com/hub/4338666 Devices
Customer Service & Supporthttps://support.microsoft.com/en-us/supportforbusiness/productselection (Americas)
Hours: 8 AM – 5 PM EST
Phone:<PHONE_NUMBER>tel:17813984736
Global CSS Phone Numbershttps://support.microsoft.com/help/4051701
5 Wayside Road, Burlington MA
Email: dpandre<EMAIL_ADDRESS>Manager: Peter<EMAIL_ADDRESS><EMAIL_ADDRESS>From: Trond B. Krokli<EMAIL_ADDRESS>Sent: Wednesday, October 16, 2019 5:22 AM
To: MicrosoftDocs/windows-itpro-docs<EMAIL_ADDRESS>Cc: DanPandre<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/windows-itpro-docs] Correcting admin role language (#5185)
Interesting update, looks very useful. May I request a cosmetic MD Note spacing change, seeing that you are already editing that section?
MarkDown quote markers should ideally have 1 single space between them and any following text (as long as the line is not empty).
My suggestion pertains to your PR lines 342, 343 and 345. If you prefer, I can add suggestions in the source code view.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fwindows-itpro-docs%2Fpull%2F5185%3Femail_source%3Dnotifications%26email_token%3DANCOTTWQBBGY6A4HKDNMOALQO3MNLA5CNFSM4JBAHIZ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBLZOFY%23issuecomment-542611223&data=02|01||51e1c47cf73749c6163308d7521a5e53|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637068145509415516&sdata=pWqlZZRigZdwVdcRhPOj4v7rmUXbWfPpk9to2hD9734%3D&reserved=0, or unsubscribehttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FANCOTTX6DNRFH3Y5P5JU6L3QO3MNLANCNFSM4JBAHIZQ&data=02|01||51e1c47cf73749c6163308d7521a5e53|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637068145509425521&sdata=7KJAGrrL3ef%2FDRxD5rwHbBVcl8ZWvsV8J1UEXWP47oU%3D&reserved=0.

Very well, thank you for your kind and straight forward answer. The changes are not imperative, but if you would be so kind as to implement them by committing the changes, this section will be up to current MarkDown standards. Thank you in advance.


Filter resource prefixes

What type of PR is this?

/kind feature
What this PR does / why we need it:
Adds a functionality to Kueue to ignore resources with certain (configurable) prefixes.
Which issue(s) this PR fixes:

Fixes #2266
Special notes for your reviewer:
Does this PR introduce a user-facing change?

Kueue can ignore resources with certain prefixes.

/release-note-edit
You can configure Kueue to ignore container resources that match specified prefixes.

/lgtm


handle sha256/short hashes for interop w/ p8e-scope-sdk

scope records written with the p8e-scope-sdk will be sha256 hashes, while this uses only sha512 hashes. When a scope record from p8e-scope-sdk was used as a contract input for a p8e-api contract, this would result in additional parties not being able to find facts in the scope, as they would have been loaded/decrypted/encrypted to new audience/saved under a sha512 hash that is different from the sha256 currently in the scope.
This allows the scope facts re-saved by PermissionUpdater to be saved/permissioned in object store under the correct sha256 hash
This functionality was brought over and slightly modified to be fully parameterized from p8e-scope-sdk
The loHash functionality shouldn't be needed in p8e-api, but I brought it over in case there turns out to be a need with further testing of the p8e-api/p8e-scope-sdk interop situations (the loHash should be strictly for jar hashes with bootstrapped contracts for p8e-scope-sdk, which p8e-api shouldn't attempt to run)
I was able to recreate the situation locally by creating a scope w/ a p8e-scope-sdk contract and then running a traditional p8e contract against the scope that took in an existing scope record

Codecov Report

Merging #104 (b108a10) into main (ee09ea4) will not change coverage.
The diff coverage is 0.00%.

@@            Coverage Diff            @@
##               main     #104   +/-   ##
=========================================
  Coverage     12.13%   12.13%
  Complexity       37       37
=========================================
  Files            66       66
  Lines          3477     3477
  Branches        368      368
=========================================
  Hits            422      422
  Misses         2994     2994
  Partials         61       61

Impacted Files
Coverage Δ

.../kotlin/io/provenance/engine/grpc/v1/ObjectGrpc.kt
0.00% <0.00%> (ø)

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 ee09ea4...b108a10. Read the comment docs.


Add to 'Setup complete' text

After a project has been setup, there is text mentioning  gulp build, gulp watch, gulp.

This could be expanded to include the following text (or of similar effect)

Run gulp build --prod for production ready asset generation
Run gulp --tasks to list out available gulp tasks

With the release of https://github.com/cartridge/cartridge-cli/releases/tag/v1.1.0, this is now fixed


Does this package use / support the APN Feedback Service?

While checking the documentation for APN, I stumbled upon this document:
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/CommunicatingWIthAPS.html#//apple_ref/doc/uid/TP40008194-CH101-SW1
The second section describes a Feedback service that should be used regularly to check which devices could not receive their notifications after their time-to-live expired. According to this document, a provider (i.e. the Meteor app in our case) should regularly check this to prevent unnecessary notification sends, and this is monitored by APN.
Does raix:push or the underlying APN framework support this?

yes - it should maintain the tokens by feedback from both gcm and apn

Thanks for your very fast reply!

BTW: I read in the raix:push newbie manual that this package only works if the server is deployed in the internet, not if it runs as localhost. Is there any special reason for that?

It also works on localhost (thats how I do QA and development)


feat: Add vpcConnectorEgressSettings & ingressSettings options

Add the option to set vpcConnectorEgressSettings
VpcConnectorEgressSettings docs
Also added ingressSettings for #91 while I was in the code

@googlebot I signed it!

Thanks, I hade missed those 2 places


Windows testing-related changes

npm: Add eslint-plugins for non-global inclusion during testing
npm: Bump ESLint major version (notices during npm install)
npm: Avoid the chmod; trips up Windows and handled by bin
Testing: Prefix exec/spawn paths with Windows-friendly node
Docs: Fix README typo
Fix: Have .gitignore to allow lib and add; otherwise, install
of package.json (which occurs by default without prepublish or
a babel install unless running a local install (in npm < 5) of
browserify-test) looking for the directory complains that
script is not found; an install script would need to add
babel as a regular dependency

Hey @brettz9 ! Thank you for PR! I would love to merge it, but why have you removed /lib from .gitignore?

Hey @brettz9 thank you for PR! But I have a clarification about /lib folder. It generates during module publishing and uploading to npm instead of src. So no babel required. I guess all node modules that use babel do so.
Could you add /lib back to .gitignore and I will merge it.

Gotcha--it is just a pain during development, as I like to reference my own forks in npm pending approval though I understand not doing so is a bit cleaner when ready for a published version (and faster for Git cloners to download)....
For IndexedDBShim, we're currently including the dist files in the repo... I think it makes things more widely accessible to people, e.g., to copy-paste online and utilize certain CDNs (e.g., rawgit.com) which merely mirror Github without doing the work of npm building... But I see it is a trade-off... And in any case, I added back lib to .gitignore and removed the lib files, so should be good to go. :)

thanks @brettz9!
yes, /dist as a name makes more sense, and maybe limiting to node@6+ could be better solution than transipiling.

But when will browsers finally get ES Modules?? Ugh... :)  I know, it has to be done right...


allow passing deletion of parent resource event to underlying controller in DecoratorController

The use case is what I have discussed with you @enisoc in #58. We (@folago and me) are trying to implement a LB controller based on Service resource using DecoratorController. We create an external LB when a new service is created and pass the info using annotations on the Service resource. But when the Service resource gets deleted, we need to have this info passed to our controller, so we can delete the LB entry for this service as well. As the code stands now, it is only possible to delete the objects in the cluster using ownerreference, but objects created outside the cluster is not possible to clean up. It would be good to have this as a configurable option in the controller spec and default disabled, if preferred, to preserve the current behavior.

I think we can support this use case with finalizers. Without a finalizer, we would have to rely on seeing the one-time "delete" watch event, which is an anti-pattern in level-triggered control logic.
With a finalizer, we can guarantee that the object won't disappear until you've cleaned up the external state. It might work something like this:

We add a finalize hook to the Metacontroller APIs in addition to the sync hook. You can implement this as a separate webhook, or just set the same webhook URL as sync if you want to handle everything in one hook.
If you define a finalize hook, we'll add a finalizer to the parent object for you before calling your sync hook for the first time. That way, we know the finalizer exists before you ever allocate anything external that will need to be cleaned up.
When the parent gets deleted, the finalizer will cause it to enter a "pending deletion" state instead of disappearing immediately. While it's pending deletion, we'll call your finalize hook instead of sync whenever something changes. This is your chance to clean up external state, as well as decide if you want to delete some children in a particular order (another use case I've been wanting to support for graceful shutdown of complex apps).
We will not remove the finalizer, allowing the parent to exit the "pending deletion" state and disappear, until your finalize hook returns a result that tells us you are ready.

@gurvindersingh Can you comment on whether this would work for your use case?
cc @janetkuo @liyinan926 @crimsonfaith91 for comments on the proposed API change.

@enisoc finalize hook will work as you proposed for our use case. Also having a possibility to call a separate endpoint for finalize hook is preferable as it would help to modulerize the code.

I lean towards having a separate webhook for the finalize hook. Does finalize hook indirectly support cross-namespace cleanup?

@enisoc any update on this, thanks !!

@gurvindersingh I hadn't yet ranked this feature request among the other work we have planned. If you would start using this feature and giving feedback on it very soon, I am inclined to prioritize this higher. Please let me know if this is blocking something you want to work on right now, or if you were just curious whether we've started on this (we haven't yet).

@enisoc we definitely plan to use this feature. Only question about feedback is that we can provide it either in August or September. SO hopefully this provide you enough information to prioritize this feature accordingly.

I would use this functionality as well - and soon. My thought/plan is to use metacontroller to trigger a webhook that would (among other things) create an entry in an external DB when a Namespace is created/updated, and delete the entry on deletion.

Any update on this? We are ready to test this feature as it comes out.

@folago I just got back from a leave of absence and I'm still catching up on reviews, but this is probably going to be the next thing I work on when I get back to coding, unless someone else gets to it first.

@enisoc looks like you're working on this now can I help somehow? This was going to be the next thing on my todo list.

I've started implementing the easy parts, which are adding the API field, calling the new hook, and adding/removing the finalizer.
One thing I've realized might become a blocker is what to do if the user turns on a finalizer hook, we add the finalizer to a bunch of objects, and then the user turns off the finalizer or deletes the controller entirely. If we do nothing, the user will end up with a bunch of undeleteable objects, which is not very nice.
I'm wondering if we should make an effort to process (and remove) any finalizer added by Metacontroller (they'll all have a known prefix), on any object pending deletion, if we know that there is no lambda controller defined which would handle that finalizer. We'd need to be careful to tie this to the lifecycle of the lambda controller's definition (e.g. the CompositeController object), rather than to that of the actual control loop (e.g. the parentController instance), because we restart the control loop whenever the definition changes. We don't want to erroneously process finalizers during that brief downtime of the control loop.
Given that, I'm thinking this would make sense as its own global control loop within Metacontroller. The hard part is knowing which types of objects it needs to watch and/or scan for finalizers. Ideally we could have it list/watch "objects of any resource at all that are in a pending-deletion state", but I don't know of an efficient way to do that without putting a lot of load on the API server.
If you're still interested in helping with finalizers, you could put some thought into this harder problem while I finish up the easy parts. :)


Messages with nil line crash pronto

I'm using pronto 0.7.1 & company. I've stumbled upon this exception:
NoMethodError: undefined method `new_lineno' for nil:NilClass /.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/pronto-0.7.1/lib/pronto/formatter/github_pull_request_formatter.rb:13:in `line_number'

Checking the code it's obvious that line_number in GithubPullRequestFormatter  expects non-nil value for line.
As it turned out, pronto-poper creates the following message:
#<Pronto::Message:0x007fd7ea4c7df8 @path=nil, @line=nil, @level=:warning, @msg="Git commit message should start with a capital letter", @runner=Pronto::Poper, @commit_sha="b2c4d4563e3b2e57ece14faa9067cec3eb68b193">

Clearly, this is by design so it's not a poper issue per se, rather it's the way pronto itself handles such messages.

Released a fix with v0.8.1.


I can't subscribe to angularFireListObservable Please help.. I thought the async pipe will handle that but it isn't

import { Component, OnInit } from '@angular/core';
import { FirebaseListObservable } from 'angularfire2/database-deprecated';
import { chatMessegeModel } from '../models/chat-message.model';
import { ChatService } from '../services/chat.service';
@Component({
selector: 'app-feed',
templateUrl: './feed.component.html',
styleUrls: ['./feed.component.css']
})
export class FeedComponent implements OnInit {
feed: FirebaseListObservable<chatMessegeModel[]>;
constructor(private chat: ChatService) { }
ngOnInit() {
this.feed = this.chat.getMessages();
}
}
And the template:
*ngFor="let item of main | async"

You're binding to main, which isn't a variable in your class.  You probably meant let item of feed | async


It's annotation are supported

Hello, I have a question and i don't know where i can ask it. So i need to add some comment in my report but the text panel doesn't work the way i want. This panel ( if i repeat him) just keep the same text and i can't edit it anyway. So i was wondering if your API already supports fetching annotations in Grafanaor if anyone has an idea on how can I create custom comments in every text panels to add them in my report?
Thanks for your answer!

This is not directly supported no. Repeated panels in general do not work well via Grafana's API. I would recommend generating your dashboard JSON definitions programatically or via a script and then uploading those to grafana.


Fixing metric collector http client

DualStack is deprecated as Fast Fallback is enabled by default.

Can you rollback the 502 change so I can merge this?

I pushed the change manually. Thanks!


"Download as zip" does not actually produce a zip file if only one storage file is present

Steps

Go to osf.io.
Go to a project that has only one file in OSF storage (or another storage add-on).
Click the "OSF Storage" line.
Click the "Download as zip" button from the menu bar.
Check your downloads folder.

Expected behavior
I expected that the "Download as zip" button would produce a .zip of the contents of OSF Storage (in this case, one file).
Actual behavior
The downloaded file is simply the single file, not a .zip.

I like the current behavior. Even if you unzip the zip file, it's only one file in it. @lbanner @GaryKriebel thoughts?

It would help with organization to download as a zip. For example, a user might want to save the contents of multiple storage add-ons onto his computer. If the user downloads as zip from OSF Storage, Box, and Dropbox all at once, he would expect that there would be three different folders in his Downloads, and this would help him remember which files were in which storage add-ons. However, in this case, the single file is folderless, and the user would have to make his own folder to house the file, for clarity's sake.
If we don't change this to an actual zip folder of the single file, then we should take away/rename the "Download as zip" button for the case of a single file in a storage add-on. Otherwise, it's misleading.

My only thought for the proposed change is if it is a rather large file, but on the face of it, I'm not opposed to keeping it the way it is.

@jinluyuan You make a good point, but I think general use case for 'download as zip' will be w/multiple files. So for consistency sake re: options for files. I'm in favor of keeping functionality as is. Based on @GaryKriebel and @nanchen47 discussion, I'll close for now, but let's be aware if user feedback comes in. Thanks.


@only_on_master causes exception when calling play_uri

What I'm doing:

Joining a stereo pair Play 5's (zone 1) with a stereo pair of Play 1's (zone 2) with one Play 5 (zone 3).
Playing a TTS message in this group.
Unjoining zone 2 from the group
Unjoining zone 3 from the group
Then resuming playing music on zone 3

play_uri then often (50% of the time) raises an exception: only_on_master
My thoughts:
Unjoining takes time. Directly calling play_uri raises the exception.
It seems SoCo thinks the zone is still in a group.
Waiting 10s after unjoining does solve this, but this takes too long.
Removing @only_on_master from play_uri also solves the issue.
After a few seconds the zone starts playing, without exception.
Maybe the @only_on_master is not required for this and other functions?
I've removed this line in my local version, which solves the issue for me.

Hallo @ArjanM83
The only_on_master decorator was added last release, to take care of the problem, that performing certain tasks on not-master zones in a group, will either produce difficult to decipher errors or weird and inconsistent behavior, so we would like to keep it ;)
In any case, I do not think the problem is this decorator. I think the problem is that SoCo does not know that the zone has been unjoined from the group. I think it should be possible to fix this by updating the group topology information after the unjoin operation. I will look into it.

Hmm. It seems to be not quite so simple, it is also tied in with a caching issue. I will look at it some more.

I think I got it now. @ArjanM83 do you have the possibility to test out this branch: https://github.com/KennethNielsen/SoCo/tree/issue_321_unjoin_not_reflected_in_is_coordinator ?

Hi Kenneth,
Thank you for looking into this.
I will be able to test this during the weekend.
I will get back to you in a couple of days.

I almost forgot to mention it. When dealing with zones in a group, the easiest way to find the coordinator, to find the zone to send commands to, is with myzone.group.coordinator.

Hi Kenneth,
I've tested the branch. I've been joining and unjoining zones, and playing music on them, tens of times.
The issue is solved now. Thank you for your work.

No problem, thanks for reporting it.


Added contribution without any functionality. Copied and changed required files.

Added the scopeTree component to the project as a contribution. Registered the contribution in resources.json.
Commented out the previous registration of the explorer in contrib/files/browser/files.contribution.ts
Copied explorerModel.ts, explorerService.ts and files.ts into src/vs/common/filesScopeTree (these files are not referenced outside the current contribution). These are required to implement the setRoot() method.
Copied files.contribution.ts, fileActions.contribution.ts, explorerViewlet.ts to (scopeTree/browser/)same_name in order to register the explorer in workbench.common.main.
Focus to be implemented in scopeTree/browser/scopeTree.ts (taken from files/browser/views/explorerView.ts).
Icons to be added in scopeTree/browser/explorerViewer.ts (taken from files/browser/views/explorerViewer.ts).

@irengrig @matthiasklostermann I don't think I can request a review because this is not my repository, so hopefully you get a notification from this @.

I suggest that we extend the interfaces from the common part, like IExplorerService - so this means not copying files.ts, unless something else besides the interfaces needs to be changed there.
Also, let us keep all the files that we add in one folder src/vs/workbench/contrib/scopeTree/;
we can have interfaces and model in src/vs/workbench/contrib/scopeTree/, and implementation in src/vs/workbench/contrib/scopeTree/browser.


MINOR: Remove no longer required --new-consumer switch in docs

Review by @hachikuji

@hachikuji can you please take another look?

LGTM. Thanks for the updates!


Introduce and integrate IL based evaluator.

Also introduce a command-line flag to enable the IL based evaluator, optionally.

This change is

Jenkins job mixer/presubmit passed

Jenkins job mixer/e2e-smoketest passed

Jenkins job mixer/presubmit passed

Jenkins job mixer/pilot-regression passed

Jenkins job mixer/e2e-smoketest passed

Jenkins job mixer/presubmit passed

Jenkins job mixer/presubmit passed

Jenkins job mixer/pilot-regression passed

Jenkins job mixer/e2e-smoketest passed

Jenkins job mixer/presubmit passed


Parsley and clone(true) problem.

https://www.youtube.com/watch?v=2N6nZW1NH1M
Hi. I am trying to validate a cloned select field but it does not work.
You can see from the video that it works on the first element but it does not work on the clone when I click apply to re validate the form.
If I change the clone from true to false it works. Is that the way it should work?

Parsley uses data to store it's information, so if you clone it with data, after it's been bound, then yes, you're bound into running into problems. Probably calling destroy before the clone(true) will resolve your issue.


Update how-to-configure-key-rotation.md

Update ARM template to newest version

@jlichwa : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Bytecode caching is not reusable due to different hash result for the same package

Hi, i tried to use bytecode caching for azure modules and reuse the cache on different machines. But it results in nuitka not reuseing the cache as getModuleImportableFilesHash() produces a different hash value. Even though Windows, python version, nuitka version and dependencies are the same
Nuitka version, full Python version, flavor, OS, etc. as output by this
command.
python -m nuitka --version
1.1.5
Commercial: None
Python: 3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)]
Flavor: Unknown
Executable: C:\draas-recovery-agent\.venv\Scripts\python.exe
OS: Windows
Arch: x86_64
WindowsRelease: 10

The specific PyPI names and versions
 astroid==2.8.6
attrs==21.2.0
azure-common==1.1.28
azure-core==1.24.2
azure-identity==1.10.0
azure-mgmt-compute==29.0.0
azure-mgmt-core==1.3.2
azure-mgmt-network==21.0.1
azure-sdk-trim @ git+https://github.com/clumio-code/azure-sdk-trim@530c5ca20d42e027b5d29bb244ea26701fd2ecdb
bottle==0.12.19
certifi==2021.10.8
cffi==1.15.0
charset-normalizer==2.0.8
colorama==0.4.5
conan==1.44.0
coverage==6.5.0
cryptography==36.0.1
dataclasses-json==0.5.6
distro==1.6.0
fasteners==0.16.3
flake8==4.0.1
humanize==4.3.0
idna==3.3
inflection==0.5.1
iniconfig==1.1.1
isodate==0.6.1
isort==5.10.1
Jinja2==3.0.3
lazy-object-proxy==1.6.0
MarkupSafe==2.0.1
marshmallow==3.14.1
marshmallow-enum==1.5.1
mccabe==0.6.1
msal==1.18.0
msal-extensions==1.0.0
msrest==0.7.1
mypy==0.971
mypy-extensions==0.4.3
node-semver==0.6.1
Nuitka==1.1.5
oauthlib==3.2.0
orderedset==2.0.3
packaging==21.3
parameterized==0.8.1
patch-ng==1.17.4
platformdirs==2.4.0
pluggy==1.0.0
pluginbase==1.0.1
portalocker==2.5.1
psutil==5.8.0
py==1.11.0
py-zabbix==1.1.7
pycodestyle==2.8.0
pycparser==2.21
pyflakes==2.4.0
Pygments==2.10.0
PyJWT==1.7.1
pylint==2.11.1
pyOpenSSL==21.0.0
pyparsing==3.0.6
pytest==6.2.5
pytest-cov==3.0.0
pytest-random-order==1.0.4
python-dateutil==2.8.2
python-json-logger==2.0.2
PyYAML==5.4.1
requests==2.26.0
requests-oauthlib==1.3.1
responses==0.16.0
six==1.16.0
teamcity-messages==1.29
toml==0.10.2
tomli==1.2.2
tqdm==4.62.3
types-cryptography==3.3.14
types-enum34==1.1.3
types-ipaddress==1.0.3
types-pyOpenSSL==21.0.3
types-requests==2.26.1
typing-inspect==0.7.1
typing_extensions==4.0.1
urllib3==1.26.7
wrapt==1.13.3

Also supply a Short, Self Contained, Correct, Example
Checked hash produces for azure.mgmt.compute module and compared it during runs. The result was different. My assumption is that getPackageSearchPath(None) affects the hash result
Provide in your issue the Nuitka options used
--standalone --remove-output --nofollow-import-to=azure.mgmt.compute.v2015_06_15 --nofollow-import-to=azure.mgmt.compute.v2016_03_30 --nofollow-import-to=azure.mgmt.compute.v2016_04_30_preview --nofollow-import-to=azure.mgmt.compute.v2017_03_30 --nofollow-import-to=azure.mgmt.compute.v2017_09_01 --nofollow-import-to=azure.mgmt.compute.v2018_04_01 --nofollow-import-to=azure.mgmt.compute.v2018_06_01 --nofollow-import-to=azure.mgmt.compute.v2018_09_30 --nofollow-import-to=azure.mgmt.compute.v2018_10_01 --nofollow-import-to=azure.mgmt.compute.v2019_03_01 --nofollow-import-to=azure.mgmt.compute.v2019_04_01 --nofollow-import-to=azure.mgmt.compute.v2019_07_01 --nofollow-import-to=azure.mgmt.compute.v2019_11_01 --nofollow-import-to=azure.mgmt.compute.v2019_12_01 --nofollow-import-to=azure.mgmt.compute.v2020_05_01 --nofollow-import-to=azure.mgmt.compute.v2020_06_01 --nofollow-import-to=azure.mgmt.compute.v2020_06_30 --nofollow-import-to=azure.mgmt.compute.v2020_09_30 --nofollow-import-to=azure.mgmt.compute.v2020_10_01_preview --nofollow-import-to=azure.mgmt.compute.v2020_12_01 --nofollow-import-to=azure.mgmt.compute.v2021_03_01 --nofollow-import-to=azure.mgmt.compute.v2021_08_01 --nofollow-import-to=azure.mgmt.compute.v2021_10_01 --nofollow-import-to=azure.mgmt.compute.v2021_11_01 --nofollow-import-to=azure.mgmt.compute.v2021_12_01 --nofollow-import-to=azure.mgmt.compute.v2022_01_03 --nofollow-import-to=azure.mgmt.compute.v2022_03_02 --nofollow-import-to=azure.mgmt.network.v2015_06_15 --nofollow-import-to=azure.mgmt.network.v2016_09_01 --nofollow-import-to=azure.mgmt.network.v2016_12_01 --nofollow-import-to=azure.mgmt.network.v2017_03_01 --nofollow-import-to=azure.mgmt.network.v2017_06_01 --nofollow-import-to=azure.mgmt.network.v2017_10_01 --nofollow-import-to=azure.mgmt.network.v2018_01_01 --nofollow-import-to=azure.mgmt.network.v2018_02_01 --nofollow-import-to=azure.mgmt.network.v2018_04_01 --nofollow-import-to=azure.mgmt.network.v2018_06_01 --nofollow-import-to=azure.mgmt.network.v2018_07_01 --nofollow-import-to=azure.mgmt.network.v2018_08_01 --nofollow-import-to=azure.mgmt.network.v2018_10_01 --nofollow-import-to=azure.mgmt.network.v2018_11_01 --nofollow-import-to=azure.mgmt.network.v2018_12_01 --nofollow-import-to=azure.mgmt.network.v2019_04_01 --nofollow-import-to=azure.mgmt.network.v2019_06_01 --nofollow-import-to=azure.mgmt.network.v2019_08_01 --nofollow-import-to=azure.mgmt.network.v2019_09_01 --nofollow-import-to=azure.mgmt.network.v2019_11_01 --nofollow-import-to=azure.mgmt.network.v2019_12_01 --nofollow-import-to=azure.mgmt.network.v2020_03_01 --nofollow-import-to=azure.mgmt.network.v2020_05_01 --nofollow-import-to=azure.mgmt.network.v2020_07_01 --nofollow-import-to=azure.mgmt.network.v2020_08_01 --nofollow-import-to=azure.mgmt.network.v2020_11_01 --nofollow-import-to=azure.mgmt.network.v2021_02_01 --include-package=log --enable-plugin=pylint-warnings --enable-plugin=anti-bloat --noinclude-pytest-mode=nofollow --lto=no --msvc=latest --output-dir=C:\draas-recovery-agent\.temp\compile C:\draas-recovery-agent\src\unified_entry.py

The follow options also take patterns, which it seems you may benefit from. Also, what are the imports of azure that I should use to benefit from? Also can you retry using the 1.2 version?

@kayhayen Here is an example of working imports
Compute imports available:
from azure.mgmt.compute.v2017_12_01.models import OperationStatusResponse from azure.mgmt.compute.v2021_04_01.models import (     BootDiagnostics,     CreationData,     DataDisk,     DiagnosticsProfile,     Disk,     DiskCreateOption,     DiskCreateOptionTypes,     DiskSku,     DiskStorageAccountTypes,     HardwareProfile,     HyperVGeneration,     InstanceViewStatus, ManagedDiskParameters,     NetworkInterfaceReference,     NetworkProfile,     OperatingSystemTypes,     OSDisk,     StorageProfile,     VirtualMachine,     VirtualMachineInstanceView, VirtualMachineSizeTypes, )
Network imports available:
from azure.mgmt.network.v2022_01_01.models import (     AddressSpace,     IPConfiguration,     NetworkInterface,     NetworkSecurityGroup,     PublicIPAddress,     PublicIPAddressSku,     SecurityRule,     SecurityRuleAccess,     SecurityRuleDirection,     SecurityRuleProtocol,     Subnet,     VirtualNetwork,     PublicIPAddressSkuName,     IPAllocationMethod,     IPVersion, )

Right now it doesn't work when filenames change. From sys.path they often come absolute. What should be done is to instead get the list of importable module names. However, that too is kind of explosive and regressive when something like a current directory or a large repository enters the game, since any directory is a package, etc. and ideally this would instead be based on modules actually attempted to be imported by a module considered for caching. So if a module only imports os and fails to import say importlib_metadata and that would still be the case, what gives. We would just have to retry those.
Since we do have the list of imports done, and its actually used as part of the caching too, we may just try those again and make the result or non-result part of the hash value. This will also increase the hit rate of the thing tremendously.
I am not sure when, but there should be a live stream late november again. This could be something we do there. It would be a very nice subject.

@kayhayen Any updates on this issue?

There have been no streams yet, but maybe later this month.

The import findings are now stored in the cache, and filenames are produced by locating the cached module names, and cache is discarded if the same things cannot be found. The cache is now based on the source code, configuration used, and the module name. So this is already solved by PRs of @Fire-Cube and me.


[UI]Text invisiblity in Integrations page

Current Behavior

Currently the text isnt placed correctly and its also causing invisiblity dark mode

Desired Behavior

We could remove the extra space from the top and use this to utilize the text-boxes.

Screenshots/Logs

Environment

Browser: Chrome Safari Firefox
Host OS: Mac Linux Windows
Meshery Server Version: stable-v
Meshery Client Version: stable-v
Platform: Docker Kubernetes

Contributor Guides and Handbook

🎨 Wireframes and designs for Meshery UI in Figma
🖥 Contributing to Meshery UI
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

Closing this issue because i opened in wrong repository ,


Comments in function declaration parameters are moved outside parens

This seems related to https://github.com/jlongster/prettier/issues/719
Before:
function foo(/* unused1, unused2 */) {}

After:
function foo /* unused1, unused2 */() {}

https://jlongster.github.io/prettier/#{"content"%3A"function foo(%2F* unused1%2C unused2 *%2F) {}"%2C"options"%3A{"printWidth"%3A80%2C"tabWidth"%3A2%2C"singleQuote"%3Afalse%2C"trailingComma"%3Afalse%2C"bracketSpacing"%3Atrue%2C"jsxBracketSameLine"%3Afalse%2C"doc"%3Afalse}}
This seems like unexpected behavior, but feel free to close this if it is.

It would be nice indeed to keep the comment inside.

I pick that one!


Create a dataclass for indexer worker TaskStatus

Fixes

Fixes #4534 by @stacimc
Description

This PR adds a dataclass with type hints for each field for index worker task status. The task status was stored as dictionary before.
Testing Instructions

just build && just up
Use elasticvue to Delete All Documents from one of your existing indices. Eg:  audio-init-filtered. The index should now have 0 documents.
Now run just catalog/shell, and you should be able to curl the indexer worker.
Replace the target_index name if you don't have audio-init-filtered
Note the start_id/end_id we're using, to make it reindex only 100 records
curl -X POST -d '{"model_name": "audio", "table_name": "audio", "start_id": 0, "end_id": 100, "target_index": "audio-init-filtered"}' -H "Content-Type: application/json" 'http://catalog_indexer_worker:8003/task'
You should get back a response like:

{
"message": "Successfully scheduled task.",
"task_id": "acfb9919708c4ef2a505fe5f8c6a10a8",
"status_check": "http://catalog_indexer_worker:8003/task/acfb9919708c4ef2a505fe5f8c6a10a8"
}

Now curl the status_check endpoint that was just returned:
curl 'http://catalog_indexer_worker:8003/task/acfb9919708c4ef2a505fe5f8c6a10a8
And you should see something like:

{
"task_id": "acfb9919708c4ef2a505fe5f8c6a10a8",
"active": false,
"model": "audio",
"target_index": "audio-init-filtered",
"progress": 100.0,
"start_time": "2024-07-04 18:56:28.288367",
"finish_time": "2024-07-04 18:56:28.384862",
"error": false
}

Which is similar to the response returned before adding dataclass for the task status.
Checklist

[x] My pull request has a descriptive title (not a vague title likeUpdate index.md).
[x] My pull request targets the default branch of the repository (main) or a parent feature branch.
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no visible errors.
[ ] I ran the DAG documentation generator (./ov just catalog/generate-docs for catalog
PRs) or the media properties generator (./ov just catalog/generate-docs media-props
for the catalog or ./ov just api/generate-docs for the API) where applicable.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

@akshay-km I noted and applied the @stacimc's suggestion so this looks good to me! Thanks for you help.
Edir: also great job including complete testing instructions. It's appreciated :)

Thanks @krysal

Happy to help :) Thanks for the feedback.


Path based Routing is not working

In path-based routing when i used traefik.frontend.rule.type: "PathPrefixStrip", it is not stripped off the prefix.
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: path-based
annotations:
kubernetes.io/ingress.class: traefik
traefik.frontend.rule.type: "PathPrefixStrip"
traefik.ingress.kubernetes.io/rewrite-target: "/"
spec:
rules:

host: cheeses.minikube.com
http:
paths:

path: /stilton
backend:
serviceName: stilton
servicePort: http
path: /cheddar
backend:
serviceName: cheddar
servicePort: http
path: /wensleydale
backend:
serviceName: wensleydale
servicePort: http

Could you please suggest me how can we do this.

Hi @satheshs and thanks for your interest in Traefik!
We dedicate the issue tracker to bug reports and feature requests only.
As your issue seems to be a question, please join our Community Forum and reach out to us on the Traefik section. In the meantime, you can double-check Traefik's documentation.
Therefore, we will close this issue accordingly.


init(coder) must be failable

init(coder) is failable in the superclass, so it must be failable in this class

still have the error, any solution?


docs: Add explicit version to go get command in README

Which problem is this PR solving?
Getting the latest version of the launcher can be difficult because there seems to be a bad tag somewhere in the history. This adds explicit version to go get command in README to ensure we get the latest version.

Closes #13

Short description of the changes

Update go get command in README

Not ideal 😿 Can we update public docs and onboarding as well?
Side note for breadcrumbs, we have another internal issue to track to see if there's something else we can consider for longer term (like does changing the name help solve this)

We don't talk about the go launcher publicly as our Go distro will depends on a specific (good) version. I don't believe a name change will help here because I think it's the git history that's tripping up the dependency resolver and Github auto creates redirects for old repos names which will be the same history.
The only way I can think will work is to make a v1 release which will take precedence over the bad version that's catching people out when trying to use the launcher directly. There's no reason we can't create a v1 tag, when if/it we donate to OTel it would be done through a PR to an existing repo instead of transferring ownership of this repo.

Added a new section to RELEASING.md to include updating version in Getting Started secion.


CB-12412 Update the cluster status to "available" even on datalake ba…

…ckup failure
Currently, when data lake backup fails, cluster status is set to BACKUP_FAILED state. In this state, the cluster can not be stopped. There is no need to be in a failure state like BACKUP_FAILED when a backup fails. We should set the cluster state back to "Available" and log the result of the backup operation in the events.
See detailed description in the commit message.

Now when backup failed. cluster status is BACKUP_FAILED.

The environment can not be stopped.

With this change, the stack status sync job will change the BACKUP_FAILED status back to AVAILABLE.

The environment can be stopped.

@kkalvagadda1  See if you want to take one more look. Or I will click the merge button.

After discussion, instead of using status sync 3-minute quartz job, we will bring the state to available right after flow and send notification event.
I put DO_NOT_MERGE tag and will update this PR.

@kkalvagadda1

On backup failure, make the cluster status as available.
The cluster status was marked as backup_failed. Now change it to available. So datalake can be stopped now. The escalation was due to that cluster status was marked as "backup_failed"

The is already event send to event history to show the backup failure.