Revert "lua: allow using moonjit (#10265)"

Commit Message: Revert "lua: allow using moonjit (#10265)"
Additional Description:
This reverts commit 2c03496a6b5e9e32bc10db40b3fb85e4610bdde1.
See thread https://twitter.com/siddhesh_p/status/1308594269502885889?s=20 @siddhesh_p Sep 22
"It ought to generally be easy to revert to the upstream tree since
they're both [moonjit and luajit] (AFAIK) on the 2.1.x branch. I'll be
happy to help with the transition if needed."
This is no longer maintained code, there is no way for envoy project to
assume responsibility, and after many months, no maintainers have
stepped forward. PR's to luajit effort are one appropriate way forward.
Resolves: https://github.com/envoyproxy/envoy/issues/13539
With apologies to @iii-i, this appears to be an abandoned solution.
Signed-off-by: William A Rowe Jr<EMAIL_ADDRESS>Risk Level: low-ish (s390x will become unsupported until changes are upstreamed to luajit)
Testing: local+ci
Docs Changes: n/a
Release Notes:

Drop moonjit support, now an abandoned fork of luajit
Fixes: https://github.com/envoyproxy/envoy/issues/13539

I've dropped this, as noted in the issue, to draft status.
We may want to retain the logic for electing a lua engine. The two most frequently updated and actively maintained are the Lua project, and the LuaJIT fork. The forks of LuaJIT I'm researching, but most seem largely inactive. Unfortunately this is a federation of single-maintainer efforts, which isn't conducive to a stable dependency. Until we decide a way forward, I want to park this PR for 3-4 weeks and research where these communities converge and diverge.

I've dropped this, as noted in the issue, to draft status.
We may want to retain the logic for electing a lua engine. The two most frequently updated and actively maintained are the Lua project, and the LuaJIT fork. The forks of LuaJIT I'm researching, but most seem largely inactive. Unfortunately this is a federation of single-maintainer efforts, which isn't conducive to a stable dependency. Until we decide a way forward, I want to park this PR for 3-4 weeks and research where these communities converge and diverge.

@wrowe can we revive this PR? As per chats with @htuch and @mattklein123 there is consensus with the @envoyproxy/dependency-shepherds that we should remove Moonjit


clean up and translation

do not reload language from android.preference twice
update comments to new changed methods

remove loadLanguagePreference() also for performance


set seed to 1 for now

Don't even know if this will crash your code :)

Should PR be against master branch as opposed to feature/pricing-path-dependent-options?


[tests] - Use testing.postgresql to streamline database tests.

By using testing.postgresql, users no longer need to have a running
PostgreSQL database already created prior to running the tests.

I fixed that by adding a docker-compose.yml which adds the database server needed to run tests.
In addition, I streamlined the test setup using github actions and a postgresql service container.
This makes testing and development much easier now


The text following "Order of events:" is mingled

[Enter feedback here]
https://docs.microsoft.com/en-us/windows/uwp/design/input/keyboard-accelerators#the-previewkeydown-and-previewkeyup-events
The text following "Order of events:" is mingled:
Preview KeyDown events … App accelerator OnKeyDown method KeyDown event App accelerators on the parent OnKeyDown method on the parent KeyDown event on the parent (Bubbles to the root) … CharacterReceived event PreviewKeyUp events KeyUpEvents
Suppose there should some linebreaks in between.

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

ID: 3d15a60b-7f90-38b9-18a2-a4437628e67a
Version Independent ID: cb3c6a7a-c3df-1599-fe25-681ae66e0f49
Content: Keyboard accelerators - UWP applications
Content Source: windows-apps-src/design/input/keyboard-accelerators.md
Product: uwp
Technology: design
GitHub Login: @Karl-Bridge-Microsoft
Microsoft Alias: kbridge

Thanks! The topic has been updated.


Set redis to 0.5 and start using the commented out PR 47 features.

Brings everything up to date and works fine with recent nightlies. Hoping for a merge and 0.2.0, which would fix #3 and #5.

I've now added these changes after the repo transfer.


Protean: Block title's rounded corners look incorrectly when Title's background color is set.

[ ] Issue №1

Check the other templates which have Styles Customizer.

Posts: When rounded corners radius is greater then default bottom corners in gallery view looks bad. Top corners should be squire.

Image should use same diameter as card.

RE Issue №1:
Styles customizer allows to change radius for Block and its Header separately:

Corners radius
Title Corners radius
So, these two settings should be used together. For example,
Corners radius - 16px
Title Corners radius - 16px 16px 0px 0px


Appcheck Package is not correctly using the provider Device Check vs AppAttest For iOS 14+ devices

