Analysis Template does not pass after analysis template is fixed

Checklist

[x] I've searched the issue queue to verify this is not a duplicate bug report.
[x] I've included steps to reproduce the bug.
[x] I've pasted the output of kargo version.
[x] I've pasted logs, if applicable.

Description
While building a demo demonstrating how analysis templates can halt automatic promotions, I noticed that after i "fixed" an intentionally "bad" analysis template, and re-ran the stage, the next stage was still blocked.
I have 3 stages configured(00, 01, 02), and each stage is dependent on the previous stage (except for stage00, this is dependent on the warehouse).
I intentionally set stage 01 to use the "bad" (designed to fail) analysis template.
I run the promotion, Kargo halts at stage 01.
I update stage 01 to point to the "good" (designed to pass) analysis template, and apply the same git commit to stage 01. This time, the analysis' template still fails, and stage 02 is still blocked. I expect the second run with the good analysis template to pass, but it does not.
The only way i have "unblocked" is by pushing a new commit to the branch the Kargo is tracking. In this case, i pushed an arbitrary label change. Then ran the promotion from stage01 and I was able to promote the code to stage 02
Screenshots
Stage01 updated with "svc-good":

Stage 01 re-run with anaylysis-template "svc-good":

Steps to Reproduce
Create 3 stages.
Stage 00 subscribes to the warehouse
Stage 01 subscribes to stage 00
Stage 02 subscribes to Stage 01
Stage00 uses a "good" analysis template
Stage01 uses a "bad" analysis template
Stage02 uses a "good"  analysis template
Promote the code to stage 00,01. It should fail to pass stage 01.
Update stage01 to use the "good" analysis template, rerun the promotion.
Stage02 will still not "unblock" even though the analysis template passes.
Version
14:36:48 ❯ kargo version
Client Version: v0.7.1
Server Version: v0.7.1

Logs
I was unable to find any logs showing the analysistemplates being run

I was unable to find any logs showing the analysistemplates being run

That's the key to your entire problem.
Verification isn't directly tied into the promotion process; rather it is part of the Stage's lifecycle. I think we need to do more to clarify this / make it more obvious.
After you re-promoted the same piece of Freight and the promotion succeeded, the Stage's state hasn't really changed. When the Stage reconciler looks to see if there is a need for it to kick off verification for the Stage + its current collection of Freight, it will find a verification has already run for this combination (and failed). It assumes another attempt to verify the same Stage and same collection of Freight is going to yield the same result, so it does not automatically kick of verification in this case.
If instead of re-promoting, you re-verify, that is an explicit request to re-attempt verification, and I believe you will see the expected results.

Hey Kent! Thanks for your reply.

Verification isn't directly tied into the promotion process; rather it is part of the Stage's lifecycle. I think we need to do more to clarify this / make it more obvious.

This part is a bit confusing.
How would you suggest handling the case where the analysis template or verification step itself is broken?
IE we have a bad test, I push a fix, and then I re-deploy the blocked stage.
I would expect the verification to be re-run and pass, not require an entirely new deploy. The reasoning being is that the failed validation came from the analysisTemplate, not the code being deployed.

@davidblum I think we're already on the same page without realizing it...
You don't need to re-promote. You can just trigger another verification attempt. 😄
kargo verify stage <stage> -p <project>

Or:

@krancour I see what you mean!
However, I did find a discrepancy.
I'm running version 0.7.1 and I do not have the reverify button.
However, if I use the CLI, I can issue another verify after the the analysisTemplate is "fixed".
Thanks for much for helping me understand this.
I totally agree, we were saying the same thing! Perhaps some additional docs could help avoid a similar confusion in the future.

@davidblum sorry about that! The missing re-verify button in v0.7.1 was a bug that was fixed in #2287, which made it into v0.8.0.

Created https://github.com/akuity/kargo/issues/2339 to track a doc enhancement to cover kargo verify.


style: update styling and color for document viewer (TDX-2774)

Summary
Update some styling of the DocumentViewer to match the designs more.
PR Checklist

[ ] Naming & Structure: the files and package structure use the conventions outlined in the Creating a Package docs.
[ ] Tests pass: check the output of all package unit and/or component tests.

[ ] If this PR is the result of a bug, test coverage was added accordingly.

[ ] Functional: all changes do not break existing APIs, but if so, a BREAKING CHANGE commit is in place to bump the major version.
[ ] Conventional Commits all commits follow the conventional commit standards outlined in the main README.
[ ] Docs: includes a technically accurate README, and the docs have been updated accordingly based on the changes in this PR.

@tkajtoch I have ported over the styles here. I left the tables / images portion as they are for now, let me know if we should adjust them or if that should come in the future.

Hi @davidma415, please pull the latest main branch to resolve the CI failure.

LGTM. I'll rename CSS Variables to match the guidelines and fix Node components' prop names in another PR


Remove ic_launcher.png from library resources

Please remove the ic_launcher.png files from your library.
It is not necessary, and also it is a problem with the last gradle plugin 1.2.x

