Use poetry to manage dependencies

https://python-poetry.org/docs/basic-usage/#initialising-a-pre-existing-project

note: poetry can be tricky to setup on Windows.
so maybe keep the 'manual' steps in README anyway.


add a test for a rich subsection / environment variable

I am curious if we should have another mechanism to deal with this workflow. In any case, the behavior seems to work as expected when such a variable is set.
Environment variables with spaces are not without precedent in programming languages:
https://stackoverflow.com/questions/18468397/how-can-you-access-an-environment-variable-that-has-a-space-in-its-name-in-bash/18469375#18469375
But generally do not work well with a shell:
https://stackoverflow.com/a/57747852/6570011

From the commit message:
We considered adding
the ability to parse underscored environment variable keys in such a way that
they could "fill in" for not found whitespace keys. However, this created
ambiguity because (1) we have to remove the keys after they are used, lest the
key be used again to create a missing section that we do not want, (2) it is
possible to use both whitespace and underscored variants in section headings so
both, one, or neither could be present, and (3) map ordering is
non-deterministic.
As a result of this, the complexity to implement, and the complexity to correct
this ambiguity, we opted to not implement this functionality for now but leave
tests in place that clarify the nature of our behavior. Right now, no products
using gcfgenv have a requirement for whitespace in subsection titles, so we
added a note to advise avoiding such madness. 😄


Refactored future adapter

https://issues.apache.org/jira/browse/IGNITE-2175 is closed, closing the PR


Does CIE2000 have high cost?

I have own implementation for CIE76 and CIE2000.
For 5,000 samples, it take 10times than CIE76 in my computer.
Does CIE2000 is expensive calculation? I am not sure that i make correctly or not.
Plz someone comment this issue!

Yes, CIE2000 is expected to perform worse but it's hard to say how much worse, since it depends on a lot of different variables. Please post benchmark results and we can take a closer look if needed. Closing this issue for now.


nom::ToUsize is a portability footgun

I just discovered after upgrading a crate to nom 5.0.1 and switching to the function based API it would no longer compile on wasm32-unknown-unknown with the error the trait `nom::ToUsize` is not implemented for `u64`  from trying to use nom::bytes::complete::take.
I was able to workaround this by converting from u64 to usize myself and handling any potential error, but because I wasn't testing 32-bit builds in CI I didn't notice this until I went to use the library in a WASM build.
Example program, this will run successfully on a 64-bit machine, but attempting to compile for a 32-bit target will fail:
fn main() {
    let bytes = &b"test case"[..];
    let result: nom::IResult<&[u8], &[u8]> = nom::bytes::complete::take(5u64)(bytes);
    assert_eq!(result.unwrap(), (&bytes[5..], &bytes[..5]));
}

> cargo build --target wasm32-unknown-unknown
[...]
error[E0277]: the trait bound `u64: nom::traits::ToUsize` is not satisfied
 --> src/main.rs:3:46
  |
3 |     let result: nom::IResult<&[u8], &[u8]> = nom::bytes::complete::take(5u64)(bytes);
  |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `nom::traits::ToUsize` is not implemented for `u64`
  |
  = note: required by `nom::bytes::complete::take`

being careful with portability is exactly the point of ToUsize. take will use Rust's slice indexing, which uses usize, and usize is the target arch pointer size. So it should not compile if we try to use a u64 with take on a 32 bit machine.

So it should not compile if we try to use a u64 with take on a 32 bit machine.

This is what I'm calling a portability issue. My expectation of Rust libraries is that they provide the same API on all targets, other than platform specific libraries, or clearly called out sections like std::{os,arch}::*.
If take took in usize or impl Into<usize> then I would have noticed the potential issue even while developing on a 64bit machine and performed the checked conversion from u64 -> usize straight away, instead of only noticing that once I went to use the library on a 32bit target.

Unfortunately, Into<usize> is not enough because it's not implemented for enough types. And take already makes ToUsize explicit: https://docs.rs/nom/5.0.1/nom/bytes/complete/fn.take.html
If take was using usize directly I'd see a lot of code with nb as usize which is a lot more dangerous because it will cause silent portability issues and even security issues (overflows, etc).