Describe the bug
When we test it on IOS 14+ devices it' still uses the Device check instead of AppAttest.
To Reproduce
github.com/TamilselvanMariyappan/capacitor-firebase-authentication-demo/tree/AppAttest-AppCheck
Steps to reproduce
By logging the device
Get bearer token response, inspect with JWT response you can see the response
Expected behavior
{
"sub": "1:06:ios:1b3f479e7***",
"aud": [
"projects/85*********",
"projects/ABC"
],
"provider": "device_check_app_attest",
"iss": "https://firebaseappcheck.googleapis.com/",
"exp":<PHONE_NUMBER>,
"iat":<PHONE_NUMBER>,
"jti": "EBdv4gM8*************i1j1lMX"
}`
Current behavior
{ "sub": "1:06:ios:3b262cd82",
"aud": [
"projects/85*******",
"projects/ABC"
],
"provider": "device_check_device_identification",
"iss": "https://firebaseappcheck.googleapis.com/",
"exp":<PHONE_NUMBER>,
"iat":<PHONE_NUMBER>,
"jti": "G6vqvRPv**********60tRmR1"
}
Current behavior - Screenshots

Smartphone (please complete the following information):
- Device: [iPhone6]

OS: iOS 15.8

I close this as duplicate of https://github.com/capawesome-team/capacitor-firebase/issues/490


"Extract all links from a webpage" example

fixes #110

[x] ~Blocked on https://github.com/servo/string-cache/pull/187~
[x] Blocked on https://github.com/utkarshkukreti/select.rs/pull/37
[ ] Alternatively blocked on: https://github.com/brson/rust-skeptic/issues/18

@sb89  Also the CI fails due to one of select dependencies (namely servo/string-cache) using serde 0.9 while rest of cookbook examples dependencies using serde 1.0.
The situation is already fixed upstream but servo related crates are currently coordinating move to serde 1.0 which should happen shortly https://github.com/servo/string-cache/pull/187.

Nicely done!
As this will likely not get merged until select deps upversion to serde 1.0 (otherwise we have a build break on other examples) please add a comment to
#110 that this PR is waiting for deps upversion.
cc @dtolnay

Another PR blocked by skeptic bug https://github.com/brson/rust-skeptic/issues/18

Thanks @sb89 !

update:
the https://github.com/servo/string-cache/pull/187 has been merged.
now we wait on select.rs update to most recent html5ever
https://github.com/utkarshkukreti/select.rs/pull/37

Great! Thanks for sticking with it @sb89 ! 🎉


I have refactored the header.js file here to use hooks

I have refactored the header.js file here to use hooks, rather than the class component. The reason for this is I use this starter for my own blog, and I use react spring, which runs into issues when trying to animate a class component.

I'm unsure why the travis checks have failed, I checked before commiting, and the site is working fine with the refactoring.

Hi @ChanceTheHacker and thank you for your contribution!
You did a great job and I'm very happy that this logic was simplified by using this new (and amazing) feature of React. 🤩
I'll merge the PR and I'll manage any problems with Travis.

I'm very happy you enjoyed it, I was wasn't sure if I was being too forward
in my assumption that you would want this feature. If I make any more
modifications to the library, I will submit them to you as well!
On Sat, Nov 16, 2019, 8:44 AM Luigi Colella<EMAIL_ADDRESS>wrote:

Hi @ChanceTheHacker https://github.com/ChanceTheHacker and thank you
for your contribution!
You did a great job and I'm very happy that this logic was simplified by
using this new (and amazing) feature of React. 🤩
I'll merge the PR and I'll manage any problems with Travis.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lgcolella/gatsby-starter-developer-blog/pull/5?email_source=notifications&email_token=AJJNGZQGB55YXEOKN6LSKDLQT72KVA5CNFSM4JIB2GQ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEHR2WA#issuecomment-554638680,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJJNGZSXUSR4E2SSDHJRNQDQT72KVANCNFSM4JIB2GQQ
.


RP-20 Return many of exporters by ExporterFactory

Change return type of ExporterFactory to List.

Fixed by https://github.com/zwieback/relef-parser/pull/38


Shorts still showing on music videos

Was listening to some music videos and noticed a new Shorts container on the side not being blocked, any chance you can add the container to the extension?
Heres the screenshot

and heres the element contaier

@raven0230 I appreciate this plugin a lot, I'd like to help with a PR for this issue.
I've never developed an add-on or plugin. Could you give me some leads so I could potentially help you out?


DF 383 remove "search within" and filters in zero results + DF-314

Related ticket(s):
Completes https://national-archives.atlassian.net/browse/DF-383 and https://national-archives.atlassian.net/browse/DF-314
About these changes
DF-314: Reintroduced website_search.html in the views.py file as we were using catalogue_search.html for both catalogue search and website search views.
DF-383: Changed featured results to hide each individual tab/bucket of results if none are shown. Changed catalogue + website results to hide individual buckets if they have no results, or hide everything and display "no results" message. If the user is still on a bucket which is then hidden by using a different search term, then it will show the available buckets and the "no results" message.
How to check these changes
Use catalogue, website or featured search to use different search terms. I found that "test", "test search term" and a random string e.g. "huasdhasjdhas" is an effective way of seeing a different number of results.
Dear reviewer, I promise I have:

[ ] Checked things thoroughly myself before handing over to you.
[ ] Included the ticket number in the PR title to help us keep track of changes
[ ] Ensured that my PR does not include any irrelevant commits.
[ ] Waited for all CI jobs to pass before requesting a review.
[ ] Added/updated tests and documentation where relevant.

Functionality seems fine, however the display of the 'no results' message on mobil looks a little off to me. I'd like @sdwilkes to add his input. Mobile portrait screenshot attached

Hi @JohnHeeryTNA, which search term did you use to get this? This is what I get on a zero results page on mobile view:

Hi @jamesbiggs , I used something like 'asasasasahsdahs' it's not the content that is the issue it's the indentation of the bullet points and the title position that I'd like @sdwilkes feedback on.

@JohnHeeryTNA @jamesbiggs The title should be left-aligned, with no spacing so it lines up with the paragraph. This should be the same at all breakpoints so it's consistent. Thanks.

Hi @sdwilkes , I've adjusted the paddings for mobile views now, should be displaying correctly.

Hi @sdwilkes all the changes are made now, is this ok to merge? Cheers

@jamesbiggs  Can you assign to Mo or Allan to review the python code changes? Thanks.

Hi @TNA-Allan, could you review these changes please? It is mostly changes to the HTML logic (Jinja2) but I also changed the views.py and test_views.py to display the website_search.html instead of catalogue_search.html for Website and Catalogue search views. Cheers :)


Dead link

Hi,
DragonBones - The Open Source 2D skeleton animation solution for Flash

Is dead, link return a 404 error :)

hey @IGLOU-EU feel free to open a PR to fix it :)


Add jaxb marshalling support

created https://issues.apache.org/jira/browse/GROOVY-7755 to track this

Do you see a reason to prefer a category here over an extension module?

@oreissig No, It will be even better as extenstion class. I have changed my code. Thanks.

cool :-)

@paulk-asert What do you think?

Hi,
I have added javadoc and I have renamed tests.

Thanks. I will merge this week unless there are objections from other commiters.

+1

Thanks! Great idea! :+1:


Nix Flake

Flake for Nix/NixOS users
Both includes a dev environment and packaged libninja

Can you add a section to the readme on how to use it? I don't use nix so not sure exactly what this does.

Can you add a section to the readme on how to use it? I don't use nix so not sure exactly what this does.

Yeah sure I will soon
TLDR though Nix does stuff its own way so to be able to use anything you gotta repackage specifically for Nix, the flake in this PR packages libninja and also provides a dev environment with basic Rust stuff you can use

Can you add a section to the readme on how to use it? I don't use nix so not sure exactly what this does.

Added to the docs how to run libninja with Nix run, the command will start working after this gets merged (because it refers to the flake as kurtbuilds/libninja)
Feel free to ask me any questions about it

Works for me! Thank you for adding this.

Thanks for merging!


[Proposal] Support pre-filtering the original data when importing

当前的导入功能，我们允许用户通过where语句过滤部分导入数据。而这个过滤条件列的值是经过转换的
并且必须存在于目的表中。
但是用户可能会有如下需求。比如两张表的数据产生到同一个kafka队列中。用户希望通过数据中的某一
标识列来区别不同表的数据，从而选择性的进行导入。而这个标识列不存在于表中。
使用where无法支持以上场景。因此，这里提供一种新的过滤条件，可以对原始数据进行前置过滤。
最终的数据处理流程如下：

使用前置过滤条件过滤原始数据。
对过滤后的数据进行列的映射、变换
再通过过滤条件对变换后的数据进行过滤
导入最终数据

With the current import function, we allow users to filter part of the imported data through the where statement.
The value of this filter condition column is converted and must exist in the destination table.
But users may have the following requirements. For example, the data of two tables are generated in the same
Kafka queue. The user wants to distinguish the data of different tables through a certain identification column in the data,
so as to selectively import. And this identity column does not exist in the table.
The above scenarios cannot be supported using where. Therefore, here is a new filter condition that can pre-filter
the original data. The final data processing flow is as follows:

Use pre-filter conditions to filter the original data.
Column mapping and transformation of filtered data
Filter the transformed data through filter conditions
Import the final data

I suggest sending the proposal to the mailing list for discussion, and English only

I suggest sending the proposal to the mailing list for discussion, and English only

Ok. Mainly considering that users are more accustomed to discussing in the issue.
We will try our best to send emails synchronously for new proposals.


Update README with the new params from https://github.com/moshensky/pdf-visual-diff/pull/6

@mzl-md I would appreciate if you can take it.

Completed via #14


Proposal state tracking

This pull request adds more sophisticated proposal state tracking to HandleOutcome and umaModule, while also removing irrelevant Reality.eth features. There is still work to be done in showing the right buttons in the view based on the proposal state.

@mrice32 some context on the latest commit:

waitingForLiveness was added to questionState which displays to users when a proposal can be executed during the liveness period (if a proposal hasn't been disputed).
If a proposal has been disputed, a button is now displayed that allows a user to delete the disputed proposal. After deleting the proposal, the propose button is displayed giving users the option to propose again.
proposalExecuted checks if a proposal has been previously executed. If it has, a message is displayed to users that the transactions have been executed to prevent the same transactions from being proposed again.
A deleteRejectedProposal function was added with a TODO item to create a button for deleting a proposal that has been rejected.

@mrice32 some context on the latest commit:

waitingForLiveness was added to questionState which displays to users the timestamp a proposal can be executed during the liveness period (if a proposal hasn't been disputed).
If a proposal has been disputed, a button is now displayed that allows a user to delete the disputed proposal. After deleting the proposal, the button to propose transactions is again displayed giving users the option to propose again.
proposalExecuted checks if a proposal has been previously executed. If it has, a message is displayed to users that the transactions have been executed to prevent the same transactions from being proposed again.
A deleteRejectedProposal function was added with a TODO item to create a button for deleting a proposal that has been rejected.

Thank you for the explanation!


Merge into MXNet

@piiswrong
Any works/advice to do before we merge this into MXNet? I was going to write a script to auto-build the wheel file using Travis-CI and user could install TensorBoard simply using pip install tensorboard, just like TF does. Otherwise, the user has to install bazel and it makes MXNet's installation too heavy?

Have you figured out how to do this? Would be great if this works.

@piiswrong @szha
I followed the script as the one in mxnet-distro, but bazel build for tensorboard is too slow, https://travis-ci.org/zihaolucky/tensorboard/jobs/200914155#L3193-L3214
Any ideas? I found the build time for mac must be less than 50mins, or it would be terminated.

I've tried to change the bazel config(ram_utilization_factor or local_resources) for speedup, but didn't work.

It's compiling tensorflow ops. Can you make it only compile tensorboard? Try modifying bazel config file?

Good idea, I would try.
I compared the difference between building tensorboard and entire tensorflow when I first noticed this, the number of jobs is different, yet I supposed these are necessary but not trying to modifying the config file ><

I think it might work, as we've replaced the logging part, the tensorflow ops could be removed.

I used snakefood to analyze the dependencies of the rendering part:
sfood -fuq tensorflow/tensorboard/tensorboard.py | sfood-filter-stdlib | sfood-target-files > deps.log

And found the unnecessary tensorflow ops are imported from several files(tensorflow/tensorflow/python/summary/event_accumulator.py, etc), while the methods it uses doesn't require tensorflow ops so it's possible to replace them.  Another work is to change the bazel config/BUILD and make sure the SWIG files won't cause huge troubles.
However, it could make our project not as easy to maintain as we change the rendering part and the BUILD file, any ideas? Should we consider building the project using Jenkins like TF does? Ref:https://ci.tensorflow.org/view/Nightly/job/nightly-matrix-cpu/TF_BUILD_IS_OPT=OPT,TF_BUILD_IS_PIP=PIP,TF_BUILD_PYTHON_VERSION=PYTHON2,label=mac-slave/

If we use Jenkins, I have to setup a machine and envs to do that. But the TF has provided reusable scripts.

@piiswrong Could you help check https://travis-ci.org/zihaolucky/tensorboard/jobs/203088383#L645? It's okay in mac, but always failed in linux.
./configure < ../tools/pip_wheel/configure.conf

ill take a look later.
we can make a private repo for distribution so you don't need to hack compile time

Thanks! To hack the compile time limited in Travis, I have to remove some dependencies in its bazel config. I think it's okay if that won't cause any unexpected error/bug in the future, but technically it shouldn't happen as we only remove the unnecessary ops which tensorboard won't use.
So I would like to keep the Travis way currently(for simplicity) and focus on the logging part, as we have graph, video and even embedding to do.
The error in linux is caused by:
./configure < ../tools/pip_wheel/configure.conf

in which it has to configure some install options before bazel can start, I put the config in /tools/pip_wheel/configure.conf in the script as we have no keyboard input. My branch https://github.com/zihaolucky/tensorboard/tree/travis_pip_wheel

@piiswrong Now we have PyPI, how about add tensorboard as default requirements for MXNet Python package?
Any work I should do?

More docs about tensorboard.
Any changes in MXNet?

we can add some callbacks in mxnet.
Let's start with optional import and see if anyone have trouble installing

Yep.

Merged in mxnet.contrib.tensorboard


Added eclipse exclusion to fix IDE errors

Problem:
Eclipse displayed multiple errors due to unsupported Maven plugins.
Solution:
Eclipse auto-generated POM changes to fix the errors.
Result:
Eclipse IDE can be used for DropWizard development.

@isaki Would it make sense to put this into the Eclipse-specific profile we already have in the parent POM?
https://github.com/dropwizard/dropwizard/blob/c98b009c11bcb7a954e590dcb208dfad1318d39e/pom.xml#L373-L392

This was injected by Eclipse automatically. I actually can't take credit for authoring it. I'll add it to the profile and see if it works!


feat: port mongodb-core plugin to mongodb #622

Actually most of the code was working with the higher level mongodb driver so i didn't change much code.
I've tested on mongodb version 2, 3.3 and 3.4 and it's working well.

Codecov Report

Merging #652 into master will decrease coverage by 0.01%.
The diff coverage is 81.81%.

@@            Coverage Diff             @@
##           master     #652      +/-   ##
==========================================
- Coverage   89.68%   89.66%   -0.02%
==========================================
  Files         193      191       -2
  Lines       10034    10058      +24
  Branches      911      914       +3
==========================================
+ Hits         8999     9019      +20
- Misses       1035     1039       +4

Impacted Files
Coverage Δ

packages/opentelemetry-plugin-mongodb/src/types.ts
100% <ø> (ø)

.../opentelemetry-plugin-mongodb/test/mongodb.test.ts
92.64% <ø> (ø)

...ckages/opentelemetry-plugin-mongodb/src/mongodb.ts
93.33% <81.81%> (ø)

...ages/opentelemetry-plugin-http/test/utils/utils.ts
33.33% <0%> (-26.67%)
:arrow_down:

.../opentelemetry-exporter-collector/src/transform.ts
88.88% <0%> (-8.09%)
:arrow_down:

...entelemetry-exporter-jaeger/test/transform.test.ts
100% <0%> (ø)
:arrow_up:

...opentelemetry-base/test/resources/resource.test.ts
100% <0%> (ø)
:arrow_up:

packages/opentelemetry-tracing/src/config.ts
100% <0%> (ø)
:arrow_up:

packages/opentelemetry-tracing/src/utility.ts
100% <0%> (ø)
:arrow_up:

...ges/opentelemetry-exporter-zipkin/src/transform.ts
100% <0%> (ø)
:arrow_up:

... and 19 more

@vmarchaud please try not to force push on open PRs if possible. It makes it hard to track requested changes because the github UI doesn't associate the conversations with the correct line numbers anymore.

I think we should put the deprecated message on existing mongodb-core npm module.
Something like this:

WDYT?

Tests are failling because https://david-dm.org which is used for badges is apparently down, i believe it's safe to merge as-is and maybe fix that in another PR


In testcases, test for nil

In testcases where there are string input parameters,  add tests the use nil as a value for the parameter.
Examples:

https://github.com/senzing-garage/sz-sdk-go-core/blob/01ca61a38728c66b48c059a06ec6a4e8d6cde05b/szengine/szengine.go#L1281

Fixed via https://github.com/senzing-garage/sz-sdk-go-core/issues/232


Suppressor

Fix for #85:
The Skorecard() fit method now issues a warning in case there is a coefficient with an unexpected (i.e., negative) sign.
Note that coefficients are always expected to be positive when bucketing and WoE-encoding variables, since the conventions used for WoE are such that higher WoE implies higher predicted probability of target.

Thanks!


Discriminated union narrowing breaks when discriminating from a wider union type

🔎 Search Terms
discriminated union
narrowing
unknown
🕗 Version & Regression Information

This is the behavior in every version I tried, and I reviewed the FAQ for entries about bugs that aren't bugs and entries about type narrowing

This was not an issue prior to v4.0.5, where I saw discriminated unions were not narrowed in the same way (I assume they were a new feature in v4.0 but haven't been able to track this down)
⏯ Playground Link
https://www.typescriptlang.org/play?#code/C4TwDgpgBAsiAiBLAzgYwE6ILaIHYENgIATAVV0QHtcoBeKAbylEgC4oByAQQ4Bop8ABXSUw7XAFcsAIwjooAXygAfRs3AR2HAEJ8o04aPbJgmXAHNFAbgBQxCKgA2+dNABmE3KmBUaKOEhomDgERGQU1AAUiERY7J4A1riUAO64AJTsMRBYUCiwCCgY2HiEJOS+tnYOzq5QqNQmUCmU6Al45vG4Sam4tvZOLtANuE3SIgkQuOwASg6txAA8Jmbm-Pi4IAB8KlCe9m54JP01Q-WNwM2t7RZc5vh4s-PoSysd65s7qvsQh7gku0SyTSVX8hSCJVC5QiuEiLTaHXSUAAZMirgiLAA6FjQWh4zg8FFo+E3cyYoQiMBWKAAehpUEWAFooAB1a7IGxgwLFEJlcK+SLjSiTDJE-QTKbYjR0fHcDhioUi8mGKm0+lMqAAUXQInQnOQASKwVKYQqURJHTuD1FqPRpKteClkBl9DlYott3ujopompdIZzLZbWQAi9uBsQA
💻 Code
type MyDiscriminatedUnion = { type: 'A', aProp: number } | { type: 'B', bProp: string };
declare function isMyDiscriminatedUnion(item: unknown): item is MyDiscriminatedUnion;

declare const working: unknown;
declare const broken: Record<string, any> | undefined;
declare const workingAgain: Record<string, any> | undefined | unknown;

isMyDiscriminatedUnion(working) && working.type === 'A' && working.aProp; // <- Works
isMyDiscriminatedUnion(broken) && broken.type === 'A' && broken.aProp; // <- Error
isMyDiscriminatedUnion(workingAgain) && workingAgain.type === 'A' && workingAgain.aProp; // <- Works again

🙁 Actual behavior
When narrowing a variable first to a discriminated union, and then to a specific member of that discriminated union by narrowing on its discriminant property, TypeScript either will or won't perform the second part of the narrowing correctly depending on the initial type of the variable.
The variable is not narrowed correctly if it was initially given a union type such as Record<string, any> | undefined. However, it would be narrowed correctly if its initial type was not a union, e.g. just Record<string, any>, or if its initial type was widened to include unknown e.g. Record<string, any> | undefined | unknown.
🙂 Expected behavior
After first narrowing a variable to a discriminated union, it should then be possible to narrow it to a specific member of that union by checking its discriminant property. This should work regardless of the variable's initial type before it was narrowed to the discriminated union type.
Additional information about the issue
No response

I expect the workaround of adding unknown to the union works because that collapses the union down to just unknown.

Yeah, this doesn't seem right.


Feature Request: Add syntax support to .ejs.js extension

Feature Request: Add syntax support to .ejs.js extension

I will add this to the todo. Is there anything in particular that is supposed to happen in raw .ejs.js files? From my understanding, this would just be a standard javascript file. Maybe there are certain features or snippets you want to show up?

I don't think this should be added, since .ejs.js isn't exactly a standard ejs file extension and looks more like a general Javascript file. Maybe it's a better idea to support custom file extensions/types through user settings?

I am not sure if .ejs.js would be a standard or not. I don't think we can have "standard" javascript files with the use of ejs. If I am wrong, please correct me and when can look into adding this.
.rhtml has been removed thanks to @meesfrensel as of version 0.3.0
rhtml was in there originally because I was using that as a template to get this repo up and going. It had a lot of similarities in the language that allowed me to find how to add the language support. The actual language file though was completely written by me, as there was a lot of erroneous stuff that I did not need.

You can already do this by setting:
"files.associations": {
	"*.ejs.js": "ejs",
}

in VS Code’s settings.json.


Alexs changes

Hey @alexoanea just saw this was closed but not merged - just curious what's happened/happening to it.

@matiasm this was just for the benefit of being able to review changes because I worked on master. This was a PR against a branch (snowcap-master) of the point from before I started making the changes


@click not working in Safarie

Version
2.3.4
Reproduction link
https://jsfiddle.net/1jvk22xy/5/
Steps to reproduce
Select a item from the drop-down.
What is expected?
The drop-down title reflects the selected item.
What is actually happening?
The title does not change.

This is my first JSFiddle, and there is an issue with it, that may be unrelated.  In my 'real' code, this functionality works on Chrome.  When the user selected an item, the main drop-down button changes to display that.  In Safari, no change is made. Also in Safari, the @click method does not log anything.  So the click method is not being called.
In the referenced JSFiddle, in both Safari & Chrome, the console does show the log message, but, the button text does not change.
I'd appreciate anyone that may be able to tell me what's going on.  Thanks.

replace the self by this in the method 🙂

Yes, that was the issue in the JSFiddle (don't know why I did that).  My code uses 'this' though, and it doesn't work in Safari.  It is working now in the JSFiddle.
That's the trouble with trivial examples, versus real code.  It's still defect.


feat: add AddToken picker

Summary
Closes https://github.com/snapshot-labs/sx-ui/issues/189
Depends on https://github.com/snapshot-labs/sx-ui/pull/361
Test plan

Co to editor, click Send token.
Open token picker.
Paste ERC20 into search (0xb4fbf271143f4fbf7b91a5ded31805e42b2208d6).
Pick it as token.
Add execution with it.

Screenshots

@Sekhmet Works well, but I think the UX should be slightly different, instead of having a button "add a token" we should make it so you can use the search input to load new token. Pretty much what Uniswap is doing, you can try Uniswap on Goerli and type "0xf7a702d8f197e6d510eaf740998c2029744078b5" in the search to see it (we don't need the modal with warning).

When looking for a token that doesn't exist for example 0xb4fbf271143f4fbf7b91a5ded31805e42b2208d2 we should show a message "No results", currently it doesn't show anything

Also we should remove this double border here


health check for MongoDB

Hi,
is there a solution to health check service (like: MongoDB, PostgreSQL, TOR, ...) inside "uptime kuma"?
Example:
with this command, I can ping my MongoDB database
if I could place it inside "uptime kuma" it would be fantastic
mongo --eval 'db.runCommand("ping").ok' localhost:27017/test --quiet

@arsalanses Monitoring mondodb is already supported. Just created a "TCP Ping", and set the port to 27017. For PostgreSQL use port 5432.


Quorum Rotation: Phase Four

Issue being fixed or feature implemented

What was done?

How Has This Been Tested?

Breaking Changes

Checklist:

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added or updated relevant unit/integration/functional/e2e tests
[ ] I have made corresponding changes to the documentation

For repository code-owners and collaborators only

[ ] I have assigned this pull request to a milestone

Codecov Report

Merging #159 (e1e2b7a) into feature-quorum-rotation (ae03e2d) will increase coverage by 1.13%.
The diff coverage is 21.59%.

@@                      Coverage Diff                      @@
##             feature-quorum-rotation     #159      +/-   ##
=============================================================
+ Coverage                      43.29%   44.43%   +1.13%
- Complexity                      4991     5093     +102
=============================================================
  Files                            362      366       +4
  Lines                          40300    40365      +65
  Branches                        5512     5497      -15
=============================================================
+ Hits                           17448    17936     +488
+ Misses                         21110    20613     -497
- Partials                        1742     1816      +74

Impacted Files
Coverage Δ

...c/main/java/org/bitcoinj/core/AbstractManager.java
49.09% <0.00%> (+29.44%)
:arrow_up:

...n/java/org/bitcoinj/params/MalortDevNetParams.java
92.30% <ø> (ø)

...va/org/bitcoinj/quorums/GetQuorumRotationInfo.java
16.66% <0.00%> (+16.66%)
:arrow_up:

...main/java/org/bitcoinj/quorums/LLMQParameters.java
54.83% <ø> (ø)

.../java/org/bitcoinj/quorums/QuorumRotationInfo.java
67.39% <ø> (+28.26%)
:arrow_up:

...va/org/bitcoinj/evolution/QuorumRotationState.java
32.30% <6.62%> (+27.28%)
:arrow_up:

...inj/evolution/GetSimplifiedMasternodeListDiff.java
20.00% <9.09%> (-10.00%)
:arrow_down:

...inj/evolution/SimplifiedMasternodeListManager.java
22.84% <21.42%> (+6.15%)
:arrow_up:

...va/org/bitcoinj/evolution/AbstractDiffMessage.java
33.33% <33.33%> (ø)

.../main/java/org/bitcoinj/evolution/QuorumState.java
28.16% <33.33%> (+8.16%)
:arrow_up:

... and 65 more

Continue to review full report at Codecov.

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


Limited sight angle/light emission angle bug

Hello, I have player with the following settings:
Dim vision: 0
Bright vision: 0
Sight angle: 160
Dim light radius 20
Bright Light Radius 10
Emission angle 240
Light animation type: torch
color: #ffbb33, intensity 0.5
When I rotate his icon 180 degrees around (ctrl + mousewheel), most of his emitted light disappears. If he moves left/right, the light randomly grows/shrinks between full and a tiny sliver.
Steps to reproduce:
Be on a large map (2000x2000 pixels or more)
Be near the bottom/center of the map (Bug appears to not occur when you go to the top of the map, seems to not occur near left edge either)
Rotate 180 degrees around with ctrl+mousewheel or shift+mousewheel

Shows what it should look like, and does when token is not 180 degrees rotated:

Please do the following:

Open up the JavaScript console (you can open it by pressing F12)
Enter CONFIG.debug.sightRays = true; into the console and press enter
Move the token into a position so that the bug occurs
Post the text that has been printed into the console (the last of the texts is enough) here. It contains valuable debug data that helps me reproducing the bug

PS: Not sure if its any help, but while the debug lines where on, none of them 'moved' unexpectedly while the bug occurred.

Thanks. I was able to reproduce this using the data you sent me.
For future reference:
<~"*iOZNkYod:_^pqQ-ml$*l2GO:SX/=?(pVJ174:gNQ%[J`F/9"3ppr%c>\5\Vsc_1!.^)`#A7K1?G(Ea$So_^SoGo],<fp'>/+O(9kq9='iU`PNsSI;TfkIHG0?,;gm@Vg<Xi>GPkBnLc!t4E$YhaKastI~>