Thank you for the great library.
Please consider changing the name of ic_launcher.png files or please remove the ic_launcher.png files from your library.  Libraries that have their own resources (like ActionBarSherlock or Google's own Support v7 library) use distinctive naming schemes to avoid collisions with your resource names (abs_, abc_).

Yes guys, no problem I will update it asap. I don't know what I was thinking when I left it there. I will try to use prefix for ids and layouts as well. It is long time i don't take a look to the lib I should do an update soon.


MSC-2020 Updated List Tracker

[x] Add the family ID
[ ] Change the page look based on PDF sent by Shailaja Sharma.
[ ] On the Confirmation page, for Check payments, please add a note at the top and bottom, saying "Your registration is not complete until you click 'Pay by Check' "
[ ] - On the success page for check by installment, the bullet points needs to be put in table.  Parag has issue centering table.
[x] For installment payments, change date format to "August 04, 2019" instead of 08-19-2019
[ ] -
[ ] -

Superseded by #141


fix warning (-Wuseless-cast)

Small change to fix compiler warnings with -Wuseless-cast enabled.

Pull request checklist
Read the Contribution Guidelines for detailed information.

[X]  Changes are described in the pull request, or an existing issue is referenced.
[X]  The test suite compiles and runs without error.
[X]  Code coverage is 100%. Test cases can be added by editing the test suite.
[X]  The source code is amalgamated; that is, after making changes to the sources in the include/nlohmann directory, run make amalgamate to create the single-header file single_include/nlohmann/json.hpp. The whole process is described here.

Please don't

The C++11 support varies between different compilers and versions. Please note the list of supported compilers. Some compilers like GCC 4.7 (and earlier), Clang 3.3 (and earlier), or Microsoft Visual Studio 13.0 and earlier are known not to work due to missing or incomplete C++11 support. Please refrain from proposing changes that work around these compiler's limitations with #ifdefs or other means.
Specifically, I am aware of compilation problems with Microsoft Visual Studio (there even is an issue label for these kind of bugs). I understand that even in 2016, complete C++11 support isn't there yet. But please also understand that I do not want to drop features or uglify the code just to make Microsoft's sub-standard compiler happy. The past has shown that there are ways to express the functionality such that the code compiles with the most recent MSVC - unfortunately, this is not the main objective of the project.
Please refrain from proposing changes that would break JSON conformance. If you propose a conformant extension of JSON to be supported by the library, please motivate this extension.
Please do not open pull requests that address multiple issues.

This fix only works on systems where std::int64_t and std::size_t are the same.

Ah I see, I assumed all systems had size_t = uint64_t 😄
In that case i'll close this, thanks for replying!

Coverage remained the same at 100.0% when pulling 77a36942c655ef95fe713d8b2a7cdb8f8f3ce10e on ITotalJustice:fix-warning-(-Wuseless-cast) into 3be6ee35258fbf5eba61a6194fea78b0e7afacd9 on nlohmann:develop.


CPP: Fix FormatLiteral.isMicrosoft

It turns out File.compiledAsMicrosoft() is missing a lot of Microsoft compiled files that are built with extractor.exe --mimic @-.  As a quick fix, have the string formatting functions look for any Microsoft compiled file in the snapshot (i.e. assume a mix of compilers is not being used).  This should produce good reliability in practice.

@geoffw0 The test job failed.

redo failed

I've now added a submodule update to https://git.semmle.com/Semmle/code/pull/31505, the test should pass there.

Okay. I'd expected the tests to pass because there was no "depends on internal PR" label on this PR.


Black fails on empty multiline string (''''''): string index out of range

Howdy! Sorry you're having trouble. To expedite your experience,
provide some basics for me:
Operating system:
Python version: 3.6.5
Black version: 18.8b0
When running black on
a = ''''''

one gets
error: string index out of range

Workaround: Manually replace the six ' by ".

This repros on master, I'll take a look. Thanks for reporting!


npm start Never Gets Beyond Starting Web Server (on only 1 machine)

Hi, I have an issue that is very strange that has left me pretty baffled. At this point, not sure where to even begin in debugging this.
Essentially, only on one machine on my team, who is running exact same computer, OS version, node version, and npm version as me, does this issue present. A web server is started but no bundle is ever generated. The output ends up looking like this:
➜  react-redux-starter-kit git:(master) npm start

><EMAIL_ADDRESS>start /Users/netpoetica/Desktop/temp/react-redux-starter-kit
> better-npm-run start

running better-npm-run in /Users/netpoetica/Desktop/temp/react-redux-starter-kit
Executing script: start

to be executed: babel-node bin/server
  app:config Create configuration. +0ms
  app:config Apply environment overrides for NODE_ENV "development". +1ms
  app:webpack:config Create configuration. +842ms
  app:webpack:config Enable plugins for live development (HMR, NoErrors). +1ms
  app:server:webpack-dev Enable webpack dev middleware. +417ms
  app:server:webpack-hmr Enable Webpack Hot Module Replacement (HMR). +28ms
  app:bin:server Server is now running at http://localhost:3000. +4ms

and then the process just hangs. This is on Mac OSX 10.10.5, and here is some system info although I doubt it matters:
Darwin Kernel Version 14.5.0: Tue Sep 1 21:23:09 PDT 2015; root:xnu-2782.50.1~1/RELEASE_X86_64 x86_64

Currently, we have to run npm run compile and just go manual on this. If we do npm run compile && npm start, we will be able to see the dev server but will have none of the features of file-system watching, hot reloading, etc.
We have tested this on multiple versions of node and npm, but particularly it was discovered on node v4.3.1.
Any advice on how you might debug something like this would be great.

Does that machine have troubles with any other boilerplates? What about with a very rudimentary webpack + HMR + react transform setup?
I will try to get to this tomorrow, but until then the above information might help us narrow down the cause.

Hey @davezuko - thanks for replying. We tried with both npm2 and npm3 with the same results. Do you have any recommendations for boilerplates we may be able to try? I will see if we can just work with webpack examples to start out. Thanks again

Having the same problem here, or at least similar...
to be executed: babel-node bin/server
/Users/jgray/Desktop/j3ffgray-react/webpack-j3ff-simple/bin/server.js:1
(function (exports, require, module, __filename, __dirname) { import config from '../config';
                                                              ^^^^^^

SyntaxError: Unexpected token import
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at loader (/Users/jgray/Desktop/j3ffgray-react/webpack-j3ff-simple/node_modules/babel-register/lib/node.js:128:5)
    at Object.require.extensions.(anonymous function) [as .js] (/Users/jgray/Desktop/j3ffgray-react/webpack-j3ff-simple/node_modules/babel-register/lib/node.js:138:7)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:429:10)
    at /Users/jgray/Desktop/j3ffgray-react/webpack-j3ff-simple/node_modules/babel-cli/lib/_babel-node.js:161:27
    at Object.<anonymous> (/Users/jgray/Desktop/j3ffgray-react/webpack-j3ff-simple/node_modules/babel-cli/lib/_babel-node.js:162:7)
    at Module._compile (module.js:397:26)

npm ERR! Darwin 14.5.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
npm ERR! node v5.4.1
npm ERR! npm  v3.3.12
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>start: `better-npm-run start`
npm ERR! Exit status 1

@netpoetica I will try to find some minimal kits to try, might not get a chance to until tomorrow though, unfortunately.
@grayfuse that's... very strange. When I get back tomorrow I will try to do a fresh install and see if I can reproduce, but I can't think of why babel wouldn't be transpiling those imposrts.

same issue here.

@tonytainguyen what's your node/npm version and are you on the latest version of master?

I have same issue on MAC
NPM V3.3.12
Node V5.5.0

Same issue on mac after fresh clone and npm install
NPM V3.6.0
Node V5.6.0

@CreativeManix @tonytainguyen @josephluck are you all on the latest version of master w/ a complete reinstall of node_modules? If not, could you try? Same issue as the OP or the latter one mentioned by @grayfuse ? Do any of you have any other details?
I've been trying to repro but cannot... will bump my node version today and see if that's at all related.

Found it, It just my mistake
What I did is created my own module and copied files from this repo, while doing that I didnt copied many hidden files. I hope these files are used by babel. When I included all hidden files everything is fine.
I think others who reported this issue also did the same!

In the case of my coworker, it was a completely fresh clone of the repo - no dragging and dropping around Finder or anything. All via terminal, all hidden files properly there. This seems to be some sort of enigma to do with this particular machine, because we've tried multiple node versions, multiple versions of npm, making sure no packages were installed globally that might have conflicting version numbers.

@netpoetica could you possibly try https://github.com/coryhouse/react-slingshot and see if that works?

@davezuko react-slingshot works on said machine without any trouble. We ran "npm start" and were able to get the server started and the build generated. We also confirmed that by making some changes, we could watch the build occur and successfully view those changes.
The good news is we fixed this issue. My coworker had a default NODE_ENV=DEV in his bashrc, and when there is a NODE_ENV other than the supported ones, the npm start command hangs. We simply unset it so that it would default to development and we were gold.
Thanks for your help! Gonna close this, sorry if this caused you anywhere near the anxiety it caused me ^_^

Wow that is rough, really glad you figured it out though. No wonder I couldn't repro...
Thank you so much for digging into this though, I really appreciate it. I'm going to reproduce it locally and figure out a way to fix it so it doesn't just silently hang...


docker ps image ID too wide

When an image ID is displayed in docker ps instead of a name, the output shows the full ID instead of ID[:12]

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

@cpuguy83 Looks fine to me. docker ps shows me ID[:12].
Can you give an example to reproduce this issue ?

I'm seeing this on master

@cpuguy83
I am obviously missing something really trivial !
This is what I did on master branch:

docker images : Copied the image id for fedora image (IMG_ID)
docker run -it IMG_ID /bin/bash
docker ps shows me ID[:12] under IMAGE.

I have some entries with long full image IDs. I also see short ones. I am not sure how; attempting to repro.

example:
$ docker run ubuntu /bin/bash
$ docker run d2a0ecffe6fa4ef3de9646a75cc629bbd9da7eead7f767cb810f9808d6b3ecb6 /bin/bash
$ docker run d2a0ecffe6fa4ef3de9646a75cc629bbd9da7 /bin/bash
$ docker run d2a0ecffe6fa4 /bin/bash
$ docker ps -n 4
CONTAINER ID        IMAGE                                                              COMMAND             CREATED             STATUS                      PORTS               NAMES
0218c442f1ea        d2a0ecffe6fa4                                                      "/bin/bash"         21 seconds ago      Exited (0) 20 seconds ago                       backstabbing_stallman3
bb1bc966a5d5        d2a0ecffe6fa4ef3de9646a75cc629bbd9da7                              "/bin/bash"         25 seconds ago      Exited (0) 24 seconds ago                       jolly_mestorf9
653f4c4e3664        d2a0ecffe6fa4ef3de9646a75cc629bbd9da7eead7f767cb810f9808d6b3ecb6   "/bin/bash"         29 seconds ago      Exited (0) 27 seconds ago                       determined_kilby
ef66af130ea2        ubuntu                                                             "/bin/bash"         38 seconds ago      Exited (0) 36 seconds ago                       sad_ptolemy

@MHBauer
okay so the IMAGE in output is what you passed in docker run.
If you passed the full ID, full ID gets displayed. If you pass ID[:12], ID[:12] gets displayed.
Seems correct to me.
@cpuguy83 what do you want to do ? Change it to ID[:12] for all cases.

@shishir-a412ed If you are not working on this I'd like to give it a shot

@maaquib absolutely ! it's all yours.

#dibs

Yeah I think this should be id[:12] when not using --no-trunc... Since 12 is enough to get the image.


Deploy your Docker image to Kubernetes

As a DevOps
I needDeploy your Docker image to Kubernetes
So that [benefit]
Details and Assumptions
* [document what you know]

Acceptance Criteria
gherkin
Given [some context]
When [certain action is taken]
Then [the outcome of action is observed]

OK


Support yarn global modules

This is feature request for support yarn global modules for rehash, whence, and which.

I agree with the desire, but this will be a bit tricky. Yarn (by default) insists on installing its global modules outside the scope of node. That is, ~/.config/yarn/global. Which means a yarn-installed global module is not contained to the node version that it was installed by. For modules that don't have any compilation requirements, this isn't really a problem. However, it's probably rare at this point for a global module to not have even a single dependency that requires compilation. Just a single dep with compilation will mean the module will need to be re-built each time you switch node versions. (Which isn't a problem with npm because npm's global modules are scoped to the node installation itself.)
This is possibly further complicated by the fact that maybe a third of yarn installs are via npm i -g yarn vs homebrew (or other).
I'm not against this feature, but I imagine it will end up being low on my priority list. But I'd love a PR or even some research on what it would require to implement.

For those who are struggling with this
The current way to have this is to include the yarn global bins in your PATH.
The default location for them is $HOME/.yarn/bin (you can check your own bin path with yarn global bin).
So, you just add this to whatever your shell autoexec file is (.bash_profile, .bashrc,.zshrc or whatever):
export PATH="$HOME/.yarn/bin:$PATH"

And you decide if you put it above or below the eval "$(nodenv init -)" part.
I put it above since I want it to make yarn global bins to take precedence over npm global bins.

@zzyyxxww thanks for the extra tips!
Just a quick note on

And you decide if you put it above or below the eval "$(nodenv init -)" part.
I put it above since I want it to make yarn global bins to take precedence over npm global bins.

Recall that nodenv init - will prepend to the existing PATH (as most manual PATH adjustments do as well, via PATH=foo:$PATH). Which means anything you add to PATH before nodenv init, will be superseded by nodenv/node/npm's bins.
So if you want yarn's bins to take precedence, you should add it to PATH after nodenv-init:
eval "$(nodenv init -)"
PATH=$HOME/.yarn/bin:$PATH


Restore maximized window

Linux Mint 17.3 MATE x64
Atom 1.3.2
Why after opening and closing of the atom maximized window can not be restored?
Steps:

Open Atom
Click on Maximize Window
Close Atom
Open Atom and it will not restore the maximized state
Although if i resize window position from corner to corner it will remember.

@FlashFMA Can you still reproduce this on Atom 1.7.3?

I'm now using Ubuntu MATE 15.10 with mate 1.10.2 and yes i can reproduce this. Maybe it's mate fault?

I am on Atom 1.12.7, using Ubuntu 16.10 with Unity, and I have had this issue for about 6 months (plus/minus). Two different laptops (both with same environment). Did comment in another issue earlier, but couldn't find that one now.
Sometimes the window is maximized, but moved to another workspace. Most times it either is impossible to locate, and sometimes it is just minimized to a small vertical line in one of the corners, that can then be dragged to resize. I am using the "Maximize Window" keyboard shortcut.


Action to build and publish module to PS Gallery

Is your feature request related to a problem? Please describe.
Module is published manually today. Without being built first.
Describe the solution you'd like
Would like a new version of the module to be released to PS Gallery when a new release tag gets created. Should support prerelease as well.
Additional context
Something to work from: https://github.com/PSBicep/BicepNet/blob/main/.github/workflows/build.yml

Done!


Bug in some OS with parallel and usage needs to be clarified

A user recently bumped into the following issues (with commit 30d84aa74598b6ccd3c768520222e07c67f14ac3)

With GNU parallel, the following error message would appear:
.
So there might be something specific with OS (Linux 18.04) and version of Parallel.

if user tried to use -s (sequentially processing argument), it gave him an error, because argument was not used properly. Usage needs to be clarified:

When calling help, it complains about wrong number of parameters:

julien-macbook:~/code/sct $ sct_run_batch -h
Wrong number of input parameters.

Usage shows the following example syntax:

Correct usage ./sct_run_batch.sh <parameters.sh> <process_data.sh>

And sct_run_batch.sh should be replaced for sct_run_batch (otherwise it won't work)

This looks to be a few issues. First the incorrect number of arguments
On ubuntu 18.04 under WSL I get the following:
sct_run_batch -h

Wrong number of input parameters.
This function runs a batch script across multiple subjects that are
  present in a source folder (as defined in the file parameters.sh). If
  GNU parallel is installed, it will used by distributing subjects across the
  available CPU cores. For more information about the file parameters.sh,
  see the example file: /home/chammill/documents/spinalcordtoolbox/shell/parameters_example.sh.

This appears to be the correct behaviour according to the code https://github.com/neuropoly/spinalcordtoolbox/blob/master/shell/sct_run_batch.sh#L75. This line checks that there are exactly two or three arguments or throws incorrect number of arguments. This check was added 18 days ago according to git blame.
I suspect that the use of getopts is slightly broken. Right now the relevant code is
if [ "$#" -ne 2 -a "$#" -ne 3 ]; then
    echo "Wrong number of input parameters."
    usage
 fi

# getopts processes flag input parmaeters
use_parallel=true
while getopts "sh" opt "$3"; do
  case $opt in
    s)  use_parallel=false;;
    h)  echo "help instruction:"; usage;;
    *)  echo "incorrect flag entered:"; usage;;
  esac