(and I'm saying that because I did that specific mistake too, inside nom even)

I think the issue is that Nemo157 is wanting it to fail to compile every time.. or not. Which would mean just using the std Into/From impls. Because Rust wants to allow pointer sizes as small as possibly u16.
One can argue either way about the ergonomics of not having to do the conversion manually on 64-bit systems, as opposed to it being handled by conditional compilation when appropriate. Here, std chose one tradeoff and nom has chosen another.
I see that, as you say, C is already marked as ToUSize - maybe we could write another line or two talking about the implications without forcing them to follow the where clause link?

An ergonomic API to allow passing in arbitrary integers without platform dependence could be to take TryInto<usize> and produce an error from take if the value is out of range (which is basically what I ended up doing in my code before calling into take). On 64-bit that would have the same result as using IntoUsize, a u64 would be allowed and would always work (and the error cases would be trivially eliminated by the optimizer), while on 32-bit it would have the potential to return a runtime error for corrupt (or too large to parse) data that specifies a length > usize::max_value(), but work perfectly for valid data. The main downside being that it would be a breaking change, and the trait is not available with nom's minimum Rust version policy.


(on hold) Queries v2

I thought putting every system into a single foreach loop in Process would increase performance especially in cases with lots of systems
but it turns out that NodeGraphStressTest FPS avg decreases from 56 to 21, yielding a :tada::tada: 62.5% performance loss!!!!! :tada::tada:
:(

56 fps -> 46 fps (-18%)

I think it's good enough to merge; it's not perfect, but the performance overhead of all the stuff in NodeRoot.Process() should be offset once/if there are enough big queries/systems, plus maybe there could be some additional optimizations made later down the line


Google Places

Through the Google API (#6), we will access the Google Places API of the Google Maps Platform:

https://developers.google.com/maps/documentation/places/web-service/overview

Should we use this?

https://github.com/SachinAgarwal1337/google-places-api


'available_endpoints' is not defined

Example in "4.4.1. Base URL info endpoint" displays the usage of a field available_endpoints, however, this field is not described in the documentation. Introduction of this description should be straightforward.

Seems to be fixed in 6e938b78eb6391ee399e01a8847b40fd76ff8da7. Thanks @CasperWA!


Remove duplicated links

Removing duplicated links in the same list
Network - Just had a Anchor link on the same page
Removed: [Azure boundary security best practices]
Kept: [Azure network security best practices]
IAAS - Both had the same URI
Removed: [Security best practices for IaaS workloads in Azure]
Kept: [Best practices for Azure VM security]

@TerryLanfear
IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@JackStuart - Thank you for your contribution!

#sign-off

Merging now.


Unable to pack/depack this file

Hi.
I'm having a bad time with a particular bin file. I packed it and tested the unpacking with the windows binaries. All good 👍 Unpacking to memory using the supplied z80 depack routine though - not so good. The depack routine is running from ROM if that matters. I know some decrunchers self modify but looking at the code this doesn't seem to be the case.
Attached is a zip with the original file and a packed version. Also attached a memory dump of the failed decompaction.
Any help working out what is going on would be greatly appreciated.
bug.zip
memdump.zip
Thanks
Charlie

Update:
User error. Well, emulator error actually but I feel pretty stupid. Please close and or delete with extreme prejudice :D

Don't worry about it, thanks for using BitBuster :)


Switch to file based notes

Instead of storing the content of the note in a database, we should store it as a markdown file. This will make it much easier to integrate, sync, and share notes by using existing tools such as Nextcloud.
The databse will still be used of course, but instead of storing actual data, it will simply store metadata.

I would make sure to compare performance doing this. DB/networking IO compared to straight up disk IO.


X-Ray module link fixes

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

We should move these files into the workshop content rather than linking back to github

I am open to discussing, but I would like to expose these folders as something someone could pull down locally, copy and use in their own testing.

we can package the files for download. you just need to create a folder .files under the module and then add a shortcode into the page similar to https://github.com/aws-samples/eks-workshop/blob/master/content/logging . I'm about to go through the module now. I can take care of this

Thanks. Please leave the link to the source code in the module, unless you have a good way to do this in hugo.


Create a UUID for prop key

Hi, thanks for the PR.
I think it's more of a hack than a fix in itself. We should be able to generate a truly unique key for each HTML node without randomizing anything.
I don't feel comfortable adding an additional dependency for something like that.

Hey @Exilz no worries I agree its a bit of a hack... I was under the gun to get unique props in for a release so I just forked it and I am running that version for now. Once you've came to a good solution I'll hop back on the repo
Can't imagine how much time this has saved me and others rendering HTML in our apps.


test: fix check for max journal size

Some systems report the max size as 2G instead of 2.0G:
Aug 18 17:54:34 xxxxxx systemd-journald[14084]: System Journal (/var/log/journal/c353583eb4fd4abf81720811415b21e0) is 8M, max 2G, 1.9G free.

Also add some debugging for test failures
Signed-off-by: Rich Megginson<EMAIL_ADDRESS>

[citest]

[citest]

[citest]


Update version and changelog for Point Release

[x] Pull request represents a single change (i.e. not fixing disparate/unrelated things in a single PR).
[x] Title summarizes what is changing.
[ ] Has a news entry file (remember to thank yourself!).
[ ] Appropriate comments and documentation strings in the code.
[ ] Has sufficient logging.
[ ] Has telemetry for enhancements.
[ ] Unit tests & system/integration tests are added/updated.
[ ] Test plan is updated as appropriate.
[ ] package-lock.json has been regenerated by running npm install (if dependencies have changed).
[ ] The wiki is updated with any design decisions/details.

Codecov Report

Merging #14139 into release-2020.09 will decrease coverage by 0.02%.
The diff coverage is n/a.

@@                 Coverage Diff                 @@
##           release-2020.09   #14139      +/-   ##
===================================================
- Coverage            59.87%   59.85%   -0.03%
===================================================
  Files                  692      692
  Lines                38341    38341
  Branches              5514     5514
===================================================
- Hits                 22957    22948       -9
- Misses               14201    14207       +6
- Partials              1183     1186       +3

Impacted Files
Coverage Δ

src/client/datascience/crossProcessLock.ts
79.41% <0.00%> (-11.77%)
:arrow_down:

src/client/common/utils/platform.ts
60.00% <0.00%> (-8.00%)
:arrow_down:

src/client/linters/pydocstyle.ts
86.66% <0.00%> (-2.23%)
:arrow_down:

src/client/datascience/debugLocationTracker.ts
76.56% <0.00%> (-1.57%)
:arrow_down:

src/client/common/process/proc.ts
14.49% <0.00%> (-0.73%)
:arrow_down:

Continue to review full report at Codecov.

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

Do we need to add a news item for the revert of https://github.com/microsoft/vscode-python/pull/13667 (https://github.com/microsoft/vscode-python/pull/14108, cherry-picked in https://github.com/microsoft/vscode-python/pull/14125)?

Do we need to add a news item for the revert of #13667 (#14108, cherry-picked in #14125)?

That should be the ipykernel news item that David added.


[add] url proxy setting

Coverage decreased (-0.1%) to 79.119% when pulling d290e0296e5aa07fefdde14a75f19193bc694d16 on sunny4381:features/url-proxy-setting into f2f28f91fd465c880c947be14fe2e195b6c05edd on shirasagi:master.


fix(@angular/cli): blueprint for polyfill.ts has redundant information

Fixes #5080

I signed it!

Can be closed along with the issue as @hansl answered why it is that way.

The issue is still open.

I flagged the issue properly as awaiting further info from @hansl.


support bool in message

Currently if json object contains boolean values, the values will be dropped. Boolean values should be supported.

+1 for this requirement

Feature added.
bbbc1e32dd664c5b0d95074339b997d9b4eb65cf

You also need to support  values. Currently if JSON object contains null, it crashes


HEGY test of seasonality

Originally requested in #88 along with the OCSB test. The latter has been implemented, but the former still needs to be addressed.

Still would like to see this get added at some point 😬 Will try to find time soon..


Throw an exception when a Luigi task fails

Otherwise Luigi fails quietly, and other Ansible tasks continue running.

👍


License file missing in pypi tarball

The tarball in pypi (https://pypi.python.org/pypi/pywal/0.7.0) does not have the license file. When the license is MIT/BSD, a LICENSE file is needed for packaging.

Fixed.
0.7.1 has been released. :)


problem with the link of my site

Have you checked that your issue isn't already filed?

[X] I read through FAQ and searched through the past issues, none of which addressed my issue.
[X] Yes, I have checked that this issue isn't already filed.

Bug description
can't create the link to the site, however everything seems to work fine
How to reproduce the bug
trying to create my personal site i overcame the problems i saw from other users like the gem mini race or the problem with the diagram or the problem with imagemagick, my site locally works perfectly, but after i do the procedure to push it to my github it doesn't give me a link to the site (i waited long enough and it doesn't give a link, i also followed the instructions). Does anyone have any suggestions?
Error messages and logs
The error message you got, with the full traceback if available. Please paste it between these triple backticks.

What operating system are you using?
Windows
Where are you seeing the problem on?
Running locally without Docker
More info
No response

You didn't post the Error messages and logs part. Check your GitHub actions' logs to see what the problem was while deploying, and try to fix those issues. If there is any issue that is not yet covered by our FAQ or previos issues, please post the log here.

thanks for the quick reply and sorry if it sounds stupid, but where can i find actions' logs? Do u mean the actions' logs on the process or on my repository?

On your repository. You can check the actions tab in your repository for more information about the failed workflows. For example, in the last one it says Error: Liquid syntax error (line 59): Unknown tag 'toc'. You can check more information about this error on our FAQ.

My recommendation is, follow the instructions in installing and deploy strictly. First make it work with as few changes as possible. Only them made the changes you want.

i did what you say, i follow the instructions stricly, my site was up until i clone the repo to make some little changes

more specifically

change name and turn off some cv/people/ teaching/publication

change  gem mini racer to →  gem execjs

add gem gem 'wdm', '>= 0.1.0'

change .ipynb to .IPYNB and works

turn magickimage enable to false

all these one because the commands οf jekyll for hosting topically did not work.

all fine with the site hosting topic →

with ctrl+click showing my edited site

HOWEVER, after run these commands (

git init
git checkout -b gh-pages
git status
git add .
git commit -m “initial commit”
git remote add origin  https://github.com/myusername.io.git
git branch gh-pages
git push origin gh-pages

)
the problem that has arisen (and is probably off-topic) is this ->

Any suggestions?
thank you very much for your time. I appreciate it

You should not mess with gh-pages branch. Only GitHub actions should use it. All your modifications should be at the main branch only.
Also, did you make all these changes in a single commit? If yes, you are kind of missing the point of git. You should keep your commits as minimal as possible, so it is not only easier to find which modification caused the issue, but also it is easier to revert the changes.

the commands (include for gh-pages) its from this tutorial: Jekyll Tutorial .
What process do u suggest (with commands include) to push my site?

Also, did you make all these changes in a single commit?

changes yes, commands no. I will do it again with one-to-one process. Thank you!

Forget the tutorial, this template have everything you need to set it up as easy as possible. Since you said your site worked on the beginning, then obviously another change you introduced breaked the code.
The workflow is simple:

Make it work for the first time, changing the minimum
It is working, now do changes as small as possible, always testing them both locally and when you push your code to your repo

The repository is set so every commit you do in the main branch of your repo builds the site and automatically deploy it to your page. If the build fails, then something is wrong. Doing small changes at a time makes it easier to pinpoint the exact change that messed up.
You can check the results of the build and deploy in the actions part of your repository. All workflows defined in the .github/workflows/ directory will appear in this part and their execution can be checked there.

if local works perfectly i proceed with: modify a mini change-> push -> check if the change works on the site and again and again the same procedure for each change. No problem if it works. fingers crossed

Does it HAVE to work local? is it necessary? or do we just push and let it not work with the command bundle exec jekyll server
PS: the instructions for beginners  are completely problematic and do not help, on the contrary they are more confusing

george thank you very much for your help, the site is up and running

If you think this is still confusing, create a PR with the changes you think are necessary, so we can further discuss this. Closing this issue.


Update README; add clarifying language around DIDs and VCs

PR is in DRAFT

A few discussion topics that come to mind -- raising to discuss but not state a strong preference:

Any particular reason we don't require the verification relationship entries be fully qualified DID URIs?  I'm trying to think of a case where we'd want to support relative DID URIs and haven't come up with one but I'm probably overlooking a scenario.
Should we require support for publicKeyMultibase in our SDKs or drop it?
It's worth noting that contentType property referenced here should never be present in DID Resolution Metadata unless the result is being returned by the resolveRepresentation function.  Since our SDKs today only support the resolve function, we can likely leave it out for now.

Responding in place.

Any particular reason we don't require the verification relationship entries be fully qualified DID URIs?  I'm trying to think of a case where we'd want to support relative DID URIs and haven't come up with one but I'm probably overlooking a scenario.

Some DID methods, like did key don't do this. I know we already have impls for these so I didn't want to break them.

Should we require support for publicKeyMultibase in our SDKs or drop it?

Similarly, this is a requirement of our existing did:key support. We may encounter keys encoded like this with did:web but that's less of a concert to me.

It's worth noting that contentType property referenced here should never be present in DID Resolution Metadata unless the result is being returned by the resolveRepresentation function.  Since our SDKs today only support the resolve function, we can likely leave it out for now.

Good call out. I will remove the property entirely.

Any particular reason we don't require the verification relationship entries be fully qualified DID URIs?  I'm trying to think of a case where we'd want to support relative DID URIs and haven't come up with one but I'm probably overlooking a scenario.

Some DID methods, like did key don't do this. I know we already have impls for these so I didn't want to break them.

It appears that the DID Key method requires that the id property be used in verification relationships so spec compliant implementations should be using fully qualified DID URIs:
https://w3c-ccg.github.io/did-method-key/#document-creation-algorithm
Are there well used DID Key libs that use relative DID URIs that you're aware of?

@frankhinek my mistake! you are correct. I will update the guidance to require fully qualified URIs.

Going to merge tomorrow pending objections/final review. cc: @mistermoe @frankhinek @phoebe-lew @KendallWeihe @nitro-neal @jiyoontbd @kirahsapong


Unable to install new site

Getting this when following the installation guid:
mkdir /Users/Micke/Projects/codysites/codyTest/controllers
mkdir /Users/Micke/Projects/codysites/codyTest/locales
mkdir /Users/Micke/Projects/codysites/codyTest/static
mkdir /Users/Micke/Projects/codysites/codyTest/static/css
mkdir /Users/Micke/Projects/codysites/codyTest/static/images
mkdir /Users/Micke/Projects/codysites/codyTest/static/js
mkdir /Users/Micke/Projects/codysites/codyTest/views
/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/protocol/Parser.js:82
throw err;
^
Error: ER_INVALID_DEFAULT: Invalid default value for 'created'
at Query.Sequence._packetToError (/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/protocol/sequences/Sequence.js:48:14)
at Query.ErrorPacket (/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/protocol/sequences/Query.js:83:18)
at Protocol._parsePacket (/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/protocol/Protocol.js:274:23)
at Parser.write (/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/protocol/Parser.js:77:12)
at Protocol.write (/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/protocol/Protocol.js:39:16)
at Socket. (/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/Connection.js:96:28)
at Socket.emit (events.js:107:17)
at readableAddChunk (_stream_readable.js:163:16)
at Socket.Readable.push (_stream_readable.js:126:10)
at TCP.onread (net.js:538:20)
--------------------
at Protocol._enqueue (/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/protocol/Protocol.js:135:48)
at Connection.query (/Users/Micke/Projects/codysites/node_modules/cody/node_modules/mysql/lib/Connection.js:201:25)
at /Users/Micke/Projects/codysites/node_modules/cody/bin/create_site.js:130:27
at fs.js:334:14
at FSReqWrap.oncomplete (fs.js:95:15)

The same issue

Got it to work by changing the default GLOBAL MySQL sql_mode! You need to remove the NO_ZERO_DATE mode using this command
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'NO_ZERO_DATE',''));
Cheers!

That's great news @cotlod!
Can you tell us which version of MySql you're running please?
Thanks.

5.7.9
Cheers!

Seems like they did change some defaults recently (as of 5.7), also 'NO_ZERO_DATE' is now deprecated: http://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sql-mode-changes
We'll need to change the default value for the rows that use Date.
Thanks a lot for catching this @cotlod!

:+1:

This is 'fixed' in 9ac30d25767a845e16dedb4274f9fbe83e6c29f0 .


Allow Ask{} to take results from Hybrid{} or BM25{} for QA

As mentioned in the title, I believe it would be useful to allow Ask{} to become hybrid search enabled with alpha factor in it which users can tune based on their own need.

This is definitely planned. We want to be a lot more flexible and allow more customization for these pipelines. The existing qna ask parameter is essentially a hidden two-step pipeline that consists of semantic search + answer extraction. If this pipeline was explicit, you could simply switch the first step to use hybrid or bm25.
This is currently in "research phase", i.e. we know that we want it, but don't yet know what it will look like. Maybe @CShorten can share a bit more about the current plans.

Small teaser: We will publish the 2023 roadmap in the next two weeks and customized retrieval pipelines will be part of it :-)

Thanks for the response, looking forward to seeing the 2023 roadmap! 🤗 🎉

@bhavnicksm: https://weaviate.io/blog/what-to-expect-from-weaviate-in-2023


The text label on the visualization image is not complete

Hi, thank you for your excellent work.
When I run the Grounded-Segment-Anything demo, the text prompt that I use is "pottedplant"; however, the text label that appears on the resulting visualization image is "potted".

I wonder why it happens. Thanks!

Thanks for your questions. The Grounding DINO is a grounding model, which means it detects objects from images and corresponding phrases from sentences. That may be caused by the confidence of the "plant" is not high. We suggest decrease the text_threshold in scripts.


Files Already On Bucket - ListObjects limited to 1000 objects

The listObjects function used when retrieving the files on the bucket (getFilesAlreadyOnBucket) limits the response to 1000 objects. Therefore if the bucket contains more than that amount of objects the function will return only 1000 objects instead of the whole list.

#120 Pull Request


How to log errors?

Note: we cannot switch to Microsoft's proxy server yet, as it does not support our in-depth self-baked client certificate validation yet. Therefore we're "stuck" with ProxyKit, which does its job well :-)
Two open logging questions though:

How to log request errors? We want to log a reason when a request failed, e.g., timeout or server not reachable, etc. how to integrate into the pipeline so that we can do that?
How to log if a client tries to connect without a client certificate?

Hi @drauch ,
ProxyKit is no longer being maintained, sorry not going to spend any time on this. If you need to continue using it, you'll need to fork it.


Post route not found!

I'm using express 4.12.2 and when i set (where router was created previously with router = new express.Router())
router.post('/user', ctrl.create);
router.get('/user', ctrl.find);

everything works fine and both routes are found!! But when i set
router.get('/user', ctrl.find);
router.post('/user', ctrl.create);

the post route are not found!!!!!

Hm, that's weird. I'm not able to reproduce, though. Can you post an entire app that I can copy and paste in a file and run that reproduces the issue?

Here is the example I created to try and reproduce your issue. I used an express router and defined the POST after the GET. I used cURL to make a request to the POST route and it returned back the expected body. Please feel free to play with this example to get it to reproduce your issue. When ready, just post back here and I'll happily re-open the issue if there is a bug in express :)
$ node -pe 'require("express/package").version'
4.12.2
$ cat test.js
var express = require('express');
var router = new express.Router();

router.get('/user', function (req, res) {
  res.send('here is the user');
});

router.post('/user', function (req, res) {
  res.send('user created');
});

var app = express();
app.use(router);
app.listen(3000);
$ node test.js &
[1] 7140
$ curl -i -XPOST http://<IP_ADDRESS>:3000/user
HTTP/1.1 200 OK
X-Powered-By: Express
Content-Type: text/html; charset=utf-8
Content-Length: 12
ETag: W/"c-9f402a8e"
Date: Sun, 08 Mar 2015 02:30:49 GMT
Connection: keep-alive

user created

I have this issue too. Could you tell how to solve this problem ?
Thank you

You need to post a full app I can use to reproduce the issue; from the information provided so far, I cannot see the issue, as I demonstrated above.

Dear dougwilson, could you help to check ?
https://github.com/NeilJee/mywebsite
This project. It is generated by Express.
When the form in index.jade is submitted, it is 404 not found. But actually the /users router has the post handler.
Thank you

It is because your route is defined as POST /users/users (you see, you have the path twice). The paths in https://github.com/NeilJee/mywebsite/blob/master/routes/users.js are already prefixed with /users so they should only be /

Thank you very much. But after I change from /users to / . It still does not work. Could you help to check ?

Hey, can you update your repo with the change you tried? I can verify if it was correct or not. I will not be at a computer for a very long time, so I cannot promise when I'll be able to run any code, only comment on things.

I have updated it.

Ok, cool, the change was what I expected. Are you sure you stopped the server and started it back up after you made the change? If you did, I'll try to run your code sometime within the next 24 hours.

Dear dougwilson,
I restart the server, it works. Sorry, I use the DEBUG mode. I thought I need not to restart the server.
Now it is solved. Thank you very much

can you please tell me how that issue is solved. i'm stuck on the same issue since a week. please help me out with it<EMAIL_ADDRESS>is my mail id.

code in routes/ auth.js file
const { Router } = require("express");
const express = require("express");
const router = express.Router();
// controller
const { createOrUpdateUser } = require("../controllers/auth");
router.post("/create-or-update-user", createOrUpdateUser);
module.exports = router;
code from controllers/auth.js file:
exports.createOrUpdateUser = (req, res) => {
res.json({
data: "Hey u hit create-or-update-user API in routes endpoint",
});
}
browser console :
Cannot GET /api/create-or-update-user

OUTPUT when router.get() is used


SyntaxError: invalid syntax

I have installed the mdutils on Python 3.5 with pip install.
On importing the module I get the following error:
Traceback (most recent call last):
  File "C:\Users\CClaus\projecten\Studytube\navisworks_manage.py", line 1, in <module>
    from mdutils import *
  File "C:\Python35\lib\site-packages\mdutils\__init__.py", line 2, in <module>
    from mdutils.mdutils import MdUtils
  File "C:\Python35\lib\site-packages\mdutils\mdutils.py", line 21, in <module>
    import mdutils.tools.Table
  File "C:\Python35\lib\site-packages\mdutils\tools\__init__.py", line 4, in <module>
    from .MDList import MDList
  File "C:\Python35\lib\site-packages\mdutils\tools\MDList.py", line 28
    md_list += self._add_new_item(item, f "{n_marker}")
                                                     ^
SyntaxError: invalid syntax

Which version have you installed ? Minimum python version is 3.6.

I am using:
3.5.0 (v3.5.0:374f501f4567, Sep 13 2015, 02:27:37) [MSC v.1900 64 bit (AMD64)]
Guess I will need to upgrade to 3.6. Or is there an easy workaround?

As you said, you have to upgrade to 3.6. Mdutils use f-strings and they are available as of Python 3.6. Thus, I think we can close this issue.


Work around for Accept header not working on V2

I tried using the javascript SDK but I kept hitting 404s for the v2 api. It seams the version number that was being set in the request ACCEPT header was being ignored by the server.
Seemed to work if you added v2 to the path (../api/v2/...)

If this is a real issue it is an issue with core and not the client.


Escaped tracer when evaluationg gradients through cpu-parallelised code

Hey Jax team, I'm currently trying to deploy optical modelling code across multiple CPUs for faster model evaluation and optimisation.
Here is a short overview of what the code is doing:
We have a low level function modelling our optical system get_psfs(x, y, osys) that is being deployed across multiple CPUs over a 1-D array of the first two input parameters. I have tried multiple ways of getting this to deploy in parallel with pmap, vmap,. Note the 'osys' object is a non-JAX type defining the optical system we are using so it must be set to static. These are the ways I have tried:
psfs_parallel = jit(vmap(get_psfs, inaxes=(0, 0, None), static_argnums=2, backend=cpu)

import os
os.environ['XLA_FLAGS'] = '--xla_force_host_platform_device_count=100' # we are passing in (100,) shaped vectors
psfs_parallel = pmap(get_psfs, inaxes=(0, 0, None), static_broadcasted_argnums=2)

Note: the XLA_FLAG is set at the start of the script as required.
These are then wrapped by a loss function
def loss(X, data, osys):
    xs, ys = X[:100], X[100:]
    image = np.sum(psfs_parallel(xs, ys, osys), axis=0)
    return np.sum(np.square(data - image))

loss_grad = value_and_grad(loss, static_argnums=(1, 2))

np.sum(psfs_parallel(xs, ys, osys), axis=0) works as expected and can be evaluated many times. The issue arises from trying to calculate the gradients through the loss function.
loss_grad() can be evaluated a single time successfully and returns non-zero and non-nan gradients, but upon calling it a second time throws this error: (The full stack trace is at the bottom of the post!)
UnexpectedTracerError: Encountered an unexpected tracer. Perhaps this tracer escaped through global state from a previously traced function.
The functions being transformed should not save traced values to global state.
Details: Different traces at same level: Traced<ShapedArray(float64[100,100]):JaxprTrace(level=0/0)>, JaxprTrace(level=0/0).
I have searched extensively and can not find how exactly to locate the source of the problem, or how to fix it. I suspect there maybe a problem in the way I am composing this, as the same error arises using either the jitted vmap or pmap. As far as I can tell this can arise from operating on an the attributes of an object rather than passing around native jax types, however my understanding is that this is required for all jitted or grad() functions and I have never encountered this problem before trying to parallelise over CPUs.
Could this be an issue with the way jax deploys across CPUs? Am I composing these functions appropriately for CPU parallelisation?
Unfortunately this code is running on older versions of jax and jaxlib because we have not had time to re-script our underlying modelling code to integrate with jax 0.2x +. We instead run on
jax==0.1.77
jaxlib==0.1.57
Please let me know if you have an idea about whats going on!
Cheers

FilteredStackTrace                        Traceback (most recent call last)
 in
2 # grads = error_grad(X_true, sim_params, data, new_osys)
----> 3 grads = error_grad(X_true, sim_params, data, osys)
 in error_min(X, args, data, osys)
53 #     psfs = model(X, args, osys)
---> 54     psfs = model_min(X, args, osys)
55     error = np.sum(np.square(psfs-data))
 in model_min(X, args, osys)
43 #     print(x)
---> 44     psf_stack = calc_fresnel_psf_vmap(xs_in, ys_in, Fres, wl)
45 #     psf_stack = calc_fresnel_psf_pmap(xs_in, ys_in, Fres, wl)
FilteredStackTrace: jax.core.UnexpectedTracerError: Encountered an unexpected tracer. Perhaps this tracer escaped through global state from a previously traced function.
The functions being transformed should not save traced values to global state.
Details: Different traces at same level: Traced<ShapedArray(float64[100,100]):JaxprTrace(level=0/0)>, JaxprTrace(level=0/0).
The stack trace above excludes JAX-internal frames.
The following is the original exception that occurred, unmodified.

The above exception was the direct cause of the following exception:
UnexpectedTracerError                     Traceback (most recent call last)
 in
1 # new_osys = get_fresnel_osys(aperture, pupil_npix, npix, pix_size, fl, fl_shift, beam_ratio, wl)
2 # grads = error_grad(X_true, sim_params, data, new_osys)
----> 3 grads = error_grad(X_true, sim_params, data, osys)
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/traceback_util.py in reraise_with_filtered_traceback(*args, **kwargs)
134   def reraise_with_filtered_traceback(*args, **kwargs):
135     try:
--> 136       return fun(*args, **kwargs)
137     except Exception as e:
138       if not is_under_reraiser(e):
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/api.py in value_and_grad_f(*args, **kwargs)
809     tree_map(partial(_check_input_dtype_grad, holomorphic), dyn_args)
810     if not has_aux:
--> 811       ans, vjp_py = _vjp(f_partial, *dyn_args)
812     else:
813       ans, vjp_py, aux = _vjp(f_partial, *dyn_args, has_aux=True)
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/api.py in _vjp(fun, *primals, **kwargs)
1854   if not has_aux:
1855     flat_fun, out_tree = flatten_fun_nokwargs(fun, in_tree)
-> 1856     out_primal, out_vjp = ad.vjp(flat_fun, primals_flat)
1857     out_tree = out_tree()
1858   else:
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/interpreters/ad.py in vjp(traceable, primals, has_aux)
108 def vjp(traceable, primals, has_aux=False):
109   if not has_aux:
--> 110     out_primals, pvals, jaxpr, consts = linearize(traceable, *primals)
111   else:
112     out_primals, pvals, jaxpr, consts, aux = linearize(traceable, *primals, has_aux=True)
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/interpreters/ad.py in linearize(traceable, *primals, **kwargs)
95   _, in_tree = tree_flatten(((primals, primals), {}))
96   jvpfun_flat, out_tree = flatten_fun(jvpfun, in_tree)
---> 97   jaxpr, out_pvals, consts = pe.trace_to_jaxpr(jvpfun_flat, in_pvals)
98   out_primals_pvals, out_tangents_pvals = tree_unflatten(out_tree(), out_pvals)
99   assert all(out_primal_pval.is_known() for out_primal_pval in out_primals_pvals)
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/interpreters/partial_eval.py in trace_to_jaxpr(fun, pvals, instantiate, stage_out, bottom, trace_type)
420   with core.new_main(trace_type, bottom=bottom) as main:
421     fun = trace_to_subjaxpr(fun, main, instantiate)
--> 422     jaxpr, (out_pvals, consts, env) = fun.call_wrapped(pvals)
423     assert not env
424     del main
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/linear_util.py in call_wrapped(self, *args, **kwargs)
149
150     try:
--> 151       ans = self.f(*args, **dict(self.params, **kwargs))
152     except:
153       # Some transformations yield from inside context managers, so we have to
 in error_min(X, args, data, osys)
52 def error_min(X, args, data, osys):
53 #     psfs = model(X, args, osys)
---> 54     psfs = model_min(X, args, osys)
55     error = np.sum(np.square(psfs-data))
56     return error
 in model_min(X, args, osys)
42
43 #     print(x)
---> 44     psf_stack = calc_fresnel_psf_vmap(xs_in, ys_in, Fres, wl)
45 #     psf_stack = calc_fresnel_psf_pmap(xs_in, ys_in, Fres, wl)
46     psf_arrays = fluxes_in * psf_stack.reshape([Nims, Nstars, npix, npix])
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/traceback_util.py in reraise_with_filtered_traceback(*args, **kwargs)
134   def reraise_with_filtered_traceback(*args, **kwargs):
135     try:
--> 136       return fun(*args, **kwargs)
137     except Exception as e:
138       if not is_under_reraiser(e):
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/api.py in f_jitted(*args, **kwargs)
206       _check_arg(arg)
207     flat_fun, out_tree = flatten_fun(f, in_tree)
--> 208     out = xla.xla_call(
209         flat_fun,
210         *args_flat,
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/core.py in bind(self, fun, *args, **params)
1144
1145   def bind(self, fun, *args, **params):
-> 1146     return call_bind(self, fun, *args, **params)
1147
1148   def process(self, trace, fun, tracers, params):
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/core.py in call_bind(primitive, fun, *args, **params)
1136   else:
1137     tracers = map(top_trace.full_raise, args)
-> 1138     outs = primitive.process(top_trace, fun, tracers, params)
1139   return apply_todos(env_trace_todo(), map(full_lower, outs))
1140
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/core.py in process(self, trace, fun, tracers, params)
1147
1148   def process(self, trace, fun, tracers, params):
-> 1149     return trace.process_call(self, fun, tracers, params)
1150
1151   def post_process(self, trace, out_tracers, params):
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/interpreters/ad.py in process_call(self, call_primitive, f, tracers, params)
273     update_params = call_param_updaters.get(call_primitive)
274     new_params = update_params(params, nz_tangents) if update_params else params
--> 275     result = call_primitive.bind(f_jvp, *primals, *nonzero_tangents, **new_params)
276     primal_out, tangent_out = tree_unflatten(out_tree_def(), result)
277     return [JVPTracer(self, p, t) for p, t in zip(primal_out, tangent_out)]
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/core.py in bind(self, fun, *args, **params)
1144
1145   def bind(self, fun, *args, **params):
-> 1146     return call_bind(self, fun, *args, **params)
1147
1148   def process(self, trace, fun, tracers, params):
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/core.py in call_bind(primitive, fun, *args, **params)
1136   else:
1137     tracers = map(top_trace.full_raise, args)
-> 1138     outs = primitive.process(top_trace, fun, tracers, params)
1139   return apply_todos(env_trace_todo(), map(full_lower, outs))
1140
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/core.py in process(self, trace, fun, tracers, params)
1147
1148   def process(self, trace, fun, tracers, params):
-> 1149     return trace.process_call(self, fun, tracers, params)
1150
1151   def post_process(self, trace, out_tracers, params):
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/interpreters/partial_eval.py in process_call(self, primitive, f, tracers, params)
179                   else PartialVal.unknown(mapped_aval(pval[0]))
180                   for pval, is_mapped in zip(in_pvals, params['mapped_invars'])]
--> 181     jaxpr, out_pvals, consts, env_tracers = self.partial_eval(
182         f, in_pvals, partial(primitive.bind, **params))
183     if primitive.map_primitive:
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/interpreters/partial_eval.py in partial_eval(self, f, pvals, app)
282     out_consts, consts = split_list(out_flat, [len(out_flat)-len(jaxpr.constvars)])
283     out_pvs = map(PartialVal, zip(out_avals, out_consts))
--> 284     env_tracers = map(self.full_raise, env)
285     return jaxpr, out_pvs, consts, env_tracers
286
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/util.py in safe_map(f, *args)
33   for arg in args[1:]:
34     assert len(arg) == n, 'length mismatch: {}'.format(list(map(len, args)))
---> 35   return list(map(f, *args))
36
37 def unzip2(xys):
/import/morgana2/snert/louis/anaconda3/envs/morph/lib/python3.8/site-packages/jax/core.py in full_raise(self, val)
390                                  .format(val, self))
391     else:  # val._trace.level == self.level:
--> 392       raise escaped_tracer_error("Different traces at same level: {}, {}"
393                                  .format(val, self))
394
UnexpectedTracerError: Encountered an unexpected tracer. Perhaps this tracer escaped through global state from a previously traced function.
The functions being transformed should not save traced values to global state.
Details: Different traces at same level: Traced<ShapedArray(float64[100,100]):JaxprTrace(level=0/0)>, JaxprTrace(level=0/0).