Emojify 😉

Deep Learning Simplified Repository (Proposing new issue)
:red_circle: Project Title :  Emojify
:red_circle: Aim :  The aim of this model is to predict appropriate EMOJIS for a given sentence
:red_circle: Dataset : https://www.kaggle.com/datasets/hariharasudhanas/twitter-emoji-prediction
:red_circle: Approach : I would be first fetching the data and apply basic preprocessing and then i would be using 2-3 models such as LSTM , Bidirectional LSTM and GRU after which perform hyperparameter tuning over the Best model.

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be four main components.

Images - To store the required images.
Dataset - To store the dataset or, information/source about the dataset.
Model - To store the machine learning model you've created using the dataset.
requirements.txt - This file will contain the required packages/libraries to run the project in other machines.

Inside the Model folder, the README.md file must be filled up properly, with proper visualizations and conclusions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.

:white_check_mark: To be Mentioned while taking the issue :

Full name :  Bingumalla Likith
GitHub Profile Link : binguliki
Email ID<EMAIL_ADDRESS>Participant ID (if applicable): NA
Approach for this Project :
What is your participant role? (Mention the Open Source program) : GSSoC'24 | Contributor

@abhisheks008 , 👋 Hey bro can you please assign me this issue under GSSoC'24 with a appropriate level tag

