Provide regular expressions and JSON schemas for UUIDs

Hi 👋
I'm one of the authors of the uuidv4 module.
With the new 8.3 version of uuid there is almost everything there that is needed from our POV, and we are planning to deprecate uuidv4 in favor of this module.
However, there are two very small things missing, before we can do this:
First, it would be awesome to have regular expressions for UUIDs.
In uuidv4 we use the following ones:
const regex = {
  v4: /(?:^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}$)|(?:^0{8}-0{4}-0{4}-0{4}-0{12}$)/u,
  v5: /(?:^[a-f0-9]{8}-[a-f0-9]{4}-5[a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}$)|(?:^0{8}-0{4}-0{4}-0{4}-0{12}$)/u
};

Besides, it would be great to have JSON schemas for UUIDs. Again, we're using this code here, which builds on top of the aforementioned regexs:
const jsonSchema = {
  v4: { type: 'string', pattern: regex.v4.toString().slice(1, -2) },
  v5: { type: 'string', pattern: regex.v5.toString().slice(1, -2) }
};

Unfortunately, we are missing the time to update the uuid module ourselves, however this should be fairly easy to integrate.

Thank you for coming back here @goloroden! We're definitely interested in covering your use cases in order to reduce the number of uuid libraries in the JS ecosystem.
To make progress here I would like to understand your use cases for the above two features a bit better.
Regarding the regexes: Applying e.g. the v4 regex would be more or less equivalent to the following code:
import { version } from 'uuid';

let isV4 = false;
try {
  isV4 = version('SOME_UUID') === 4;
} catch (e) {}

If you want to avoid the error handling you could do:
import { validate, version } from 'uuid';

const isV4 = validate(SOME_UUID) && version(SOME_UUID) === 4;

That said we have discussed exposing the plain regex(es) in the past so this might definitely be an option, I would just like to understand the benefits over the existing APIs like validate() and version().
Regarding the JSON schema to be honest that looks like a pretty niche requirement that might be better suited for a dedicated module, have you considered that option already? Again, I would love to understand the use cases around this one a bit better.

Hey @ctavan 😊
Regarding regular expressions, I can provide an example of where we use them: In a solution for one of our customers we have an admin CLI which can be used to add, edit, and delete entities from the command-line. To identify these entities, you have to provide their ID (which, obviously, is a UUID). To provide these IDs there are two options: The user can use a flag, or enter them in interactive mode.
For the former, the validate call as you described it is fine, but for the latter we have a special requirement: The library that takes the user input interactively accepts a regular expression and only accepts user input if the input matches the regex. Otherwise the user is not even allowed to press <Enter>. For that, having the raw regex is very helpful.
Regarding the JSON schema case: It's basically once again about validating user input, but this time in an HTTP API where we check the entire request body. We use JSON schema for this anyway, so it would be helpful to not have to define the schema over and over again. Of course it's possible to define this elsewhere, but TBH an extra module just for this sounds annoying… and I think having it as part of the uuid module would be the most natural place for this.
Does this help?

Thanks for the explanation. I understand that providing regex(es) comes in handy for interop with validation libraries.
@broofa do you see any drawbacks of exposing the regexes (apart from the fact that we'd have to expose different regexps for the different versions, which we don't have internally yet)?
Regarding JSON schema I'm still reluctant. If we add something that framework/technology specific, it would create a precedent for exposing whatever other framework-specific validation formats might come up in the future (e.g. a GraphQL Type and the likes) and I don't think that this is something that this general-purpose library should support.

The library that takes the user input interactively accepts a regular expression and only accepts user input if the input matches the regex

This sounds like the pattern attribute.  I've mentioned this previously as a possible rationale for exposing the regex we currently use for validate().
However, as I think this issue shows, the problem is going to be that each use case will likely need subtly different incantations of the regex.  Should the regex be limited to specific versions? Require strict upper/lower casing only?  Allow leading/trailing whitespace?  Allow omission of hyphens?  Accept the nil UUID?  Include a capture group?  Include the g flag (and match word boundaries)?  Include the ^ and $ assertions?
The permutations quickly become unmanageable.  And the more I think about it, the more I'm of the mind that exposing the validate() regex is probably a bad idea.  Not only does it make tweaking that regex more difficult if we need to adjust validate() behavior, there will be a constant stream of issues requesting "tweaks" to it.
Another option would be to provide a regex generator/helper method, createRegex(options = {...}), that allows users to compose uuid regexs to suit their needs.  I'm a little leery of how convoluted the code for this might become given the number of options possible, but it'd be interesting to see someone take a pass at this.

Regarding schemas, I agree with @ctavan.  Not a business we should be in.  Also suffers from the same permutation issues as regexs.  Also, JSON-Schema now supports the uuid type (Not specific versions, however, but that does suggest the incremental value of providing schemas here is pretty low.)

@goloroden does the built-in JSON-Schema support for uuid, that @broofa linked to, solve the JSON schema part of things for you?

@ctavan Theoretically it would, if the JSON schema validator we're using did support this… 🙄
However, this should not be your problem, this is our problem.
So yes, I could live without the JSON schema thing.
However, the regular expression would still be useful.
But I understand why you don't want to do this (although I could think of a function here which returns the regex according to your needs).

@ctavan Theoretically it would, if the JSON schema validator we're using did support this… 🙄
However, this should not be your problem, this is our problem.
So yes, I could live without the JSON schema thing.

Cool!

OTOH this means that you can't use the validate function if e.g. you want to enforce lowercase / uppercase / … UUIDs. Then you are again left to your own devices.

You are totally right, the validate function as it stands has the same flaws as exposing the underlying regex would have… Maybe we should provide a separate package with just various UUID regexps? On the other hand people might also argue that you can just copy & paste the regex you need instead of adding an npm dependency for that. After all once you have the correct regexp, it won't change… I think this is really a tricky question and requires some further thought.

if the JSON schema validator we're using did support this

@goloroden Out of curiousity, which validator are you using?  I know  AJV supports format: 'uuid'.

@broofa We used ajv historically, but it is huge (which makes it a bad use case for the frontend), and its error messages are… well, they could better 😉
Hence we switched to jjv, which is way smaller (compare<EMAIL_ADDRESS>to https://bundlephobia.com/result?p=jjv@1.0.2), and which produces – when combined with jjve – nice, human-readable error messages.
Unfortunately, its last release has been 6 years ago, which is probably the main reason why it doesn't support UUIDs.
So, not that you get this wrong: ajv is a great module, it's just too large for small client-side bundles.

Closing, as it doesn't seem like a compelling enough argument has been made to add this.


Update README.md with more documentation about 2.0.x and migrating from 1.x.x

There's a lot of confusion about the major breaking changes that need to be clarified.

Preliminary control lights diagram:

Area occupied/clear flow diagram


fix(thirdweb): update TransactionError constructor to correctly set message property

#3704  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @joaquim-verges and the rest of your teammates on  Graphite


CodeLens configuration options

This PR

adds an option to granularly enable\disable all CodeLens, just like the TypeScript extension.
fixes a minor bug for doctests. It makes no sense to show Debug lens for them as cargo Can't skip running doc tests with --no-run.

bors r+


[WIP] Nightwatch tests

What does this PR do? How does it affect users?
This starts to add nightwatch tests to keen-dataviz. Currently this just tests against the demo page (test/demo/index.html)
How should this be tested?

Step through the code line by line. Things to keep in mind as you review:

Are there any edge cases not covered by this code?
Does this code follow conventions (naming, formatting, modularization, etc) where applicable?

Fetch the branch and/or deploy to staging to test the following:

[x] Does the code compile without warnings (check shell, console)?
[x] Do all tests pass?
[x] Does the UI, pixel by pixel, look exactly as expected (check various screen sizes, including mobile)?
[ ] If the feature makes requests from the browser, inspect them in the Web Inspector. Do they look as expected (parameters, headers, etc)?
[ ] If the feature sends data to Keen, is the data visible in the project if you run an extraction (include link to collection/query)?
[ ] If the feature saves data to a database, can you confirm the data is indeed created in the database?

Related tickets?

@joannecheng I had to install nightwatch globally to kick off the tests with nightwatch. Is there another test runner set up that I may be missing?

@sfalkoff I believe you need to install nightwatch globally

Great, thanks. How about adding these test setup/instructions to the readme?

@joannecheng I think this looks good. Adding tests for the x-axis labels and tooltips like you mentioned in your TODO comments sounds like a good idea for the next iteration.

@joannecheng @sfalkoff I'm happy merging this whenever y'all are 👍

👍


Showing "** AAD の条件付きアクセスします**" (Markdown notation)

https://docs.microsoft.com/ja-jp/yammer/troubleshoot-problems/phasing-out-temporary-mobile-passwords

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

ID: eccc79e7-399d-9701-d87b-812d2f06d772
Version Independent ID: ddf603fe-dd24-97af-dacd-83aa90179a05
Content: Phasing out temporary mobile passwords in Yammer
Content Source: yammer/troubleshoot-problems/phasing-out-temporary-mobile-passwords.md
Service: yammer
GitHub Login: @IrenePasternack
Microsoft Alias: v-irpast

@samanthaw @MollyMalone

@hyoshioka0128 Thanks, I passed it to the localization vendors to fix it.

@hyoshioka0128 This has now been fixed by @OfficeGlobal Thanks again for reporting it.

@AndreaBarr - This issue can be closed. Thank you.


Update team reviewers to coresdk

Team name has changed and automatic PRs are failing to add automatic reviewers.
This used to work when the team was core-sdk but now it looks like even updating it to coresdk fails (at least requesting reviewers using their API). It looks like GitHub might have a bug, related to name changes

Right now it doesn't work, and the main reason is that the team name is wrong. @aboedo updated it to coresdk.
But even when calling the GitHub API to request reviewers using the correct team name, the API responds with an error code. When the name was core-sdk the same API would work.
I wanted to update the team name to the correct one as a first step, just in case it's some problem with GitHub that they solve, or in case it works with Fastlane from CI.


CLI problem

Hi,
I'm unable to get your project as shown on the homepage :
go get github.com/alexrudd/snapshot_grafana
src/github.com/alexrudd/snapshot_grafana/snapshot/snapshotClient.go:18:2: no buildable Go source files in ...

Could you help me please ?
Thank you

Hey,
I can't reproduce the error you're seeing when using go get, I did however notice of load of errors in the lib example I'd put in the README, and have corrected those.
Could you give me some more details about the problem you're having?
Thanks,
Alex

Hi,
I Discover the Go language so I just installed it from the Fedora repo (golang 1.5.4-5.fc23)
After installation, I set the env variable "GOPATH"
After that, I launch this command :
go get github.com/alexrudd/snapshot_grafana

And I get this error :
package context: unrecognized import path "context"
package github.com/prometheus/client_golang/api/prometheus: no buildable Go source files in /home/johndoe/Go/src/github.com/prometheus/client_golang/api/prometheus

If I raise go get github.com/alexrudd/snapshot_grafana I get only this error package context: unrecognized import path "context"
My folder contain this :
ls src/github.com/
alexrudd  coreos  prometheus

And I have not the snapshot_grafana  that you tell in the README.
Thank you

Okay, found a couple of problems:
One I think is with the version of Go you're using. The context package was only introduced in version 1.7 and you're running 1.5. Try the official download/install page.
The other problem was that I had not vendored my dependencies. I've updated the code to work with the latest Prometheus client, and used Go Dep to capture dependencies.
Hopefully should all work now!

Thank you, all it's OK now.


Retrieve original model

Hi. Is there a way (built in function) to retrieve the original model from an updated one? I don't want the original attributes but a new instance of the original model without a database query.
As a side question, is there something to compare two model's attributes if there are the same?

There is no built-in way. You could do something like this:
$original = (new Model)->setRawAttributes($model->getOriginal());

Ok. I'll do that. Thanks.


Implement fixed trigger schedule

Fixes #1549

@johnoliver fails with:
/home/jenkins/.jenkins/workspace/build-scripts-pr-tester/openjdk-build-pr-tester/pipelines/jobs/configurations/jdk14u.groovy

@johnoliver @karianna: It's been failing like that for a while. Note that JDK 14 doesn't use the jdk14u tree as of yet. it's openjdk-jdk14. So my suspicion would be that there is some hard-coding of jdkXXu somewhere.
I might be wrong entirely ;-)