Okay so I have found a work around to this. I am able to successfully calculate gradients through this system by creating a copy of the osys object using copy.deepcopy() before every call of loss_grad().
I am curious if there is a better way to solve this problem?

I think you might be storing in osys some intermediate arrays in your get_psfs function, and you are not supposed to do this, because when operating under jax transformations such as jit/vmap/grad, those arrays are not really arrays, but tracers, and you should not 'capture' them in your 'static' data structures.
By the way, a much better approach to 'static' data structures (that helps you not do errors) is to use flax.struct.dataclass.
Those are frozen dataclasses, so you they oblige you not to store intermediate data inside of them. Moreover they help you distinguish 'mutable' data such as arrays from compile-time static data.

Perhaps with jax.checking_leaks(): can help you narrow down where the tracer leak happens in get_psfs

Since this seems to be a user-function not being pure, and not a JAX bug, let me close this issue.


Improve check that configures a restricted local devappserver sandbox

I signed it!

What is the next step? (Cannot push).

@ludo You mean merge? If you can't do that, I can.

I see the problem. I think you're in the group with a different username (@ludoch instead of @champenois ) than you used here. I'll merge it.


Restart the Fluentbit pods when a Filter/Parser/Input/Output is created/removed.

Is your feature request related to a problem? Please describe.
Currently, the operator consists of two controllers: fluentbit-controller and fluentbit-config-controller.  Both controllers do not share resources and in this way when we deploy a ClusterFilter for example after the FB Daemonset  is created, the new filter will not be applied to the fluent-bit.
The fluentbit-config-controller will pick this Filter and will add it to the Secret containing all the configurations, but nothing will restart the fluent-bit pods.
I think that one operator should handle its components end-to-end and such dynamic configurations should be also possible, so please consider this scenario.
Describe the solution you'd like
I was thinking about the following solution which follows the K8S immutability approach.

The data of the configuration secret can be hashed and added as a suffix of the secret name (the last 5 chars are enough I think).
After the fluentbit-config-controller update the Secret, it can add the Secret name or the secret hash as an annotation to the FluentBit resource. It could be done with a simple Patch request.
After the Patch request, the fb-controller will take the new FluentBit object and will update the FluentBit Daemonset with the new SecretRef (taken from the annotation)
The K8S will automatically restart the pods when the SecretRef is changed.

Also with this approach the fluentbit-config-controller can keep only last two config secrets in case of debugging and the other could be deleted.

Additional context
In case you like the mentioned approach I can open a PR with the implementation. I am also open to discussions of other possible approaches to this scenario.

Thanks for engaging @Kristian-ZH
First, the creation, update, and deletion of Filter/Parser/Input/Output will trigger the configuration reload of fluent bit. This will happen within the pod, so the pod does not need to restart.
I am not sure what you mean by not be applied to the fluent bit. If this means the fluent bit does not restart, this is as expected.
If this means the filter no worked, maybe this is a bug.
Can you provide more information to determine if this is a bug?

Hi,
Yes I did not know about this feature, because I see that FB still does not provide dynamic support: https://github.com/fluent/fluent-bit/issues/365
But this still does not work entirely in my setup. The new configurations are dynamically injected in the /fluent-bit/config directory but the FB pods continue to use the old configurations and their behaviour is not getting changed.
How to reproduce it.

Deploy CustomInput (tail) probably some ClusterFilters (in my setup I have lua filters) and a ClusterOutput (in my setup I have custom Output plugin).
Then you can try to delete the Filter or the Output
You can verify that the configurations in the fb dir are changed but the fb behaviour does not change and still works with the initial configurations.

Can you please check it and tell me if the bug exists in your setup as well or if it is something on my side?

@Kristian-ZH Fluent Operator will restart the fluentbit process whenever the config is updated without restarting the fuentbit pod, you can take a look at the code here:
https://github.com/fluent/fluent-operator/blob/master/cmd/fluent-watcher/fluentbit/main.go
https://github.com/fluent/fluent-operator/blob/master/cmd/fluent-watcher/fluentbit/Dockerfile#L16
It's a bug to fix if it doesn't pickup the latest config changes

k8s version: 1.22.16
container runtime: containerd://1.5.13
The fluent operator version and the fluent-bit version.
the fluent operator version: I use this commit: https://github.com/fluent/fluent-operator/commit/953d59600790cf33e07bb9cf2acf6a660227e82a
I also install the operator via helm: helm install fluent-operator --create-namespace -n fluent charts/fluent-operator/  --set containerRuntime=containerd

Native fluentbit does not support dynamic loading configuration. You need to use our packaged image  kubesphere/fluent-bit:v1.9.9.

Ahh, got it. Will try it :), thanks.
Can you just share if kubesphere/fluent-bit:v1.9.9 is the same as fluent/fluent-bit:v1.9.9 + the dynamic configurations?
E.g. All the features and bug fixes from the original fluent-bit will exist but it has yet another dynamic config feature.

Its base image is the official fluent/fluent-bit:1.9.9, you'll understand it if you take a look at https://github.com/fluent/fluent-operator/blob/master/cmd/fluent-watcher/fluentbit/Dockerfile#L16

I have tested it with the kubesphere/fluent-bit:v1.9.9 now but it still does not load the configuration dynamically

Can you show the logs for it? It usually changes as its secret changes.

Sure,
Here I deployed FB with just one input plugin (tail). After that, I applied a ClusterOutput (stdout).
In the logs there are no indications that a new configuration is loaded:
Fluent Bit v1.9.9
* Copyright (C) 2015-2022 The Fluent Bit Authors
* Fluent Bit is a CNCF sub-project under the umbrella of Fluentd
* https://fluentbit.io