One issue at a time.

@abhisheks008 Hey bro, Done with my previous task can you please assign me this

Assigned @binguliki


MKL: Adding Concat op implementation using the open source MKL_DNN

Can one of the admins verify this patch?

SUCCESS

@tensorflow-jenkins test this please.

The Linux CPU Tests, Linux XLA, and ci.tensorflow.org failures don't seem to be related to this PR. Is this something that needs to be manually overridden to merge?

What is the Ubuntu CC test that is preventing this PR from merging? It appears to be a Google Internal check. AFAICT none of these errors are related to the changes in this PR. Please merge.

Jenkins, test this please.


Microsoft.ApiManagement - 2020-06-01-preview release - [Not Ready YET]

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of “no breaking changes
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
Adding a new service

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from API Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable version with Breaking Change Validation errors
[ ] Updating API(s) in preview over 1 year

Please follow the link to find more details on PR review process.

/azp run automation - sdk

Can one of the admins verify this patch?

@solankisamir Please remove label NotReadyForReview if you are ready.

I will be working out of common work branch
https://github.com/Azure/azure-rest-api-specs/tree/apimanagement-2020-06-01-preview


🐞 installed module is unusable (codegen'd with wrong capitalization)

What is the issue?
Created module for running remote commands via SSH https://daggerverse.dev/mod/github.com/samalba/dagger-modules/ssh@35ed3e343d7e6faa3eab44570ee7531914dd4e65
I initialized the module with:
dagger init --name ssh --sdk go --source .
The module code uses a struct named Ssh. It works fine as standalone. However when you install the module from another module, it's available via dag.SSH() (different capitalization), which then fails to compile, because it cannot find the module version.
Simple way to reproduce: install the module from any other module and try to use it.
Dagger version
dagger v0.9.10 (registry.dagger.io/engine) darwin/arm64

I think I found the root cause. We call a different code path when generating the module on creation and when calling the codegen after installing a module dependency:
When running the codegen, all names go through the function: formatName https://github.com/dagger/dagger/blob/fca9e788f6d605ef9d256beace4656c11d7f6fe5/cmd/codegen/generator/go/templates/functions.go#L131 (which keeps SSH capitalized): https://github.com/dagger/dagger/blob/fca9e788f6d605ef9d256beace4656c11d7f6fe5/cmd/codegen/generator/go/templates/lint_name.go#L105 (along some other names).
However, when initializing the module: we simply capitalize the struct name: https://github.com/dagger/dagger/blob/fca9e788f6d605ef9d256beace4656c11d7f6fe5/cmd/codegen/generator/go/generator.go#L318
We should expose formatName so we call it when scaffolding the module as well.
In the meantime, the best workaround seems to edit the module generated code in the first main.go to manually map to the output of the codegen.

With the instructions above, managed to get a repro as an integration test:
func TestModuleGoNameCase(t *testing.T) {
        t.Parallel()

        c, ctx := connect(t)

        ctr := c.Container().From(golangImage).
                WithMountedFile(testCLIBinPath, daggerCliFile(t, c))

        ctr = ctr.
                WithWorkdir("/toplevel/ssh").
                With(daggerExec("init", "--name=ssh", "--sdk=go", "--source=.")).
                WithNewFile("main.go", dagger.ContainerWithNewFileOpts{
                        Contents: `package main

type Ssh struct {}

func (ssh *Ssh) SayHello() string {
        return "hello!"
}
`,
                })
        out, err := ctr.With(daggerQuery(`{ssh{sayHello}}`)).Stdout(ctx)
        require.NoError(t, err)
        require.JSONEq(t, `{"ssh":{"sayHello":"hello!"}}`, out)

        ctr = ctr.
                WithWorkdir("/toplevel").
                With(daggerExec("init", "--name=toplevel", "--sdk=go", "--source=.")).
                With(daggerExec("install", "./ssh")).
                WithNewFile("main.go", dagger.ContainerWithNewFileOpts{
                        Contents: `package main

import "context"

type Toplevel struct {}

func (t *Toplevel) SayHello(ctx context.Context) (string, error) {
        return dag.SSH().SayHello(ctx)
}
`,
                })

        out, err = ctr.With(daggerQuery(`{toplevel{sayHello}}`)).Stdout(ctx)
        require.NoError(t, err)
        require.JSONEq(t, `{"toplevel":{"sayHello":"hello!"}}`, out)
}

When running the test, I get:
        	            	Stderr:
        	            	# main
        	            	./dagger.gen.go:5694:35: undefined: SshID
        	            	./dagger.gen.go:6206:12: undefined: SshID
        	            	./dagger.gen.go:6211:40: undefined: SshID
        	            	./dagger.gen.go:6217:15: undefined: SshID
        	Test:       	TestModuleGoNameCase

@samalba does that look like the error you saw? Definitely looks like a capitalization error to me.

Yes it looks like it indeed


Failed to import the image by glb.

The reason is that the libgltf has an issue #6.

Fixed 4722823c1e187fe78164bbbb9e49d08d4c41271b.


Jd/param update fixes

It seems that EmulationModel should also be updated for update_parameters to use SimulationState:
https://github.com/NREL-Sienna/PowerSimulations.jl/blob/f7e83f498422b85b4c7d943d91777b50e0f4f3a1/src/operation/emulation_model.jl#L419


Entity tile screen filter doesn't work after a couple of letters

When typing in the filter, the filter doesn't work after a couple of letters are typed.
Also, the keywords aren't searched.

The keywords were searched, but null keywords counted as a match. Fixed to only count filled keywords with a match, as a match.


Could jattach enable remote debug dynamically?

Is there any way to enable Java remote debug, with out re-launch Java application?
I saw that libjdwp.so has  Agent_OnLoad, and haven't Agent_OnAttach. Could we add Agent_OnAttach to supoort?

jdwp agent requires certain JVM TI Capabilities that can be added only at JVM startup. It cannot be loaded dynamically at runtime.

Here is the capabilities that jdwp needed:
https://github.com/adoptium/jdk8u/blob/338acde33061b8af9d30aa510d86ec8156009021/jdk/src/share/back/debugInit.c#L309-L321
/* Fill in ones that we must have */
    (void)memset(&needed_capabilities,0,sizeof(needed_capabilities));
    needed_capabilities.can_access_local_variables              = 1;
    needed_capabilities.can_generate_single_step_events         = 1;
    needed_capabilities.can_generate_exception_events           = 1;
    needed_capabilities.can_generate_frame_pop_events           = 1;
    needed_capabilities.can_generate_breakpoint_events          = 1;
    needed_capabilities.can_suspend                             = 1;
    needed_capabilities.can_generate_method_entry_events        = 1;
    needed_capabilities.can_generate_method_exit_events         = 1;
    needed_capabilities.can_generate_garbage_collection_events  = 1;
    needed_capabilities.can_maintain_original_method_order      = 1;
    needed_capabilities.can_generate_monitor_events             = 1;
    needed_capabilities.can_tag_objects                         = 1;

It seems that those capabilities could be added dynamically.

can_access_local_variables, can_generate_single_step_events, can_generate_exception_events, can_generate_frame_pop_events, can_maintain_original_method_order, can_generate_method_{entry,exit}_events and can_generate_breakpoint_events can be added only in OnLoad phase, i.e. only at JVM startup.
Anyway, this is out of scope of jattach project. You can use serviceability-dev mailing list for the discussion of jdwp capabilities.


Feature request: Google APIs' native support

Bug, feature request, or proposal:
I want a feature in Angular2.
What is the expected behavior?
We cannot use Google APIs natively in Angular, whereas the Polymer Project has it's own tags to use Google APIs. I would like to see the same in Angular, because I like Angular more than Polymer, atleast for now.
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Every possible version.

You might want to try posting this in the Angular repository. This repository is for the Material library.

This is indeed out of scope for Angular Material, which is specially for Material Design UI components.


CI: fix running PT 1.11

What does this PR do?
seems docker was failing for missing torchmetrics, but in fact for failing horovod build
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[x] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃
cc @tchaton @rohitgr7 @akihironitta @carmocca @borda

@carmocca any idea for the failing mypy while I have not touched any code?


How do I use in flutter？

Thanks for looking to open an issue for this project.
If you are opening an issue to suggest adding a new entry, please consider opening a pull request instead!
How do I use in flutter？

To use an API in Flutter, you can follow these general steps:

Add the necessary dependencies: Open your project's pubspec.yaml file and add the required packages for making API requests. Typically, the http package is used for making HTTP requests in Flutter. You can add it under the dependencies section like this:
dependencies:
  http: ^0.13.4

After adding the dependency, run flutter pub get in the terminal to fetch the package.

Import the necessary packages: In the Dart file where you want to use the API, import the required packages. For making HTTP requests, import the http package like this:
import 'package:http/http.dart' as http;

Make API requests: To make API requests, you can use the functions provided by the http package. Here's an example of making a GET request to retrieve data from an API:
Future<void> fetchData() async {
  var url = Uri.parse('https://api.example.com/data'); // Replace with your API endpoint

  var response = await http.get(url);
  if (response.statusCode == 200) {
    var data = response.body;
    // Process the data as needed
    print(data);
  } else {
    print('Request failed with status: ${response.statusCode}.');
  }
}

In this example, the http.get function is used to send a GET request to the specified URL. The response is then checked for a successful status code (200) before processing the data.

Parse and use the API response: Depending on the API you are using, you may need to parse the response data into a usable format. Common formats include JSON and XML. Flutter provides built-in support for JSON parsing using the dart:convert library. Here's an example of parsing JSON data from an API response:
import 'dart:convert';

// ...

Future<void> fetchData() async {
  // ...

  if (response.statusCode == 200) {
    var jsonResponse = jsonDecode(response.body);
    // Process the JSON data
    print(jsonResponse['data']);
  } else {
    // ...
  }
}

In this example, the jsonDecode function is used to parse the JSON response into a Map or List object, allowing you to access the data.

These are the basic steps to use an API in Flutter.

Take this down
basically the creators of this are abusing  their power and arent treating people who help contribute and maintain the project so unlike this unstar this star ny fork of this that doesnt support this one
#3104
#3484


Flash algo works in basic fashion

Looks very good 🎉
If I understand correctly, the flash code more or less is taken from pyocd.
I think an attribution / copyright should be addded, if that is the case.

Yes, I basically followed their flashing code. In a next step I basically want to refactor everything. Lot's of the code is already quite changed but it's still very pythony and quie a mess.
I am down to add an attribution note; Not sure how to do that properly.
I'll merge for now; we can do this later :)


Sound effects do not play despite the option toggled on.

Basically the title, but I've double-checked that it's on and they do not play.
Also, the option always says "disabled":

Literally had to !, very easy fix.

awesome

Btw, sound effects only happen for new messages, not buttons or anything like vanilla.
We should make every sound a choice (like how Discord does it), but that will need to be done in B6.

i think this should be closed

fixed in 1.4


Move ssh commands to scripts on bare metal server

We are currently executing commands for running benchmarks one by one from RemoteServerJob. I moved those to scripts which would be placed on server and called from RemoteServerJob.
Primarily I did this because I want to log if any error from running those commands. If you take a look at one of scripts you'll notice output redirected with exec &>> file/to/log. It would help us with debugging errors. I did this after trying to find out why rails benchmarks aren't run.
What do you think @robin850? :)