done

We could modify this to allow the case of one argument if it's the -h flag
# getopts processes flag input flags
use_parallel=true
while getopts "sh" opt; do
  case $opt in
    s)  use_parallel=false;;
    h)  echo "help instruction:"; usage;;
    *)  echo "incorrect flag entered:"; usage;;
  esac
done
shift "$(($OPTIND -1))"

if [ "$#" -ne 1 -a "$#" -ne 2 ]; then
    echo "Wrong number of input parameters."
    usage
 fi

What do you think @PaulBautin?
Will investigate the parallel issue now.

@cfhammill i'm thinking: maybe it would be a good time to convert sct_run_batch into a python function?  We can do that same thing (more easily) with Python, and replace parallel with python's multiprocessing module (so we kill two birds with one stone)

Seems reasonable to me, argparse is much cleaner than getopts. Although it's a bit of work and validation. I suspect fixing this issue isn't too much more work. Do you want me to take that on?
The parser issue is also responsible for the -s file doesn't exist problem. The getopts code doesn't shift, so the parameters file gets set to the first argument which in that case is -s
Still haven't figure out the invalid option - issue

Seems reasonable to me, argparse is much cleaner than getopts. Although it's a bit of work and validation. I suspect fixing this issue isn't too much more work. Do you want me to take that on?

Yes it would be great. The collaborator who reported that issue found a workaround (he does not use parallel processing) so we can drop the issue's priority. I think it will be better time investment to move to a Python script right away.

Sounds good. I think the - issue is unrelated to sct_run_batch, I think it's a buggy parallel install:
https://unix.stackexchange.com/questions/512332/gnu-parallel-facing-silent-exit-and-invalid-option-error
I'll change the issue name to reflect the new purpose.


[1.3] Network Commissioning Cluster XML has to be updated as per spec

Description
XML has to be updated as per spec:

ClusterRevision value has to be added.
MaxNetworks attribute min value has to be added.
In ScanNetworkResponse command, the string length has to be added for DebugText argument.
In SupportedWiFiBands, SupportedThreadFeatures, and ThreadVersion attributes the XML says apiMaturity="provisional". But in spec its not available in anywhere. Why it is been listed in XML?

XML Reference:
https://github.com/project-chip/connectedhomeip/blob/master/src/app/zap-templates/zcl/data-model/chip/network-commissioning-cluster.xml
Specification Reference:
https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/NetworkCommissioningCluster.adoc
Bug prevalence
Whenever I do this
GitHub hash of the SDK that was being used
https://github.com/project-chip/connectedhomeip/commit/eb2f8f6ca95c181577415bc4b3e7cc240d5b2edd
Platform
raspi
Platform Version(s)
No response
Type
Test Improvement

But in spec its not available in anywhere

I am not sure what this means @KishokG

@bzbarsky-apple He meant, its not mentioned as Provisional in the Spec, but its mentioned as Provisional in the XML, Right @KishokG

Yes correct @cjandhyala

It can't be mentioned as "provisional" in the spec because it's not far enough yet in the spec to be "provisional".  "Provisional" in the spec means "balloted but not certifiable", but none of the 1.3 stuff was even balloted at the point when this issue was filed @cjandhyala @KishokG .  So in the spec it's "even less stable than things that are provisional".

For purposes of comparing to XML, anything that is not:

In a finalized and released spec.
And not marked provisional.

should be marked provisional in the XML.


Add Dependency Review Action

Main Changes
This GitHub action will add an additional check when a PR is created in the project and will review any change in the dependencies (cda07fd).

This Action will scan dependency manifest files that change as part of a Pull Request, surfacing known-vulnerable versions of the packages declared or updated in the PR. Once installed, if the workflow run is marked as required, PRs introducing known-vulnerable packages will be blocked from merging.
Source repository

Overall, this will prevent us to introduce vulnerable dependencies versions without the need to manually check that.
Impact in the OSSF Scorecard

Note that our current score is 10/10, so this is a preventive measurement.
Context

Ref: https://github.com/expressjs/security-wg/issues/2
Report: https://kooltheba.github.io/openssf-scorecard-api-visualizer/#/projects/github.com/expressjs/express/commit/2a00da2067b7017f769c9100205a2a5f267a884b

Changelog

cda07fd chore: add dependency review tool by @UlisesGascon

I would strongly prefer we use Socket if these two are things which overlap (which I think there is). I was going to start a thread about this but with all the moving parts I had not had a chance yet. Am I wrong that there is overlap and that Socket would provide the same things we want out of this (and way more)?


Allow uploads of included records into Distiller SR via Distiller SR API

Feature Request
Is your feature request related to a problem? Please describe.
We might be interested to use AsReview as a "first screening tool". But the included records should then be easy "importable" into Distiller SR. There is an API for this now in Distiller SR.
Describe the solution you'd like
I would see this "upload into Distiller SR" as an alternative to "Download Review Result"
Describe alternatives you've considered
Downloading the screening result, and uploading the "changed" CSV file to Distiller is indeed possible already know.
But a tighter integration with Distiller SR could be beneficial for teams, which use Distiller SR already.

It would be nice to have integrations indeed with other software packages. Nowadays, we support 4 types of file formats for exports. With those 4 formats, we are compatible with many external software solutions in our chain. It is also possible to write extensions for other file formats via custom entry points.
I don't feel like integration with Distiller should be on our list for the upcoming months/years. Our efforts should be focused on integrations with FOSS software solutions like Zotero. Integrations like the one proposed are still welcomed but should be developed by the vendor itself or the community. Ideally as an external extension first such that we don't have to maintain it (I don't have access to their API and I'm not gonna pay for it ever).
Given the arguments above, I'm closing this issue. We are nevertheless open for discussion in this thread or via email.


Intermittent 504 "The image request timed out" / AWS S3

Our imgproxy service fleet on AWS App Runner returns 504 errors like the following from time to time (though very rarely).
imgproxy release 3.18.1, concurrency set to 4 (with 2 vCPU & 4 GB)
{
  "client_ip": "2001:xxxxx",
  "error": "Can't download source image: The image request timed out: Get \"s3://XXXXXXXXXXXXXXXXXXXX\": context deadline exceeded",
  "level": "error",
  "method": "GET",
  "msg": "Completed in 5.083176039s /XXXX/NjE3",
  "request_id": "70f38e22-b666-406c-955a-7ca49ba40979",
  "status": 504,
  "time": "2023-07-10T10:30:42Z"
}

Retrying the same image request always succeeds.
To me it seems that the default imgproxy 10s download timeout can also not be the culprit as the request completed in 5s (do I read this correctly?) leading me to conclude that these might be S3 connectivity problems?

I've had similar issues recently when trying to set up imgproxy on Fargate and had to increase IMGPROXY_DOWNLOAD_TIMEOUT, which isn't ideal. It seems strange to me that requests to S3 within AWS should be taking that long to return.

imgproxy doesn't do anything fancy when fetching images from S3, so it's most probably an issue on the AWS side. I don't think there's something that can be done but to increase IMGPROXY_DOWNLOAD_TIMEOUT.

I'm seeing similar issues - though using Wasabi S3; interestingly though I have set the IMGPROXY_DOWNLOAD_TIMEOUT to 25 but the context deadline happens after 10s. I think maybe it is because of the IMGPROXY_WRITE_TIMEOUT but maybe @DarthSim can give some more info here?

@DarthSim related question, can you quickly summarize how the WRITE, READ and DOWNLOAD timeouts relate? is READ = DOWNLOAD + WRITE? Might be a good note to the docs unless I'm blind (also possible).
I'm experiencing this issue with my local hosted minio server. Larger images so I get the longer processing times, but they eventually just stop and spit the 504 timeout.

IMGPROXY_READ_TIMEOUT is the time imgproxy is allowed to spend on reading the request from the client. It is not related in any way to IMGPROXY_WRITE_TIMEOUT or IMGPROXY_DOWNLOAD_TIMEOUT. Since imgproxy doesn't process requests with methods that may contain a body, there's no sense in increasing this value.
IMGPROXY_WRITE_TIMEOUT is the time imgproxy is allowed to spend on processing the request and writing it to the client.
IMGPROXY_DOWNLOAD_TIMEOUT is the time imgproxy is allowed to spend on downloading the source image. Since this is a part of processing the request, there's no sense to set IMGPROXY_DOWNLOAD_TIMEOUT larger than IMGPROXY_WRITE_TIMEOUT.

Thanks @DarthSim I definitely was reading the docs incorrectly. But it was also late 🤣
As always, thanks for all you have done and helping a dev-dad!

We currently use 20 seconds as the IMGPROXY_WRITE_TIMEOUT. While it still occurs, it happens incredibly rarely, approximately once per 1 million requests.