@karianna yeah that failure will be unrelated to this PR


Tidy up configuration sections and options

It's very poorly-documented, but the [twine] section actually specifies defaults used by the programs and modules.
To make this clearer, we should:—

Rename the [twine] section to [defaults]
Rename [twinecli] to [cli]
Warn on any occurrence of the deprecated sections or options[log] section
Provide a properly-documented up-to-date configuration file example

Requires bbcarchdev/libcluster#23


Update video for challenge: introduction to html5 elements

I think the video for this challenge should be updated.
https://learn.freecodecamp.org/responsive-web-design/basic-html-and-html5/introduction-to-html5-elements/
It does not show the proper nesting of both the p elements inside the main element. It also has one error as one of the p elements are not closed properly.
https://scrimba.com/c/c4Ep9Am

@beaucarnes Any comments?

Agreed with lasjorg,
In this exercise a new paragraph should be added below the first, with a main tag then added to wrap around both paragraphs.
In the video, the main tag is added around the newly added second paragraph only, plus the newly added paragraph has an opening p tag at the end instead of a closing p tag.
For contrast, the very next video has the main and paragraph tags the way they should be. Discovered this error when my daughter ran into difficulty with this exercise, and when she watched the video became even more confused.

@beaucarnes Any thoughts?

I will redo that video.


Docs show 0.3.3 as latest release

Hey Folks!
It looks like the docs are still showing 0.3.3 as the latest release. How can I upgrade that to 0.3.4?
I searched through this repo for a way to increment the docs to the next version, but I couldn't find any past PR's that showed it.
Thanks!
-Alex

This has been updated, and documentation for how to update has been added to scripts/archive_docs.py.


remove duplicate information

Configuring access for Azure Device Update service principal in the IoT Hub
There are too many content are duplicated in Azure document, user has to waste a lot of time to read the same content. The same section should be and already in 'User roles and access'. Does not make sense to be duplicated here.

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

ID: 40e744e4-7bb1-d63a-7806-66ae19580c03
Version Independent ID: 059b3734-eb95-1e79-c92a-6d4479393513
Content: Understand Device Update for Azure IoT Hub resources
Content Source: articles/iot-hub-device-update/device-update-resources.md
Service: iot-hub-device-update
GitHub Login: @vimeht
Microsoft Alias: vimeht

@xiongyu0523 Thanks for sharing the feedback. I believe these sections are mentioned as pre-requisites.
See below info.

Device Update for IoT Hub communicates with the IoT Hub for deployments and manage updates at scale. In order to enable Device Update to do this, users need to set IoT Hub Data Contributor access for Azure Device Update Service Principal in the IoT Hub permissions.

Adding @vimeht for further feedback and update the documentation as appropriate.

Can you please assign to @eshashah-msft

Removed the duplicate content
#please-close


Vhost doesn't work?