Hey Marko !
That's a pretty good idea for debugging purpose to give the ability to run these tasks. The only tiny problem I'm seeing is that there is a lot of duplicate. There's a clear pattern though:

Redirect outputs to the log file.
Several echos with the date.
Do the docker dance (pull, start PG / MySQL / Redis, run, ...).
(Optional) docker stop + docker rm.

Maybe you could try to share things between the different scripts (this may be pretty interesting for scripts running PostgreSQL, MySQL and Redis as they include the version number). What do you think ?

@bmarkons I don;t know about this. Maybe add the runner scripts to ruby-bench-docker and just clone the repository onto the bare metal server? ruby-bench-server feels like the wrong repository to me.

@tgxworld I had some time thinking where should I place those scripts but this repo seemed like best fit.
I guess we could simply clone this one when setting up new server and run setup script, while having running scripts cloned at the same time.
Does it make sense? I can move them in docker repo though I find this one more suitable. Am I missing something?

ruby-bench-server is only meant to hold scripts that would bootstrap a new bare metal server by installing services we need like Docker.


[WIP] Updates the templating repo to use netcoreapp2.1 and the new shared framework

Hmm, we either need to fix this https://github.com/aspnet/Universe/pull/731, or update dotnet-install.ps1/sh to special case aspnetcore-runtime and download win7-x64 instead of win-x64.

@natemcmaster I've signed-off your PR to fix it. We should update universe IMO and have everything be consistent

Done


Function containing "discard" is stripped when the return value is not used by caller

When a function's return value is not used by the caller, it gets stripped during the shader conversion. However, the function could contain "discard" which would affect the control flow.
I have the following fragment shader FunctionNotCalled.frag.
+++++++++++++++++
#version 450
#pragma debug(on)
layout(location = 1) in vec4 voColor;
layout(location = 0) out vec4 poColor;
float DiscardFragments(float value)
{
if (value > 0.5)
discard;
return value;
}
void main()
{
DiscardFragments(voColor.a);
poColor = voColor;
}
+++++++++++++++++
After converting to spirv and then to msl, the DiscardFragments call gets removed.
glslangValidator FunctionNotCalled.frag -V -o FunctionNotCalled.spir
spirv-cross --msl FunctionNotCalled.spirv -o FunctionNotCalled.metal
Here is the metal shader output:
+++++++++++++++++
#pragma clang diagnostic ignored "-Wmissing-prototypes"
#include <metal_stdlib>
#include <simd/simd.h>
using namespace metal;
struct main0_out
{
float4 poColor [[color(0)]];
};
struct main0_in
{
float4 voColor [[user(locn1)]];
};
inline float DiscardFragments(thread const float& value)
{
if (value > 0.5)
{
discard_fragment();
}
return value;
}
fragment main0_out main0(main0_in in [[stage_in]])
{
main0_out out = {};
float param = in.voColor.w;
out.poColor = in.voColor;
return out;
}
+++++++++++++++++
When I remove the return value from the function DiscardFragments, the result is expected. This also happens for hlsl shader output for spriv-cross

This works as expected on master. This was fixed many months ago in bfa76ee2ab5319734d84126f8bd20e7ddf44a78a.

Thanks. I've checked. With the latest master, the function is not stripped. Sorry for the noise.


Add changelog for v1.5.6

What this PR does / why we need it:
Add changelog for v1.5.6.
What type of PR is this?
/kind documentation
Does this PR introduce a user-facing change? Then add your Release Note here:
NONE

Documentation:
NONE

/cherrypick release/v1.5

/lgtm
/approve


Additional attributes for form field components derived from native input