chore: run tests on linux, macos and windows and release builds on ta…

Description
This PR fixes #310
This is a proposal for a new CI/CD pipeline:

On push and pull requests -> Run rust CI + Tests on Linux / Windows / Macos for python 3.7, 3.8, 3.9, 3.10, 3.11
On tag creation -> Build for all OS and Python versions and upload to pypi

It seems like the tests do not pass on windows for now, adding this CI could be a good first step to fix them.

It seems like the tests do not pass on windows for now

I might have a hunch why this is happening. The sockets package is not super compatible with windows. Read the first line here(https://docs.python.org/3/library/socket.html)
Just one question , how is the proposal different from our current way? Don't we still build  a package on every PR and push to main?
And release on tags?

Ok thanks, that's a first step for investigating the comptibility with Windows.
There is a difference, as with this PR there are a lot less jobs running on push and PRs (see the pipeline of this PR for reference). Also, previously we built a release package on every push and PRs, but didn't do anything with it. The only time when the builds were used was when a tag was released that would trigger the "Release" job for an upload to Pypi.
In summary:
Previous pipeline:

Push / PR => Run Rust CI + Run tests on Linux with each Python version + Build a Release package for each OS and each Python version
Tag creation => All of the above + Publish all Release to Pypi

This pipeline:

Push / PR => Run Rust CI + Run tests on all OS with each Python version
Tag creation => All of the above + Build a Release package for each OS and each Python version + Publish all Release to Pypi

I didn't test the tag creation pipeline, but kept the same jobs as before so it should work fine

@AntoineRR , in this PR , are we depending on the tests to pass to build the packages?

@sansyrox no, the test and release workflow are independant of each other


Add href property for new / most popular  tags

Right now each <a> doesn't have href property. It means that I can't copy link / open it in a new window. I understand that it may be hard to add href to all existing links but I think that it's better to start doing it for new features / main links - it will improve usability

Duplicate of #775


Merge Haskell build GHA workflow

Description
The new Github Actions for setting up the toolchain for building mean we no longer need to keep a separate workflow for Linux.
Checklist

[ ] Commit sequence broadly makes sense and commits have useful messages
[ ] New tests are added if needed and existing tests are updated.  These may include:

golden tests
property tests
roundtrip tests
integration tests
See Runnings tests for more details

[ ] Any changes are noted in the CHANGELOG.md for affected package
[ ] The version bounds in .cabal files are updated
[ ] CI passes. See note on CI.  The following CI checks are required:

[ ] Code is linted with hlint.  See .github/workflows/check-hlint.yml to get the hlint version
[ ] Code is formatted with stylish-haskell.  See .github/workflows/stylish-haskell.yml to get the stylish-haskell version
[ ] Code builds on Linux, MacOS and Windows for ghc-8.10.7 and ghc-9.2.7

[ ] Self-reviewed the diff

Note on CI
If your PR is from a fork, the necessary CI jobs won't trigger automatically for security reasons.
You will need to get someone with write privileges.  Please contact IOG node developers to do this
for you.

@newhoggy Do you know what was behind the failures? If you fix the conflicts we can give it another go :)


Roboto in fonts folder doesn't have the apache license attached with it

The problem
The apache license isn't included in the folder. Could you add it?

Hello, thanks for bringing this to our attention.
The moment I discovered this issue, I have added the license file to the Font folder.


Add label support to REVIEWERS and NOTIFIED files.

Summary:
This lets you specify rules like this:
something_changed: **/* @notifyme

And when we add the NOTIFIED section to the github PR, it will now say:
@notifyme (something_changed): file1 file2 file3

(For rules without labels, the output is unchanged.)
This is helpful for knowing why you were being notified for a
particular PR, since as we add more NOTIFIED rules it can get harder
to tell.
I added the support for REVIEWERS as well, since it was easy, though
I'm not sure how useful it is there.
While in the area, I couldn't help but clean up the existing code a
bit, especially simplifying some of the regexp-parsing logic (at the
cost of more parentheses in the regexp).
Issue: https://khanacademy.atlassian.net/browse/FEI-5970
Test plan:
yarn flow
yarn jest

Also, does this only work with the file-matching part of Gerald or the regex matching too? If the latter, a regex of a regex, are there any cases where we would get false positives because of a colon? I think not, because probably it's looking for the regex to be surrounded by /s... 🤔

I've renamed allfiles to something_changed.  Does that make things clearer?

(In the PR description.  In the PR itself I have:
# This rule will notify @owner1 on changes to all files, and the rule
# has a label "allfiles", which will be included in the github PR info.
# allfiles: **/*                @owner1

which seems pretty clear?  But let me know if not.

Also, does this only work with the file-matching part of Gerald or the regex matching too? If the latter, a regex of a regex, are there any cases where we would get false positives because of a colon? I think not, because probably it's looking for the regex to be surrounded by /s... 🤔

I mention this in the commit message.  Regexps have to start with a ", so there's no chance of confusion.
(And definitely it works with both!)


[Improvement] Dynamic generating configuration docs for uniffle web-site

Code of Conduct

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

Search before asking

[X] I have searched in the issues and found no similar issues.

What would you like to be improved?
The uniffle configuration often change, we could introduce the github-action to fetch the uniffle configurations to generate the web-site page.
But I don't how to deployment process of web site.
How should we improve?
No response
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

cc @kaijchen


0.11.0-beta4: Compiler Kit selection UI bug

Hi.
I've installed 0.11.0-beta4. And after finding available Kits I've opened a Kits list to chose one of them and the list has looked like this:

I'm on Archlinux x86_64 with a fresh kernel. And I use Gnome desktop.

@isushik94 I have also encountered the same graphic glitch on my Windows system after I added my Cygwin installation to the PATH. It seems like this is related to either GCC or Clang.
I will have to look into this further to confirm or deny this.

I've seen this and broken a debugger right before we call showQuickPick. It looks like the label property is set correctly. I see this on Linux as well. It started after vscode update either this month or last month. Note that this only happens with CompilerKits. VS kits work fine.
Did the QuickPick API change?

Did the QuickPick API change?

Sadly, but I don't know how VS Code works. I use 1.21.1 version.

The description text on CompileKits has newlines in it which have never rendered properly. I wouldn't be surprised if those newlines are somehow to blame here.

Confirmed, it is the newlines. Will release a fix soon.


Weather App

👨💻 Changes proposed and Brief Description

✅ Check List (Check all the applicable boxes)

[x] My code doesn't break any part of the project
[x] This PR does not contain plagiarized content.
[x] My Addition/Changes works properly and matches the overall repo pattern.
[x] The title of my pull request is a short description of the requested changes.

📄 Note to reviewers
Added a weather app which gives you the weather updates in the given region
📷 Screenshots

@AbhineshJha This project is already there, you can check out here


Not possible to get attachment collection associated with custom post type

From what I can tell by reading the docs there is no way to get an array of attachment objects for all of the attachments associated with a custom post type.
Is that correct?
If so, a work around is to use the wp:attachment link provided in the _links object. If that's the only way is there a way to make the request using this library? Or would I need to use an external library like axios?

My apologies. I found a solution. Might be worth adding to add to the docs.
wp.media().param('post_parent',  postId)


[BUG] Panel position after web browser refreshing

First, thanks for #119 fixing
Unexpected behaviour:

Open web browser (chrome for example)
Panel is in middle position
Minimize browser window
Refresh page
Maximize browser window
=> The panel position seems to be "stucked" (ie not resize)

@baneJack created some resize manager in 1.2.4, but you must be sure that your breakpoints height not depend on screen height and static. On step #4 your pane instance created again and breakpoints saved for all next recalculating.

@baneJack created some resize manager in 1.2.4, but you must be sure that your breakpoints height not depend on screen height and static. On step #4 your pane instance created again and breakpoints saved for all next recalculating.


Names for classification

How the code is giving the name as output? where the names are stored?

The names are present in the following link: http://flavia.sourceforge.net/
The breakpoints and such are also defined in as well as image dataset


Invalid or erroneous data like -20000000 in navsatfix messages

Hello,
I am using the Septentrio INS SBI Pro + and the official driver for my project, I have encountered an issue where the navsatfix topic occasionally publishes invalid values, specifically -20000000, under certain conditions (e.g., bad GNSS signal). This behavior can lead to complications in downstream applications such as localization and navigation systems.
Description of the issue:

The navsatfix messages from the driver sometimes contain latitude and longitude values of -20000000.
The status field of the navsatfix message during these instances is -1.

Impact:

These invalid values can disrupt the performance of localization systems that rely on accurate GPS data.
Filtering these values externally is a workaround but not an ideal solution, as it adds complexity and potential points of failure in the system.

Expected behavior:

It would be preferable for the driver to not publish navsatfix messages under these conditions.

Environment:

ROS Version: noetic
Septentrio Driver Version: 1.3.2 (2023-11-19)
Hardware/Platform: Ubuntu 20.04

I am looking forward to any suggestions, guidance, or fixes you can provide. Additionally, if there's any further information or testing I can assist with, please let me know.
Best regards,
Ayoub.

Hello Ayoub,
the driver works as intended and correctly flags the fix status as STATUS_NO_FIX. This behavior allows for the system to distinguish between a communication failure from the receiver and invalid data.
In order to process the data, it is a must to always evaluate the status flag. Nonetheless, we are contemplating about changing invalid data to NaN to make it more obvious.
Best regards,
Thomas

Hello Thomas,
Thank you for your prompt reply.
I agree that the status flag should be evaluated, but according to this workshop the driver should be able to be used by the robot localization package. As far as I know, this package does not handle invalid or NaN data or am I mistaken?

robot_localization does check for good_gps, i.e., for both valid status and not NaN.


Added Shimla and Kashmir Img

Related Issue

Issue No. #3

Changes you made :

Changed the Images for Shimla and Kashmir Section.

Describe the changes :

Replaced the index-01.jpg and index-02.jpg images.

The images at the Shimla and Kashmir section were irrelevant , thus the task was to replace them with new relevant images.
Check list :

[ x] I have followed code style of this project.
[ x] I have read the CONTRIBUTING document.
[ x] All the aspects mentioned in the issue are covered.
[x ] The website is properly working after my changes.
[x ] 🌟 ed the repo