I trying to use lapin-futures with connection string containing vhost, but when I want to bind queue to exchange I get error that given exchange doesn't exist in "/" vhost. Seems that vhost part of DSN is ignored. My DSN is amqp://user:password@<ip>:5672/%2fdev
fn main() {
    env_logger::init();
    let task = async {
        let addr = std::env::var("AMQP_ADDR").unwrap();
        let uri = AMQPUri::from_str(&addr).unwrap();
        info!("Try connect to {:?}", uri);

        let client: Client = Client::connect(&addr, ConnectionProperties::default())
            .map_err(Error::from)
            .compat()
            .await?;

        // create_channel returns a future that is resolved
        // once the channel is successfully created
        let channel: Channel = client.create_channel().compat().await?;
        let id = channel.id();
        info!("created channel with id: {}", id);

        let reply_queue: Queue = channel.queue_declare("", QueueDeclareOptions { exclusive: true, auto_delete: true, ..Default::default() }, FieldTable::default()).compat().await?;
        info!("channel {} declared queue {}", id, reply_queue.name());
        channel.queue_bind(reply_queue.name().borrow(), "rpc", "broadcast", QueueBindOptions::default(), FieldTable::default()).compat().await?;
        ...

Log
[2019-06-20T06:47:43Z INFO  bots_manager] Try connect to AMQPUri { scheme: AMQP, authority: AMQPAuthority { userinfo: AMQPUserInfo { username: "user", password: "password" }, host: <ip>, port: 5672 }, vhost: "/dev", query: AMQPQueryString { frame_max: None, channel_max: None, heartbeat: None } }
[2019-06-20T06:47:44Z INFO  bots_manager] created channel with id: 1
[2019-06-20T06:47:44Z INFO  bots_manager] channel 1 declared queue amq.gen-dJO9zq9sY_jEMSOBjYtlcg
[2019-06-20T06:47:44Z ERROR lapin_async::channel] Channel 1 closed by 50:20 => Soft(NOTFOUND) => NOT_FOUND - no exchange 'rpc' in vhost '/'
[2019-06-20T06:47:44Z ERROR lapin_async::connection] Connection error

I researched through lapin code and not found where 'vhost' is set, only default is called everywhere, which set vhost to /.
My Cargo.toml deps
[dependencies]
lapin-futures = "0.21"
failure = "0.1"
log = "0.4"
env_logger = "0.6"
futures-preview = { version = "=0.3.0-alpha.16", features = ["async-await", "compat", "nightly"] }
futures_old = {package = "futures", version =  "0.1"}
tokio = "0.1"

Thanks for the report, will look at this this afternoon, I already have a
0.22 planned really soon anyways, so the fix will be part of it
On Thu 20 Jun 2019 at 08:57, Alexey Gerasimov<EMAIL_ADDRESS>wrote:

I trying to use lapin-futures with connection string containing vhost, but
when I want to bind queue to exchange I get error that given exchange
doesn't exist in "/" vhost. Seems that vhost part of DSN is ignored. My DSN
is amqp://user:password@:5672/%2fdev
fn main() {
env_logger::init();
let task = async {
let addr = std::env::var("AMQP_ADDR").unwrap();
let uri = AMQPUri::from_str(&addr).unwrap();
info!("Try connect to {:?}", uri);
    let client: Client = Client::connect(&addr, ConnectionProperties::default())
        .map_err(Error::from)
        .compat()
        .await?;

    // create_channel returns a future that is resolved
    // once the channel is successfully created
    let channel: Channel = client.create_channel().compat().await?;
    let id = channel.id();
    info!("created channel with id: {}", id);

    let reply_queue: Queue = channel.queue_declare("", QueueDeclareOptions { exclusive: true, auto_delete: true, ..Default::default() }, FieldTable::default()).compat().await?;
    info!("channel {} declared queue {}", id, reply_queue.name());
    channel.queue_bind(reply_queue.name().borrow(), "rpc", "broadcast", QueueBindOptions::default(), FieldTable::default()).compat().await?;
    ...

Log
[2019-06-20T06:47:43Z INFO  bots_manager] Try connect to AMQPUri { scheme: AMQP, authority: AMQPAuthority { userinfo: AMQPUserInfo { username: "user", password: "password" }, host: , port: 5672 }, vhost: "/dev", query: AMQPQueryString { frame_max: None, channel_max: None, heartbeat: None } }
[2019-06-20T06:47:44Z INFO  bots_manager] created channel with id: 1
[2019-06-20T06:47:44Z INFO  bots_manager] channel 1 declared queue amq.gen-dJO9zq9sY_jEMSOBjYtlcg
[2019-06-20T06:47:44Z ERROR lapin_async::channel] Channel 1 closed by 50:20 => Soft(NOTFOUND) => NOT_FOUND - no exchange 'rpc' in vhost '/'
[2019-06-20T06:47:44Z ERROR lapin_async::connection] Connection error
I researched through lapin code and not found where 'vhost' is set, only
default is called everywhere, which set vhost to /.
My Cargo.toml deps
[dependencies]lapin-futures = "0.21"failure = "0.1"log = "0.4"env_logger = "0.6"futures-preview = { version = "=0.3.0-alpha.16", features = ["async-await", "compat", "nightly"] }futures_old = {package = "futures", version =  "0.1"}tokio = "0.1"
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sozu-proxy/lapin/issues/182?email_source=notifications&email_token=AABWNXTQUZOW4DPEGVM2EJLP3MS6NA5CNFSM4HZP76Y2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4G2SMGVQ,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABWNXXSZX36JC4RT4I2UITP3MS6NANCNFSM4HZP76YQ
.


[Feture 5752]Add blocking task type

This PR contains Blocking task description writen in chinese and english.
You can refer: PR #6272 and Issue #5752 in DS main repo for more infomation about blocking task.

There are no images, because the front-end side has not been writen.😂 I just write a demo page for testing and not make a pull request.

There are no images, because the front-end side has not been writen.joy I just write a demo page for testing and not make a pull request.

Hi @mgsky1 I think you should add the front-end side together to keep the complete feature.
BTW, DS will use the Next UI for upgrading, so you should develop in the Next UI for new feature.

@songjianet Do we have a plan to add this type task

@songjianet Do we have a plan to add this type task

This is a Summer 2021 project

For the old UI, this work will not be supported, but it can be implemented in the new UI, but due to scheduling reasons, we may not support it in a short period of time, if you can handle the front end If so, you can handle it yourself, but it is still unknown when this feature will be officially released.

I got it, maybe we should merge task docs without screenshots and UI this time

@Tianqi-Dotes Could you please take a look in this English version docs?

I got it, maybe we should merge task docs without screenshots and UI this time

I don't think so, users can't use blocking task types due to lack of UI, so why wait for UI to be ready and then add this document?

I change my mind and waiting for ui, I add the label missing-ui on this PR, waiting for UI. Thank @caishunfeng

Hi @mgsky1  since we migrate our docs into apache/dolphinscheduler in PR https://github.com/apache/dolphinscheduler/pull/9291, you should change this file in https://github.com/apache/dolphinscheduler/tree/dev/docs instead of apache/dolphinscheduler-website. Do you have time to migrate it to apache/dolphinscheduler? If you need some help, feel free to ping me.

Hi @mgsky1 since we migrate our docs into apache/dolphinscheduler in PR apache/dolphinscheduler#9291, you should change this file in https://github.com/apache/dolphinscheduler/tree/dev/docs instead of apache/dolphinscheduler-website. Do you have time to migrate it to apache/dolphinscheduler? If you need some help, feel free to ping me.

Sorry for replying this comment so late. I am busy with graduating. I would like to know if this project is very urgent. If not, I can finish this task.

Looking forward about the change, currently you should change the document in path https://github.com/apache/dolphinscheduler/tree/dev/docs/docs instead of repo website , because to already migrate our doc to apache/dolphinscheduler now

Looking forward about the change, currently you should change the document in path https://github.com/apache/dolphinscheduler/tree/dev/docs/docs instead of repo website , because to already migrate our doc to apache/dolphinscheduler now

Got it ~

The UI and doc development has been completed. PR#10397
@zhongjiajie


Corrected few mistakes

Removed A4

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

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

#sign-off


[Sandbox] kube-burner

Application contact emails
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Project Summary
Kube-burner is a Kubernetes performance and scale test orchestration framework that helps create, delete and patch resources at scale, collect metrics, measurements and alerts around cluster performance and index them for long term storage, retrieval and regression identification.
Project Description
As Kubernetes has crossed the chasm to establish itself as the preferred foundation on which to deploy and scale cloud native applications, performance and scale of the platform are now more important than ever. Cluster administrators, application developers and end-users all have different ways of perceiving it, but they all unequivocally agree that performance and scale are perhaps the most important non-functional requirements alongside security for the Kubernetes platform.
kube-burner is a flexible and extensible tool written in golang that helps one easily design tests and evaluate the performance and scale of a Kubernetes platform through a simple to use CLI.  It can be used to establish a baseline for the performance of the Kubernetes platform, stress the control plane as well as the runtime, help derive SLOs and continually evaluate the platform against it, compare different Kubernetes distributions and across different form factors to help choose the right solution. It exemplifies performance-as-a-service by taking complexity out and establishing a low enough barrier for cluster administrators, application developers and end-users to put their performance engineering hats on.
kube-burner helps a user run tests to characterize performance of the Kubernetes solution, by creating, deleting and patching Kubernetes resources (pods, deployments, services, secrets, configmaps and more) at scale according to canned or user-defined scenarios. It also helps evaluate the behavior of the platform under load by scraping and indexing prometheus metrics and alerts along with custom measurements like podready latencies and pprofs for surfacing and zooming in on bottlenecks.

Org repo URL (provide if all repos under the org are in scope of the application)
N/A
Project repo URL in scope of application
https://github.com/cloud-bulldozer/kube-burner
Additional repos in scope of the application
No response
Website URL
https://cloud-bulldozer.github.io/kube-burner
Roadmap
https://github.com/cloud-bulldozer/kube-burner/blob/master/ROADMAP.md
Roadmap context
Kube-burner has a robust roadmap to improve stability of the code and consistency of results while continuing to advance features around performance and scale testing use cases. The focus is on adding additional checks to ensure that the cluster is healthy before running a benchmark, automated performance regression flagging, standalone metrics and measurements collection on the cluster without running a benchmark and more canned workloads that push Kubernetes' scale in different dimensions. There are several use-case specific performance and scale test suites that depend on kube-burner as the orchestrator, so our roadmap tends to encompass features needed to enable those efforts as well. The community is free to open Github issues and get them prioritized to be incorporated into the roadmap.
Contributing Guide
https://cloud-bulldozer.github.io/kube-burner/v1.7.6/contributing/
Code of Conduct (CoC)
https://github.com/cloud-bulldozer/kube-burner/blob/master/CODE_OF_CONDUCT.md
Adopters
Bosch, Cisco, IBM, Upbound, ANZ Bank, Plaid Inc., EnterpriseDB
Contributing or Sponsoring Org
Red Hat Inc.
Maintainers file
https://github.com/cloud-bulldozer/kube-burner/blob/master/MAINTAINERS.md
IP Policy

[X] If the project is accepted, I agree the project will follow the CNCF IP Policy

Trademark and accounts

[X] If the project is accepted, I agree to donate all project trademarks and accounts to the CNCF

Why CNCF?
We believe that becoming a part of the CNCF opens up a world of opportunities for kube-burner, as the foundation provides the stage to accelerate contributions, collaboration and adoption. We know that end users are looking for simple, reliable ways to understand the performance and scale of their Kubernetes platforms so they can design better solutions, and putting kube-burner under the CNCF umbrella will give them a vendor neutral tool to do exactly that.
Benefit to the Landscape
Performance and scale are two of the most important non-functional requirements alongside security and there is currently a void in the CNCF landscape when it comes to easy to use, reliable tools that work across any Kuberentes distribution and form factor. Hence, the community at large has an unmet need in this area. Kube-burner will add another dimension to the Observability and Analysis column in the CNCF landscape and give cluster administrators, application developers and end users a mechanism to not only benchmark the Kubernetes control plane, node agents, container runtime and CNIs but help approach their choices through a performance lens. For example, it is indeed empowering to be able to benchmark different cloud native network choices for the Kubernetes platform and choose what works best for the given use case.  We believe that kube-burner is uniquely positioned to benefit the cloud native stack as it allows stress testing even custom controllers and generating enough load on the Kubernetes platform to create a 360 degree view of the cluster’s performance under different workloads and conditions. Most importantly, it will help catalyze discussions around performance and evangelize a scalability first approach to designing a cloud native stack with Kubernetes at the core.
Cloud Native 'Fit'
Cloud native technologies are all about delivering value at massive scale across the public cloud, data center and the edge.  kube-burner thrusts performance and scale tooling to the forefront of the CNCF Cloud Native Landscape, providing cloud administrators, application developers and end-users with the technology to test the reliability, stability, performance and scale of different layers of the cloud native stack - provisioning, runtime, orchestration and management, observability and analysis.
Cloud Native 'Integration'
Kube-burner is capable of testing performance and scale of Kubernetes which is at the core of the cloud native stack. It uses client-go to create, patch and delete kubernetes resources at scale with massive parallelism and scrapes prometheus for metrics and alerts generated during the tests. It is capable of operating against several distributions of Kubernetes as well as vanilla Kubernetes.
Cloud Native Overlap
There are currently no projects that focus on the performance and scale dimensions of Kubernetes, so kube-burner helps meet an unmet need in this area.
Similar projects
clusterloaderv2 has a somewhat similar motivation although it is not a CNCF project. However, kube-burner provides differentiated functionality and experiences as follows:

Flexible and easy to use configuration. kube-burner configuration is much more intuitive and helps design scenarios that push Kubernetes scale in different dimensions with minimal effort. The configuration is a blend of procedural and declarative approaches, bringing the best of both worlds together
Ability to capture and index metrics from Prometheus that represent the cluster's performance under load aka scale and index them to Elasticsearch/OpenSearch by consuming a custom metrics file.
Functionality to capture metadata about the cluster configuration for performing run-to-run comparisons
Alerting based on Prometheus expressions
Works across a range of Kubernetes distributions
Platform and cloud agnostic
Well documented

kubestone which is a benchmarking operator is no longer in active development and kubebench primarily focuses on database application performance as opposed to kube-burner which is focused on the platform.
Landscape
No
Business Product or Service to Project separation
kube-burner is a 100% open-source tool built for the community. There are currently no productization plans.
Project presentations
No response
Project champions
No response
Additional information
End-Users are looking for reliable, easy to use tools to benchmark their platform to measure its performance against SLOs and also make informed choices on several fronts including Kubernetes distributions and runtimes. kube-burner puts the power of performance engineering into the hands of key stakeholders like architects, cluster administrators, application developers and end-users and thrusts performance into the forefront of cloud native design conversations.

@smalleni it would be great if you could present kube-burner at a TAG Obeservability meeting.
@alolita @halcyondude

@nikhita Happy to! Looks like the next instance of the TAG Observability meeting is on September 5th (https://github.com/cncf/tag-observability)? Would appreciate it if we can get on the schedule then.

Hi @nikhita thanks for referring @smalleni to present on kube-burner at a TAG O11y meeting.
Sai - The next meeting on Sep 5 should work. Will reach out to you on Slack to coordinate details :-)

Hi @nikhita thanks for referring @smalleni to present on kube-burner at a TAG O11y meeting.
Sai - The next meeting on Sep 5 should work. Will reach out to you on Slack to coordinate details :-)

Awesome, I will be there with a couple of teammates to present. Looking forward to it!

@smalleni we have another presentation scheduled for logging operator (https://github.com/cncf/sandbox/issues/42) also on Sep 5. Can you do a 20-25 minute presentation and then use a few minutes for live Q&A since we now have 2 project presentations for Sep 5 :-)  to support projects lining up for sandbox review on the 12th.

@smalleni we have another presentation scheduled for logging operator (#42) also on Sep 5. Can you do a 20-25 minute presentation and then use a few minutes for live Q&A since we now have 2 project presentations for Sep 5 :-) to support projects lining up for sandbox review on the 12th.

Perfect, that should work for us. Thanks so much!

@alolita Would it be possible for us to take the first available time slot in that meeting?

@alolita Thanks for the opportunity to present to TAG Observability. While kube-burner has certain aspects of observability to it, it is primarily a performance and scale test orchestration framework and fulfills a key role to help find the limits of Kubernetes scale . @nikhita Based on alignment, do you feel the need for us to present to any other TAG as well?

Thank you @smalleni and team for presenting kube-burner to TAG App Delivery today. Our notes, a recording of the presentation and demo, and a copy of the presentation itself are all available at https://github.com/cncf/tag-app-delivery/issues/466#issuecomment-1813203599.
The TAG concluded that the project is a technical fit for CNCF and fits as part of TAG App Delivery.

/check-vote

/check-vote

/check-vote

/check-vote

/check-vote

/check-vote

/check-vote

/check-vote

/check-vote

/check-vote


[Wondertrade] Poke Level Inconsistency

When using /wt slot the required level is >10, however, when using /wt and selecting a pokemon via the GUI the required level is  ≥10.

Get a level 10 pokemon
Attempt to /wt slot the mon

fail
Attempt to /wt and navigate the trade through the gui

Succeed, see error.

For the requirements both to be ≥10 ( my preference) or both to be >10.
Orion, Likely all.

Fixed, thanks!

This seemed to have re-broken

GUI requires x >= 10 meanwhile command requires x > 10

fixed.


Azure B2C external identity provider: Configuring redirect urls

Hi all:
As per the external OpenId provider registration flow, AzureB2C MUST be configured as a client and Redirect URL Registration is mandatory. How I can get the redirect url for AzureB2C.
Thanks,

I fond the document. I would suggest to add this as part of configuring the external Idp.
https://docs.microsoft.com/en-us/azure/active-directory-b2c/b2clogin

@ajopjo Thank you for the inquiry. If you still need assistance with this issue, please do not hesitate to reopen and we can continue the discussion. Thank you!


float32 image type input/output

Hello,
I have slightly modified the code to be able to create a Mat object from a float32 np.array.
(In the last pull request only the other way round was possible)
cheers,
Marco

Hi Marco,
Thanks again for sharing your updates!


[Arges] Valea Mare-Podgoria village is not a component of Stefanesti city, Arges county - Fail

Precondition
SOLR: http://zimbor.go.ro/solr/#/romania/query
browser: Chrome
Steps to Reproduce:

Step
Action
Expected
Status

1
open SOLR in browser
SOLR UI is loaded without any errors
Fail

2
type Valea Mare-Podgoria in the q field
you are able to type Valea Mare-Podgoria in the q field
Fail

3
type judet: Arges in the fq field
you are able to type judet: Arges in the fq field
Fail

4
click on Execute Query button
"judet:Arges" and "localitate: Valea Mare-Podgoria", "comuna: Stefanesti" are displayed
Fail

Actual Results:
Valea Mare-Podgoria village is not found as a component of Stefanesti city, Arges county

https://orase.testquality.com defect D45.

Este orasul Stefanesti cu satul Valea Mare-Podgoria.


Add ThirdPersonBody to Camera Feature

What does this do?
I've added a ThirdPersonBody GameObject Property to the Camera Feature tab, there should be no noticeable difference between the current controller and this modification until you actually drag a GameObject in.
When a GameObject is dragged in the "viewer" tag will only be applied to that GameObject, allowing other GameObjects to remain visible in First Person should the developer need it.
What is the point of this?
Currently, when you meet the correct requirements to enable the "viewer" tag, this tag is applied across the entire Player GameObject, this means Viewmodels would also get hidden if they were on the Player GameObject (which they should probably be).

Makes sense to me - thanks


fix: bottom padding and overflow scroll for multi line snippet

Fixes overflow bugs when text is too long and can't be seen behind button.
cc: @designertyler @shixiedesign

@alisonjoseph sorry, I accidentally re-requested your review instead of mine and not sure how to get it back!
I just found that we were getting a 1px white inner border on focus


Problem with initialize mongoose-auto-increment

Hello, I use packages:
"mongoose": "^4.4.2",
"mongoose-auto-increment": "^5.0.1",

My code is falling because of now mongoose version is not throwing an exception if model is undefined.
File: index.js from you package
try {
    IdentityCounter = connection.model('IdentityCounter');

  } catch (ex) {
    if (ex.name === 'MissingSchemaError') {
      // Create new counter schema.
      counterSchema = new mongoose.Schema({
        model: { type: String, require: true },
        field: { type: String, require: true },
        count: { type: Number, default: 0 }
      });

      // Create a unique index using the "field" and "model" fields.
      counterSchema.index({ field: 1, model: 1 }, { unique: true, required: true, index: -1 });

      // Create model using new schema.
      IdentityCounter = connection.model('IdentityCounter', counterSchema);
    }
    else
      throw ex;
  }

but as we can see from the code, we initialize the package through an exception (this is very strange!)
The exception was not and parameter counterSchema == false.
if (!counterSchema || !IdentityCounter) throw new Error("mongoose-auto-increment has not been initialized");

Please, fix this :)

Thank you @adkazakov ! you save my day, I was crazy about that :+1:

Wait, what was the fix exactly? I'm running into the same error mongoose-auto-increment has not been initialized when I try to initialize it on heroku, but my local build runs just fine.


Monaco Diff Editor incorrectly counting line changes

monaco-editor version: 0.15.6
Browser: IE11
OS: Windows Server 2012 R2(win8.1$
Steps or JS usage snippet reproducing the issue:
Background:
I have a Linux machine that is posting files to a .net core API.
The API reads the contents of the file and stores it as a byte array in SQL.
* ASCII encoding
* About 35k lines (1.6mb)
The client go to view the diff in the web app (loading Monaco with AMD), Monaco displays the two files as having only one big diff. Not multiple like it does in vscode.
If I copy+paste the first 100 lines into a string literal in .createModel() it displays correctly. Maybe a buffer thing?
I have tried normalizing EOL before feeding it to the creatModel() fn, to no avail. I’ve also tried writing the string to a UTF8 file and reading that file back in before sending up to the client(in hopes of letting Windows normalize the EOL).
I’ve went through every possible editor and diff editor options and nothing seems to work. If I copy and paste the code from the diff editor (in browser) into vscode, it shows the line changes correctly. Any ideas as to what the issue could be?
See attached image for incorrect results. Thank you!!

It seems to compute the diffs correctly when I pass the first 500k characters (.subStr(0.500000)). After that it seems to fail and fail fast.

Is there a good method to feed or add to the model contents after the diff has been calculated?
I’m thinking I may have to loop the string and add in chunks, but I need to only calculate the diff of what’s being added, leaving the previous untouched.

The diff algorithm is implemented to "give up" after 5 seconds of computation time. That means it will give perhaps useless, but still technical correct results, like in this case where it creates a huge diff hunk.
This is controlled by this constant here and is currently not configurable --
https://github.com/Microsoft/vscode/blob/0a4a3b98282175a82a819b70d2bbe46475e1ebd0/src/vs/editor/common/diff/diffComputer.ts#L10

Are there any workarounds? Maybe some options to disable to speed up computation?

@alexdima this looks like it is mostly setup to be passed as an option now, with one exception.
diffComputer.ts uses the min between the option and the value 5000.  diffEditorWidget.ts sets a default of 5000, so there shouldn't be any issue with removing the min and the value 5000 from diffComputer.ts.  The only issue I can think of is if vscode uses the same diffComputer.ts file, but I can't tell if it does.

The diff editor now supports custom diff algorithms. This allows you to work around this limitation.


Component Integration (non-block component) Test Fails in Ember-Engine

My team is seeing an issue with failing component integration tests (in this case non-block usage of the component) when running tests inside an ember-engine with mocha/chai.
The test that is failing is the basic “it renders test”
import { expect } from 'chai'
import {
  describeComponent,
  it
} from 'ember-mocha'
import hbs from 'htmlbars-inline-precompile'

describeComponent(
  'sample-component',
  'Integration: SampleComponentComponent',
  {
    integration: true
  },
  function () {
    it('renders', function () {
      this.render(hbs`{{sample-component}}`)
      expect(this.$()).to.have.length(1)
    })
  }
)

The error is:
TypeError: Cannot read property 'lookup' of undefined
Here are the versions we are using:
package.json
"ember-cli": "~2.6.2"
"ember-cli-mocha": "0.10.4"
"ember-engines": "0.2.7"
bower.json
"ember": "~2.6.1"
"chai": "~2.3.0"
"ember-mocha": "0.8.11"
"ember-mocha-adapter": "~0.3.1"
"mocha": "~2.2.4"
When we changed the testing framework to qunit the test passed successfully:
"ember-cli-qunit": "2.2.1"

This issue was fixed by: https://github.com/dgeb/ember-engines/pull/169


Give Reason more information about bundle results.

Build failed https://gradle.com/s/po4dsjrkzbbcy


Create a Horsengel roulette helper

The Horsengel roulette command starts to be too long. It would be nice to make divide it into several functions. Why not creating its own NPM library?

https://github.com/Helmasaur/Horsengel-roulette


Meridio operator helm chart

Add a helm chart for the meridio operator

https://github.com/Nordix/Meridio-Operator/pull/10


The event and JSON formats should specify also the port pairs for QUIC. Now only CIDs are visible.

Resolved in commit e6928ea


Consecutive expectations fail

The second of the tests below will fail, regardless of order.  Removing either will allow the remaining test to pass.
or : Result ok err, Result ok err -> Result ok err
or = \first, second ->
    when (first, second) is
    (Ok _, Ok _) | (Ok _, Err _) -> first
    _ -> second

expect or (Err 1) (Err 2) == Err 2
expect or (Ok 1) (Ok 2) == Ok 1

── EXPECT FAILED in main.roc ───────────────────────────────────────────────────

This expectation failed:

26│  expect or (Ok 1) (Ok 2) == Ok 1
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

1 failed and 1 passed in 371 ms.

or : Result ok err, Result ok err -> Result ok err
or = \first, second ->
    when (first, second) is
    (Ok _, Ok _) | (Ok _, Err _) -> first
    _ -> second

expect or (Ok 1) (Ok 2) == Ok 1
expect or (Err 1) (Err 2) == Err 2

── EXPECT FAILED in main.roc ───────────────────────────────────────────────────

This expectation failed:

26│  expect or (Err 1) (Err 2) == Err 2
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

1 failed and 1 passed in 356 ms.

Apple M1
macOS 14.5
roc nightly pre-release, built from commit https://github.com/roc-lang/roc/commit/070d14a5d607b0e765e1182bb760498e44e4d08f on Sat Jul 13 09:13:46 UTC 2024

This issue is not directly related to expect. The following program crashes with "fail" instead of "ok".
app [main] { pf: platform "https://github.com/roc-lang/basic-cli/releases/download/0.16.0/O00IPk-Krg_diNS2dVWlI0ZQP794Vctxzv0ha96mK0E.tar.br" }

main =
    a = or (Ok "1") (Ok "2") == Ok "1"
    b = or (Err "1") (Err "2") == Err "2"
    if a && b then
        crash "ok"
    else
        crash "fail"

or = \first, second ->
    when (first, second) is
        (Ok _, Ok _) | (Ok _, Err _) -> first
        _ -> second


ARROW-12360: [Archery] Unify source code formatting of Archery

Ran:

isort
black
flynt to prefer f-strings.

Included these check to the archery github action job and the pre-commit configuration.

archery lint --python uses a different set of checks. It would be nicer IMHO if Archery followed the same rules as the rest of Python code.

@pitrou I added a archery lint --archery command to run isort, black and flake8. I'd prefer black for archery since it has a stricter ruleset than autopep8 has.

No problem with me.

Perhaps ask others as well @jorisvandenbossche @xhochy

(I am in favor of using black more generally, so no objections to use it within the archery code ;))

(I am in favor of using black more generally, so no objections to use it within the archery code ;))

@pitrou any objections here?

Well, as I said I'd rather see autopep8 used like in the rest of the Python code.

I'm not insisting on this then :)


Fix to compile in MacOS 14

Recently https://github.com/HASwitchPlate/openHASP/pull/631 broke Darwin build
This PR fixes the situation and upgrades to MacOS 14 (Sonoma)

Thanks!


One more password auth method so we can connect to more servers

Discovered that we couldn't log on to Mosler with the previous auth system, this commit fixes that.

Can you describe why you needed this change?

Mosler does not use the "KeyboardInteractive" path for authentication, it uses the "Password" path. It's part of the SSH-protocol I think, the server can present several variants for authentication, so we need to handle them.

Looks ok!
RFC 4252 (http://www.ietf.org/rfc/rfc4252.txt) which describes
(among other things) the mandatory password method,


Windows vulkaninfo sometimes aborts with STATUS_INTEGER_DIVIDE_BY_ZERO

This first started appearing around loader 1.3.275.  It's quite rare, only appearing a few times, and so far only on one CI test machine tcwinnvi6, though the small number of instances makes it debatable whether it only appears on that one machine, or that one vulkaninfo, or whether it could appear on other machines but just hasn't yet.
The symptoms appear as a failure to run vulkaninfoSDK, which is used on every Vulkan CI job run to determine the configuraiton of the running machine:
INFO: executing #1: C:\VulkanSDK\1.3.275.0\Bin32\vulkaninfoSDK.exe -j
ERROR: execute() call failed after 0.28 seconds (0.28 seconds): returncode=3221225620 (0xc0000094=STATUS_INTEGER_DIVIDE_BY_ZERO); execution log index: 1, working directory: C:\j\workspace\setuptest\BITS\32\label\tcwinnvi6\vulkantest-results
ERROR: failure during run setup: execute(C:\VulkanSDK\1.3.275.0\Bin32\vulkaninfoSDK.exe -j) failed after 0.28 seconds (0.28 seconds) with returncode=3221225620 (0xc0000094=STATUS_INTEGER_DIVIDE_BY_ZERO)

So far it has appeared at least in these instances (it may have appeared in more developer runs that were never reported):

20240715 http://tcubuser.lunarg.localdomain:8080/job/Vulkan-ValidationLayers/17075/BITS=64,BUILD_MODE=Debug,label=Windows-NVIDIA-20XX-rolling-NDA/console
20240729 http://tcubuser.lunarg.localdomain:8080/view/Administration/job/setuptest/448/BITS=32,label=tcwinnvi6/console
20241210 http://tcubuser.lunarg.localdomain:8080/job/Vulkan-ValidationLayers/18284/BITS=64,BUILD_MODE=Debug,label=Windows-NVIDIA-20XX-rolling-NDA/console

Note that we have the option to load a newer SDK on the system and hope the (rare) CI problem goes away... but if we do so we lose the ability to reproduce this bug and potentially figure out and address why it crashes.


Discrepancies (?) in %eyre endpoints

I am digging subscriptions, mostly from working talk implementation (already added to %eyre ticket in docs), and I wonder what is the ultimate convention. Some things seems to be passed in body, eg. poke takes the ship as body, while for subscriptions ship is actually part of the URL.
I might be confused due to the basing on working examples.

Closing as I think this one is a little too idiosyncratic to be more broadly useful.


Stroke join(?) changes based on angle, maybe?

Hey, super cool project!
I'm coming from Processing and wanted to try this out since I've mostly switched to Rust for everyday stuff.
I wrote a tiny program that draws a few bezier curves and displaces the control points.
I noticed that the stroke join at the tip of the resulting triangle changes between MITER and BEVEL (that's what processing calls them, sorry, only way I know to describe it).
This is the code I'm using, I'll also try to attach a few images to show what I mean:
            canvas.set_color(LinSrgb::new(1., 1., 1.));
            canvas.paint(Filled(ctx.world));

            let fbm = Fbm::new().set_seed(world.seed as u32);

            let left_bottom = P2::new(150., 200.);
            let right_bottom = P2::new(350., 200.);
            let usual_top_point = P2::new(world.width / 2., world.height * 3. / 4.);
            let displaced_top_point = usual_top_point.clone().translate(V2::new(
                fbm.noise(P2::new(1., ctx.time.as_secs_f32() * 0.1)) * 200.,
                fbm.noise(P2::new(2., ctx.time.as_secs_f32() * 0.1)) * 200.,
            ));
            let left_middle_point = left_bottom.lerp(usual_top_point,0.2).translate(V2::new(20.,0.));
            let left_c0 = left_bottom.clone().translate(V2::new(0.,10.));
            let right_middle_point = right_bottom.lerp(usual_top_point,0.2).translate(V2::new(-20.,0.));
            let right_c0 = right_bottom.clone().translate(V2::new(0.,10.));

            canvas.move_to(left_bottom);
            canvas.cubic_to(left_c0, left_middle_point, displaced_top_point);
            canvas.cubic_to(right_middle_point,right_c0,right_bottom );
            canvas.set_stroke_width(5.);
            canvas.set_color(LinSrgb::new(0.8, 0., 0.));
            canvas.stroke();

EDIT: I'm running this on Windows with an NVIDIA GPU, if that helps. Happy to provide more info or try out stuff!

Figured it out, here are two adjacent frames:

LineJoin is always Miter. What you're seeing an artifact of the line thickness. This is an animation of your frame 0 increasing in thickness:

lyon chose to do this for compatibility with SVG.
I've changed the line join to MiterClip, but it still reverts to bevel. I filed a lyon issue. We'll see if the issue is there, here, or some unique attribute of this path.

The MiterClip change is in the new version on crates.io and lyon has published a fix as well. Thank you for reporting the issue!

Thanks! :)


Updates to future-incompatible reporting.

This includes several changes to future-incompatible reports:

Now able to retain multiple reports on disk (currently 5).
cargo report future-incompatibilities will now show the last report without --id.
Changed cargo report future-incompatibilities to display the report on stdout. Although these are "diagnostics", I see this more as a human-readable "report", which might benefit from being more easily piped (like to a pager). I also expect all other report subcommands to print to stdout.
Fixed a bug where saving the reports to disk was not truncating the file. If multiple reports were saved, and future ones were shorter than a previous one, the on-disk structure would be corrupted.
Reports are now always stored with ANSI escape codes, and the color filtering is done only when displayed.
Some slight adjustments to the formatting of the report.
When the wrong --id is passed, show available reports.
Give a slightly better error message when there are no reports.
Fixed bug where "0 dependencies has warnings" was unconditionally displayed (it should only be displayed if --future-incompat-report is used)
Added future-incompat as an alias for the future-incompatibilities subcommand which can be quite a verbose command.
When showing the note at the end of the build, make sure the list is unique (for example, if a single package had multiple targets that trigger a warning).
Added a note at the bottom of the report that indicates if newer versions of a package are available.

r? @alexcrichton
(rust-highfive has picked a reviewer for you, use r? to override)

:umbrella: The latest upstream changes (presumably #9602) made this pull request unmergeable. Please resolve the merge conflicts.

@bors: r+
Looks good to me! I think we can tweak the error message perhaps once we see some in the wild and do some updates if it looks like it's frequently necessary to do so

:pushpin: Commit afe7314ede90592f133f13b432d6f7b96f00264b has been approved by alexcrichton

:hourglass: Testing commit afe7314ede90592f133f13b432d6f7b96f00264b with merge 8130be7a4cfe49c815191e27b86c2d1b64c95dbc...

:sunny: Test successful - checks-actions
Approved by: alexcrichton
Pushing 8130be7a4cfe49c815191e27b86c2d1b64c95dbc to master...


Add from_networkx method to DAGCircuit class

Summary
In preparation for removing the networkx based DAGCircuit implementation
this commit adds a new DAGCircuit constructor classmethod from_networkx.
This constructor is the dual of to_networkx (which exports a networkx
MultiDiGraph object) and will create a new DAGCircuit object from a valid
DAGCircuit networkx MultiDiGraph object that would have been output from
to_networkx(). The intent behind this function is to still offer
flexibility to pass authors to leverage the graph algorithms already in
networkx. While retworkx is significantly faster than networkx it does
not have as many algorithms as networkx. By providing a method to go
back and forth from native networkx objects that will enable pass
authors to leverage networkx's algorithm library to implement passes.
This is with the hope that pass authors will open issues or push pull
requests to retworkx for adding implementations of the missing
algorithms. Ideally long term the library of algorithms in retworkx will
catch up to networkx so that the need for this is eliminated.
Details and comments

This should only merge after #4254


[ON HOLD] Create Zoom links for individual QA sessions

Each paper will have two QA sessions.
We got some python script to create Zoom links using this library.
But we need to figure out our model of using host licenses.
We need to wait for the final Zoom contract before working on this.

@raosudha89 I've introduced @ninell-oldenburg to Hamid & Lianhui so they will be in charge of this. I unassigned you from this one.

I realize that we may need more than 1 volunteers on this issue because we may need to manually create a few zoom links for tutorials, workshops & social events.

🎉


FunctionExpression navigation

Similarly to FunctionDeclaration, in a FunctionExpression, I would like to retrieve the:

name
body
parameters
return type

Example:
const helloWorld = function(){
  // Do something
}

I found a workaround using untyped children but it is not optimal.
Could it be implemented?

Yes, I could implement some useful helper functions on the initializer. .getName() would probably only work for a named function expression though:
const helloWorld = function someName() {
  // Do something
};

If someone wanted the name in the original example they would have to get it from the variable declaration.

@reda-alaoui This is available in 0.88.0. I didn't test it much though because I'm assuming the mixins that it uses will work with it. Let me know if you run into any issues.
By the way, in the scenario you gave, you can get the FunctionExpression by doing the following:
// untested code, but it should show the main idea
import Ast, {FunctionExpression, TypeGuards} from "ts-simple-ast";

// ...

const helloWorldConst = sourceFile.getVariableDeclarationOrThrow("helloWorld");
helloWorldConst.getName(); // helloWord
const initializer = helloWorldConst.getInitializerOrThrow();
const functionExpr = initializer as FunctionExpression;
functionExpr.getParameters(); // []
functionExpr.getReturnType(); // void

// or for an initializer, you can check if it's a function expression using the type guard:
if (TypeGuards.isFunctionExpression(initializer)) {
    initializer.getParameters(); // []
    // etc...
}


[openEuler DB SIG] Invitation from openEuler community

Hi, I'm bo zhao, the DB SIG maintainer in openEuler community. You can know more about openEuler via openeuler community .
The DB SIG aims to extend the DB eco-system for openEuler, currently, we enabled multiple tradition OLTP open-source databases, including Mysql, MariaDB, PostgreSQL, Greenplum and other open-source DB softwares. Also we don't only work around DB kernel, but also introduce more and more DB eco-system tools, such replication, HA, backup tools.
We all know the tradition databases are the basic function/ability for a real commercial solution or a real customer's requirement. So we think the future steps must be related Big data , AI technologies or IoT area. So we want to invite you guys to join openEuler DB SIG for making more things.

Maintaining a rpm package in openEuler, bring the upsteam apache/iotdb features back to openEuler community.
Improve the current openEuler kernel relied on apache/iotdb customer's requests, or improve the performance of apache/iotdb immediately.
Attack more customers use apache/iotdb, and make it easy to install and install/use on openEuler OS.
Benifits for both communites to help the customers who have both requests(apache/iotdb and openEuler) to solve their problems.

apache/iotdb team can consider whether it's valuable to do. If you are interested, please contact me directly.
email<EMAIL_ADDRESS>.. MailList Or feel free to raise an issue in openEuler community.
Thank you very much.
Bo Zhao

“3.Attack more customers use apache/iotdb……” I think your mean is "Attract".


Bot not accepting owner ID?

Hi there. I've been having issues with the bot, with it saying that I entered a wrong ID for the owner account / don't share a server with it. The problem is, the ID is indeed correct and that the bot account and the alt do share a server. I'm really stumped on this as I've tried everything (making a new server, trying with a different alts ID) but nothing seems to work. "Owner" will show None: (the ID), but it will display the correct tag if I use the bots own ID.

GIF of me getting the alts ID: https://i.diverse.graphics/m5A6W.gif

This is because of Discord's api changes. Your best bet would be to make
both the accounts friends. Maybe DM once before starting the bot.
On Fri, Feb 12, 2021, 3:50 AM vekst<EMAIL_ADDRESS>wrote:

Hi there. I've been having issues with the bot, with it saying that I
entered a wrong ID for the owner account / don't share a server with it.
The problem is, the ID is indeed correct and that the bot account and the
alt do share a server. I'm really stumped on this as I've tried everything
(making a new server, trying with a different alts ID) but nothing seems to
work. "Owner" will show None: (the ID), but it will display the correct tag
if I use the bots own ID.
[image: image]
https://user-images.githubusercontent.com/20705525/107705759-3a588380-6c8d-11eb-8081-7d552ec2cf5f.png
[image: image]
https://user-images.githubusercontent.com/20705525/107705770-40e6fb00-6c8d-11eb-87f6-573ea8214a24.png
GIF of me getting the alts ID: https://i.diverse.graphics/m5A6W.gif
[image: image]
https://user-images.githubusercontent.com/20705525/107705850-66740480-6c8d-11eb-82ac-4a350c8835f3.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Hyperclaw79/PokeBall-SelfBot-Poketwo-Automation/issues/210,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AG7Q526LRFCUAZ6OLODPGPDS6RJ3JANCNFSM4XPUTDSQ
.

Moved to DMs.


Globals/Api/BinaryMediaTypes is not honored when SAM template is updated and re-deployed

Description:
BinaryMediaTypes is removed from APIGW settings when SAM template is updated and re-deployed

Steps to reproduce the issue:

Create a simple SAM application with Globals as follows:

Globals:
    Api:
        BinaryMediaTypes:
            - "*~1*"

Package and deploy. Observe Settings section of the new APIGW API. Binary Media Types will have */*

Make some changes to the SAM template. Re-package and re-deploy. Observe Settings section of the APIGW API. Binary Media Types config is empty/missing

Observed result:
Binary Media Types config is empty/missing after SAM template is updated and redeployed
Expected result:
Binary Media Types does not change after stack update.
Output of sam --version: SAM CLI, version 0.6.0
Optional Debug logs:
Add --debug flag to command you are running

Closing as this does not relate to this project. I responded on the issue that was made to AWS SAM CLI.

This needs to be reopened, it has not been fixed and it's part of the SAM templates

@mrjomp could you provide more details of what your error is and how you encountered it? Is it the exact same as the original post in this issue?

Ran into this issue today also. Exactly as described in original description by @abhilash1in.
I first set to '~1' in template.yaml. Then changed to 'image~1png' and packages/deployed. After that the BinaryMediaTypes have been removed. Changing them further does not have any effect.

Did further tests:

In template set
BinaryMediaTypes:

image~1gif
image~1png
Package/deploy got the expected result.

Change template to
BinaryMediaTypes:

image~1gif
image~1png
application~1vnd.openxmlformats-officedocument.spreadsheetml.sheet
Package/deploy resulted in only application/1vnd.openxmlformats-officedocument.spreadsheetml.sheet set in console.

Change template to
BinaryMediaTypes:

image~1gif
image~1png
application~1vnd.openxmlformats-officedocument.spreadsheetml.sheet
image~1tiff
Package/deploy resulted in only image/tiff set in console

Change template to
BinaryMediaTypes:

image~1gif
image~1png
application~1vnd.openxmlformats-officedocument.spreadsheetml.sheet
image~1tiff
image~1jpeg
Package/deploy resulted in only image/jpeg set in console

Also encountering this error. We are currently working around it by manually updating in the console and deploying the api manually. Not ideal!

Is this resolve yet .. i am facing the same issue

I have created an example with steps to reliably reproduce the behavior. It looks like anything that results in updating the deployment of apigateway will remove the binary media types.
https://github.com/brianleroux/cloudformation-update-stack-removes-binary-media-types

This is an API Gateway/CloudFormation issue. I've contacted the teams internally.

SAM can resolve this by changing the way we set BinaryMediaTypes. Instead of setting it as a property of the CloudFormation Resource, we will need to set it via Swagger/OpenApi x-amazon-apigateway-binary-media-types

PR for fixing BinaryMediaTypes getting lost in update #954

Released with v1.13.0

just ran into this, although I'm using strictly cloudformation templates with the sam transform. Should I not be seeing this problem? I made a change to BinaryMediaTypes and upon committing/updating my stack, and then inspecting cloudfront distro in the web console, the BinaryMediaTypes are empty

@burritoIand we encountered a problem where we were setting BinaryMediaTypes in the CloudFormation property, but should have been setting them in the Swagger/OpenApi document. This resulted in a behavior where on first deployment, the BinaryMediaTypes were present, but then would be removed when we updated the API.
If you are using Swagger/OpenApi, make sure to add the BinaryMediaTypes inside of your Swagger/OpenApi API definition.

@keetonian still have this issue in 2023 setting BinaryMediaTypes in Globals still does not work, it kind of did at first but when I tried to update/replicate it wasn't updating anymore, I'm not using OpenAPI/Swagger API this is for AWS::Serverless::Api SAM


add timeout support for handlers

@lobeck can you rebase this and fix the conflicts?

@jaxxstorm done.


Also clean up secondary test namespace

Description

We create a secondary namespace as part of the service invocation tests. We we're calling cleanup on this namespace which makes sure stale resources are removed.
Checklist
Please make sure you've  completed the relevant tasks for this PR, out of the following list:

[ ] Code compiles correctly
[ ] Created/updated tests
[ ] Unit tests passing
[ ] End-to-end tests passing
[ ] Extended the documentation / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Specification has been updated / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Provided sample for the feature / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]

/ok-to-test

/ok-to-test

/ok-to-test

/ok-to-test


ERROR: Signature extraction failed: Traceback (most recent call last):

$youtube-dl --version
2015.02.11
http://paste.ubuntu.com/10290356/
$youtube-dl "http://www.youtube.com/watch?v=O28R7mRW-DY" --verbose
[debug] System config: []
[debug] User config: []
[debug] Command-line args: ['http://www.youtube.com/watch?v=O28R7mRW-DY', '--verbose']
[debug] Encodings: locale UTF-8, fs UTF-8, out None, pref UTF-8
[debug] youtube-dl version 2015.02.11
[debug] Python version 2.7.6 - Linux-3.13.0-45-generic-i686-with-Ubuntu-14.04-trusty
[debug] exe versions: avconv 9.16-6, avprobe 9.16-6, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] O28R7mRW-DY: Downloading webpage
[youtube] O28R7mRW-DY: Extracting video information
[youtube] {43} signature length 40.41, html5 player en_US-vflKjOTVq
[youtube] O28R7mRW-DY: Downloading js player en_US-vflKjOTVq
ERROR: Signature extraction failed: Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 635, in _decrypt_signature
video_id, player_url, s
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 549, in _extract_signature_function
res = self._parse_sig_js(code)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 613, in _parse_sig_js
initial_function = jsi.extract_function(funcname)
File "/usr/lib/python2.7/dist-packages/youtube_dl/jsinterp.py", line 244, in extract_function
raise ExtractorError('Could not find JS function %r' % funcname)
ExtractorError: Could not find JS function u'OF'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
(caused by ExtractorError(u"Could not find JS function u'OF'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 635, in _decrypt_signature
video_id, player_url, s
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 549, in _extract_signature_function
res = self._parse_sig_js(code)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 613, in _parse_sig_js
initial_function = jsi.extract_function(funcname)
File "/usr/lib/python2.7/dist-packages/youtube_dl/jsinterp.py", line 244, in extract_function
raise ExtractorError('Could not find JS function %r' % funcname)
ExtractorError: Could not find JS function u'OF'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 633, in extract_info
ie_result = ie.extract(url)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/common.py", line 270, in extract
return self._real_extract(url)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 1066, in _real_extract
encrypted_sig, video_id, player_url, age_gate)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 645, in _decrypt_signature
'Signature extraction failed: ' + tb, cause=e)
ExtractorError: Signature extraction failed: Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 635, in _decrypt_signature
video_id, player_url, s
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 549, in _extract_signature_function
res = self._parse_sig_js(code)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 613, in _parse_sig_js
initial_function = jsi.extract_function(funcname)
File "/usr/lib/python2.7/dist-packages/youtube_dl/jsinterp.py", line 244, in extract_function
raise ExtractorError('Could not find JS function %r' % funcname)
ExtractorError: Could not find JS function u'OF'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
(caused by ExtractorError(u"Could not find JS function u'OF'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

You are using an outdated version of youtube-dl. See our FAQ on how to update.


Day48

Resolves #109 .

Pull Request Test Coverage Report for Build 253

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

Totals

Change from base Build 250:
0.0%

Covered Lines:
24

Relevant Lines:
24

💛  - Coveralls


Monitor wallet lock file and shut down if it's removed.

Change Description
Monitor wallet lock file and shut down keosd if it's removed. Resolves #5998.
Consensus Changes
N/A
API Changes
N/A
Documentation Additions
N/A

Polling is pretty lousy but I realize there is no quick way to integrate inotify/kevent/whatever-win32-uses

I did try inotify first and unfortunately it's completely unreliable.  On Ubuntu with encrypted home directories, encryptfs completely mangles inotify events, to the point of unuseability.  Most events are entirely lost.  Except when they're not.  Then they are again.  With both false positives and false negatives rampant, I gave up on it entirely.


React Native Support

Given the relatively simple outlined structure here it seems adding in support for React Native should be supported. Currently trying to instantiate a Pusher component inside a React Native tree throws the following exception:
Invariant Violation: Expected a component class, got [Object object].
I presume this is because of the "noscript" tag returned through render(). Is there any way to detect an RN environment and return an empty View instead (if that is indeed the error)?

nosript also does not work inside table. Is it possible to render null instead?

This should be doable now, this was written before returning null was supported


Add Yewdux

There's a new state management library called Yewdux.
https://github.com/intendednull/yewdux

Sorry, I didn't realise that yew-state has been renamed to Yewdux.


E2E: go tag main SLSA3 config-ldflags assets version

Repo: https://github.com/slsa-framework/example-package/tree/v20.0.1
Run: https://github.com/slsa-framework/example-package/actions/runs/2470241698
Workflow name: go tag main SLSA3 config-ldflags assets version
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets-version.slsa3.yml
Trigger: push
Branch: v20.0.1
Date: Thu Jun  9 18:06:54 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v20.0.2
Run: https://github.com/slsa-framework/example-package/actions/runs/2472494746
Workflow name: go tag main SLSA3 config-ldflags assets version
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets-version.slsa3.yml
Trigger: push
Branch: v20.0.2
Date: Fri Jun 10 03:19:29 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v20.0.3
Run: https://github.com/slsa-framework/example-package/actions/runs/2475957559
Workflow name: go tag main SLSA3 config-ldflags assets version
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets-version.slsa3.yml
Trigger: push
Branch: v20.0.3
Date: Fri Jun 10 15:36:11 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v20.0.4
Run: https://github.com/slsa-framework/example-package/actions/runs/2475994435
Workflow name: go tag main SLSA3 config-ldflags assets version
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets-version.slsa3.yml
Trigger: push
Branch: v20.0.4
Date: Fri Jun 10 15:44:22 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v20.0.7
Run: https://github.com/slsa-framework/example-package/actions/runs/2476139816
Workflow name: go tag main SLSA3 config-ldflags assets version
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets-version.slsa3.yml
Trigger: push
Branch: v20.0.7
Date: Fri Jun 10 16:14:03 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v20.0.8
Run: https://github.com/slsa-framework/example-package/actions/runs/2476263872
Workflow name: go tag main SLSA3 config-ldflags assets version
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets-version.slsa3.yml
Trigger: push
Branch: v20.0.8
Date: Fri Jun 10 16:36:19 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v20.0.9
Run: https://github.com/slsa-framework/example-package/actions/runs/2476309898
Workflow name: go tag main SLSA3 config-ldflags assets version
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets-version.slsa3.yml
Trigger: push
Branch: v20.0.9
Date: Fri Jun 10 16:49:29 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v20.0.13
Run: https://github.com/slsa-framework/example-package/actions/runs/2476426811
Workflow name: go tag main SLSA3 config-ldflags assets version
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets-version.slsa3.yml
Trigger: push
Branch: v20.0.13
Date: Fri Jun 10 17:17:47 UTC 2022
Tests are passing now. Closing this issue.


Slack connector

This connector takes a slack channel id, token and other options to pull conversation history for a channel and store it as a text file that is then processed by unstructured into expected output.
Related to https://github.com/Unstructured-IO/unstructured/issues/252

Lots of nits, but functionality is all there. Works great when tested locally.

please bump version.py and the CHANGELOG again (moving target)

LGTM! I think the PR just needs to be taken out of Draft mode


Rename services to types

Coverage remained the same at 89.04% when pulling e5ce9e9c9293b6e24e48b3b4fe436008520c8eee on briansteffens:rename-services-to-types into b4b14dce2509c55c5f9b00130495fb893c74338f on linode:master.


remove console logging

This plugin has been generating insane amounts of logging on PostHog Cloud, multiple factors more than any other.
A nicer solution would be to add a debug flag to the config that would generate the logs.
Hope we can get this in as I'll otherwise bake in a solution within PostHog to disable logging for this plugin.

Thank you for the PR. Reasonable change to make :)


Unable to bind requestParameter to @ModelAttribute form in serverless ~ Spring boot2

Framework version: aws-serverless-java-container-springboot2 1.4
Implementations: Spring Boot2 (2.1.8)

Scenario
I send a POST request to aws lambda via api gateway.
Expected behavior
In the RequestMapping method,
the request parameter was mapped to form.
Actual behavior
In the RequestMapping method,
i got null from form object.
Steps to reproduce

maven build
test project

create lambda function
runtime:java11
handler:contract.StreamLambdaHandler

create api gateway
api type:rest
/{PROXY+}/ANY
integration type:lambda function

deloy api gateway

access via web browser
(http://~/(stage)/start)

input some string to v1 input field

press submit

check v2 input filed

Full log output
START RequestId: f5fb028b-4ad5-42d3-b9ef-d6a37e90c0a6 Version: $LATEST
03:37:23.916 [main] INFO com.amazonaws.serverless.proxy.internal.LambdaContainerHandler - Starting Lambda Container Handler
.   ____          _            __ _ _
/\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/  ___)| |_)| | | | | || (_| |  ) ) ) )
'  |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot ::        (v2.1.8.RELEASE)
2020-04-23 03:37:26.084  INFO 8 --- [           main] lambdainternal.AWSLambda                 : Starting AWSLambda on <IP_ADDRESS> with PID 8 (/var/runtime/lib/aws-lambda-java-runtime-0.2.0.jar started by sbx_user1051 in /var/task)
2020-04-23 03:37:26.085  INFO 8 --- [           main] lambdainternal.AWSLambda                 : No active profile set, falling back to default profiles: default
2020-04-23 03:37:28.354  INFO 8 --- [           main] c.a.s.p.i.servlet.AwsServletContext      : Initializing Spring embedded WebApplicationContext
2020-04-23 03:37:28.354  INFO 8 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 2211 ms
2020-04-23 03:37:28.773  WARN 8 --- [           main] org.thymeleaf.templatemode.TemplateMode  : [THYMELEAF][main] Template Mode 'HTML5' is deprecated. Using Template Mode 'HTML' instead.
2020-04-23 03:37:30.275  INFO 8 --- [           main] lambdainternal.AWSLambda                 : Started AWSLambda in 5.583 seconds (JVM running for 7.226)
2020-04-23 03:37:30.358  INFO 8 --- [           main] c.a.s.p.i.servlet.AwsServletContext      : Initializing Spring DispatcherServlet 'dispatcherServlet'
2020-04-23 03:37:30.358  INFO 8 --- [           main] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2020-04-23 03:37:30.375  INFO 8 --- [           main] o.s.web.servlet.DispatcherServlet        : Completed initialization in 17 ms
2020-04-23 03:37:31.737  INFO 8 --- [           main] c.a.s.p.internal.LambdaContainerHandler  : <IP_ADDRESS> - [23/04/2020:03:37:22Z] "POST /write HTTP/1.1" 200 358 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36" combined
END RequestId: f5fb028b-4ad5-42d3-b9ef-d6a37e90c0a6
REPORT RequestId: f5fb028b-4ad5-42d3-b9ef-d6a37e90c0a6	Duration: 1438.57 ms	Billed Duration: 1500 ms	Memory Size: 1536 MB	Max Memory Used: 219 MB	Init Duration: 7281.49 ms
START RequestId: 950d7ed5-2d17-46be-8069-d0ac0afedfb0 Version: $LATEST
2020-04-23 03:37:41.312  INFO 8 --- [           main] c.a.s.p.internal.LambdaContainerHandler  : <IP_ADDRESS> - [23/04/2020:03:37:41Z] "POST /write HTTP/1.1" 200 355 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36" combined
END RequestId: 950d7ed5-2d17-46be-8069-d0ac0afedfb0
REPORT RequestId: 950d7ed5-2d17-46be-8069-d0ac0afedfb0	Duration: 8.31 ms	Billed Duration: 100 ms	Memory Size: 1536 MB	Max Memory Used: 219 MB

Hey @1tkd, can you share some sample code to help us replicate?

Thanks for helping.
All codes is here
Controller
@Controller
@EnableWebMvc
public class HelloController {
	@GetMapping(value = "/start", produces="text/html;charset=UTF-8")
	public String getStart(@ModelAttribute HelloForm helloForm) {

		return "startApp";
	}

	@RequestMapping(value = "/write", method = RequestMethod.POST, produces="text/plain;charset=UTF-8")
	public String show(@ModelAttribute HelloForm helloForm, HttpServletRequest req) {
		helloForm.setVal2("form:"+(helloForm.getVal1()==null?"isNull":helloForm.getVal1()) + " req:"+req.getParameter("val1"));

		return "startApp";
	}
}

Form
@Data
public class HelloForm implements Serializable {
	/**
	 *
	 */
	private static final long serialVersionUID = 1L;

	String val1;
	String val2;

}

Template
<!DOCTYPE html>

<meta charset="UTF-8" />

<title>Thymeleaf</title>

  <form th:action="@{write}" method="post" th:object="${helloForm}">
  v1:  <input type="text" th:field="*{val1}" >

  v2:  <input type="text" th:field="*{val2}" >

  <input type="submit" value="submit">
  </form>

Sorry for the late response.
You need to define a mapping for application/x-www-form-urlencoded on ApiGateway.
This forum post https://forums.aws.amazon.com/thread.jspa?messageID=663593&tstart=0#663593 describe a similar configuration. See also https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#input-variable-reference in the documentation.

Thanks for the response.
Am I correct in my understanding of the following?

In the case of aws-serverless-java-container-springboot, I need to convert the request to json format, as shown in the link, in order to set it to ModelAttribute.

As a supplementary note, the data in application/x-www-form-urlencoded is available from HttpServletRequest.

@1tkd please ignore my previous commit, this is only valid if you are not using proxy integration. Sorry, I should have initially read your description more carefully.
I deployed your sample after adding the following properties to application.yml:
logging.level.org.springframework.web: TRACE
spring.mvc.log-request-details: true

Comparing the output of the Lambda execution in CloudWatch
o.s.web.servlet.DispatcherServlet        : POST "/write", parameters={val1:[test]}
with local execution on Tomcat
o.s.web.servlet.DispatcherServlet        : POST "/write", parameters={val1:[test], val2:[]}
indicates that empty parameters are missing. Will add a testcase and proposed fix for that.


roadrunner: 2024.3.0 -> 2024.3.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/roadrunner-server/roadrunner/releases.
meta.description for roadrunner is: High-performance PHP application server, process manager written in Go and powered with plugins
meta.homepage for roadrunner is: https://roadrunner.dev
meta.changelog for roadrunner is: https://github.com/roadrunner-server/roadrunner/blob/v2024.3.1/CHANGELOG.md
Updates performed

Golang update

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 2024.3.1 in filename of file in /nix/store/l4dl9bdrx8wbwb3c971akgkfrbyshdr7-roadrunner-2024.3.1

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

roadrunner

Instructions to test this update (click to expand)

Either download from the cache:
nix-store -r /nix/store/l4dl9bdrx8wbwb3c971akgkfrbyshdr7-roadrunner-2024.3.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nixpkgs-update-cache.nix-community.org/' \
  --option trusted-public-keys '
  nixpkgs-update-cache.nix-community.org-1:U8d6wiQecHUPJFSqHN9GSSmNkmdiFW7GW7WNAnHW0SM=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The nixpkgs-update cache is only trusted for this store-path realization.)
For the cached download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A roadrunner https://github.com/r-ryantm/nixpkgs/archive/d619849f767e7dd00c6cb89d1a7b4d83a099914e.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/d619849f767e7dd00c6cb89d1a7b4d83a099914e#roadrunner

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/l4dl9bdrx8wbwb3c971akgkfrbyshdr7-roadrunner-2024.3.1
ls -la /nix/store/l4dl9bdrx8wbwb3c971akgkfrbyshdr7-roadrunner-2024.3.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review

x86_64-linux

:white_check_mark: 1 package built:

roadrunner

Maintainer pings
cc @shyim for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

@NixOS/nixpkgs-merge-bot merge


add hugo-theme-diaspora

https://github.com/honjun/hugo-theme-diaspora

Hello @honjun,
thank you for sharing this theme with the Hugo community. While reviewing your theme I noticed a few issues:

please set https://example.com is set as base url in exampleSite/config.toml to
avoid the abuse of unused domains
would it be possible to provide an English version of your theme's README and the content files under exampleSite/content?? This would make your theme more accessible for international users
please remove absURL when linking menu items. Otherwise, the links point to a non-existing page, if the webseite is hosted in a subdirectory (like the theme demos) like www.example.com/blog. This is because absURL makes by design all urls starting with a / relative to the root url, e.g. www.example.com, and thereby omits the /blog/ part of the baseurl. Hugo already generates the urls with this in mind.
same here
please use .Site.BaseURL when linking the logo to avoid the aforementioned problem
why does your theme requests so many assets from an external wordpress instance? See https://github.com/honjun/hugo-theme-diaspora/blob/master/layouts/partials/head.html#L12-L16

@digitalcraftsman
I also had a look the other day and I noted that this theme uses an outdated and vulnerable version of jQuery.
@honjun
Please in addition to the above comments please update to a recent version of jQuery from the releases page: https://jquery.com/download/#using-jquery-with-a-cdn

Thank you for your issues。
theme have updated  https://github.com/honjun/hugo-theme-diaspora


After signup on the frontend, the customer is still not the signup page.

After signup on the frontend, the customer is still on the signup page. Does not allow them to signup just shows a message success message.

The flow is changed by @rahulshukla-webkul and it will be there soon.

Fixed
Framework Version: 0.1.2


feat(sqli test): BB testcase for 942120 added

This PR resolves BB issue #2703. The missing sqli coverage was already fixed (see issue) and this PR only adds an additional test to prove this.

Fixed a conflict and merged the test! 🥳


IntegrityError (1062, "Duplicate entry '00030001' for key 'catalogue_category.path'")

Issue Summary
Thanks for a great shop. Nevertheless ... I'm trying to add a child category at:
/dashboard/catalogue/categories/
I select:
Actions -> Add child category
When I Save the category I get:
Exception Type: | IntegrityError
Exception Value: | (1062, "Duplicate entry '00030001' for key 'catalogue_category.path'")

Traceback (most recent call last):
  File "/home/project/env/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
    return self.cursor.execute(sql, params)
  File "/home/project/env/lib/python3.8/site-packages/django/db/backends/mysql/base.py", line 74, in execute
    return self.cursor.execute(query, args)
  File "/home/project/env/lib/python3.8/site-packages/MySQLdb/cursors.py", line 209, in execute
    res = self._query(query)
  File "/home/project/env/lib/python3.8/site-packages/MySQLdb/cursors.py", line 315, in _query
    db.query(q)
  File "/home/project/env/lib/python3.8/site-packages/MySQLdb/connections.py", line 239, in query
    _mysql.connection.query(self, query)

The above exception ((1062, "Duplicate entry '00030001' for key 'catalogue_category.path'")) was the direct cause of the following exception:
  File "/home/project/env/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner
    response = get_response(request)
  File "/home/project/env/lib/python3.8/site-packages/django/core/handlers/base.py", line 115, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "/home/project/env/lib/python3.8/site-packages/django/core/handlers/base.py", line 113, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/project/env/lib/python3.8/site-packages/sentry_sdk/integrations/django/views.py", line 63, in callback
    return old_callback(*args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/sentry_sdk/integrations/django/views.py", line 63, in callback
    return old_callback(*args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/sentry_sdk/integrations/django/views.py", line 63, in callback
    return old_callback(*args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/sentry_sdk/integrations/django/views.py", line 63, in callback
    return old_callback(*args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/django/contrib/auth/decorators.py", line 21, in _wrapped_view
    return view_func(request, *args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/django/views/generic/base.py", line 71, in view
    return self.dispatch(request, *args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/django/views/generic/base.py", line 97, in dispatch
    return handler(request, *args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/django/views/generic/edit.py", line 172, in post
    return super().post(request, *args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/django/views/generic/edit.py", line 142, in post
    return self.form_valid(form)
  File "/home/project/env/lib/python3.8/site-packages/django/views/generic/edit.py", line 125, in form_valid
    self.object = form.save()
  File "/home/project/env/lib/python3.8/site-packages/treebeard/forms.py", line 144, in save
    self.instance = reference_node.add_child(**cl_data)
  File "/home/project/env/lib/python3.8/site-packages/treebeard/mp_tree.py", line 1022, in add_child
    return MP_AddChildHandler(self, **kwargs).process()
  File "/home/project/env/lib/python3.8/site-packages/treebeard/mp_tree.py", line 389, in process
    newobj.save()
  File "/home/project/env/lib/python3.8/site-packages/oscar/apps/catalogue/abstract_models.py", line 209, in save
    super().save(*args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/django/db/models/base.py", line 745, in save
    self.save_base(using=using, force_insert=force_insert,
  File "/home/project/env/lib/python3.8/site-packages/django/db/models/base.py", line 782, in save_base
    updated = self._save_table(
  File "/home/project/env/lib/python3.8/site-packages/django/db/models/base.py", line 886, in _save_table
    results = self._do_insert(cls._base_manager, using, fields, returning_fields, raw)
  File "/home/project/env/lib/python3.8/site-packages/django/db/models/base.py", line 923, in _do_insert
    return manager._insert(
  File "/home/project/env/lib/python3.8/site-packages/django/db/models/manager.py", line 82, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "/home/project/env/lib/python3.8/site-packages/django/db/models/query.py", line 1204, in _insert
    return query.get_compiler(using=using).execute_sql(returning_fields)
  File "/home/project/env/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 1377, in execute_sql
    cursor.execute(sql, params)
  File "/home/project/env/lib/python3.8/site-packages/django/db/backends/utils.py", line 100, in execute
    return super().execute(sql, params)
  File "/home/project/env/lib/python3.8/site-packages/sentry_sdk/integrations/django/__init__.py", line 489, in execute
    return real_execute(self, sql, params)
  File "/home/project/env/lib/python3.8/site-packages/django/db/backends/utils.py", line 68, in execute
    return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
  File "/home/project/env/lib/python3.8/site-packages/django/db/backends/utils.py", line 77, in _execute_with_wrappers
    return executor(sql, params, many, context)
  File "/home/project/env/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
    return self.cursor.execute(sql, params)
  File "/home/project/env/lib/python3.8/site-packages/django/db/utils.py", line 90, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/home/project/env/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
    return self.cursor.execute(sql, params)
  File "/home/project/env/lib/python3.8/site-packages/django/db/backends/mysql/base.py", line 74, in execute
    return self.cursor.execute(query, args)
  File "/home/project/env/lib/python3.8/site-packages/MySQLdb/cursors.py", line 209, in execute
    res = self._query(query)
  File "/home/project/env/lib/python3.8/site-packages/MySQLdb/cursors.py", line 315, in _query
    db.query(q)
  File "/home/project/env/lib/python3.8/site-packages/MySQLdb/connections.py", line 239, in query
    _mysql.connection.query(self, query)

Exception Type: IntegrityError at /dashboard/catalogue/categories/create/3
Exception Value: (1062, "Duplicate entry '00030001' for key 'catalogue_category.path'")

Technical details
Python version: Python 3.8.2
Django version: 3.0
Oscar version 2.1

I'm not able to reproduce this in the general case. Are you able to provide more details steps to reproduce this, on the sandbox for example? If not it seems likely you're just running into race conditions.

Closing due to lack of feedback - feel free to reopen if you can provide detailed steps to reproduce.

Hi, please see the linked case on treebeard.   This happens during heavy writes.   If use two processes doing writes at the same time, you should see it fairly quickly.

Hi, please see the linked case on treebeard.   This happens during heavy writes.   If use two processes doing writes at the same time, you should see it fairly quickly.