There are a couple of handful attributes that we need to add to our form field components(Input, Textarea, Select, from the native input attributes.

[ ] autocomplete
[ ] autofocus
[ ] inputmode (for Input and Textarea)
[ ] tel and url for type. (for Input only)
[ ] pattern (for Input only)
[ ] spellcheck (for Textarea)

I removed readonly because we need to discuss about its UX since visually there is no indication about a readonly input. It seems like a bug when enabled.
Maybe we can discuss later if we need a "readonly form element".


SONOS Web App Favorites

I am testing out your SONOS web app and it looks like it works to stop and start our music but the favorites tab is just blank. Am I missing a configuration that needs to be done?

There's no configuration which needs to be done. Can you check if you get any errors in the dev console and/or in the network requests?
And keep in mind, you only see favourites from Sonos (so the stuff you favourited in the Sonos app) and not your favourites from other services like Spotify, Apple Music and so on.

I have deffinitly added Sonos stations to my favorites and the page is still displaying nothing. The sidebar is not even showing when I select Favorites. I have to click back to get back to the Overview page.

I just checked the API and it looks like Sonos Radio Stations are indeed not included.
You can, however, add the stations in your favourites to your Stations and then they show up. Just long press on the station in your favourites and then click "Add Station to My Sonos".
Can you test if that works for you?

Closing, as API does not allow changes and haven't heard back.


Control+C during replay causes a crash

Sending a SIGSTOP signal to nodeos during normal operation will trigger a graceful exit.
But a SIGSTOP signal sent to nodeos while it is in the middle of a replay will cause it to exit and leave the shared memory databases in a dirty state.

Resolved by #6237


Install ssh

To make git tool fully useful, it requires also ssh tool to clone via SSH protocol.

Good point, do you think that ssh-client is enough?

I think so.

Should be done by know. I've updated:

trzeci/emscripten:sdk-tag-1.37.21-64bit
trzeci/emscripten:sdk-tag-1.37.21-32bit

Thanks!


Issue with button click and page reload

@juliemr , @hankduan
In the app which I am working, after clicking on a button, its taking me to a new angular page and the dev people designed in a way that while opening the new page,angular stuff is reloaded. So for a moment protractor didn't get the angular stuff and it will throw the following error :
Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on the window" .
Here is my click method.
this.openSearchedDeviceCard = function () {
element(by.xpath("//div[@class='card card--default']/descendant::h6[1]/a")).click();
//browser.sleep(5000);
};
Please let me know if there is any work around other that using browser.sleep(5000);

We're working on it.  Still thinking about the ideal solution tbh


No such file or directory error

when i tried this: python2 ./installcab.py ~/.cache/winetricks/win7sp1/windows6.1-KB976932-X64.exe mediafoundation

mediafoundation
- amd64_microsoft-windows-mediafoundation_31bf3856ad364e35_6.1.7601.17514_none_fa8534ab236134c4.manifest (win64)
- wow64_microsoft-windows-mediafoundation_31bf3856ad364e35_6.1.7601.17514_none_04d9defd57c1f6bf.manifest (wow64)
- mf.dll -> /media/alan/938d2aa0-3f75-4a82-a26a-82b3400b0b25/Games/steam/steamapps/compatdata/418370/pfx/drive_c/windows/system32
- mfps.dll -> /media/alan/938d2aa0-3f75-4a82-a26a-82b3400b0b25/Games/steam/steamapps/compatdata/418370/pfx/drive_c/windows/system32
- mf.dll -> /media/alan/938d2aa0-3f75-4a82-a26a-82b3400b0b25/Games/steam/steamapps/compatdata/418370/pfx/drive_c/windows/syswow64
Traceback (most recent call last):
  File "./installcab.py", line 305, in <module>
    process_files(output_files)
  File "./installcab.py", line 246, in process_files
    install_regfile(tmpdir, file_path+".reg", arch)
  File "./installcab.py", line 226, in install_regfile
    subprocess.call(cmd)
  File "/usr/lib/python2.7/subprocess.py", line 172, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/lib/python2.7/subprocess.py", line 394, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1047, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

it's not finding either wine or wine64 in your $PATH


modify armv7_tick prototype to return uint64_t instead of uint32_t

Addresses an ABI issue on 32-bit arm.  The implementation of armv7_tick calls the mrrc instruction to retrieve a counter from the p15 coprocessor. This is a 64-bit counter and it is stored into the 2 32-bit registers r0 and r1.  The problem is that the C prototype only declares the function as returning a 32-bit value, so the compiler is not aware that the r1 register is being clobbered.  This results in undefined behavior and I confirmed that I would get unpredictable results with a small test app that duplicates this problem.  Modifying the return type to uint64_t fixed the unpredictable results that I observed. I confirmed in the 32-bit arm ABI documentation that a 64-bit result from a function is stored in r0 and r1, which would inform the compiler that r1 is being overwritten by the armv7_tick function properly.
This could be related to:
https://github.com/openssl/openssl/issues/14838
https://github.com/openssl/openssl/issues/17009
https://github.com/openssl/openssl/issues/17465

I'm a bit surprised, since r1-r3 are scratch registers.
How does your test case look like?

To build the example you'll need the zig compiler: https://ziglang.org/download/
Linux-x86_64 is here: https://ziglang.org/builds/zig-linux-x86_64-0.10.0-dev.339+0e682e71b.tar.xz
Source code is here:
cntvct.zig:
const std = @import("std");

// Use T = u32 to reproduce ABI issue, T = u64 will fix it
const T = u32;
fn armv7_tick() callconv(.C) T {
    return asm (
    \\ mrrc    p15,1,%[ret],r1,c14
    : [ret] "={r0}" (-> T)
    :
    //: "r1" (NOTE: telling compiler that r1 is clobbered will also fix ABI issue)
    );
}

var val: T = 0;
const val_ptr: *volatile T = &val;

pub export fn _start() noreturn {
    var i: usize = 0;
    log("starting armv7_tick call loop...", .{});
    // NOTE: using while(true) won't reproduce the segfault from using incorrect u32 ABI
    while (i < 10) : (i += 1) {
        val_ptr.* = armv7_tick();
        if ((i % 100000000) == 0) {
            log("{}: last value was 0x{x}", .{i, val_ptr.*});
        }
    }
    log("done, last value was {}", .{val_ptr.*});
    std.os.exit(0);
}

pub fn panic(msg: []const u8, trace: ?*std.builtin.StackTrace) noreturn {
    _ = trace;
    std.log.err("panic: {s}", .{msg});
    std.os.exit(1);
}
fn log(comptime msg: []const u8, args: anytype) void {
    std.io.getStdOut().writer().print(msg ++ "\n", args) catch @panic("write to stdout failed");
}

Build with:
zig build-exe -O ReleaseSmall -target arm-linux-musl cntvct.zig --single-threaded

This will cross-compile the code for arm32, the executable will be named cntvct.  I ran this on a cortex a72.  When using type u32 I get this segfault:
$ ./cntvct
starting armv7_tick call loop...
Segmentation fault (core dumped)

SELinux also prints this:
[590130.886733] audit: type=1701 audit(1642688368.656:12): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=kernel pid=4068 comm="cntvct" exe="/tmp/foo/cntvct" sig=11

The error goes away if I turn the while(i < 10) into while (true).  This shows how clobbering registers without the compiler knowing causes undefined behavior which can cause any number of issues.  The issue also goes away if I change u32 to u64 or I tell the compiler that r1 is clobbered in the asm volatile configuration.

But with your patch the OPENSSL_rdtsc function changes just from this:
00178b3c <OPENSSL_rdtsc>:
  178b3c:       e59f3018        ldr     r3, [pc, #24]   ; 178b5c <OPENSSL_rdtsc+0x20>
  178b40:       e59f2018        ldr     r2, [pc, #24]   ; 178b60 <OPENSSL_rdtsc+0x24>
  178b44:       e08f3003        add     r3, pc, r3
  178b48:       e7933002        ldr     r3, [r3, r2]
  178b4c:       e5930000        ldr     r0, [r3]
  178b50:       e2100002        ands    r0, r0, #2
  178b54:       012fff1e        bxeq    lr
  178b58:       ea00003a        b       178c48 <_armv7_tick>
  178b5c:       001bc4b4        .word   0x001bc4b4
  178b60:       00000280        .word   0x00000280

to this:
00178b3c <OPENSSL_rdtsc>:
  178b3c:       e59f3020        ldr     r3, [pc, #32]   ; 178b64 <OPENSSL_rdtsc+0x28>
  178b40:       e59f2020        ldr     r2, [pc, #32]   ; 178b68 <OPENSSL_rdtsc+0x2c>
  178b44:       e08f3003        add     r3, pc, r3
  178b48:       e7933002        ldr     r3, [r3, r2]
  178b4c:       e5930000        ldr     r0, [r3]
  178b50:       e2100002        ands    r0, r0, #2
  178b54:       012fff1e        bxeq    lr
  178b58:       e92d4010        push    {r4, lr}
  178b5c:       eb000039        bl      178c48 <_armv7_tick>
  178b60:       e8bd8010        pop     {r4, pc}
  178b64:       001bc4b4        .word   0x001bc4b4
  178b68:       00000280        .word   0x00000280

so it still clobbers r1, but is less performance, since it has two additional instructions.

Remember that this is "undefined behavior" which means that it could work or may not work.  I gave you an example where it produces a segfault, but I don't know what your example with your toolchain and your optimization/sanitazation/whatever flags do.  In the example I gave you where it produces a segfault because of the clobber, the diff between that and telling the compiler that the clobber occurs is this (original on left, fixed on right):

So the original is this:
        mrrc    p15, #1, r0, r1, c14
        ldr     r1, .LCPI1_1
        str     r0, [r7]

And the fixed is this:
        mrrc    p15, #1, r0, r1, c14
        str     r0, [r7]
        ldr     r1, .LCPI1_1

If I modify the ABI to use u64 then the code changes quite a bit more, which is what I've done in this PR.   Allowing undefined behavior in the name of performance doesn't seem like the right choice to me.

I should also clarify I'm not familiar enough with arm asm to critique the assembly you provided.  But you said that r1 is still clobbered. The problem isn't that r1 is overwritten, it's that it's overwritten in the assembly and the compiler doesn't know that it is.  By "clobbered" I'm saying it's overwritten "unknowingly".  If in your new assembly it's still overwritten then that's fine because the compiler knows about it, so if it needed that register then it would know to save it beforehand.  And the compiled assembly you provided may not have any issue because you don't have a particular set of compiler options to expose the undefined behavior in a poor way such as creating a segfault.

But your compiler does inline this function, the ABI is not about inline, it is about call conventions for external functions.
Clobbering r1 in an inline assembler statement, that is declared only to clobber r0 is of course a completely different
thing.

Whether it's inlined doesn't matter, the compiler still doesn't know that the assembly is clobbering the r1 register.  The ABI tells the compiler what what registers that assembly code uses, which in this case is either r0 (for uint32_t) or r0 and r1 (for uint64_t).
And a correction on my assembly diff.  What I gave you was from GodBolt but it's slightly different from what my local compilation did.  Here is the diff with objdump before and after I let the compiler know the assembly clobbers the r1 register:
80,81c80,81
<    2020c:	e59f10f8 	ldr	r1, [pc, #248]	; 0x2030c
<    20210:	ec510f1e 	mrrc	15, 1, r0, r1, cr14
---
>    2020c:	ec510f1e 	mrrc	15, 1, r0, r1, cr14
>    20210:	e59f10f4 	ldr	r1, [pc, #244]	; 0x2030c

Also note that the next line is:
   20214:	e5810000 	str	r0, [r1]

In the bad version, the compiler loads the r1 register, then calls mrrc but thinks the r1 register still has what it did, then leads r0 with whatever r1 is pointing to.  That's what causes the segfault.  When I tell the compiler that mrrc clobbers r1, then it just reorders those 2 instructions and no more segfault.

According to gcc and Microsoft, R1 is not saved by functions.  Overwriting it should not cause problems for the caller.
As @bernd-edlinger noted, your inline assembler will cause problems because it isn't a function call and it says that it doesn't clobber R1.

Oh ok, so it looks like C compilers assume r0 through r3 are never guaranteed. It looks in Zig's inline assembly it doesn't assume this and requires the clobbers to be explicit. Thanks for the pointers

Exactly.


Refactor LoanInfo and HoldInfo to be dataclasses (PP-1728)

Description
Refactor LoanInfo and HoldInfo to be simple dataclasses, and move the logic for creating and updating loans and holds from a LoanInfo or HoldInfo into a method called create_or_update.
In the process, I removed the Hold.external_identifier column, which appears to be unused.
Motivation and Context
Needed to modify how LoanInfo and HoldInfo are used as part of PP-1728, this refactor makes that work easier, but I thought it would be easier to understand as a separate PR.
How Has This Been Tested?

Running tests

Checklist

[X] I have updated the documentation accordingly.
[X] All new and existing tests passed.

This one has some missing coverage, but all the lines that are not covered, we not previously covered, so I think it should be fine to merge as is.


How to use converters for nullable types

I have a backward compatibility requirement to serialize all enums and booleans as integer values.
So I need my xml to contain
<STATUS>1</STATUS>
<COMPLETED>1</COMPLETED>

instead of
<STATUS>Ok</STATUS>
<COMPLETED>true</COMPLETED>

Specifically I use nullable enum an boolean types in my entities.
I got it to work by registering IConverters for <int?> and <bool?>
       private static IExtendedXmlSerializer CreateSerializer(string root) => new ConfigurationContainer()
            .EnableImplicitTyping(implicitTypes)
            .Type<T>().Name(root)
            .Type<int?>().Register().Converter().Using(NullableIntConverter.Default)
            .Type<bool?>().Register().Converter().Using(NullableBoolConverter.Default)
            .EnableThreadProtection()
            .Create();

        private class NullableIntConverter : IConverter<int?>
        {
            public static readonly NullableIntConverter Default = new NullableIntConverter();

            public bool IsSatisfiedBy(TypeInfo parameter)
                => parameter.AsType() == typeof(int?);

            public int? Parse(string data)
                => string.IsNullOrEmpty(data) ? (int?)null : int.Parse(data);

            public string Format(int? instance)
                => instance?.ToString();
        }

        private class NullableBoolConverter : IConverter<bool?>
        {
            public static readonly NullableBoolConverter Default = new();

            public bool IsSatisfiedBy(TypeInfo parameter)
                => parameter.AsType() == typeof(bool?);

            public bool? Parse(string data) => data switch
            {
                "0" => false,
                "1" => true,
                _ => null
            };

This is working for me with version 3.4.2 but stopped working in version 3.4.3
My guess that with the introduction of nullable types support, the converters are not overriding the default serialization.
Is there a workaround? I thought about using ISerializerExtension or IAlteration but couldn't figure how to use those APIs.

DOH... sorry for breaking your code @zvikara and thank you for making me aware of this.  We should indeed be checking for registered converters.  Please check out this build and see if it treats you better:
https://github.com/ExtendedXmlSerializer/home/pull/534#issuecomment-907775464
Let me know if you have any further issues and I will look into them for you. 👍

Thanks very much for the very quick response!!!
I tested the fix with my code and it works!

Great, @zvikara!  I will get this deployed to NuGet on Tuesday and will update here when it's ready.  Please feel free to use the preview build until then.

This has been deployed to NuGet:
https://www.nuget.org/packages/ExtendedXmlSerializer/
Thank you for taking the time to report this and improving ExtendedXmlSerializer. 👍


fixed #3646

Fixes a bug

Describe the changes below:
Changes the checks for Camera.cull() to give only the game objects in the camera's view instead of all game objects

👍


slack channel

hi there  @sdispater! can you make a slack channel on the python developers slack and put a note in the README?
here's a link to sign up: https://pyslackers.com/slack/
thanks!

Poetry now has a discord server: https://discordapp.com/invite/awxPgve


ROX-16608: Normalize process and process listening on ports to utf8

Description
Ensure that elements from processes and processes listening on ports are valid UTF8 strings. Example of a failure. nulls are also not valid in Postgres UTF8 so cover that case too
log
detection/lifecycle: 2023/04/19 22:40:05.604034 manager_impl.go:198: Error: Error adding process indicators: ERROR: invalid byte sequence for encoding "UTF8": 0xff (SQLSTATE 22021)

due to
ls $(iconv -f UTF-8 -t UTF-16 <(echo 'abc#$%%^'))

Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
Will re-run the above command

/retest

Sounds reasonable, with the caveat that we need to be sure there is no genuine encoding mismatch between client and the db. Otherwise the data will be silently modified -- although I hope this will trigger some alerting.

@erthalion Good point, the default has been UTF8 in every run we've had, but I submitted a PR so that initdb explicitly specifies --encoding


Change default path of built executable from build/app to build/relea…

…se/bin/cquery (installed to $PREFIX/bin/cquery)
This is incompatible, please change your editor configuration:

LanguageClient-neovim: g:LanguageClient_serverCommands
Emacs cquery.el: cquery-executable
VSCode: cquery.launch.workingDirectory cquery.launch.command

Haven't set up my VSCode... so .vsix...

Thanks

.vsix needs rebuilding. But I cannot verify it so I did not do it. You may want to pull the extension out of the repository because each binary consumes 100+kb.

Yea, I'll rebuild, my goal is to move it to github releases with a pre-packaged cquery binary as well.


incorrect paths when developing plugins

Describe the bug
When working with plugins, copilot incorrectly generates the plugin paths.
i.e. when making requests that should be /todo it's making a request to /.well-known/ai-plugin.json/todo
This is using gpt-4 model for both completion and planner

it does work if I give it a hint

but annoyingly I need to provide that hint every time it interacts with the plugin otherwise it reverts to using /.well-known/ai-plugin.json as the base path
Platform

OS: Windows, Mac
IDE: VS Code
Language: Crystal Lang: https://github.com/spider-gazelle/crystal-gpt (template todo application)
Source: main branch of repository

the plugin does work properly at https://chat.openai.com/

Hi @stakach, thanks for letting us know about this issue. Would you mind providing the entire openapi specification so that we can help debug what's going on here?

---
openapi: 3.0.3
info:
  description: Plugin for managing a TODO list, you can add, remove and view your
    TODOs.
  title: personal todo list
  version: 1.0.0
paths:
  /todo:
    summary: Implementation of a TODO application
    get:
      summary: returns the list of todos
      tags:
      - PluginRoutes
      operationId: PluginRoutes_index
      parameters: []
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PluginRoutes__Todo'
        406:
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        415:
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        422:
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        404:
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__CommonResponse'
    post:
      summary: append a new todo to the end of the list
      tags:
      - PluginRoutes
      operationId: PluginRoutes_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PluginRoutes__Todo'
        required: true
      parameters: []
      responses:
        201:
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PluginRoutes__Todo'
        406:
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        415:
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        422:
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        404:
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__CommonResponse'
  /todo/{index}:
    summary: Implementation of a TODO application
    get:
      summary: return the todo at the index provided, indexes start at 0
      tags:
      - PluginRoutes
      operationId: PluginRoutes_show
      parameters:
      - name: index
        in: path
        required: true
        schema:
          type: integer
          format: Int32
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PluginRoutes__Todo'
        406:
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        415:
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        422:
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        404:
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__CommonResponse'
    put:
      summary: modify the todo at the index provided
      description: 'modify the todo at the index provided

        indexes start at 0 and this will also set completed to false'
      tags:
      - PluginRoutes
      operationId: PluginRoutes_update
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PluginRoutes__Todo'
        required: true
      parameters:
      - name: index
        in: path
        required: true
        schema:
          type: integer
          format: Int32
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PluginRoutes__Todo'
        406:
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        415:
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        422:
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        404:
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__CommonResponse'
    delete:
      summary: mark the todo, at the index provided, as completed
      description: 'mark the todo, at the index provided, as completed

        indexes start at 0'
      tags:
      - PluginRoutes
      operationId: PluginRoutes_complete
      parameters:
      - name: index
        in: path
        required: true
        schema:
          type: integer
          format: Int32
      responses:
        202:
          description: Accepted
        406:
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        415:
          description: Unsupported Media Type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ContentResponse'
        422:
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__ParameterResponse'
        404:
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionController__Error__CommonResponse'
components:
  schemas:
    PluginRoutes__Todo:
      type: object
      properties:
        description:
          type: string
      required:
      - description
      description: an individual todo
    ActionController__Error__ContentResponse:
      type: object
      properties:
        error:
          type: string
        accepts:
          type: array
          items:
            type: string
          nullable: true
      required:
      - error
    ActionController__Error__ParameterResponse:
      type: object
      properties:
        error:
          type: string
        parameter:
          type: string
          nullable: true
        restriction:
          type: string
          nullable: true
      required:
      - error
    ActionController__Error__CommonResponse:
      type: object
      properties:
        error:
          type: string
          nullable: true
        backtrace:
          type: array
          items:
            type: string
          nullable: true

Thanks for providing that, we'll try to reproduce the issue. In the meantime, I notice that your openapi spec does not define the servers and I'm wondering if this could be part of the issue. Can you add a servers section and see if that helps?
Example from ChatGPT Plugins OpenAPI Defenition :
servers:
  - url: http://localhost:3333

@stakach I hope this has helped with your issue. If your still seeing problems after adding the servers field in the spec then please let us know. Thanks!


store .amr files

1. SDK version（SDK 版本）
{
SW_V2112_csdk
}

2. In what kind of operation problems appear, and how to reproduce the problem ?（什么样的操作步骤问题会出现，是否是稳定复现，如何复现问题？）
{
Is it possible to save .amr file through UART?
}

you can just send record data to uart while recording, by use data callback while recording:
void CallbackData(unsigned char* data, unsigned int len, unsigned int* recordLen)
{

//send voice data here

    *recordLen = len;
}

AUDIO_Error_t result =  AUDIO_RecordStart(AUDIO_TYPE_AMR,AUDIO_RECORD_MODE_AMR122,recordFd,CallbackResult,CallbackData);


Simplify Dockerfiles and fix permission issues

This PR addresses the following issues with Dockerfiles:

Dockerfile (total savings of 130MB):

cleans up local apt cache before creating a new layer, to avoid storing unnecessary data (tip: fromlatest.io is a nice little service that analyzes Dockerfiles for easy optimizations);

Dockerfile.development/Dockerfile.ci (total savings of ~700MB):

removes a lot of duplication (identical blocks of code for each package manager) in the creation of volumes (let me know if that's intentional though, - e.g. here - and I can revert those changes).
cleans up local apt cache before creating a new layer, to avoid storing unnecessary data (saves ~40MB);
uses an additional build stage to perform the bundle installs (saves ~90MB);
reduces the size of the context sent to Docker daemon from 50+ MB to 600 KB by using positive filtering in .dockerignore instead of negative filtering.
reduces the number of layers in the image by ~20;
fixes the following permissions issues on Linux hosts:

when passing -u dependabot to docker build, the active user didn't have root permissions so wouldn't be able to successfully install apt packages;
the volume mapping was done with the UID of the Dockerfile's dependabot user, which might have a different UID than on the host system. This is evident when your UID is not 1000.

Without any change in logic, the size of the development image went down from 5.86GB to 5.17GB.

To further simplify things and get rid of the mkdir -p instructions, I've had to use --chown in the COPY instructions. However, these are not supported in Windows hosts. I don't know if Windows is supported as a host for development. If that's the case, I can revert that part of the PR.
I wasn't able to pass --chown=$USERNAME in Dockerfile.ci, I imagine it's because the CI server is running an older version of Docker which doesn't do variable substitution for values in --chown.

There are some places in scripts where we we list out the package manager directories. I'm curious if that's done intentionally for readability, or whether for the sake of ease of adding new package managers it would be better to iterate them according to existing convention:
diff --git a/Dockerfile b/Dockerfile
index 77feb6792..d9020a65c 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -158,10 +158,7 @@ ENV DEPENDABOT_NATIVE_HELPERS_PATH="/opt" \
     PATH="$PATH:/opt/terraform/bin:/opt/python/bin:/opt/go_modules/bin:/opt/dep/bin" \
     MIX_HOME="/opt/hex/mix"

-RUN bash /opt/terraform/helpers/build /opt/terraform && \
-    bash /opt/python/helpers/build /opt/python && \
-    bash /opt/dep/helpers/build /opt/dep && \
-    bash /opt/go_modules/helpers/build /opt/go_modules && \
-    bash /opt/npm_and_yarn/helpers/build /opt/npm_and_yarn && \
-    bash /opt/hex/helpers/build /opt/hex && \
-    bash /opt/composer/helpers/build /opt/composer
+# Build all helpers copied above
+RUN for build in `ls /opt/*/helpers/build`; do \
+      bash $build $(realpath -m $build/../..); \
+    done

Thanks for submitting this, @PombeirP!  I requested a code review on this, but the team is pretty busy scaling Dependabot for GitHub at the moment, so I'm not sure how quickly we'll be able to get to this.


Set auto_expand_replicas option

In helm there should be an option to set the auto_expand_replicas.  This will allow the replicas to scale as nodes are added.  This will solve the issue of the index being yellow when only one node exists (because there is no where to place the replicas).
Place this option in the elasticsearchconfig section as this with a default of 0-2
elasticsearchConfig:
auto_expand_replicas: 0-2
For more details see:
https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html

Moved to EDCOP-Elasticsearch


Canvas V2 Minor UI Tweaks

Summary

Minor UI QOL tweaks: Updated a lot of icon buttons, tweaked spacing between some of them, swapped out an icon or two and added more visible toggled states to some layer options.
Related Issues / Discussions

QA Instructions

Merge Plan

Checklist

[x] The PR has a short but descriptive title, suitable for a changelog
[ ] Tests added / updated (if applicable)
[ ] Documentation added / updated (if applicable)

Sorry, I'm not at the point where I'm accepting PRs for canvas v2. The whole thing is still in flux, including UI elements. Please check in first next time.


gherkin: go get github.com/cucumber/cucumber/gherkin/go not working

Trying to use gherkin in go, but 'go get github.com/cucumber/cucumber/gherkin/go' is returning
""
go get github.com/cucumber/cucumber/gherkin/go: module github.com/cucumber/cucumber@upgrade found (v0.0.0-20200318141525-aea94e0de737), but does not contain package github.com/cucumber/cucumber/gherkin/go
""
Not sure what I'm doing wrong or how to fix this any help would be appreciated!

Try the read only sub-repo. Go needs all the stuff to be in the root of the repo.
https://github.com/cucumber/gherkin-go


2021 OpenCV Spatial AI Competition Feature Discovery and Requests

Start with the why:
In the 2020 OpenCV Spatial AI Competition, we got a bunch of good feedback on features/etc. needed.  And we made a central to track these (so that they're easier to note quickly and not lose) and then broke those out into individual issues as we started work on them.  See https://github.com/luxonis/depthai/issues/183.
The feedback from that competition was very helpful, and we've now implemented most of those, and the remaining are very close.  But we expect from this 2021 competition that we'll get another round of valuable feedback on the API, needed functionality/etc.
So, let's do that again for the 2021!
Move to the how:
We'll add feature requests/etc. in here as notes (in the what) and then link to specific issues as we get the bandwidth to attack these.
Move to the what:
To kick this off, gtech888AU in our Discord (join here, then see this post) provided a nice starter list of onboard CV-processing nodes that are desired on DepthAI:
I have written down the OpenCV function names below with features I think would be immensely useful running directly on the OAK:

Threshold (performing binary and other types of common thresholding)
BilateralFilter (for bluring images whilst maintaining their edges) Github issue: https://github.com/luxonis/depthai/issues/215
Canny (for finding all edges in an image, not just corners).  A note on this: It looks like we can run Canny onboard at about 185ms/frame for a 1280x720 grayscale image.  Just an approximate from doing quick math on this.  Actual implementation will vary.
ConnectedComponentsWithStats (finding the centroid of objects and filtering objects by size eg number plate letters)

Nice to haves: (These seem to have dropped off the list from the original post - reposted for completeness)

createCLAHE (to help correct illumination issues from the camera images with less than ideal lighting conditions)
bitwise_and (for performing odd shaped / non-rectangular masking on images)

The OpenCV online documentation shows the complete description and features of any of these above-listed OpenCV functions.

Thanks!  I meant to add those and forgot.  I appreciate you circling back.

The following two simple functions can act as a simple background subtractor and would be very useful to be implemented onboard for simple motion tracking.
For maximum flexibility the node may need to be able to buffer the value of the previous frame to use as image 1 and current frame as image 2, to detect changes between the frames.
absdiff(image1, image2, dst);

https://docs.opencv.org/3.4/d2/de8/group__core__array.html#ga6fef31bc8c4071cbc114a758a2b79c14
// pseudocode absdiff
Mat image1, image2, dst;
...
for each row : r
for each column : c
for each channel : ch
dst(r,c,ch) = abs(image1(r,c,ch) - image2(r,c,ch))
subtract(image1, image2, differenceImg1);

https://docs.opencv.org/3.4/d2/de8/group__core__array.html#gaa0f00d98b4b5edeaeb7b8333b2de353b
// pseudocode subtract
Mat image1, image2, dst;
...
for each row : r
for each column : c
for each channel : ch
dst(r,c,ch) = (image1(r,c,ch) - image2(r,c,ch))

Thanks!


cc-wrapper: remove duplicate C{C,XX}${role_post}

This might be typo but I don't know which other variable was intended to be named. This can also come from a merge conflict.
One thing I did was to compare with diff if these line where really equals.
Description of changes

Things done

Built on platform(s)

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

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

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

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

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

[ ] Fits CONTRIBUTING.md.

@ofborg eval

To avoid this error I consider adding this to CI https://github.com/Vankka/pr-target-branch-action So staging is when a 5000+ or 500+ ?

I would say the current cutoff is 1000, but I failed to come up with a simple master or staging rule of thumb in https://github.com/NixOS/nixpkgs/pull/138052. I personally use 500+.

Anything is missing for this PR ?

Merged. Thank you!


Add logging for instrumentation lifecycle methods

This PR does some refactoring of DefaultServerInstrumentation and JUnitRunnerInstrumentation to reduce redundancies and adds some log statements for the instrumentation's lifecycle

Fix typoe
Seems legit