[2022/11/24 12:40:39] [ info] [fluent bit] version=1.9.9, commit=5c03b2e555, pid=1
[2022/11/24 12:40:39] [ info] [storage] version=1.3.0, type=memory-only, sync=normal, checksum=disabled, max_chunks_up=128
[2022/11/24 12:40:39] [ info] [cmetrics] version=0.3.7
[2022/11/24 12:40:39] [ info] [output:null:null.0] worker #0 started
[2022/11/24 12:40:39] [ info] [http_server] listen iface=<IP_ADDRESS> tcp_port=2020
[2022/11/24 12:40:39] [ info] [sp] stream processor started
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=528601 watch_fd=1 name=/var/log/containers/apiserver-proxy-jmc8x_kube-system_proxy-63fdbc80edf4c7f501158707ab2c95d071a183ce1e889766e6b13cad8abe13e0.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=134431 watch_fd=2 name=/var/log/containers/csi-driver-node-l6cgw_kube-system_csi-driver-66c768bd4c72399cbe7f275c7b06397bd0756a62681be71139c5584d4bbd7d61.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=790551 watch_fd=3 name=/var/log/containers/fluent-bit-czkxh_fluent_install-plugin-11db44f0bd42790452918814579cdce3a63a3e97f5f940ea185f23070d6e5272.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=790607 watch_fd=4 name=/var/log/containers/fluent-bit-dc6lh_fluent_install-plugin-fe77ce468ab92dee06946d8e43a8a86dc3d0b9c6eb4a3f3184d1091b0b29d148.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=790443 watch_fd=5 name=/var/log/containers/loki-0_shoot--i355448--local-shoot_loki-b372376e5a6bde14b178b7c67d641aaa61ad642dd7abe4484b1397bf3f378733.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=396583 watch_fd=6 name=/var/log/containers/network-problem-detector-host-nmbcr_kube-system_network-problem-detector-host-d7ea484d7847c82dd0fb9fda729c17715cea3a37a9af1f9aded3948dfc017bb6.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=267989 watch_fd=7 name=/var/log/containers/network-problem-detector-pod-fdhrv_kube-system_network-problem-detector-pod-3c8e9c59b5d21ae4ce5664d68812a7338e60f4c9f2ddb148b8862510c90f9aec.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=790566 watch_fd=8 name=/var/log/containers/shoot-dns-service-55f98795b8-76b8t_shoot--i355448--local-shoot_shoot-dns-service-613204b12810e79ee79c10a3998bea5349a178422ae0fda44efe436415808a42.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=134454 watch_fd=9 name=/var/log/containers/calico-node-jkwmw_kube-system_calico-node-7e9bcd437bf2350233e060bcd91c94ba77000108bce68e6de2de8bfd2fef0216.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=790490 watch_fd=10 name=/var/log/containers/fluent-bit-dc6lh_fluent_fluent-bit-cdaea96840cd444442cd8e09745126f88131d3dfdcb91a74fe04a7c72febc639.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=134393 watch_fd=11 name=/var/log/containers/kube-proxy-worker-rm668-v1.22.16-h5z2g_kube-system_kube-proxy-c8d6fa28be0be85837efafa0dd2943060ab765a45133f915f921798c3f45e847.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=396589 watch_fd=12 name=/var/log/containers/ofd-fluentbit-qdwcv_logging_fluentbit-407ccd89c880d080d4f66db73ee16a07510a2d3dde3978fec21a43da2fc389b3.log
[2022/11/24 12:40:39] [ info] [input:tail:tail.0] inotify_fs_add(): inode=790615 watch_fd=13 name=/var/log/containers/fluent-bit-czkxh_fluent_fluent-bit-4777c4feb89d47450f983367aae322339affc91ff7c17b89d318f6bb7477162f.log
[2022/11/24 12:41:44] [ info] [input:tail:tail.0] inotify_fs_remove(): inode=790490 watch_fd=10
[2022/11/24 12:41:44] [ info] [input:tail:tail.0] inotify_fs_remove(): inode=790607 watch_fd=4
[2022/11/24 12:42:19] [ info] [input:tail:tail.0] inotify_fs_add(): inode=790482 watch_fd=14 name=/var/log/containers/shoot-dns-service-55f98795b8-76b8t_shoot--i355448--local-shoot_shoot-dns-service-c20fc4506fe0bb8e49f9eaae6531cfe1e51270d87ac7b1609d5701e8e596ba0a.log
[2022/11/24 12:42:19] [ info] [input:tail:tail.0] inotify_fs_remove(): inode=790566 watch_fd=8

Ahh I think that I found the problem,
Now I saw that in your Dockerfile, you are using this entrypoint ENTRYPOINT ["/fluent-bit/bin/fluent-bit-watcher"]
But in the fluent-bit I have command field in the which loads my custom output plugin and it looks like this:
    - /fluent-bit/bin/fluent-bit
    - -e
    - /fluent-bit/plugins/out_loki.so
    - -c
    - /fluent-bit/config/fluent-bit.conf

And what I think is that it overrides your entrypoint and does not start the fluent-bit-watcher bynary

Ahh I think that I found the problem, Now I saw that in your Dockerfile, you are using this entrypoint ENTRYPOINT ["/fluent-bit/bin/fluent-bit-watcher"] But in the fluent-bit I have command field in the which loads my custom output plugin and it looks like this:
    - /fluent-bit/bin/fluent-bit
    - -e
    - /fluent-bit/plugins/out_loki.so
    - -c
    - /fluent-bit/config/fluent-bit.conf

And what I think is that it overrides your entrypoint and does not start the fluent-bit-watcher bynary

Bingo! Don't start to run before you can walk :)

Now the question is: How can I start the watcher binary and at the same time load a custom plugin to the fluent-bit :D
As I see the watcher binary does not support -e argument

You might add a flag to the watcher https://github.com/fluent/fluent-operator/blob/master/cmd/fluent-watcher/fluentbit/main.go#L189

Yes...
Okay thanks, as the problem is in my setup and it is not the one I have mentioned in the issue I will close it.
Thanks for the support. I will open a PR with the additional flag probably once I test it and it works as expected :)

/fluent-bit/plugins/out_loki.so

FluentBit supports loki plugin, why using a custom loki plugin?

Long story short, because our setup needs a dynamic hostpath configuration based on the tags and the loki plugin is not powerful to achieve this. That's why we are using a fork of the plugin: https://github.com/gardener/logging


Expression formatter

I see that only #113 and #147 remains not solved. I will move the priority for them as this feature is important to finish.


Add OGLog and DebugServer implementation Part 1

Codecov Report
Attention: 178 lines in your changes are missing coverage. Please review.

Comparison is base (8d9b721) 11.11% compared to head (db796d3) 25.00%.

Files
Patch %
Lines

Sources/_OpenGraph/Debug/og-debug-server.mm
31.97%
134 Missing :warning:

Sources/_OpenGraph/Debug/OGLog.cpp
9.37%
29 Missing :warning:

Sources/_OpenGraph/Util/wrap_iter.hpp
0.00%
11 Missing :warning:

Sources/_OpenGraph/Util/vector.hpp
0.00%
4 Missing :warning:

Additional details and impacted files
@@             Coverage Diff             @@
##             main       #8       +/-   ##
===========================================
+ Coverage   11.11%   25.00%   +13.88%
===========================================
  Files           9       13        +4
  Lines          36      280      +244
===========================================
+ Hits            4       70       +66
- Misses         32      210      +178

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Compatibility with Immuni or other similar apps

Hi!
I checked for an answer, but couldn't find one, so I hope I'm not redundant.
I would like to understand if Immuni and Corona-Warn communicate with each other since (to my shallow knowledge and understanding of the technology used) they seem to work in a pretty similar way.
If they communicate, great!
If they don't, is it something that could be implemented? What is the purpose of having two (or more, I don't know about other countries) apps that work in the same way but cannot communicate with each other? Especially in a moment when borders are open and people are restarting to travel.
Privacy issues?

I would like to add to this that, even if it is not possible to make the Apps communicate with each other, it would be great if one could have more than one exposure tracking app active... I live near the swiss border and when I try to activate exposure tracking in the Swiss App it automaticalle disables tracking in this App and vice versa. Is this due to the API provided by Google / Apple?

My understanding is that "in theory" making corona-warn-app, swisscovid and immuni compatible is as "simple" as exchanging the infected keys between the national servers.
Problematic is, that any app using googles and apples API can (and does) use different criteria. So in some corner cases, one app might classify a contact as borderline low risk (displayed as low risk), while an other app presented with the same keys classifies the contact as border line high risk (displayed as high risk).
An other problem (at least in my opinion) is that Swisscovid shows "day since potential exposure" (see screenshoot) - that could become a problem as corona-warn-app users did not sign up for that. (Privacy Concern) Note that swisscovid is very intentionally trying to access information the API normally would not want to expose (see API Usage).

... when I try to activate exposure tracking in the Swiss App it automaticalle disables tracking in this App and vice versa. Is this due to the API provided by Google / Apple?

Yep, in practice only one app can access the API.
The API has a hard limit on how many request it is allowing per day. Page 9, provideDiagnosisKeys()
Any app will try to use the available API calls.
Corona Warn App is close to exhausting the apple limit of 20 API calls per day by providing the infected key files of the past 14 days, resulting in 14 API calls.
Swisscovid  provides the infected key files for 10 days - allowing swisscovid to check twice a day. DP-3T API Usage
There are some discussion for corona-warn-app to use the API calls more efficiently - but that is discussion and would likely be used to update the status more frequently (not to spare API calls for foreign apps).
Swisscovid intentionally calls the API inefficiently (passing each days infected key file separately) so that the App can display "day(s) since potential exposure". DP-3T API Usage

The EU Interoperability Gateway has gone live. See https://www.coronawarn.app/en/blog/2020-10-19-version-1-5/.
Immuni from Italy is one of the first countries to join the EU Interoperability Gateway.

Full list of EU apps
List of countries currently connected with Germany to EU Interoperability Gateway

https://github.com/corona-warn-app/cwa-wishlist/issues/79#issuecomment-713655496 is also related.

Compatibility is being continually expanded since CWA version 1.5 by using the EU Interoperability Gateway. I think this feature request is solved then.

Corona-Warn-App Open Source Team


pkg/httpclient: Close stream http response body when stopping

This unblocks the SSE decoder if the stop request comes in while we are blocked in a read.

And res.Body.Close() makes the decoder return immediately?  Awesome!  It was really bugging me that a goroutine could get stuck there (and pass the problem along if you tried to drain the stream after requesting exit!).
I had to read slowly to grok the extra channel and goroutine, but LGTM.

I wonder how this would compare to separating the byte read from the decoding and put it with the other select?  I'm not sure which would be preferable; lifting the read and joining the selects would get rid of a goroutine and channel, but since it's putting things into a reflective select I'm not sure if that's either faster or more readable.

I'm not sure how the byte read could go in a select, it's not a channel.


Fly local script disallows you to sit in seat objects

This is intentional... What's the point of flying if you're sitting?

This is intentional... What's the point of flying if you're sitting?

Actually, I mean after flying, you can't sit on any seats.


Label nan values

Add label to invalid input

@MichielVieijra merge conflicts are resolved. Git Pull this branch first, than resolve the review topics.


Test failure in optimize

Travis started failing after adding a test that uses the global numpy random state for #10470. Failure appears in _trustregion_constr/tests/test_canonical_constraint.py.
Error message:
See this travis job:
https://travis-ci.org/scipy/scipy/jobs/559584051#L1319
        if np.any(f0[mask] < lb[mask]) or np.any(f0[mask] > ub[mask]):