Type of change :

[ x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

Output Screenshots :

BEFORE :

AFTER:

@Arun9739 Please close the issue if you find my solution relevant.

@aniket2003 thank you for your PR.
Please mention the correct issue number( I think your issue number is 3)
Please add a screenshot of web section where you changed.

@Arun9739 I have corrected the errors you can check it now , sorry for the inconvenience.

Good to go @aniket2003
LGTM 🥳


Do not have access to the age.csv

https://github.com/hichamjanati/Cam-CAN-preprocessing/blob/7a08708de7facc1426ca2af2c844ce7a412d0886/config.py#L137
How can I access the age.csv file? What are the features of this dataframe?

Its path is  "/storage/store/work/hjanati/datasets/data/camcan/age.csv", I cannot remember how we got it from the raw data. If you don't have access to it, tell me and I'll add it here in the repo

Its path is "/storage/store/work/hjanati/datasets/data/camcan/age.csv",

This is a path referring to your directory right? Am I authorized to access data there?
I cannot remember how we got it from the raw data. If you don't have access to it, tell me and I'll add it here in the repo

Yes you should have read access at least

Could you let me know how can I access the files in this path? You mean by using ssh?

Ah sorry I assumed we've given you access to our servers (drago) .. i'll add it to the repo here


fix(generics): support generic response types

This is an attempt to address issue #204.  Because the nested generic objects must be checked dynamically for names, I had to get rid of the NAME constant and replace it with a name() method.  Then it's just including named type parameter names in the parent name surrounded by angle brackets (<>).

@mharkins-cosm could you please rebase so we can run the tests with gha?
I think this would be a breaking change to the API, so we'd have to bump up the version and add this to the changelog.

@mharkins-cosm could you please rebase so we can run the tests with gha? I think this would be a breaking change to the API, so we'd have to bump up the version and add this to the changelog.

Done

Cool, it's running now. Could you please also add tests for generic response types and also update the changelog? Thanks

Yes, I will.  I'm sorry I haven't had time to get to it yet.  It's on my todo list!

@tiagolobocastro Finally got to adding the requested test and changelog.  Would you mind having a look and kicking of the checks if it looks good to you?

saw the lint check failed.  i think i should have that fixed now.

saw the lint check failed. i think i should have that fixed now.

cool I kicked the GHA, will have a another look tomorrow

Funny the clippy warning is not part of this PR, nor does it appear to be accurate.  Do you want me to add an allow annotation anyway, to allow the check to pass?

Funny the clippy warning is not part of this PR, nor does it appear to be accurate. Do you want me to add an allow annotation anyway, to allow the check to pass?

That'd be great if you don't mind 👍

Thanks very much @tiagolobocastro ! Any idea when it'll be released, along with the actix 4 support?

No, thank you! I'll probably try to publish it this weekend.


Access and register old current path locator when not in experiment

Codecov Report

Merging #15238 (85fac08) into main (7780dcc) will decrease coverage by 0%.
The diff coverage is 17%.

@@          Coverage Diff           @@
##            main   #15238   +/-   ##
======================================
- Coverage     65%      64%   -1%
======================================
  Files        559      558    -1
  Lines      26620    26651   +31
  Branches    3847     3850    +3
======================================
- Hits       17336    17312   -24
- Misses      8577     8632   +55
  Partials     707      707

Impacted Files
Coverage Δ

src/client/interpreter/contracts.ts
100% <ø> (ø)

...client/jupyter/languageserver/notebookConverter.ts
1% <0%> (-1%)
:arrow_down:

.../jupyter/languageserver/notebookMiddlewareAddon.ts
3% <0%> (-1%)
:arrow_down:

...t/jupyter/languageserver/notebookConcatDocument.ts
5% <3%> (-3%)
:arrow_down:

...ent/interpreter/autoSelection/rules/currentPath.ts
100% <100%> (ø)

src/client/pythonEnvironments/legacyIOC.ts
31% <100%> (ø)

.../client/tensorBoard/nbextensionCodeLensProvider.ts
83% <0%> (-1%)
:arrow_down:

src/client/telemetry/constants.ts
100% <0%> (ø)

src/client/tensorBoard/constants.ts
100% <0%> (ø)

src/client/linters/linterCommands.ts
82% <0%> (ø)

... and 5 more

Codecov Report

Merging #15238 (85fac08) into main (7780dcc) will decrease coverage by 0%.
The diff coverage is 17%.

@@          Coverage Diff           @@
##            main   #15238   +/-   ##
======================================
- Coverage     65%      64%   -1%
======================================
  Files        559      558    -1
  Lines      26620    26651   +31
  Branches    3847     3850    +3
======================================
- Hits       17336    17312   -24
- Misses      8577     8632   +55
  Partials     707      707

Impacted Files
Coverage Δ

src/client/interpreter/contracts.ts
100% <ø> (ø)

...client/jupyter/languageserver/notebookConverter.ts
1% <0%> (-1%)
:arrow_down:

.../jupyter/languageserver/notebookMiddlewareAddon.ts
3% <0%> (-1%)
:arrow_down:

...t/jupyter/languageserver/notebookConcatDocument.ts
5% <3%> (-3%)
:arrow_down:

...ent/interpreter/autoSelection/rules/currentPath.ts
100% <100%> (ø)

src/client/pythonEnvironments/legacyIOC.ts
31% <100%> (ø)

.../client/tensorBoard/nbextensionCodeLensProvider.ts
83% <0%> (-1%)
:arrow_down:

src/client/telemetry/constants.ts
100% <0%> (ø)

src/client/tensorBoard/constants.ts
100% <0%> (ø)

src/client/linters/linterCommands.ts
82% <0%> (ø)

... and 5 more


Refresh documentation for compiler plugins.

Progress on https://github.com/openxla/iree/issues/15468, keeping docs up to date with what I've found / changed so far. I don't consider these changes "final" but still want to checkpoint them.
Code samples were lifted from real code then adjusted for demo purposes. Hopefully close enough to get the point across while still being easy to read.
Website preview for review: https://scotttodd.github.io/iree/reference/bindings/c-api/#compiler-plugins-input-dialects
skip-ci: comment only changes

Ping?


Added a Open source programs list for students in In-General file

PR for #1
Added some list of Open source programs for students as a Resource with link to these programs.

@Sumit2399 Good work

Thanks! Looking forward to more contribution in the future!


handles failure in compaction planner

Updates the CompactionJobGenerator to log failures in planning compactions. This avoids causing problems for the tablet management iterator when its trying to do other things like process tablet location updates.
Added a test that ensures tables with flaky compaction planners can still be read and written. If failed compaction planning were to interfere with tablet assignment this would cause the reads and/or writes to fail.

@keith-turner  - you also have PR #4435 and from what I can tell, it's for the same issue. If so, can you close one of them?

@keith-turner - you also have PR https://github.com/apache/accumulo/pull/4435 and from what I can tell, it's for the same issue. If so, can you close one of them?

I had forgot about that one, was just trying to work down the TODOs in the elasticity branch.  Looking at the two PRs this one is better because it adds a test for an erroring planner plugin.  It also consolidates a duplicate code pattern. Will close the other one.


vagrant: Default to 4.19

Given we removed the 4.9 VM image in 02041e7714 ("vagrant: remove 4.9 vagrant box") and dropped support in Cilium v1.13, we should also make 4.19 the default for the development VM.

/test

/mlh new-flake Cilium-PR-K8s-1.25-kernel-4.19

k8s-1.25-kernel-4.19 failed with flake https://github.com/cilium/cilium/issues/24961 (new issues for an existing flake; I'm just the first one who bothers to open an issue). Other required jobs are passing. The change is reviewed. Merging.


Silent Exceptions are masking something funny.

Use case: we add an association in new topics, .e.g. a line like this:
United_Kingdom_withdrawal_from_the_European_Union	brexit

which would associate the topic to the sf
For some reason, after the run the topic cannot be extracted from the sf, checking rest/stats?sf=brexit outputs something like this
{

    "sf": {
        "sf": "brexit",
        "annotatedCount": 1,
        "totalCount": 1,
        "annotationProbability": 1.0
    },
    "candidates": [
        {
            "percentage_of_context_vector": 0.39083206907945633,
            "support": 0,
            "prior": 0.0,
            "topic": {
                "uri": "United_Kingdom_withdrawal_from_the_European_Union",
                "prior": 6.183887386702955E-7,
                "support": 93
            },
            "surfaceForm": {
                "sf": "brexit",
                "annotatedCount": 1,
                "totalCount": 1,
                "annotationProbability": 1.0
            }
        }
    ]

}

Note that support and prior of the candidate is set to 0 and it seems that the topic doesn't even surface at the spotting phase. The output of candidates doesn't include the topic nor the sf even when all params are set to 0 in the request.

The file was fed into flashlight and it didn't have any problems parsing the file

Closing as part of archiving process.


Research dedicated GitHub organization for GitHub Actions

Due to governance we are switching and changing repo locations it would be nice to have audited GitHub Actions that we use in a organization that is allow listed.

The pinning has been working ok and is supported by Dependabot.
See https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-third-party-actions for more information about that


Random test crashes with "window is not defined" error

Describe the bug
From time to time I get the error ReferenceError: window is not defined.

or

Reproduction
I couldn't find any pattern. It just happens sometimes.
This happens with any value of environment, and happy-dom and jsdom.
vitest.config.ts:
/// <reference types="vitest" />

import path from 'path';
import { defineConfig } from 'vite';

// eslint-disable-next-line import/no-default-export -- by design
export default defineConfig({
  test: {
    environment: 'happy-dom',
    include: ['**/*.test.ts'],
    setupFiles: [path.resolve(__dirname, 'vitest.setup.ts')],
  },
});

System Info
System:
    OS: macOS 12.2.1
    CPU: (10) arm64 Apple M1 Pro
    Memory: 2.14 GB / 32.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.15.0 - /usr/local/bin/node
    Yarn: 1.22.18 - /usr/local/bin/yarn
    npm: 8.5.5 - /usr/local/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 101.0.4951.54
    Chrome Canary: 103.0.5057.0
    Firefox: 100.0
    Safari: 15.3
  npmPackages:
    vite: ^2.9.9 => 2.9.9
    vitest: ^0.12.4 => 0.12.4

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Also, please provide code samples (reproduction).

What command do you use to run Vitest?

vitest run src/services/socket/__tests__/index.test.ts (in the screenshot - in the loop)

I think you run some code (maybe not explicitly), when tests are already completed. Try console.trace or debug to see why this code is run.

I couldn't make a small reproduction. The more I reduced the code, the less often the error was reproduced.
@sheremet-va You're absolutely right. Thank you very much. Some socket handlers worked after the tests were completed.

@vincent-lecrubier-skydio unfortunately I can't give you the right solution. I just refactored the code.

same problem

It seems like vitest should not tear down the environment if there's still stuff in the event queue then?
I get that this is some async thing that's coming in late, but usually it would find window and it'd be a-ok. Never had this issue with jest which we just came from (same tests), which might indicate that they do wait(?).
If it is meant to be a feature, then it should always warn about things being run after teardown, and not just when it crashes due to an env issue.
These are some quite big integration tests, and I'm also unable to tell which tests they came from, even almost-so. The console.log I put in doesn't happen for this after-teardown run, only for things inside the test. :thinking:

Similar situation here. I get ReferenceError: document is not defined and  window is not defined both using jsdom and happy-dom
/**
 * @vitest-environment 'jsdom'
 */
import { ITMEditor } from '../../src/itm-editor.js';
import { afterEach, describe, test, expect } from 'vitest';
describe('ITMEditor', () => {
    afterEach(() => {
        document.body.innerHTML = ''; document.head.innerHTML = '';
    });
    describe('Editor setup', () => {
        test('Assign value returns value', async () => {
            const editor = document.createElement('itm-editor');
            await window.customElements.whenDefined('itm-editor');
                editor.value = 'test';
                expect(editor.value).toBe('testtt');
                console.log(editor.value);
        });
    });
});

I had the same problem with an integration test. The problem was that the "window" object was global. Normally vitest starts in enviroment mode "node" More here
My solution was to set the environment to "jsdom" in my "vite.config.js".
  test: {
    environment: "jsdom"
  }

I put
test: {
    environment: "jsdom"
  }

under build by mistake 🤦
As soon as I realised, I converted config file to .ts, not to repeat similar mistake again, so I really recommend using typescript also for configs 😊
Happy coding!

vitest --sequence.setupFiles list --environment jsdom
This helped me, since now the tests will go in order, and not randomly
--sequence.setupFiles lis

I have the same problem, random happened

Catch-22

You need to remove this when running in Vitest, because Vitest runs in node where it exists. You can remove it conditionally with process.env.VITEST or mode === 'test':
export default defineConfig(({ mode }) => ({
  define: process.env.VITEST ? {} : { global: 'window' }
})

@sheremet-va thank you so much !


Add Explanations before the OPA Policies to explain what they are going to/supposed to do

Based on feedback, it would be nice to understand what the policies are supposed to achieve.

Have made an OPA repo for policies.


Replace fello with skrifa for font rendering

This replaces our bespoke fello lib with skrifa from crates.io which brings us one step closer to being able to release.
Causes a slight regression since we no longer support hinting but that will be fixed when support lands upstream (soon!)

hinting

What is hinting?

I think wikipedia does a good job explaining that.

What is hinting?

The wikipedia article does a good job explaining the concept. Our fello crate does contain an implementation of hinting but it's not production quality. My current task at day job is making it so and landing it in skrifa so this should be done soon.


Missing some histograms when running AngularCorrelationSelector.C script

When running the AngularCorrectionSelector.C from the GRSIProof folder  in the following way:
grsiproof analysis20136_000.root AngularCorrelationSelector.C
some of the histograms in the script do not appear in the output AngularCorrelation20136_000.root file.
It seems like all the TH1D histograms got written but for the TH2D,  it was only the addback-related ones.
The only thing I changed from the script was the time differences at the beginning of it.
Am I running the script wrong?  Or am I selecting only the addback-related ones in some way? Thanks in advance.
Root version: 6.26/10
Built for linuxx8664gcc
GRSISort version: <IP_ADDRESS>

What's the output when you run grsiproof and what is in the grsisort.log file (or the worker log files in the ~/.proof directory)?  Can you post the output of .ls`` in grsisort after you open the output file?  Because betaGammaHPshould be filled at any time you have sceptar and griffin hits, no matter what the timing is. Same goes forgammaGammaHP``` if there's more than one griffin hit.
Btw, looking at the AngularCorrelationSelector.C that's in repository, there's a mistake in there, for the event-mixed addback data a checked should be done that the two hits aren't from the same detector (as these would end up in a single addback hit if they weren't event mixed). Also, there's newer versions around that allow you to do event mixing with more than just the last event (increasing the statistics).

I'm guessing this issue has somehow been resolved since there was no update in almost four months?


better error message when Navigator is used with no NavigatorState in…

… the context

LGTM but Travis is mad.

Sorry about the super nitpicky comments, they're mostly just about style guide things. We're trying to keep the code super clean and consistent since it's hopefully going to be pored over by many many authors in the future.

Sorry about the super nitpicky comments

No worries. I've become spoiled with dartfmt. Don't know how to format my own code any more :)