>           raise ValueError("`x0` is infeasible with respect to some "
                             "inequality constraint with `keep_feasible` "
                             "set to True.")constraint with `keep_feasible` set to True.

It looks like x0 is using the global random even though there is a fixed seed random state used in that test.
https://github.com/scipy/scipy/blob/84293713e3d193ddf535d778ae80584449df9e11/scipy/optimize/_trustregion_constr/tests/test_canonical_constraint.py#L159-L161

Fixed by https://github.com/scipy/scipy/pull/10470/commits/c219a45f422270b2ecbc9ebb2f8b3b91f70b15d0 (merged as https://github.com/scipy/scipy/commit/35f86bc33016dc88fc4340e4dc3f23bf86e4f311) which uses the fixed seed prng for x0 as well.


Add sample Swagger and readme and instructions

a hello world example for autorest users to practice running autorest

Closing as there are many examples of using Autorest and the docs have greatly improved since this issue was filed.


Get more detailed data from government

Found a site https://korona.kans.io/
They got a nice idea what info is demanded.

https://korona.kans.io/
is getting infro from
https://w3qa5ydb4l.execute-api.eu-west-1.amazonaws.com/prod/finnishCoronaData
I guess its manually created. Is there a api what is managed from estonian government?

ATM everything comes from Terviseamet press releases, we hope to improve this soon.


Support for DATETIME columns in DBRunner

fix https://github.com/k1LoW/runn/issues/124
Reason for concern

Isn't the DATETIME format different for different types of databases?
Can you identify the format from the DB connection driver?
No generic DateTime formatting library exists?
What time zone should the date be in?
How to implement the verification code?
Support other formats besides DATETIME?
The following types exist, but they are all treated as numbers
DECIMAL, BOOL, INT, BIGINT

I tried running it locally and got an error.
It seems that the layout is not well specified.
invalid datetime column: evaluated created_at, but got DATETIME(2022-09-01 19:07:30): parsing time "2016-01-02 15:04:05" as "2022-09-01 19:07:30": cannot parse "-01-02 15:04:05" as "2"


Build error on Windows ARM

Configure:
[1/2] "D:/downloads/tools/cmake-3.25.1-windows/cmake-3.25.1-windows-i386/bin/cmake.exe" -E chdir ".." "D:/downloads/tools/cmake-3.25.1-windows/cmake-3.25.1-windows-i386/bin/cmake.exe" "D:/buildtrees/libre/src/v3.0.0-dbb7e97127.clean" "-G" "Ninja" "-DCMAKE_BUILD_TYPE=Release" "-DCMAKE_INSTALL_PREFIX=D:/packages/libre_arm64-windows" "-DFETCHCONTENT_FULLY_DISCONNECTED=ON" "-DCMAKE_MAKE_PROGRAM=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe" "-DBUILD_SHARED_LIBS=ON" "-DVCPKG_CHAINLOAD_TOOLCHAIN_FILE=C:/a/1/s/scripts/toolchains/windows.cmake" "-DVCPKG_TARGET_TRIPLET=arm64-windows" "-DVCPKG_SET_CHARSET_FLAG=ON" "-DVCPKG_PLATFORM_TOOLSET=v143" "-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON" "-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON" "-DCMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY=ON" "-DCMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP=TRUE" "-DCMAKE_VERBOSE_MAKEFILE=ON" "-DVCPKG_APPLOCAL_DEPS=OFF" "-DCMAKE_TOOLCHAIN_FILE=C:/a/1/s/scripts/buildsystems/vcpkg.cmake" "-DCMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION=ON" "-DVCPKG_CXX_FLAGS=" "-DVCPKG_CXX_FLAGS_RELEASE=" "-DVCPKG_CXX_FLAGS_DEBUG=" "-DVCPKG_C_FLAGS=" "-DVCPKG_C_FLAGS_RELEASE=" "-DVCPKG_C_FLAGS_DEBUG=" "-DVCPKG_CRT_LINKAGE=dynamic" "-DVCPKG_LINKER_FLAGS=" "-DVCPKG_LINKER_FLAGS_RELEASE=" "-DVCPKG_LINKER_FLAGS_DEBUG=" "-DVCPKG_TARGET_ARCHITECTURE=arm64" "-DCMAKE_INSTALL_LIBDIR:STRING=lib" "-DCMAKE_INSTALL_BINDIR:STRING=bin" "-D_VCPKG_ROOT_DIR=C:/a/1/s" "-D_VCPKG_INSTALLED_DIR=D:/installed" "-DVCPKG_MANIFEST_INSTALL=OFF"
-- The C compiler identification is MSVC 19.35.32217.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.35.32215/bin/Hostx64/arm64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Performing Test COMPILER_SUPPORTS_WATOMIC
-- Performing Test COMPILER_SUPPORTS_WATOMIC - Failed
-- Looking for backtrace
-- Looking for backtrace - not found
-- Could NOT find Backtrace (missing: Backtrace_LIBRARY Backtrace_INCLUDE_DIR)
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - not found
-- Found Threads: TRUE
-- Found ZLIB: optimized;D:/installed/arm64-windows/lib/zlib.lib;debug;D:/installed/arm64-windows/debug/lib/zlibd.lib (found version "1.2.13")
-- Found OpenSSL: optimized;D:/installed/arm64-windows/lib/libcrypto.lib;debug;D:/installed/arm64-windows/debug/lib/libcrypto.lib (found suitable version "3.1.0", minimum required is "1.1.0")
-- Looking for arc4random
-- Looking for arc4random - not found
-- Looking for syslog.h
-- Looking for syslog.h - not found
-- Looking for getopt.h
-- Looking for getopt.h - not found
-- Looking for unistd.h
-- Looking for unistd.h - not found
-- Looking for res_ninit
-- Looking for res_ninit - not found
-- Looking for thrd_create
-- Looking for thrd_create - not found
-- Looking for accept4
-- Looking for accept4 - not found
-- Looking for sys/prctl.h
-- Looking for sys/prctl.h - not found
-- Could NOT find Backtrace (missing: Backtrace_LIBRARY Backtrace_INCLUDE_DIR)
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    FETCHCONTENT_FULLY_DISCONNECTED
    _VCPKG_ROOT_DIR

-- Build files have been written to: D:/buildtrees/libre/arm64-windows-rel
[2/2] "D:/downloads/tools/cmake-3.25.1-windows/cmake-3.25.1-windows-i386/bin/cmake.exe" -E chdir "../../arm64-windows-dbg" "D:/downloads/tools/cmake-3.25.1-windows/cmake-3.25.1-windows-i386/bin/cmake.exe" "D:/buildtrees/libre/src/v3.0.0-dbb7e97127.clean" "-G" "Ninja" "-DCMAKE_BUILD_TYPE=Debug" "-DCMAKE_INSTALL_PREFIX=D:/packages/libre_arm64-windows/debug" "-DFETCHCONTENT_FULLY_DISCONNECTED=ON" "-DCMAKE_MAKE_PROGRAM=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe" "-DBUILD_SHARED_LIBS=ON" "-DVCPKG_CHAINLOAD_TOOLCHAIN_FILE=C:/a/1/s/scripts/toolchains/windows.cmake" "-DVCPKG_TARGET_TRIPLET=arm64-windows" "-DVCPKG_SET_CHARSET_FLAG=ON" "-DVCPKG_PLATFORM_TOOLSET=v143" "-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON" "-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON" "-DCMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY=ON" "-DCMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP=TRUE" "-DCMAKE_VERBOSE_MAKEFILE=ON" "-DVCPKG_APPLOCAL_DEPS=OFF" "-DCMAKE_TOOLCHAIN_FILE=C:/a/1/s/scripts/buildsystems/vcpkg.cmake" "-DCMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION=ON" "-DVCPKG_CXX_FLAGS=" "-DVCPKG_CXX_FLAGS_RELEASE=" "-DVCPKG_CXX_FLAGS_DEBUG=" "-DVCPKG_C_FLAGS=" "-DVCPKG_C_FLAGS_RELEASE=" "-DVCPKG_C_FLAGS_DEBUG=" "-DVCPKG_CRT_LINKAGE=dynamic" "-DVCPKG_LINKER_FLAGS=" "-DVCPKG_LINKER_FLAGS_RELEASE=" "-DVCPKG_LINKER_FLAGS_DEBUG=" "-DVCPKG_TARGET_ARCHITECTURE=arm64" "-DCMAKE_INSTALL_LIBDIR:STRING=lib" "-DCMAKE_INSTALL_BINDIR:STRING=bin" "-D_VCPKG_ROOT_DIR=C:/a/1/s" "-D_VCPKG_INSTALLED_DIR=D:/installed" "-DVCPKG_MANIFEST_INSTALL=OFF"
-- The C compiler identification is MSVC 19.35.32217.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.35.32215/bin/Hostx64/arm64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Performing Test COMPILER_SUPPORTS_WATOMIC
-- Performing Test COMPILER_SUPPORTS_WATOMIC - Failed
-- Looking for backtrace
-- Looking for backtrace - not found
-- Could NOT find Backtrace (missing: Backtrace_LIBRARY Backtrace_INCLUDE_DIR)
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - not found
-- Found Threads: TRUE
-- Found ZLIB: optimized;D:/installed/arm64-windows/lib/zlib.lib;debug;D:/installed/arm64-windows/debug/lib/zlibd.lib (found version "1.2.13")
-- Found OpenSSL: optimized;D:/installed/arm64-windows/lib/libcrypto.lib;debug;D:/installed/arm64-windows/debug/lib/libcrypto.lib (found suitable version "3.1.0", minimum required is "1.1.0")
-- Looking for arc4random
-- Looking for arc4random - not found
-- Looking for syslog.h
-- Looking for syslog.h - not found
-- Looking for getopt.h
-- Looking for getopt.h - not found
-- Looking for unistd.h
-- Looking for unistd.h - not found
-- Looking for res_ninit
-- Looking for res_ninit - not found
-- Looking for thrd_create
-- Looking for thrd_create - not found
-- Looking for accept4
-- Looking for accept4 - not found
-- Looking for sys/prctl.h
-- Looking for sys/prctl.h - not found
-- Could NOT find Backtrace (missing: Backtrace_LIBRARY Backtrace_INCLUDE_DIR)
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    FETCHCONTENT_FULLY_DISCONNECTED
    _VCPKG_ROOT_DIR

-- Build files have been written to: D:/buildtrees/libre/arm64-windows-dbg

Build:
[35/238] C:\PROGRA~1\MICROS~1\2022\ENTERP~1\VC\Tools\MSVC\1435~1.322\bin\Hostx64\arm64\cl.exe   -DARCH=\"ARM64\" -DHAVE_ATOMIC -DHAVE_INET6 -DHAVE_IO_H -DHAVE_SELECT -DHAVE_UNIXSOCK=1 -DOS=\"Windows\" -DUSE_DTLS -DUSE_OPENSSL -DUSE_OPENSSL_AES -DUSE_OPENSSL_DTLS -DUSE_OPENSSL_HMAC -DUSE_OPENSSL_SRTP -DUSE_TLS -DUSE_ZLIB -DVERSION=\"3.0.0\" -DVER_MAJOR=3 -DVER_MINOR=0 -DVER_PATCH=0 -DWIN32 -D_CRT_SECURE_NO_WARNINGS -D_GNU_SOURCE -D_WIN32_WINNT=0x0600 -ID:\buildtrees\libre\src\v3.0.0-dbb7e97127.clean\. -ID:\buildtrees\libre\src\v3.0.0-dbb7e97127.clean\include -ID:\installed\arm64-windows\include /nologo /DWIN32 /D_WINDOWS /W3 /utf-8 /MP  /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  /W3 /showIncludes /FoCMakeFiles\re-objs.dir\src\mem\mem.c.obj /FdCMakeFiles\re-objs.dir\ /FS -c D:\buildtrees\libre\src\v3.0.0-dbb7e97127.clean\src\mem\mem.c
FAILED: CMakeFiles/re-objs.dir/src/mem/mem.c.obj
C:\PROGRA~1\MICROS~1\2022\ENTERP~1\VC\Tools\MSVC\1435~1.322\bin\Hostx64\arm64\cl.exe   -DARCH=\"ARM64\" -DHAVE_ATOMIC -DHAVE_INET6 -DHAVE_IO_H -DHAVE_SELECT -DHAVE_UNIXSOCK=1 -DOS=\"Windows\" -DUSE_DTLS -DUSE_OPENSSL -DUSE_OPENSSL_AES -DUSE_OPENSSL_DTLS -DUSE_OPENSSL_HMAC -DUSE_OPENSSL_SRTP -DUSE_TLS -DUSE_ZLIB -DVERSION=\"3.0.0\" -DVER_MAJOR=3 -DVER_MINOR=0 -DVER_PATCH=0 -DWIN32 -D_CRT_SECURE_NO_WARNINGS -D_GNU_SOURCE -D_WIN32_WINNT=0x0600 -ID:\buildtrees\libre\src\v3.0.0-dbb7e97127.clean\. -ID:\buildtrees\libre\src\v3.0.0-dbb7e97127.clean\include -ID:\installed\arm64-windows\include /nologo /DWIN32 /D_WINDOWS /W3 /utf-8 /MP  /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  /W3 /showIncludes /FoCMakeFiles\re-objs.dir\src\mem\mem.c.obj /FdCMakeFiles\re-objs.dir\ /FS -c D:\buildtrees\libre\src\v3.0.0-dbb7e97127.clean\src\mem\mem.c
D:\buildtrees\libre\src\v3.0.0-dbb7e97127.clean\include\re_atomic.h(617): error C2065: 'mo': undeclared identifier

the relevant code:
static __forceinline unsigned __int64 _re_atomic_load(
	size_t size, const void *a)
{
	unsigned __int64 v;
	assert(size == 1u || size == 2u || size == 4u || size == 8u);
	_ReadWriteBarrier();

	switch (size) {
	case 1u:
		v = __iso_volatile_load8((const unsigned __int8*)a);
		break;
	case 2u:
		v = __iso_volatile_load16((const unsigned __int16*)a);
		break;
	case 4u:
		v = __iso_volatile_load32((const unsigned __int32*)a);
		break;
	default:
		v = __iso_volatile_load64((const unsigned __int64*)a);
		break;
	}

	_ReadWriteBarrier();

	if (mo != re_memory_order_relaxed && mo <= re_memory_order_acquire)  // <---!
		__dmb(0x0b); /* dmb ish */

	_ReadWriteBarrier();

	return v;
}

what is "mo" ?

@Lastique

Yes, this is supposed to be a memory order argument. Please, check if #766 fixes this.


Allow passing data attributes to FieldError

Provide a general summary of the feature here
Most react-aria components (e.g. Label and Text) allow data attributes to be passed to the underlying DOM element. FieldError does not pass any data attributes to Text, so the data attributes do not get passed to the underlying DOM element. I have the capacity to open an MR to implement this feature.
🤔 Expected Behavior?
Data attributes passed to FieldError should be passed on to the underlying DOM element (e.g. span).
😯 Current Behavior
Because FieldError uses render props, only these props get spread into Text:

className
style
children
data-rac

💁 Possible Solution
Component props can be passed to the filterDOMProps, and the props returned from the util can be spread into Text.
🔦 Context
Our component library passes a data- attribute to HTML elements in order to target them for style resets. We also use data attributes (e.g. data-size="large") to target components for conditional styling. We can use class names to get around this, but we use data attributes pretty extensively.
💻 Examples
React
 <FieldError data-size="large">An error message</FieldError>

DOM Output
<span class="react-aria-FieldError" id="react-aria9938127803-:r16:" slot="errorMessage" data-rac="">
  An error message
</span>

🧢 Your Company/Team
Zapier
🕷 Tracking Issue
No response

I think this seems reasonable if you'd like to open a PR.
Thanks!

Thanks for the quick response! I'm aiming to open a PR later today.
We use data attributes to conditionally apply styles. For example, we have a compact version of our fields, and those versions have different styles. So we want to pass data-size="compact" or data-compact="true" to FieldError in order to target that span to apply certain styles only when the attribute is present.


endpoint: Create redirects before bpf map updates.

Create new redirects and generate the new proxy policy before updating
bpf policy maps in order to give the proxies a chance to be ready when
new traffic is redirected at them. This could help reduce transient
drops in some cases.
Remove old redirects only if the endpoint has a security identity. To
begin with, endpoints can have redirects only if they have a security
identity, and the only instance where the endpoint's security identity
is nilled is when it is being destroyed.
Fixes: ea62a6b2eb2 ("endpoint: Fix sidecar proxy deadlock during BPF generation")
Signed-off-by: Jarno Rajahalme<EMAIL_ADDRESS>

This change is

test-me-please

Coverage increased (+0.01%) to 44.231% when pulling f8df38961f8331a9166636d9171410a2bb2b7443 on pr/jrajahalme/policy-add-redirects-before-map-updates into 98f5eb2be8ebaf27922ebdc0f3f438b7d8c4b57c on master.


Expose validate and accept methods

These two methods https://github.com/LNP-BP/rgb-node/blob/4740b4c2aaf354fb5d3effb7403510e33cefc687/src/contracts/fungible/runtime.rs#L415-L432 should be exposed in i9n mod here https://github.com/LNP-BP/rgb-node/blob/4740b4c2aaf354fb5d3effb7403510e33cefc687/src/i9n/fungible.rs#L156
By "expose" I mean make a method in i9n that calls to fungible via ZMQ RPC API as it does for transfer
@zoedberg @rajarshimaitra pls let me know if any of you would like to pick this task

I can try to do this, I'll let you know if I face any difficulty


text out of bound on home page

hi @gholadr ,  I cannot reproduce this one. Which resolution are you using?

fixed!


Floating point precision error makes restore position failure in NestedScrollView

As shown in picture, durning in an user scroll, the Inner Position can consume all delta. But this is not the case

abs(clampedDelta) is smaller than abs(delta)

This error makes Outer Position scroll 1E-13.
restoreScrollOffset function in _NestedScrollPosition is:
@override
void restoreScrollOffset() {
if (coordinator.canScrollBody)
  super.restoreScrollOffset();
}

Because Outer Position scrolls a little, causing coordinator.canScrollBody to fail.
The final result is 'NestedScrollView' can not restore position when switch tab
Here is the demo
flutter doctor:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.7.8+hotfix.4, on Mac OS X 10.14.5 18F132, locale zh-Hans-CN)

[!] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses
[!] Xcode - develop for iOS and macOS (Xcode 10.3)
    ! CocoaPods out of date (1.6.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your
        plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade:
        brew upgrade cocoapods
        pod setup
[✓] iOS tools - develop for iOS devices
[!] Android Studio (version 3.4)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] IntelliJ IDEA Ultimate Edition (version 2019.2)
[✓] VS Code (version 1.37.0)
[✓] Connected device (2 available)

! Doctor found issues in 3 categories.

Hi @voiddog
please follow up on https://github.com/flutter/flutter/issues/40740
I'm closing the current one as duplicate,
If you disagree please write in the comments and I will reopen it.
Thank you


Could not find probe endpoint documentation

I have deployed the docker image on a Kubernetes cluster. However, sometimes the connection to Clickhouse is lost, but the pod keeps running as if nothing had happened.
I would like to know what are the correct endpoints to configure at least as ReadinessProbe and LivenessProbe.
Thanks.

👋 @kikinsama
GET /api/health might work: https://github.com/plausible/analytics/blob/1e38bd87714bf8e44b024d9bd1b76b9592c7646d/lib/plausible_web/router.ex#L258


fix Android 10 and above .text segment is read-only by default

On Android 10 an above,the .text segment is read-only by default

so fix it  by make it readable pre hooking

make readably not writable

Thanks.


ciao-cli: hangs if keystone auth fails

I still haven't figured out why, but sometimes my non-admin ciao-cli keystone auth's fail.  The cli command appears hung.  But if I go look at the keystone logs I see a tremendous continual spew of authentication errors as if ciao-cli (or gophercloud?) has errant auth failure retry logic.

@tpepper @obedmr @albertomurillo   I think I'm facing same exact issue, not sure but high probability. I got same issue with Rally. Rally creates temporal users (non admin user as your case) to run its operations, and sends its token to perform the request but for some reason, ciao is always trying to match the TOKEN (of temporal user)  to see if it belongs to the 'admin' or 'service' project, which fails.

An easy way to repro this is to not have a project.  For example if you follow the current (buggy) cluster setup documentation:
$ openstack service create --name ciao compute
$ openstack user create --password hello csr
$ openstack role add --project service --user csr admin
$ openstack user create --password giveciaoatry demo
$ openstack role add --project demo --user demo user

there is no "demo" project.  The cli enters a continuous loop bombarding the keystone server.
Simply adding the project, eg:
openstack project create --description "Demostration Tenant Project" demo

"fixes" the issue by not hitting whatever code path in the cli is broken.

So keystone allows you to create a 'demo' user and assign it to the 'demo' project without checking that the 'demo' project in fact exists.
This might be a keystone bug too.
Will dig deeper after fixing the ciao-cli part

ciao-cli is not hanging but is panicing
<EMAIL_ADDRESS>~ # ciao-cli workload list
panic: runtime error: index out of range

goroutine 1 [running]:
panic(0x6f3b60, 0xc420012130)
        /usr/lib/golang/src/runtime/panic.go:500 +0x1a1
main.getTenant(0xc42001016e, 0x4, 0xc4200101ce, 0x6, 0x0, 0x0, 0x428b6c, 0xc420072058, 0x1, 0x0, ...)
        /root/go/src/github.com/01org/ciao/ciao-cli/identity.go:277 +0x765
main.main()
        /root/go/src/github.com/01org/ciao/ciao-cli/main.go:344 +0xf4

This is because func getTenant in ciao-cli/identity.go is not validating the case
where a user does not belong to any project.
A fix is on its way to fail properly.

A fix on the documentation to create the 'demo' project is also on its way.


Ideal match after search is stuck at the latest valid result

When I search for something that does not exist, even when there are no results, the enter takes me to the latest valid response.
Is this intentional?

No definitely a bug. Will fix it ASAP. Thanks for reporting!

Should be fixed now


Add POA/currency conversion rate for poa networks