Refactoring the volume controller

The current logic is too complex, especially in the ReconcileVolumeState regarding the auto detach, restoring, DR etc. We need to clean the code and make it more readable.

Should be covered by https://github.com/longhorn/longhorn/issues/2527


Can't NPM install new CLI without using sudo

Note
Before you submit your issue, make sure that:

You're using the latest version of Salesforce CLI.
You've searched both open and closed issues for related posts.
You've used the doctor command to diagnose common issues.
You understand that GitHub Issues don't adhere to any agreement or SLA.

If you require immediate assistance, use official channels such as Salesforce Customer Support.

Summary
This is a follow up of #2478. When I try to install the new sfv2 cli with NPM, I get an access error. Using sudo fixes the error, but then I need to use sudo every time I run a command.
Steps To Reproduce

IMPORTANT
Provide a repository that's configured to reproduce the issue. If you are unable to provide a repo, please explain why not. The more info we have from the start, the faster we can resolve your issue.
We may close your issue if you don't include proper instructions.

Generate a project with sf project generate or fork dreamhouse-lwc.
Provide detailed step-by-step instructions on how to reproduce the issue.

I made sure to uninstall the whole CLI using these instructions.
Then, I ran
npm install @salesforce/cli --global
And got the following
npm ERR! code EACCES
npm ERR! syscall rename
npm ERR! path /usr/local/lib/node_modules/@salesforce/cli
npm ERR! dest<EMAIL_ADDRESS>npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, rename '/usr/local/lib/node_modules/@salesforce/cli' -><EMAIL_ADDRESS>npm ERR!  [Error: EACCES: permission denied, rename '/usr/local/lib/node_modules/@salesforce/cli' -><EMAIL_ADDRESS>{
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'rename',
npm ERR!   path: '/usr/local/lib/node_modules/@salesforce/cli',
npm ERR!   dest<EMAIL_ADDRESS>npm ERR! }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.

npm ERR!       There's no version of the CLI, because I'm unable to install it :)
nothing to add

Additional information

You can ls -ld the various levels of where the error is happening /usr/local/lib/node_modules/@salesforce/cli
You want /usr/local/lib to be accessible as you, not only as root.  See the man for the chown command for how to change the ownership of the folder.


Emergency Stop button position in the top bar

With Octoprint 1.5.2, Python 3.7.3 and Octopi 0.18 the big estop or the small estop appear to low in the top bar.

Same with Dashboard plugin and UI Customizer

Same with Dashboard plugin and UI Customizer

Ok i can confirm that a conflict with UI Customizer, I will take a look at this and maybee open an issue on UI Customizer repo

Ok i can confirm that a conflict with UI Customizer, I will take a look at this and maybee open an issue on UI Customizer repo

Thank you.

Thank you.

I think in general normally items to the top menu item is placed inside a single div to contain the element.
But im guessing the real problem is including a modal inside the header. If you want a confirm dialog then it should be placed at the end of the body/html.
A couple of other notes:
https://github.com/Sebclem/OctoPrint-SimpleEmergencyStop/tree/master/octoprint_simpleemergencystop/templates - you have "fontawesome.min.css" in her - this is wrong. its also includede here https://github.com/Sebclem/OctoPrint-SimpleEmergencyStop/tree/master/octoprint_simpleemergencystop/static/css which is the right place
Having inline style is bad practive when you have a css file:
https://github.com/Sebclem/OctoPrint-SimpleEmergencyStop/blob/master/octoprint_simpleemergencystop/templates/simpleemergencystop_navbar.jinja2#L2

I think in general normally items to the top menu item is placed inside a single div to contain the element.
But im guessing the real problem is including a modal inside the header. If you want a confirm dialog then it should be placed at the end of the body/html.
A couple of other notes:
https://github.com/Sebclem/OctoPrint-SimpleEmergencyStop/tree/master/octoprint_simpleemergencystop/templates - you have "fontawesome.min.css" in her - this is wrong. its also includede here https://github.com/Sebclem/OctoPrint-SimpleEmergencyStop/tree/master/octoprint_simpleemergencystop/static/css which is the right place
Having inline style is bad practive when you have a css file:
https://github.com/Sebclem/OctoPrint-SimpleEmergencyStop/blob/master/octoprint_simpleemergencystop/templates/simpleemergencystop_navbar.jinja2#L2

But i found something that I can try that might actually be better for both our plugins :)

But i found something that I can try that might actually be better for both our plugins :)

The remaining issue should be fixed with the last release.
Sorry for late fix, i was quite busy lately

I'm closing this issue, feel free to re-open this issue or open a new one if you still have compatibility issue with UI Customizer


Automated vs manual releases

Hey @jorenvandeweyer @jwerre @Uzlopak @HappyZombies with the recent development of what happened with some repos and packages we might want to re-think about the level of automation of publishing.
The current open PR #117 would implement publishing to NPM when creating a new release on Github. This is very handy, since

it's less error-prone as it's directly reflecting the release/tag/commit of a given branch
it can be done by project maintainers, without a gatekeeper

on the contrary