Closes #4
For POA Core and Sokol gets the convertion rate from coinmaketcap API  using POA instead of ETH.
Uses https://api.coinmarketcap.com/v2/listings/ to get POA id and https://api.coinmarketcap.com/v2/ticker/2548/?convert=USD to get the data. USD could also be EUR or any other currency selected  by the user.
This feature will be easier to test with #12 merged.

An option to test it with sokol is to comment this line to display the value for this network:
https://github.com/poanetwork/metamask-extension/blob/67a0e50fb082a02dd89c40acf04beaeb29846396/old-ui/app/components/fiat-value.js#L19


solve ui_metrics challenge during login

Thanks a lot for your repository and the port of Go implementation of X-Twitter-Active-User header generator.
I noticed that during login flow, there's another challenge related to /i/js_inst?c_name=ui_metrics
The same genius wrote about this: https://github.com/obfio/twitter-ui_mentrics
Have you had time to give it a look? That may help reduce DenyLoginSubtask issues, what do you think?

Hi @JulienMaille
Yes I checked this one a while ago. But this implementation is not stable, it may break anytime I believe. I was looking for a permanent solution, thats why I kind of left it. Though I have implemented it on my side for personal use, but I used headless mode of selenium. I will implement some functionality to solve ui_metrics soon, just looking for a better solution. If I don't find one, I will surely borrow this one.

Hi, what have you found unstable about it? I ported to code to python and could verify it generates the expected result. Which part of the implementation do you dislike?

No, I mean yeah the code works seamlessly. But I was looking for a robust solution rather than using regex to replace parts of JavaScript code with python native syntax. I would prefer writing the whole thing in python. Of course we need regex for some part, but I would avoid it as much I can.
But again, I am more than happy to implement the same approach if I don't find any other solution.
Hopefully I will fix it by the end of this month (in a week).

Thanks for sharing.
Yes it's as same as the one written in Go. How long has this one in working condition? Did you ever had to modify or fix it? Just wondering when did u write it, how long has it been?

It's fresh from yesteraday

Ok thanks. I will find a solution and implement it soon.


WIP: Fix tests on TravisCI

fixed inside of https://github.com/glimmerjs/glimmer-application-pipeline/pull/35


Make indexing tool useful on its own

The CLI tool nckcidx is a useful tool on its own. It should be designed independently of the SMOS context and may have its code base that is independent of xcube and xcube_smos packages.

We now use SmosDirectCatalog by default, SmosIndexCatalog may be deprecated in the future.
Reopen this issue, if we decide something different later.


Add magick:strip

Add magick:strp functionality for stripping down an image and reducing file size

Please rebase so your tests pass. Thanks.

no tests are passing

Thanks :heart:


Migrate to new story indexer API

Closes #147

:rocket: PR was released in v4.0.10 :rocket:

:rocket: PR was released in v4.0.10 :rocket:

:rocket: PR was released in v4.0.10 :rocket:


Fix vape use without check if doafter cancelled

About the PR
Fixed a small bug that allowed players to use vape without waiting for the doafter action delay  just clicking on a character second time.
Technical details
Just check if doafter cancelled
Media

https://github.com/user-attachments/assets/b563a7bc-1f84-4a49-9e40-417186117799
https://github.com/user-attachments/assets/46f69e54-a827-4744-8282-c4ee57880098
Requirements

[X] I have read and am following the Pull Request and Changelog Guidelines.
[X] I have added media to this PR or it does not require an ingame showcase.

Changelog

Thanks for the fix
I did note some issues with vapes outside the scope of this PR. First, using the vape consumes all the liquid inside it, which is a waste of water since it can hold 10 u before becoming full and the minimum transferable amount is 5 u. It also means that the vape needs to be topped up after every puff, which seems odd. Second, if you transfer in 10 u, use it, then refill it with only 5 u, there will be pop up stating the vape is full when it isn't yet


✨ Rule metadata - Add link to author's page

Cc: @adamcogan
Hi @Aibono1225
Suggestion
Now that authors have their own rules profile page, I think their names should point to those pages...
Tasks

[ ] Make the name on "Edited by" link to the person's rules profile page

Thanks!

As per my discussion with @JackDevAU, it is currently not feasible to grab the GitHub usernames with the current setup. We will be parking this until the new iteration of rules where we will have the GitHub usernames.


Revise logo

logo revised, favicons added
also, hope all's been well!

@sferik any thoughts here/something in which you'd still be interested?


Exception when adding Iot Hub Service in Visual Studio

@HowardEdidin Can you please use the following Microsoft Visual Studio and .NET Framework Log Collection Tool and send the output to AzCommunity at Microsoft.com, so that we can investigate this further. Thank you!

@HowardEdidin The below steps can be followed if you need to be unblocked now. We have a couple repro steps to confirm but we think it is related to an install sequence of the public extension was installed either before the Azure Sphere SDK or after it was installed. This is being investigated.
•	Uninstall the Azure Sphere VS SDK
•	Open VS, check to see if there is a Connected Service for Azure IoT Hub present, if so remove it.

•	Reinstall the Azure Sphere SDK.
•	Do not install the Azure IoT Hub extension again, use the one that was included in the Azure Sphere SDK
If you need that extension because it supports C#, wait for our investigation to conclude to get further advice. Thank you, Mike

Weird that I have two
<EMAIL_ADDRESS>From: Mike Ubezzi<EMAIL_ADDRESS>Sent: Friday, October 19, 2018 8:48 PM
To: MicrosoftDocs/azure-sphere-issues<EMAIL_ADDRESS>Cc: Howard Edidin<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/azure-sphere-issues] Exception when adding Iot Hub Service in Visual Studio (#41)
@HowardEdidinhttps://github.com/HowardEdidin The below steps can be followed if you need to be unblocked now. We have a couple repro steps to confirm but we think it is related to an install sequence of the public extension was installed either before the Azure Sphere SDK or after it was installed. This is being investigated.
• Uninstall the Azure Sphere VS SDK
• Open VS, check to see if there is a Connected Service for Azure IoT Hub present, if so remove it.
[az_iot_vs_ext]https://user-images.githubusercontent.com/37126106/47249970-57d3f600-d3cf-11e8-85c6-9d16f23353d7.png
• Reinstall the Azure Sphere SDK.
• Do not install the Azure IoT Hub extension again, use the one that was included in the Azure Sphere SDK
If you need that extension because it supports C#, wait for our investigation to conclude to get further advice. Thank you, Mike
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-sphere-issues/issues/41#issuecomment-431539094, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ATB82e4d4PBUCfUsfZUJm3Uy_E3WMyFnks5umoDBgaJpZM4XaJS4.

Only one was uninstalled.
I tried installing the SDK again. Same error.
From: Mike Ubezzi<EMAIL_ADDRESS>Sent: Friday, October 19, 2018 8:48 PM
To: MicrosoftDocs/azure-sphere-issues<EMAIL_ADDRESS>Cc: Howard Edidin<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/azure-sphere-issues] Exception when adding Iot Hub Service in Visual Studio (#41)
@HowardEdidinhttps://github.com/HowardEdidin The below steps can be followed if you need to be unblocked now. We have a couple repro steps to confirm but we think it is related to an install sequence of the public extension was installed either before the Azure Sphere SDK or after it was installed. This is being investigated.
• Uninstall the Azure Sphere VS SDK
• Open VS, check to see if there is a Connected Service for Azure IoT Hub present, if so remove it.
[az_iot_vs_ext]https://user-images.githubusercontent.com/37126106/47249970-57d3f600-d3cf-11e8-85c6-9d16f23353d7.png
• Reinstall the Azure Sphere SDK.
• Do not install the Azure IoT Hub extension again, use the one that was included in the Azure Sphere SDK
If you need that extension because it supports C#, wait for our investigation to conclude to get further advice. Thank you, Mike
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-sphere-issues/issues/41#issuecomment-431539094, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ATB82e4d4PBUCfUsfZUJm3Uy_E3WMyFnks5umoDBgaJpZM4XaJS4.

@HowardEdidin Sorry for the delayed respoinse. Could you please use the latest version of SDK and let us know if you still see the error message.

I did a complete reinstall and it works now.

@HowardEdidin Glad to hear that your issue is resolved.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Make alert name (message) optional

Solves #14116
Description:
Related issue (if applicable): fixes #
fixes #14116
Pull request in home-assistant.github.io with documentation (if applicable): home-assistant/home-assistant.github.io#<home-assistant.github.io PR number goes here>
home-assistant/home-assistant.github.io#5277
Example entry for configuration.yaml (if applicable):
alert:
  garage_door:
    name: Garage is open
    done_message: Garage is closed
    entity_id: input_boolean.garage_door
    state: 'on'
    repeat: 30
    can_acknowledge: True
    skip_first: True
    notifiers:
      - ryans_phone
      - kristens_phone

Checklist:

[ ] The code change is tested and works locally.
[ ] Local tests pass with tox. Your PR cannot be merged unless tests pass

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

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

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

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

If the code does not interact with devices:

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

As discussed in #14116 this change makes absolutely no sense and just overcomplicates the alert component.
Currently the component sends you a repeating message when a situation is causing concern, but this change makes it so that you can can use it so it only sends one message when the situation is rectified.
Let's presume that the situation causing concern is a binary_sensor switching on, and therefore the rectified situation is it switching off.
The way to be notified is
automation:
  trigger:
    platform: state
    entity_id: binary_sensor.sensor
    to: 'off'
  action:
    service: notify.whoever
    data:
      message: "Situation resolved"

Changing the alert component to make it possible to be the opposite of an alert to achieve this doesn't make sense, especially I it is so easily achieved with an automation.

I'm ok with it not being accepted. So this can be closed.
The automation you state is however not the same. Because this automation would notify every time the binary_sensor would be off. I wanted only a notification if the binary_sensor went off only after being on for a certain period of
e.g.: A door being open for too long and finally closed.

That is incorrect I believe. Take the example in the first post. If the skip_first option is used, the user will currently not be notified if a situation has not been resolved (garage closed) if there was no alert first that the garage was open.

OK, so taking the example in the first post, and presuming there is no name, what would you receive every 30 minutes until the situation is resolved?
I love also realise, based on the scenario you presented, that it doesn't need a template sensor in an automation either, the automation would be...
automation:
  trigger:
    platform: state
    entity_id: binary_sensor.sensor
    to: 'on'
    for:
      minutes: 30
  action:
    - wait_template: "{{ is_state('binary_sensor.sensor' , 'off' }}"
    - service: notify.whoever
      data:
        message: "Situation resolved"

OK, so taking the example in the first post, and presuming there is no name, what would you receive every 30 minutes until the situation is resolved?

Nothing :)

I also realise, based on the scenario you presented, that it doesn't need a template sensor in an automation either, the automation would be...

I didn't realise it could be done with a wait_template. This is actually a nice usage!

Although.. Using a wait_template in an action gives the following error when using the check_config button:
Invalid config for [automation]: [wait_template] is an invalid option for [automation]. Check: automation->action->0->wait_template. (See /config/configura
ton.yaml, line 139). Please check the docs at https://home-assistant.io/components/automation/```

Should work fine, post your code?

Whups, I deleted my comment instead of edit. The sensor I used was True, False. So using:
 - wait_template: "{{ 'sensor.door_open' }}" worked fine.