there is no 2FA involved, so if a "malicious" collaborator gets into the project team and has rights to push and create releases, then the ci could automacally pick this up
restrict permissions on members on who can make releases is the same gatekeeping as with limiting to those who can publish to NPM but also without 2FA/OTP involved for the publishing.

How I see it:
Currently there are two pubslisher in the npm org, @HappyZombies and me, so, we have at least a certain level of redundancy as chances are high that one of us is available when it comes to publishing urgent security fixes.
On top of that our accounts require a second factor for publishing, so no package is published without a TOTP provided, which is a pretty string mechanism imo.
I would therefore propose, that we remove the release.yml workflow, which automates the creation of a release in this repo and manually to the release with the respective tag/commit manually.
However this is just my view on things. What do you think?
Once this is resolved I am moving forward to publish the current state as 4.2.0.

@jankapunkt I am with you, especially now that only us two can publish, I think it would be wise to remove release.yml for the 4.2.0 release.


Cannot convert onnx to trt (yolo-csp-256 with single class cfg)

Hi Sir,
I have issue with converting modified yolov4-csp-256.onnx to TensorRT format, which has different custom class number (classes=1, filter=18, nothing else edited at all)
I have no problem with converting default yolov4-csp-256.onnx to trt file
but can't convert modified-yolov4-csp-256.onnx to trt file
During parsing onnx file, Segmentation fault error occurs

...
[TensorRT] VERBOSE: ImporterContext.hpp:116: Registering tensor: 174_convolutional for ONNX tensor: 174_convolutional
[TensorRT] VERBOSE: ModelImporter.cpp:179: 174_convolutional [Conv] outputs: [174_convolutional -> (1, 18, 8, 8)],
[TensorRT] VERBOSE: ModelImporter.cpp:103: Parsing node: 174_convolutional_lgx [Sigmoid]
[TensorRT] VERBOSE: ModelImporter.cpp:119: Searching for input: 174_convolutional
[TensorRT] VERBOSE: ModelImporter.cpp:125: 174_convolutional_lgx [Sigmoid] inputs: [174_convolutional -> (1, 18, 8, 8)],
[TensorRT] VERBOSE: ImporterContext.hpp:141: Registering layer: 174_convolutional_lgx for ONNX node: 174_convolutional_lgx
[TensorRT] VERBOSE: ImporterContext.hpp:116: Registering tensor: 174_convolutional_lgx for ONNX tensor: 174_convolutional_lgx
[TensorRT] VERBOSE: ModelImporter.cpp:179: 174_convolutional_lgx [Sigmoid] outputs: [174_convolutional_lgx -> (1, 18, 8, 8)],
[TensorRT] VERBOSE: ModelImporter.cpp:507: Marking 139_convolutional_1 as output: 139_convolutional
[TensorRT] VERBOSE: ModelImporter.cpp:507: Marking 150_convolutional_1 as output: 150_convolutional
Segmentation fault

I've seen the answer that can be caused by oom, So I did same job on Google Colab.
But same happens (default onnx can be converted on colab too)
I trained with cfg with 512size, and
used 256cfg with 512weight file during converting, as same as default code does.
Is there any possible way to solve it?
Anyway, I really appreciate ur code
yolov4-csp-256-numplate_cfg.zip
yolov4-numplate-csp-256.onnx : https://drive.google.com/file/d/1AgyKtS8zMC2sHHklpOBJQ2Ygjgylc0gg/view?usp=sharing

Please rename your DarkNet model files as "yolov4-csp-numplate-256.cfg" and "yolov4-csp-numplate-256.weights".  Then re-run "yolo_to_onnx.py"
$ python3 yolo_to_onnx.py -c 1 -m yolov4-csp-numplate-256

The relevant source code is here: https://github.com/jkjung-avt/tensorrt_demos/blob/4b26770dca33cbe613f65e9b64ec3b9c912e2084/yolo/yolo_to_onnx.py#L946-L949

Thanks a lot. :)
I havent tried converting cfg to onnx with name chaning


Browser problems

The Movies tab worked for me in IE and Chrome.  It doesn't come up in Vivaldi.  Any ideas why?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 6719f08e-3bd7-dc1a-71df-f2ef9fbca9d8
Version Independent ID: 7096fdb3-612e-9e00-bd0b-8ea4886a09ce
Content: Add a model to a Razor Pages app in ASP.NET Core
Content Source: aspnetcore/tutorials/razor-pages/model.md
Product: aspnet-core
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

You might check on Stack Overflow. Never used that browser.


*: adjust scheduler interface

this PR do:

let the scheduler control schedule interval by itself
let the scheduler know limiter and decide it can be scheduled. our scheduler may product two type operator, leader or peer, the controller does not distinguish them.

LGTM.

LGTM.

We are going to merge it after GA.

/run-all-tests


Fix ConcurrentModificationException in HostRegexTableLoadBalancer

Thank you for the review @keith-turner!

@keith-turner Remind me what protocol here is in moving it upstream to master? It doesn't directly apply -- requires a minor modification to key by TableId instead of String.  Should I open another PR? Or cherry pick, update, and push straight to master with this PR number in the commit?

@adamjshook need to merge 1.9 into master and resolve conflicts.  I was actually working through that.  Would you like to do it?  Your commit and another commit needed to be merged and both had conflicts.

@keith-turner Ah, since you're already doing it, then please continue.  Thanks for the help.

I do not do PR for the merge commit.  Adding the PR issue number(s) to the merge commit would be nice.  I sometimes do this.

These are the changes before and after my merge.  Do these look good?
https://github.com/apache/accumulo/compare/18320ad..1a373f5

Looks good to me!


Invalid data type when submit to leaderboard

Hi, I would like to submit to the leaderboard. I ran the BERT+CRF model and produced the result.jsonl. But when I tried to submit to leaderboard at codalab I got the following issue

invalid data type ()

I am wondering what should I do in this case? Thank you!

Hi, please check the "Submission Format" instruction in the CodaLab. The submitted file is needed to be compressed into a .zip file.

Thanks! That works! I have another question, what is the score of in the submission?

In the evaluation section of the CodaLab, it has

The submissions are evaluated with precision, recall, and F1 (micro and macro averaged). The evaluation script is available at the Github repository. For more details, please refer to the paper.

But the script actually would write all of F1 P, R etc instead of single number. Thus I am wondering what that number ("score") represents. Thank you!

The score here is the micro F1 for ranking. To get all the metrics, you can view the scoring output log or submit your results to the leaderboard.

Hi sorry to bother you again, when I try to submit today, I got

Sorry, failed to upload file.
error, even if I did submit with a .zip file. Do you know what might cause this issue? The file size is ~2MB.

Sorry I haven't met this issue. You may check your network connection and ask this question in CodaLab user communities.


Restore content negotiation via a formatter

Content negotiation is a very nice feature to have when it is necessary
to return multiple content types from a single application. By using a
formatter, a single object can be injected that will handle multiple
content types.
This replaces the defunct FormattedResponder.
Refs #76

Needs moar doc updates.

@elazar I want to do all the doc updates separately in #75 once all the changes are in place.


Add scheduled reindexing

I would like a way to have scheduled indexing of specific (or all) nodes in the background.
For pages including content from other sources, relying on publish events to index is not enough.
I'm thinking a config like in unversion where you can specify an optional content type alias or xpath expression, in addition to a max age would be could.
A background task running every few minutes could then search the index through for nodes indexed earlier than the max age and reindex them.
The xpath option would have to use the content cache I guess, thus probably be a bit more expensive though.
Comments are welcome 🙂

Instead of scheduled reindexing would an option be to just add docs on how to reindex a node that has third party data on the frontend... (Just thinking)

I'll probably drop this idea, and do some documentation on how to do it instead :)


Re-adds basedOnUBI check to root policy exception

In https://github.com/redhat-openshift-ecosystem/openshift-preflight/pull/680 I left out the BasedOnUBI check for the container root policy exception check list. This PR re-adds this check.
Signed-off-by: Jose R. Gonzalez<EMAIL_ADDRESS>

Coverage increased (+0.02%) to 84.228% when pulling da3ef8bbdeec6b707da0a80fe44789ef5ab4bbf3 on komish:add-missing-ubi-chk into 2b6d03d94934ed6b7eaa0a294ef5814e7b8a0e56 on redhat-openshift-ecosystem:main.


Problems when use other Firebase framework

Hi,
Im trying use the messaging framework of Firebase, but after add all needly frameworks, i got error messages like this for each one:
Failed to read file or folder at /Users/paulo/Developer/workspaces/xcode/ubook-reader-ios/Carthage/Build/iOS/FirebaseInstanceID.framework
Command /bin/sh failed with exit code 1

Can anyone help me?
Thanks.

Hi,
Have any solution?
Thanks.


Fix README.md uninstall instructions

nvm unload will unset NVM_DIR. So gotta save NVM_DIR first.

I'm confused; why did you post this duplicate of #3286?

I'm confused; why did you post this duplicate of #3286?

I should revise it from my point of view so i did so....sorry for that inconvenience...

@jony0406 if you have changes you want to suggest on an open PR, please comment on that PR instead of opening a duplicate.


[libraryofcongress] improve extractor for library of congress (regarding 'national jukebox')

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[x] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
Improve youtube_dl/extractor/libraryofcongress.py regarding e.g.
https://www.loc.gov/jukebox/recordings/detail/id/824

Test would probably be along the lines of:
    _TESTS = [{
        # national jukebox
        'url': 'https://www.loc.gov/jukebox/recordings/detail/id/824',
        'md5': '0263fed2c1cd62d733037c20c81e9e0e',  # head -c 10241 *.mp3 | md5sum
        'info_dict': {
            # 'id': '...',       # not sure what to put here?
            # 'ext': 'mp3'       # this correct?
        },

Review please.


The Tukan theme - blue/white - First Commit

https://forum.opnsense.org/index.php?topic=7834.0

@fabianfrz - back from my holiday...
what enhancement do you need?

@marjohn56 the enhancement tag means this PR contains new functionality, new plugin etc. It is just a category for the PR. bug means contains a bugfix so it is higher priority.

@fabianfrz - I learn something new almost every day. ;)
Update from René

Merged, thanks! Setting it back to version 0.1 though ;)


Prevent Laravel's exception throwing

An exception thrown from laravel's getController stops the collection of controller stats. This let's the stats collection process continue.

Hi Verron,
Thanks for your PR. Can you provide an example, when this is happening? I would like to know, in which scenarios Laravel is throwing the Exception.

Sure, we have a sub routes file for our routes folder (routes/web/receiving.php) that is not included in our main file (routes/web.php). Somehow, the stats checker is getting that controller even when we have not included that route.

Also had a case where a third party package was trying to include a route for a controller that didn't exist, and the stats collector blew up. There might be a better way to handle the exception instead of returning an empty string (possibly null), but a Reflection class ($class->getName()) should never match that empty string (the contains call at the end).

In short, let the stat collection continue even if someone introduces problematic route configurations. Don't know how that receiving.php route is being found within ControllerClassified, it doesn't show when you run php artisan route:list.

Thanks for the example. This definitely shouldn't happen and the collector should just fail silently.
The weird thing is, that the stats command should already catch all Exceptions (see code here) and fail silently. I will have look an probably release a new version in the next days.

Thanks for the example. This definitely shouldn't happen and the collector should just fail silently.
The weird thing is, that the stats command should already catch all Exceptions (see code here) and fail silently. I will have look an probably release a new version in the next days.

The exception never makes it out, so the stats do come back. The Controller stats is just missing. The exception thrown by laravel only ruins the call to ->map on the collect method.
Let me know if I can assist in any other way.

I'm gonna merge this, as I've worked in non-default Laravel apps before and sometimes things break.
Just some clarification questions:

Sure, we have a sub routes file for our routes folder (routes/web/receiving.php) that is not included in our main file (routes/web.php). Somehow, the stats checker is getting that controller even when we have not included that route.

So you have a routes/web/receiving.php file, but you say you don't include in the "main" routes file. But do you include in through a ServiceProvider? Similar to this?
Route::middleware('web')
         ->namespace($this->namespace)
         ->group(base_path('routes/web/receiving.php'));

stats doesn't scan your routes files differently than Laravel does. It uses the same code Laravel uses to build the table used for php artisan route:list. I find this just fascinating, that there's a difference.

Also had a case where a third party package was trying to include a route for a controller that didn't exist, and the stats collector blew up.

Also weird that this happens. But as I said earlier, I like when stats just fails silently. Maybe in the future stats could collect such mistakes and display these as warnings to the user 🤔.

I've tagged a new release.

I'm gonna merge this, as I've worked in non-default Laravel apps before and sometimes things break.
Just some clarification questions:

Sure, we have a sub routes file for our routes folder (routes/web/receiving.php) that is not included in our main file (routes/web.php). Somehow, the stats checker is getting that controller even when we have not included that route.

So you have a routes/web/receiving.php file, but you say you don't include in the "main" routes file. But do you include in through a ServiceProvider? Similar to this?
Route::middleware('web')
         ->namespace($this->namespace)
         ->group(base_path('routes/web/receiving.php'));

stats doesn't scan your routes files differently than Laravel does. It uses the same code Laravel uses to build the table used for php artisan route:list. I find this just fascinating, that there's a difference.

Also had a case where a third party package was trying to include a route for a controller that didn't exist, and the stats collector blew up.

Also weird that this happens. But as I said earlier, I like when stats just fails silently. Maybe in the future stats could collect such mistakes and display these as warnings to the user 🤔.

As far as I am aware, the file is not included anywhere.
I see you are grabbing routes the same way laravel does, via app('router')->getRoutes(), so am also curious to why the ControllerClassifier had routes not found in php artisan route:list. I can do some additional research to pinpoint where the inclusion came from; we have over thousand routes and 400+ controllers, so it may take awhile.
Thanks for the new release. Will pull it in.


[BUG] The --dev flag not working on Windows

Description

--dev flag not working on windows
Traceback (most recent call last): File "C:\Users\Gaurav Bhattacharjee\OneDrive\Desktop\Projects\rob\robyn\integration_tests\base_routes.py", line 209, in <module> app.start(port=ROBYN_PORT, url=ROBYN_URL) File "\\?\C:\Users\Gaurav Bhattacharjee\OneDrive\Desktop\Projects\rob\robyn\robyn\__init__.py", line 163, in start event_handler.start_server_first_time() File "\\?\C:\Users\Gaurav Bhattacharjee\OneDrive\Desktop\Projects\rob\robyn\robyn\dev_event_handler.py", line 14, in start_server_first_time self.processes.append(subprocess.Popen(["python3", self.file_name], start_new_session=False)) File "C:\Users\Gaurav Bhattacharjee\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 969, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\Gaurav Bhattacharjee\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 1438, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, FileNotFoundError: [WinError 2] The system cannot find the file specified

To replicate this issue: pytest -s integration_tests . You will see two tests failing.
Expected Behavior

The tests should not fail. 😄
Screenshots

Environment:

Host OS:  Windows

[Optional] Additional Context

Hey @sansyrox  I am interested in taking this up :) Will look into this issue soon

Thanks @guilefoylegaurav . Let me know if you require any suport/information from my end :smile:

@sansyrox I am sorry, could not update you on this - stuck with mid-terms for 4 days. Shall get back to this soon.

Hi @guilefoylegaurav ,
No worries. Take your time 😄
Also, all the best with your mid-terms! ✨

@sansyrox with reference to the problem of hot reload mode not reflecting instant changes in (some, including mine) windows machines, did you look into this?
If the same problem persists, feel free to let me know, I shall investigate and explore further.

@guilefoylegaurav , I didn't get a chance to have a look at it yet. Would you like have a look at it?

Sure

It works now


Support lights(and other devices?) integrated into Alexa

I have several zigbee lights and motion sensors already integrated with my Echo. From the Alexa app I can control them and view the state of all of them. I would like for Alexa Media Player to expose them to Home Assistant.
I have already figured out the appropriate network requests and I'm certain that at least basic control over lights is possible. I would be willing to take a shot at the development work on this if the project is interested in the idea.
Is your feature request related to a problem? Please describe.
This isn't a problem, just a dream.
Describe the solution you'd like
I would like devices I have already integrated with Alexa to be added as entities to Home Assistant.
Describe alternatives you've considered
Integrating my lights directly into Home Assistant.
Additional context
I want this for a few reasons:

I don't want to buy a zigbee radio when my Echo already has one.
Alexa is completely solid. If my Home Assistant setup falls over, I lose advanced features but not basic control of my devices.
I can avoid setting up the smart home skill and still get voice control of my lights
I can run Home Assistant in the cloud

I believe the official Alexa integration allows this. Have you checked?
If it doesn't, the main issue is that to keep devices like this up to date, we'd have to poll the Alexa cloud. We try not to do that to avoid potentially overloading the Alexa account. If the information is exposed via websocket (enable alexapy.websocket logs) then it makes it easier to consider doing this. If you check the issues, we've had requests for the temperature sensor and for the Alexa switches. Obviously if you've found local API control, then I wouldn't have the same concerns.
If you did try to implement this, we should make it an option users have to enable. You'd have to first implement the API calls in alexapy and then expose them up here in the custom integration.

The official Alexa integration does the opposite of what I'm trying to achieve. It can expose Home Assistant entities to Alexa. I want to expose Alexa entities to Home Assistant.
I have checked the websocket interaction and there does not seem to be any message sent. This lines up with what the Alexa app shows as well. The device page in the app doesn't update until you leave it and come back.
It appears polling is the only option. Based on the code it looks like alexa media player polls either every 30 seconds or every 5 minutes depending on if websockets are working. That is fast enough for most use cases I want this for with Lights. I imagine that would be good enough for a temperature sensor as well.
The /api/phoenix/state POST call that gets this data appears to support batching. So, we are talking about one new call on the polling interval to support any number of added lights.
Has Amazon taken issue with polling in the past?

No specific notice but we have seen 429s before. Since this is a reverse engineering of their API, we run the risk that if we get too high on their radar they can shut us out.
If it's a single pull to phoenix, then it may be getting pulled already during the check on the guard state. We pull that pretty frequently as it's on every known voice interaction (based on websocket). It may make sense to generalize the data pull to get the other devices. People have in the past asked for sensors of various things so it may make sense to address them too if it's the same endpoint.
The centralized polling is in the data update coordinator but people are getting weird timeouts now.

Yes, you get the data based on calls to phoenix state. It looks like just generalizing the existing call in alexapy is the way to go and that would avoid any new polling. I'm going to take a shot at this.
Here is my plan:

Add support in alexapy for getting a list of sensors (GET /api/phoenix)
Adjust alexapy's guard state call so it can batch in requests for arbitrary entity state
Add support in alexapy for controlling lights via PUT to /api/phoenix/state. Probably won't merge this with the guard state stuff since that would get confusing and batching seems much less useful here.
Create an "Include devices connected via Echo" setting in alexa media player. Off by default.

My plan is to limit this to only devices directly connected to an Echo either via zigbee or because they are part of the echo themselves(temperature sensor). That is all I have a setup to test and still seems useful in its own right.

Seems reasonable. Yes, let's keep the commands separate but the data gathering can be generalized.  I think sharing update conditions of detected voice input still makes sense. I forgot if we have a general poll if the websocket isn't connected (but I think you saw it).

Just for historical reference in case anyone stumbles upon this: Lights and temperature sensors worked fairly well and I'm going to continue forward with that goal in my PR. I did give up on supporting motion sensors. I got it working and it was too slow to be useful without websockets. I removed it and moved on.
I also discovered as part of this that the Echo device is reporting all sorts of crazy sensors like "Dog Barking" and "Snoring". I think that is tied into all of the recent features in the Alexa app around sound detection. I did not bother to investigate further because it suffers from the exact same flaw as motion sensors. There is no websocket message so by the time home assistant notices the state your dog has probably stopped barking.

Perhaps in the future we can present it as an "activity sensor". Without websocket it will be stale but perhaps people can use it as a sensor for occupancy detection.

Sounds like this has been implemented.  So when I turn on "Include devices connected via Echo" how do I see the temperature sensor one of my Echo devices has?  I do not see any new entities even after reboot.  Do I need to do something additional with Amazon?

No, nothing additional should be required. If it doesn't appear, I would open a new issue with logs from alexapy. I'll need that to see what is different about your device.

I'd suggest opening a new issue as the template will provide info on how to generate logs that @blm126 will need to help.