fix: webview.postMessage throws not a constructor in WebView in Android 4.1 ~ 4.3

new MessageEvent not support for Android 4.1 ~ 4.3 WebView.
change
document.dispatchEvent(new MessageEvent('message', data)))

to
(function () {
  var event;
  var data = {};
  try {
    event = new MessageEvent('message', data);
  } catch (e) {
    event = document.createEvent('MessageEvent');
    event.initMessageEvent('message', true, true, data.data, data.origin, data.lastEventId, data.source);
  }
  document.dispatchEvent(event);
})()

i meet this problem too
I never thought the react-native team never test Android4.1-4.3 😭😭
After very long time debug of many uncorrelated BUG representation and error shown,
i found this is the root problem.

@satya164 Could this be merged in? Thanks!

@satya164 Could this be merged in? Thanks!

@facebook-github-bot shipit

@satya164 Nothing happens, what should i do next?

It'll be in a release, so keep an eye on it. If there are problems, this will get reopened

@facebook-github-bot shipit

@jacobp100 ok, thanks ^_^

@satya164 This PR is still open..., is there any problem?

@facebook-github-bot shipit


support more tags for posts

Actual Behaviour
When I visit this post: https://apisix.apache.org/blog/2021/11/12/apisix-datadog , I noticed there has only one Tag called Technology. It's too common to use this as the only one tag IMO, and I just checked this page's Meta data, see

Expected Behaviour
After comparing with other sites' blogs, I would recommend we fulfill more tags. For the post above, I would recommend using DataDog,Monitoring,Observability as the tags.
Not only this post, we should update all posts.

Hey, can I work on this issue?

Hi @adarrssh, sure!

So the task is to add (DataDog, Monitoring, Observability) tags in the meta-data and on the  https://apisix.apache.org/blog/2021/11/12/apisix-datadog page as well?

Hey @juzhiyuan, Can you please elaborate more about this issue, Do I have to add tags like (DataDog, Monitoring, Observability) for this blog post only ( https://apisix.apache.org/blog/2021/11/12/apisix-datadog) or do I have to go through all the blogs of the APISIX website and add tags there too?

Datadog is an example :) For better SEO, we need to improve more necessary Tags for as many posts as possible, you also could find more thoughts from @yzeng25

Okay, thanks @juzhiyuan 😊.

Hi @adarrssh ,
Thanks for bringing this up! I have had a conversation with @juzhiyuan about 4 months ago regarding on the similar issue. Here are some thoughts for you, hope it helps.
What are tags
We use tags to categorize blogs.
Tags’ mechanism

Show up in tags page [1], ordered alphabetically.
Gather blogs with the same tag.
When click on a certain tag, redirects to a page containing all blogs with the tag

What tags do we have currently
Community: community related, e.g. "How to contribute to an open source project without writing code?"
Events: event-related, for example: online live stream, event previews, meetups, and online meeting, etc.
Interview: Interviews, e.g., Dr. Yang Li interview, Summer of Programming interview.
Practical Case: Best practices, easily confused with Technology. The factors that determine whether an article is a Technology or a Practical Case are: the content of the article and the subject of the description. For example, if the article is about "Running Apache APISIX on xxx platform", then it is a Practical Case; for example, if the article is about technical stuff, "Apache APISIX v.s. Envoy", then it is Technology.
Release: Release notes, this is better understood. It should be noted that the release notes inside the blog are polished, while the release notes inside the release are written by developers.
Security: Security vulnerability notification and methods to bypass security vulnerabilities, currently there are only two articles, very good to identify, generally have CVE-xxxxxxx is it.
Technology: Technical articles, easily confused with Practical Case. The factors that determine whether an article is a Technology or a Practical Case are: the content of the article and the subject of the description. For example, if the article is about "Running Apache APISIX on xxx platform", then it is a Practical Case; for example, if the article is about technical stuff, "Apache APISIX v.s. Envoy", then it is Technology.
User Case: User Case, this is also very straightforward. Please tell us how you use Apache APISIX and your feelings about Apache APISIX.
Ref: Blog Contributing Guide[2]
What tags do we want to have
I would suggest spilt the “Technology” tag into different ones, such as “Ecosystem”, “Observability”,”Monitoring”,”Logging” etc.
As @juzhiyuan suggests in the previous comments, the “Datadog” tag is indeed very precise. But this would result in a tag with only one blog under it. But think about this: if we were to add a tag for each specific brand, community, or product, the tags page [1] would look very messy.
If we take a step back, take it as a sort of “Observability” or “Monitoring”, and add other blogs under the same tag. That is better in my opinion. In other words, we would expect tags’ granary (how fine-grained it is) reach the function field level, but not dive into a specific brand, community, or product.
More complicated case
Do we need 2 or more tags for a blog? It is technically supported to do so, but it is also hard for maintenance. Take “Datadog” as an example again, if we were to spilt Technology” tag into different ones, such as “Ecosystem”, “Observability”,”Monitoring”,”Logging”, it fits in more than 1 tag. Do we choose the best fit tag or all fitting tags?
Reference
[1]https://apisix.apache.org/blog/tags
[2]https://apisix.apache.org/docs/general/blog

Thank you very much @yzeng25 for this detailed explaination.

Thank you very much @yzeng25 for this detailed explaination.

Hey, I added some  more tags and the output is that all the tags are coming in  the  same line (see image for better reference),
will this be an issue in SEO optimization?.

I investigated some other blog sites and all of them are using tags in different lines, like this one https://www.freecodecamp.org/news/how-to-build-reusable-components-with-props-in-react/

Let's seek help from @yzeng25

Hey, I added some more tags and the output is that all the tags are coming in the same line (see image for better reference), will this be an issue in SEO optimization?.

No, that is totally fine :)


[TISPARK-51] Fix broken pytispark

According to SPARK-25503, pyspark does not correctly read extension information in config.
Fix by adding TiStrategy directly into TiContext.
Fix #460

/run-all-tests

Despite being used in pyspark (where there is no extension entry point), there might exists two TiExtensions instances - one in the companion object instantiated during TiContext construction and the other instantiated via standard Spark extension loading. Right?
Does it mean that the extended parser/rule/strategy will be added twice?

@ilovesoup PTAL


chore: Reconfigure GitHub workflows

Description
This PR addresses https://github.com/streamich/react-use/pull/2080#pullrequestreview-743239467.
The yaml is inspired by gicentre/prettier-plugin-elm → .github/workflows/check-codebase.yml.
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] xNew feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as before)
[x] Chore (CI updates)

Checklist

[x] Read the Contributing Guide
[x] Perform a code self-review
[x] Comment the code, particularly in hard-to-understand areas
[ ] Add documentation
[ ] Add hook's story at Storybook
[ ] Cover changes with tests
[x] Ensure the test suite passes (yarn test)
[ ] Provide 100% tests coverage
[x] Make sure code lints (yarn lint). Fix it with yarn lint:fix in case of failure.
[x] Make sure types are fine (yarn lint:types).

Maybe, let's drop Windows? It takes too long:

Yeah yarn install is not the fastest on Windows. I removed it from the MVP for now, it it might be worth re-adding this OS to the checks later (at least Node LTS). The install might get faster once we’ve upgraded all deps. I suspect that we’re dealing with some binary package that is built on the fly 🤔
Happy to bring Windows back now if you’ve changed your mind 🙂

Happy to bring Windows back now if you’ve changed your mind 🙂

Let's remove it for now, we can always add it later if there is need.

👍 Done in 2cc19836e02e9c4952f6541cc4cff9c1354ea8b4

👍 Done in 2cc19836e02e9c4952f6541cc4cff9c1354ea8b4

Great, you should be able to merge it.

Thanks! Happy for you to merge the PR – I’m not sure if there is a preferred policy:

I usually have this in the repo settings:

@streamich which merge type would you recommend?

@streamich which merge type would you recommend?

I way is fine, but the final merge should contain the right semantic commits so that semantic-release will automatically release the right version.
If somebody uses semantic Angular-style commits, I would merge using "Merge commit", if not, I would squash and add the right commit type (feat:, 'fix:', etc..).

@kachkaev Thanks, good improvement!

:tada: This PR is included in version 17.3.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


feat: add babel plugin for optional chaining

Will allow anyone on newer versions of availity-workflow to use optional chaining in their apps. Turning something like:
return (
    (resp &&
      resp.data &&
      resp.data.regions &&
      resp.data.regions[0] &&
      resp.data.regions[0].id) ||
    undefined
  );

into:
return resp?.data?.regions?.[0]?.id

I would recommend also updating the example project in this repo to use it so we can double confirm that the plugin does in fact work.

This is in TS 3.7 and is coming to CRA as soon as other libs (prettier) support it (see https://github.com/facebook/create-react-app/pull/7438).
I would suggest waiting else you will break things like prettier.

Looks like everything is good to go! Those using vscode may run into https://github.com/prettier/prettier-vscode/issues/1027

Lol you referenced it and was immediately closed after.


[FLINK-27270] Add document of session job operations

@morhidi Thanks for your suggestion, I have addressed your comments, PTAL again.


Native Editor - Output color makes a text only notebook with a lot of cells hard to read

It's worse on dark theme

Here's what jupyter lab does

Remove the output background color

Validated


fix black and mypy

closes #2145
WIP
Checklist

[x] No CHANGELOG update needed

[ ] No new tests needed

[ ] No documentation update needed

only need to fix deptry:
scripts/capa2sarif.py:37:5: DEP001 'sarif_om' imported but missing from the dependency definitions
scripts/capa2sarif.py:46:5: DEP001 'jschema_to_python' imported but missing from the dependency definitions
Found 2 dependency issues.

@s-ff how do you recommend to handle these, add these to exclusions or elsewhere?

only need to fix deptry:
scripts/capa2sarif.py:37:5: DEP001 'sarif_om' imported but missing from the dependency definitions
scripts/capa2sarif.py:46:5: DEP001 'jschema_to_python' imported but missing from the dependency definitions
Found 2 dependency issues.

@s-ff how do you recommend to handle these, add these to exclusions or elsewhere?

I believe we should not exlcude these, but instead introduce them as part of dev optional dependencies in pyproject.toml.

rather than dev let's introduce a new profile scripts, since this tool is meant to be invoked by end users.

not sure, I love the new scripts and updated install mechanism...

I agree, I don't want to add more steps for users. But the above profile can help with deptry checks.
The new script has an import guard, such that when a required dependency is not found, it explains to the user what to do. Given that we have so many scripts with different setups, maybe this is a reasonable pattern? Then the scripts profile would only be to satisfy deptry.

I'm definitely open to alternatives and further discussions.


Increase KUTTL timeout

The current 180s which is used in other operators is not enough and tests fail during Prometheus pod initialization.

/retest


Touch enabled

It would be great to have this library touch screen enabled (use swipes for drag and drop). Any plan for this?

Planned for v2.0. Hopefully soon.

I think I'll defer this for a later version maybe, since this component uses native Html5 drag drop feature and it's not supported on touch based UI.
I'll need to change the implementation and write a complete drag drop feature from scratch (or probably add dependency to other library)
There is a polyfill for drag drop on touch devices: https://github.com/Bernardo-Castilho/dragdroptouch. Probably this will fulfill your need for now.

I've been using https://github.com/timruffles/ios-html5-drag-drop-shim with great success.
The only remaining issue is:
https://github.com/ObaidUrRehman/ng-drag-drop/pull/112


fix: set base url to seven module

@gxthrj After merging, the docker image should be rebuilt 😂

We can add a test case about baseUrl.

We can add a test case about baseUrl.

We can only add very shallow test cases like checking the value is really set to conf.BaseUrl.
We cannot test it in other cases like testing APISIXRoute, APISIXUpstream or others.


Document recommended deployment scheme

I recently tried to install rtd in a local deployment, and couldn't find how to complete the deployment. Namely - how does rtd expect workers to be deployed? What is the celery broker that should be set up, and where? Are there more background-related elements needed (cron jobs?) etc.
It would be nice to have a small section in the installation docs describing the entire recommended deployment scheme.

If you would like to support docs around local installs, we would welcome the contribution. As it stands, we don't have time to officially support it.


LANDING Page need to display tips

As new user I need to see some tips before starting on 100eyes
Therefore the landing page should offer me some tips
(Tipp des Tages Box für @drjakob )

https://docs.google.com/document/d/1laiKLf_ud-zG-jDa1hi_YUtZMYoQ4QW3s4muTu7YbOQ/edit?usp=sharing

The tipps should be randomly selected out of three (ten).


Do  you plan to implement OenAI GPT-4?

@linuaries As of now, we don't have any plans to implement our pipeline using OpenAI GPT models.


Use Protocols for return types

Is your feature request related to a problem? Please describe.
When using MongoKitten I find it difficult to unit test as it requires a remote connection to  mongodb instance or lots of boilerplate and duplication of definitions in tests.
Describe the solution you'd like
If MongoKitten returned objects conforming to Cluster, Database etc. protocols and returned promises with protocol values instead of explicit return types it would allow for easy adoption by test types making unit testing much easier and more reliable.
Describe alternatives you've considered
Writing my own protocols in my framework, conforming MongoKittens collections, databases, replies etc. to them.

Hey @Juice805, thanks for your idea!
@Joannis and I discussed this, but we don't feel that this should be a part of MongoKitten itself, as MongoKitten is just a database driver. As you described you could of course just write your own protocols and conform MongoKittens types to your protocols. If you feel that a larger part of the community would benefit from such a feature, I would suggest creating a separate package that users can include as a dependency in their projects.
A change like this (especially changing return types of existing methods) would also be a breaking change and not possible until the next major version of MongoKitten.
I'm closing this issue for now, but if you decide to make this into a separate package, please let us know: we would be happy to give your package a spot in the readme for discoverability.

we don't feel that this should be a part of MongoKitten itself, as MongoKitten is just a database driver.

This doesn't seem like much of an argument. On the contrary, I would argue it's even more important for network dependent frameworks to be testable on the framework boundary. Every adopter of this package should be writing unit tests, and as written each of them will have to write a lot of boilerplate to make any unit testing feasible and reliable. Testability should be one of the priorities!
At minimum MeowVapor should provide these protocols as it's what the Vapor Style Guide recommends for the same reasons, and they implement their own components this way, and I will open an issue there instead, but truthfully the benefits are so large that it should just be pulled into this package.

A change like this (especially changing return types of existing methods) would also be a breaking change and not possible until the next major version of MongoKitten.

Better late than never!

Before I go into the reasoning, I think it's interesting to mention that I am one of the creators of what is now Vapor 3..
I'm well aware of the style guide and recommended practices. With regards to Dependency Injection, I think you're spot on with regards to the importance of Dependency Injections and testing, but I never intended for packages to be complicit with the dependency injection pattern as such a fundamental level.
Reason 1 - Performance
My official title at the Vapor company "Qutheory" was performance engineer. I was responsible not only for creating the Vapor 3 framework, but also ensuring it's performance is the best it can reasonably be. And for this reason, returning protocols instead of concrete types is one of the first things I'd like to prevent.
By returning a protocol you're preventing a tonne of compiler optimizations from kicking in as well as forcing the compiler to access witness tables and other shenanigans to figure out where to send a function call or access a property. If we'd return protocols everywhere the performance would get a huge hit and the maintainability of the driver would suffer.
Instead, as is practice in Vapor, you can create an objectively correct driver and conform it to protocols with associatedtypes, this'll reduce the performance impact and improve maintainability.
Reason 2 - Non-Vapor use cases
Vapor is my framework of choice, almost all intented features made it to release. It's the ideal framework for me. But I do want and need to acknowledge that not everyone likes to use Vapor. If only because IBM offers commercial support. Their choice for a web-framework doesn't need to force them to use other database drivers, cryptographic function implementations and other features that I've got readily available.
Tailoring a driver to a specific framework is not my vision, and it's not Vapor's vision either. However, that doesn't mean we don't provide better support for Vapor users. You can see that in our support for Meow through MeowVapor, where there's a lack of support by us for Kitura. And the same goes for Fluent.
Reason 3 - Protocols
As you described yourself, protocols can be defined in your application and then "forced" upon MongoKitten types. This is one of the most amazing and interesting features of Swift, and definitely useful for Dependency Injection with Vapor Services. If you really strongly believe that MongoKitten needs to conform to certain abstract protocols, you can create a package that does it for you.
import BSON

protocol DatabaseType {
   associatedtype DataType
}

public protocol Storable: DatabaseType {
   func store(_ document: DataType) -> Future<Void>
}

extension MongoKitten.Collection: DocumentStorable {
    public func store(_ document: Document) -> Future<Void> {
        return insert(document).map { _ in }
    }
}

func testStoring<DatabaseCollection: Storable>(to collection: DatabaseCollection) throws where Database.DataType == Document {
   try collection.store(Document()).wait()
}

Finally
I concur that this is an important feature to have, testability. But we never got to thinking out a matching strategy for Meow. I do however believe that MongoKitten should stay a database driver, not an ORM. So I'd like to protect the scope of MongoKitten from this feature.
If you feel you've got a good idea for testing Meow projects, I'd like to invite you to discuss that in the Meow project issues or with us on slack. We can end up making it a separate MeowTesting package with your inspiration or maybe even support it in Meow itself if there ends up being an agreement in API.

Thanks for the detailed response!

Before I go into the reasoning, I think it's interesting to mention that I am one of the creators of what is now Vapor 3..

good to know

Reason 1 - Performance

👍 This seems reasonable

Reason 2 - Non-Vapor use cases
Tailoring a driver to a specific framework is not my vision, and it's not Vapor's vision either.

This request was in no way tailored to Vapor. That was just the context I was using it in as an example. These protocols would be beneficial for any adopters.

Reason 3 - Protocols

This is essentially what I've done already locally, and was the stated alternative.

Finally
I concur that this is an important feature to have, testability. But we never got to thinking out a matching strategy for Meow. I do however believe that MongoKitten should stay a database driver, not an ORM. So I'd like to protect the scope of MongoKitten from this feature.

It's not clear to me how this request would turn MongoKitten into an ORM?


refresh data on personal details page when online

Details
call OpenPersonalDetailsPage api on PersonalDetailsInitialPage when

first open page
network changes from offline to online

Fixed Issues
$ https://github.com/Expensify/App/issues/16985
PROPOSAL: https://github.com/Expensify/App/issues/16985#issuecomment-1501210757
Tests
Same as QA step

[ ] Verify that no errors appear in the JS console

Offline tests
Same as QA step
QA Steps

Open the app and logout if you're currently logged in
Log in
Disable network
Open Settings > Profile > Personal Details
Observe that data (Legal name, Date of birth, Home address) isn't showing yet
Enable network
Verify that data shows after a few seconds

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://user-images.githubusercontent.com/108292595/234174186-decce2e6-1949-4455-bf44-81bfd357fffe.mov

Mobile Web - Chrome
https://user-images.githubusercontent.com/108292595/234173628-f4ee0779-53ce-47ee-91ec-9fee716c841e.mov

Mobile Web - Safari
https://user-images.githubusercontent.com/108292595/234173548-6bb8eff7-ea38-414e-a081-5ceb89426133.mov

Desktop
https://user-images.githubusercontent.com/108292595/234174239-4a9e7db4-9f72-4594-835d-e484a6f15601.mov

iOS
https://user-images.githubusercontent.com/108292595/234174239-4a9e7db4-9f72-4594-835d-e484a6f15601.mov

Android
https://user-images.githubusercontent.com/108292595/234173512-da2837f9-66ee-463b-b586-ac2e94779243.mov

@deetergp @0xmiroslav One of you needs to copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button]

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/deetergp in version: 1.3.6-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/jasperhuangg in version: 1.3.6-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Allow using manifest-path instead of crate path

Now accepts either --manifest-path <Cargo Manifest> or --path <Cargo Dir>
Context is now accessed via GlobalContext::from_config(...)? which inits the context if necessary, and caches its contents

It is no longer necessary to manually init the Context. Forgetting to do so will now no longer result in a runtime error.

closes #412

replaced in favour of #420


Dev commits

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
How was this patch tested?
(Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
Quick checklist
The following checklist helps ensure your PR is complete:

[ ] Eclipse Contributor Agreement signed, and signed commits - see IP Requirements page for details
[ ] Reviewed the Contributing Guidelines and followed the steps within.
[ ] Created tests for any significant new code additions.
[ ] Relevant tests for your changes are passing.

Before you merge this, space_to_batch_nd.cpp doesn't compile anymore. Please fix.


.circleci: Don't install numpy directly

numpy is a dependency of pytorch so we should let the package manager
resolve our numpy dependency instead of doing it ourselves
Similar to https://github.com/pytorch/audio/pull/1309
Signed-off-by: Eli Uriegas<EMAIL_ADDRESS>

it seems we still need mypy from the failing python_type_check test

it seems we still need mypy from the failing python_type_check test

Re-added and changed the install command for pytorch to be channel specific


Improve Pyston support

Pyston is a faster and highly-compatible fork of CPython, aiming at CPython 3.8.8 compatibility at the time of writing.
Quick tests show that Pyston can speed up Falcon up to 2x, and interestingly, its JIT is faster than our cythonization of pure Python code, so if Pyston is detected, we should not do that. However, most of falcon.cyutil.* is still worth compiling, e.g., the C-based parse_query_string is still 2x faster than our Python implementation run in Pyston. Not to complicate the matters too much, we could opt to only cythonize cyutil if Pyston is detected.
Detecting Pyston: use hasattr(sys, "pyston_version_info") as per its maintainers' suggestions in https://github.com/pyston/pyston/issues/36.

[ ] Mention Pyston in the installation docs alongside PyPy and CPython.
[ ] If Pyston is detected, tune cythonization as per the above discussion.
[ ] Run a Pyston CI gate?

Coordinate with https://github.com/falconry/falcon/pull/1709 -- we probably want to get PEP 517 stuff working properly first, to make the things easier.

For sure I think this should be after #1709

Closing this, it seems Pyston has been abandoned 😬
It's GitHub repo reads (No longer maintained).


Compilation failure with simd_rem

Hello,
stdsimd fails to build on my machine after 663cf64c9c2adaeec4ba704b8fe87d4667ebd3b9.
Adam, [21.11.17 00:49]
cargo build
   Compiling stdsimd v0.0.3 (file:///home/adam/Programs/stdsimd)
error[E0441]: unrecognized platform-specific intrinsic function: simd_rem
  —> src/simd_llvm.rs:28:5
   |
28 |     pub fn simd_rem<T>(x: T, y: T) -> T;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: aborting due to previous error

error: Could not compile stdsimd.

I'm on an i3 5005u (+avx2). stdsimd compiles without issue on my 3570k (+avx). I'm using LLVM 5.0.0 on both, and changing the target-cpu has no effect on either machine.

@AdamNiederer which Rust version do you have?
simd_rem requires a nightly that's newer than 16 days, and the AVX-512 intrinsics require a nightly newer than a couple of days.

Ah, such is life on the bleeding edge. Updating rustc fixed the issue; thanks.

@AdamNiederer btw I added these intrinsics to rustc and stdsimd because I saw that you were using the vector types "operators" in faster. Since that commit, all useful operators should be implemented and working properly. If you miss any please ping me either here or in the rustc repo. Happy hacking!

Awesome, thank you! I'm trying to hack together the gather operators here so I can get a a proper stream swizzling API working in faster right now. I should have those ready to merge in a few days.


migrate siri requester data from digital ocean to s3

we would like to have all data in one place, siri requester now stores the data in AWS S3, and now we need to migrate the old data there as well

created an EC2 server to run the migration of data from (my ssh key is authorized): ssh<EMAIL_ADDRESS>running the migration inside a screen, reconnect with: screen -r migration

currently downloading all siri data from digital ocean

all data was downloaded + uploaded to AWS S3

deleting the server


Updated README.md

I have updated README.md file.

Looks good @SachinMittal1766! Just a few things need to be edited -

The contributors image is linked to another repository, can we remove that? Or if we could include a contributors table, something like this
'Join US' section, capitalization of the first letter and for it to say "Join the telegram channel" instead of our.
We don't really need the KWoC banner at the end of the README, hence the "Open Source Event" section can be removed.

@osBins I have made the changes required .

Great work @SachinMittal1766! Merging your PR.


Automated cherry pick of #455 #473

Cherry pick of #455 #473 on release-0.2.
#455: Fix rst syntax error in ingress-shim.rst
#473: Fix broken link

/release-note-none


NLP Toolset INFRA-306

Thanks @usmanismail I addressed the comments.

Thanks @usmanismail and @Mmdixon I got rid of the bash -l -c hacks.  Also I got bundle install to be very fast when it runs in the entrypoint script by putting rvm use jruby-1.7.10@nlp-toolset before bundle install

@juharris He Could you close of merge this PR. I just want to clear my to do list :)


The sound output

Does the sound output through line-out? If not, it is planned?

I'm currently adapting this for a quick project at the Royal College of Art in London, it'd be great to implement sound on something like this.
Has there been any development or possible solutions in regards to sound since 2014?

nope!

I added some basic FM demodulation via python subprocess in this fork: https://github.com/drewby08/FreqShow


Bug: bdist_wheel fail to build on ubuntu 20.04 fresh install with pyenv

Environment information

ape and plugin versions:

$ ape --version
Traceback (most recent call last):
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 583, in _build_master
    ws.require(__requires__)
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 900, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (typing-extensions 4.0.1 (/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages), Requirement.parse('typing-extensions<4,>=3.7.4'), {'trie'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/doge/.pyenv/versions/apeworx/bin/ape", line 33, in <module>
    sys.exit(load_entry_point('eth-ape', 'console_scripts', 'ape')())
  File "/home/doge/.pyenv/versions/apeworx/bin/ape", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 848, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/doge/ape/ape/src/ape/__init__.py", line 9, in <module>
    from .contracts import _Contract
  File "/home/doge/ape/ape/src/ape/contracts/__init__.py", line 1, in <module>
    from .base import ContractContainer, ContractInstance, ContractLog, _Contract
  File "/home/doge/ape/ape/src/ape/contracts/base.py", line 3, in <module>
    from eth_utils import to_bytes
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/eth_utils/__init__.py", line 4, in <module>
    import pkg_resources
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3252, in <module>
    def _initialize_master_working_set():
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3235, in _call_aside
    f(*args, **kwargs)
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3264, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 585, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 598, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (typing-extensions 4.0.1 (/home/doge/.pyenv/versions/apeworx/lib/python3.8/site-packages), Requirement.parse('typing-extensions<4,>=3.7.4'), {'trie'})

$ ape --version
...copy and paste result of above command here...
$ ape plugins list
...copy and paste result of above command here...

Python Version: Python 3.8.10
OS: win 10 ubuntu 20.04 LTS WSL2

What went wrong?
Please include information like:

what command you ran
pip install -e .
the code that caused the failure (see this link for help with formatting code)
not sure

  Building wheel for pytest-watch (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/pytest-watch/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/pytest-watch/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-hgmfnsjs
       cwd: /tmp/pip-install-hxf0gtbi/pytest-watch/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for pytest-watch
  Running setup.py clean for pytest-watch
  Building wheel for ipdb (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/ipdb/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/ipdb/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-3ch_qi1c
       cwd: /tmp/pip-install-hxf0gtbi/ipdb/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for ipdb
  Running setup.py clean for ipdb
  Building wheel for bitarray (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/bitarray/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/bitarray/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-3bmob709
       cwd: /tmp/pip-install-hxf0gtbi/bitarray/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for bitarray
  Running setup.py clean for bitarray
  Building wheel for lru-dict (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/lru-dict/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/lru-dict/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-iq0zcfev
       cwd: /tmp/pip-install-hxf0gtbi/lru-dict/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for lru-dict
  Running setup.py clean for lru-dict
  Building wheel for termcolor (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/termcolor/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/termcolor/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-4okb95pw
       cwd: /tmp/pip-install-hxf0gtbi/termcolor/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for termcolor
  Running setup.py clean for termcolor
  Building wheel for docopt (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/docopt/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/docopt/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-4u2kd3cb
       cwd: /tmp/pip-install-hxf0gtbi/docopt/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for docopt
  Running setup.py clean for docopt
  Building wheel for cytoolz (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/cytoolz/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/cytoolz/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-b4h8snrd
       cwd: /tmp/pip-install-hxf0gtbi/cytoolz/
  Complete output (7 lines):
  ALERT: Cython not installed.  Building without Cython.
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for cytoolz
  Running setup.py clean for cytoolz
  Building wheel for parsimonious (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/parsimonious/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/parsimonious/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-rsvus56d
       cwd: /tmp/pip-install-hxf0gtbi/parsimonious/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for parsimonious
  Running setup.py clean for parsimonious
  Building wheel for varint (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/varint/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/varint/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-vv2f4ybd
       cwd: /tmp/pip-install-hxf0gtbi/varint/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for varint
  Running setup.py clean for varint
  Building wheel for pyethash (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/doge/.pyenv/versions/apeworx/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hxf0gtbi/pyethash/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hxf0gtbi/pyethash/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-c0yxzxyb
       cwd: /tmp/pip-install-hxf0gtbi/pyethash/
  Complete output (6 lines):
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: setup.py --help [cmd1 cmd2 ...]
     or: setup.py --help-commands
     or: setup.py cmd --help

  error: invalid command 'bdist_wheel'
  ----------------------------------------
  ERROR: Failed building wheel for pyethash
  Running setup.py clean for pyethash
Failed to build pytest-watch ipdb bitarray lru-dict termcolor docopt cytoolz parsimonious varint pyethash
ERROR: trie 2.0.0a5 has requirement typing-extensions<4,>=3.7.4, but you'll have typing-extensions 4.0.1 which is incompatible.
ERROR: sphinx 3.5.4 has requirement docutils<0.17,>=0.12, but you'll have docutils 0.17.1 which is incompatible.
ERROR: flake8 3.9.2 has requirement pycodestyle<2.8.0,>=2.7.0, but you'll have pycodestyle 2.8.0 which is incompatible.
ERROR: sphinx-rtd-theme 0.5.2 has requirement docutils<0.17, but you'll have docutils 0.17.1 which is incompatible.

How can it be fixed?
unknown

Please try running this in bash:
$ sudo apt install zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev tk-dev libssl-dev llvm libncurses5-dev libncursesw5-dev xz-utils libffi-dev liblzma-dev python-openssl

Then remove and re-install the Python version via pyenv e.g.:
$ pyenv install 3.8.12

was able to resolve with the following: pyenv install 3.9.9 && pyenv virtualenv 3.9.9 myenvironment && pyenv activate myenvironment
or alternatively with pip install typing-extensions==<IP_ADDRESS>
the reason this works is because typing-extensions is an issue because eth-tester has an old pin for py-evm
https://github.com/ethereum/eth-tester/blob/master/setup.py#L26

https://github.com/ethereum/eth-tester/pull/229 for tracking

also should revert this once those blockers are resolved https://github.com/ApeWorX/ape/pull/388

That ethereum-tester ticket has been merged and #388 merged.
Is there anything left on this ticket @sabotagebeats ?

I think this is good


Upgrade docker-client dep from 8.14.0 to 8.14.2

@davidxia does this fix #236 ?

Not sure actually. I wasn't able to repro that originally.


Information

Naughty Dog fibers
Destiny multi-threading

This has some great info: https://www.youtube.com/watch?v=4OCUEgSNIAY
Not game releated.

@csherratt Awesome presentation, but if you just take a look at the number of instructions on the README.md for HPX to get it to even compile... I'm so happy I'm doing something other than C++ right now.

It does intrigue me whether it would be worth going that far for our goals as well. Getting rid of the explicit multi-threading and switching to resumable functions and asynchronous code instead of tasks.

I'd like to have a major brainstorm on the topic, actually (and I'm re-watching the presentation, yes). So the main idea of the talk is to make parallelism implicit, and just specify what you want in terms that are compatible with multi-threading (sounds very much Haskell), right? If so, what would be the best way to get these kind of interfaces in Rust?


:sparkles: Update to catalogd v0.17.0 to share a common certificate issuer

Description
Update to catalogd v0.17.0 to share a common certificate issuer
Fixes: #1000

Reviewer Checklist

[ ] API Go Documentation
[ ] Tests: Unit Tests (and E2E Tests, if appropriate)
[ ] Comprehensive Commit Messages
[ ] Links to related GitHub Issue(s)

See RFC: Operator-Controller Configuration

/unhold

Changes since @joelanford's approval:

Include catalogd v0.17.0
Rename secure to cert-manager (consistent with catalogd)
Move the e2e and cert-manager configs into the overlays directory.
Drop the catalogd certificate volume, as catalogd and operator-controller now share a CA


Auth logging not providing the reason when response.code is 200

Summary
When logging in vmanage response inside def get_cookie(self) -> RequestsCookieJar::
        self.logger.debug(self._auth_request_debug(response))
        if response.text != "":
            raise InvalidCredentialsError(self.username, self.password)

We are using def _auth_request_debug which logs only:
Authenticating: tenantadmin POST https://apple.fruits.com:8443/j_security_check <200>

Even if the response.code is 200, the text can include some important message which optionally can be included.
Logs and external information
Logs can be seen on vtest runs.
Reproduction script
Use mtt_aaa P1 testcases with rbac to reproduce.
On what platform(s) does it occur?
Not Applicable
Issue Severity
High: Blocking everything

This issue was migrated from an old repository: https://github.com/CiscoDevNet/catalystwan/issues/256


How to "make" wifi drivers

I have some linux drivers for a Realtek wifi card. There is a simple bash script which gets the kernel version and architecture and runs the make command. I know some nixos and that it does things differently by softlinking them into the nix store.
I installed pkgs.gnumake and run the make command. The make command could not find the linux headers, so I installed those. But 'make' still could not find linux headers in appropriate place (as it does not know about nix store), I guess it is because of softlinking. Below is output of the bash script:
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/5.4.75/build M=/home/rajat/Downloads/Linux/a/a1/driver/rtl8821CU_WiFi_linux_v<IP_ADDRESS>_24795.20171031_COEX20170310-1212  modules make[1]: *** /lib/modules/5.4.75/build: No such file or directory.  Stop. make: *** [Makefile:1893: modules] Error 2 ################################################## Compile make driver error: 2 Please check error Mesg ##################################################
Here's a link to drivers I am trying to install: https://drive.google.com/file/d/1WV9pv6aahT-s4J-nSZU_ne3c07r0kCUC/view?usp=sharing
So how do you "make" packages the nix way?

https://nixos.org/nixpkgs/manual/ is what you're looking for.

The nix way is to never run make by hand - nix will do that for you when you install a package. So the way to go is to write a package description. If the bash script does something important, that should be done in one of the shell hooks (probably preConfigurePhase). The manual and the code in this repo have a lot of examples of such packages.

The nix way is to never run make by hand - nix will do that for you when you install a package. So the way to go is to write a package description. If the bash script does something important, that should be done in one of the shell hooks (probably preConfigurePhase). The manual and the code in this repo have a lot of examples of such packages.

It seems it will require a lot of brain power but I will try to learn the nix way. Docs on site are nice.


KQL querry is causing an error in analytics-rules.jason Bug Report

hi @alphaomega0 can you share your JSON file so that I can take a better look

@alphaomega0 it looks like your query field is unescaped. It has newlines characters in it which aren't valid JSON. The line starting "query": "let starttime =14d; should continue with escaped newlines characters \n instead of actual newlines.

hi @alphaomega0 have you tried the feedback proposed by @pemontto? and can you please let us know if you need more help with this issue? kr Pouyan

closing this issue, please feel free open a new issue if you are still having problem importing  Alert rules


Adding Skale chain config

Skale chain Added with all info

@AzizBardi is it ready to review?

@AzizBardi is it ready to review?

Yes !

@AzizBardi what are those contract error calls ?


Add SparseCheckoutPaths to archetype-typespec-emitter.yml

For http-client-csharp typespec emitter, we have needs to sparse-checkout extra paths while applying archetype-typespec-emitter.yml.
The detailed usage can be found in https://github.com/Azure/azure-sdk-for-net/pull/47136

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow


Does not warn on rename

If I create a fresh Davros grain and rename shuttle.jpg to pluto.jpg, pluto.jpg is overwritten. This matches the behavior of Unix's mv command, but should probably issue a warning/confirmation dialog.
(This is with experimental version 0.31.1.)

That's a good call-out, I'll add a warning if the rename will potentially overwrite an existing file.

Not tested, but can I assume it may do the same if you move pluto.jpg into a folder where a pluto.jpg already exists?

Yes, same result.

I wonder if it would also be worth doing a second check during the actual file move/rename operation, like so:

Grain loaded
User attempts to rename aaa.jpg to xxx.jpg (where xxx.jpg does not exist)
[At some point since UI load, an xxx.jpg is uploaded]
Second check happens just before the mv operation
"Error: xxx.jpg already exists"

The WebDAV spec handles MOVE conflicts by passing a header Overwrite: T or Overwrite: F. I think perhaps the right thing to do is to attempt to do the MOVE with Overwrite: F and catch the error, prompting to overwrite or cancel.
This works fine on single-file moves or renames, but is going to be tricky on files where many files may end up with conflicts...


kcptun CPU load optimization

At high speeds ther is a problem with CPU load.
I don't know where exactly it is, surely not in encryption and not in compression parts(because disabling both makes nearly no difference).
For example 2 cores at 3.4Ghz can pass just around 180-200mbit of traffic(here i take uncpmpressable traffic like https, mp4 and so on) thru kcptun(using 2 or more kcptun instances).
Is there a way to significantly boost the processing speed?
I do have VPS with great bandwidth(10Gbit) but small enough CPU resources(2 cores at 3.4Ghz).
Current settings: ./server_linux_amd64 -l :3771 -t <IP_ADDRESS>:3128 --key $key --crypt aes-256 --mode manual -nodelay 1 -interval 20 -resend 1 -nc 1 --sndwnd 4096 --rcvwnd 4096 --datashard 8 --parityshard 1

encrypt  and "packet proceed"  rely on CPU .  And VPS is not an good test environment.   you share resources with others. Event  in real world , PC is not  good for  "network packet proceed".  that's why we usually use "hardware switch/router".
Talking about 10G network ,there's lots of things to do for optimize .  So.....i think you've got acceptable result.

@xxxman2008
VPS is good enough for testing(as i do minimum 3 tests at different time and average results then).
Also this is software solution that surely can be optimized(as there is bottleneck for sure).
Same VPS easily handles over gigabit of stunnel traffic so it is not about software/hardware processing, it is about optimizing software.

there are several computations in kcptun:

encryption/decryption
erasure coding/decoding
package reordering

stunnel is much simpler.

Can packet reordering be bottleneck?
As encryption does no t affect speed, erasure coding should be extremely fast according to tests and reordering i can't test separately.

possibly, cause packet reordering introduces data splitting, merging, reordering which is basically 'memory hard'.

Any way to optimize reordering so it will eat less CPU?

https://en.wikipedia.org/wiki/Large_send_offload
it's usually done in NIC chips.

Yeah, but here we have software that does reordering at software level so there can be a way to optimize it at software level, right?

only if you can find a better data structure than current one.
after all , it's an open & interesting topic, you could look into the struct KCP, and should find  something like snd_queue .

Thanks, I will try to look at it and will try find something better!
P.S. Can you please look at new bug 532 i dicovered?

@PtDragon  As you say "Same VPS easily handles over gigabit of stunnel traffic".  I really interesting how do you get the result?  Can you talk about it?
TSO、UFO、GSO、LRO、GRO And RSS  is always run in "real machine",  can not be done in  VPS.
If you really want to do something, OK ,the key is :
1/   HIGH FREQ  CPU
2/   NOT encryption/decryption the packets.  Enc/decry  eat most of your cpu . that's why  intel add "native AES " function on new CPU.
Raymond

@xxxman2008 Sure, i can talk about it ;)
I have several VPS aroud the world. Not usual ones that can handle just 100mbit and have low CPU power but those that can handle 1-10gbit of traffic and most of them designed for DDoS defence.
For stunnel encryption goes via AES-NI so at around 90Mbyte/sec download CPU stays below 20% average. (for example of AES-NI speed my home machine  CPU<EMAIL_ADDRESS>can encrypt up to 3500Mbyte/sec)

3.4Ghz, 2 cores, 99% working only for me.
In this case enabling or disabling encryption/decription does not really matter as there is AES-NI support.


monitor_keyring is undefined

Bug Report
What happened: monitor_keyring is undefined while executing ceph-config role. (see attached ansible.log)
What you expected to happen: monitor_keyring should be generated.
How to reproduce it (minimal and precise):

checkout stable-3.2
use the the group_vars/all config provided below
mv vagrant_variables.yml.sample vagrant_variables.yml
install requirements pip install -r requirements.txt
start vagrant vagrant up

Share your group_vars files, inventory
group_vars/all
ceph_origin: repository
ceph_repository: community
ceph_stable_release: mimic
public_network: "<IP_ADDRESS>/24"
cluster_network: "<IP_ADDRESS>/24"
monitor_interface: eth1
devices:
  - '/dev/sdb'
  - '/dev/sdc'
osd_scenario: lvm

inventory is managed by vagrant.
Environment:

OS (e.g. from /etc/os-release): Ubuntu 16.04 from Vagrant box ceph/ubuntu-xenial
Kernel (e.g. uname -a): Linux osd0 4.4.0-22-generic #40-Ubuntu SMP Thu May 12 22:03:46 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Docker version if applicable (e.g. docker version):
Ansible version (e.g. ansible-playbook --version): 2.6.11
ceph-ansible version (e.g. git head or tag or stable branch): stable-3.2
Ceph version (e.g. ceph -v): ceph version 13.2.2 (02899bfda814146b021136e9d8e80eba494e1126) mimic (stable)

I don't know if this is related to #2166 but setting monitor_secret manually in the group_vars/all (like monitor_secret: "AQBQn8tUsBHSIBAACVlivUvyNkn2EZREERyZRw==") fixes the problem, but I thought the secret should be generated automatically, or am I wrong?
ansible.log

same issue

How to reproduce it (minimal and precise):

checkout stable-3.2
use the the group_vars/all config provided below
mv vagrant_variables.yml.sample vagrant_variables.yml
install requirements pip install -r requirements.txt
start vagrant vagrant up

I went through these steps, and vagrant up completed running successfully, for me. I've attached the file container vagrant up's output. I used site.yml.sample for deploying Ceph.
@Bruceforce @woof
Are you using a custom site.yml?

@rishabh-d-dave
I edited my initial post and included some steps I forgot previously. Now it should be clear that I'm using the sample file and just copied it.
However it seems that you are using libvirt as provider. I'm using virtualbox. I can't get ceph/ubuntu-xenial to work with libvirt because of Waiting for domain to get an IP Address forever. So I tried with generic/1804 box and now I don't get the Waiting for domain to get an IP Address issue. But my initial error is the same for libvirt and Vagrant with ceph/ubuntu-xenial AND generic/1804
See the two vagrant logs (one with virtualbox ceph/ubuntu-xenial and one with libvirt generic/1804) this time without debug logging enabled, because the issue is the same as in the initial post.
vagrant_libvirt.log
vagrant_vbox.log


Demonstrate getattr overload for lazy imports

Demonstration of comment: https://github.com/catalystneuro/neuroconv/pull/71#discussion_r939743746
If implemented for the other interfaces, would resolve the break in back-compatability while still granting the performance and safety improvement offered by lazier external imports.
Works for me locally but we'll see what the CI says in the morning.

I see how this works. It's pretty clever, and it seems like something like this would be needed for the yaml approach regardless of if we do it for the standard python library usage. I think the biggest positive here is that the user has each of the interfaces at their fingertips instead of having to do a deeper import. I think I still prefer the classic approach for standard imports. Here are some thoughts:

I'm not too worried about backwards compatibility at this point. We are still in alpha versions and we just recently renamed the library so there aren't any codebases we would break right now. If we are going to make a breaking change, now is the time to do it.

Deep imports are the norm in larger packages. Consider scikit learn:

from sklearn.linear_model import (
    LinearRegression,
    TheilSenRegressor,
    RANSACRegressor,
    HuberRegressor,
)
from sklearn.metrics import mean_squared_error
from sklearn.preprocessing import PolynomialFeatures
from sklearn.pipeline import make_pipeline

This informs the user about the structure of the project and how imports are layered, so there is some benefit to it. For me, having the nested import structure reflect the optional dependencies makes sense. We'll have the conversion galleries which will illustrate how to use each DataInterface with proper importing, so I don't expect that will pose a big problem for users. We can still have an interface_location dictionary you have started here for users to query against. This will be useful for the yaml approach.

I don't think tab-complete or IDE auto parsing would work for this approach.

The biggest reason I am reluctant to use this approach is I am worried it will cause problems down the road. How will this work cross platform? How will it work with threading, memory profiling, test coverage, etc.? Even if we test that those use-cases do not pose a problem, it would be impossible to know if other issues might (even if it's someone else's fault, not ours). When we use non-standard approaches like this we open the door for months of work when something comes up we didn't anticipate.

@CodyCBakerPhD what are you thoughts on these points?

Deep imports are the norm in larger packages. Consider scikit learn:

The scikit examples are only one-level deep, which I would be fine with (that's what we use for the spikeinterface/roiextractors tools after all). from neuroconv.datainterfaces import SomeRandomInterface would be fine, but I don't think we need to force them to think about modality and format nesting on top of that. It would also be compatible with my other complaint that importing multiple interfaces across modalities requires a lot more typing, you could still do that on one line as from neuroconv.datainterfaces import SomeEcephysInterface, SomeSortingInterface, SomeBehaviorInterface which is super convenient.
Going more then 2 levels deep at most just generates headaches for trying to remember how things are nested in any given project.

I don't think tab-complete or IDE auto parsing would work for this approach.

Just tested it out - the only thing required to make this work is to use the second part of the PEP 562 (updating the __dir__ structure), which is how all auto-parsers should be based (the way that structure is set and retrieved is via dir(module_name))

The biggest reason I am reluctant to use this approach is I am worried it will cause problems down the road. When we use non-standard approaches like this we open the door for months of work when something comes up we didn't anticipate.

As we say when taking more control over programmatic behavior (example from chunking tutorial [in Notes]), "with great power comes great responsibility".
The great thing however is that this has been an accepted PEP 562 standard for the past 5 years - the reason more people don't use it is likely because they don't have to and because there are so many other alternative approaches (like local scope definitions) that achieve the same benefit.
Examples like sklearn only seem to be based off of a few external packages like numpy/scipy so they don't have the same problems we do with needing to interface with so many outside dependencies. They also use a separate approach for something similar, which is also something we could look into: https://github.com/scikit-learn/scikit-learn/blob/main/sklearn/feature_selection/init.py#L33-L53 with reference to https://peps.python.org/pep-0008/#global-variable-names
Even neo appears to work the less-efficient way (global * init from https://github.com/NeuralEnsemble/python-neo/blob/50abfbce832edb1c0f8364ac34c8a6442e1a3edf/neo/init.py#L10-L11 -> interface listing and simultaneous imports https://github.com/NeuralEnsemble/python-neo/blob/50abfbce832edb1c0f8364ac34c8a6442e1a3edf/neo/io/init.py#L278-L379 -> 'lazy' w.r.t. installation but if installed, imports https://github.com/NeuralEnsemble/python-neo/blob/50abfbce832edb1c0f8364ac34c8a6442e1a3edf/neo/rawio/cedrawio.py#L29-L33). Though it's not a problem for them or us until DLC because the initialization of the DLC module (likely due to tensorflow) is very heavy but no other package we deal with is (at least by comparison).

How will this work cross platform? How will it work with threading, memory profiling, test coverage, etc.? Even if we test that those use-cases do not pose a problem, it would be impossible to know if other issues might (even if it's someone else's fault, not ours).

As the PEP indicates, we are in fact following the official and appropriate process of importing modules and assigning references within those modules, so there are no differences between what we're doing with manual redirection and how it would otherwise naturally work through other adjustments to the package structure (either propagating the customization to downstream __init__.py or outright placing the classes at the outer level - which of course would be terrible for organization purposes). So any usage case would behave as it normally would.
Basically, putting from .deeplabcutinterface import DeepLabCutInterface in the datainterfaces/behavior/deeplabcut/__init__.py is identical to adding the .datainterfaces.behavior.deeplabcut.DeepLabCutInterface attribute to the neuroconv module class. This is doing the same thing but with less typing that allows us to benefit from an easier (flatter) import structure while maintaining a more readable (deeper) module organization.

I'm not too worried about backwards compatibility at this point. We are still in alpha versions and we just recently renamed the library so there aren't any codebases we would break right now. If we are going to make a breaking change, now is the time to do it.

+1 over this.

Also for future maintainability, if PEP 690 or something similar gets approached at the standard library level, then future versions of Python would have it built in. Some of them are proposing keyword semantics like lazy import some_package which can act at the same level as import some_other_package but have the  desired behavior, but that also seems to be most of the 'how to best implement this in standard' discussion that populates the thread (as well as the social movement and education of Python developers on how to best use such a feature).
But even if it doesn't get built-in to Python there are many other packages starting to go in this direction:
see scikit-image block and their more generalized approach for what some other packages are doing about this on their own.

@CodyCBakerPhD thanks for pointing me to PEP 562. I'll take a look.

I guess, since all of the tests pass, this works on all of our supported versions of Python

Relevant to this approach and in favor of @CodyCBakerPhD argument's of wider applicability is the facs that the scientific python community has endorsed and implemented an specification with a library following this approach:
https://scientific-python.org/specs/spec-0001/

Closing in favor of approach #74 that preserves all possible auto-parsing effects across IDEs and interactive consoles


Add an option to ByteBuffer.clear() to specify minimumCapacity

Add an option to ByteBuffer.clear() to specify minimumCapacity.
Motivation:
The basic idea is that often it's beneficial to re-use an existing ByteBuffer if that doesn't cause a copy-on-write copy (regardless of the size of the existing ByteBuffer). If it would cause a copy-on-write copy however it's often beneficial to allocate a new ByteBuffer of the right size rather than the size of the one that happens to be around. See #1057
Modifications:

changed visibility of _Storage()allocateStorage from private to internal
added an implementation of ByteBuffer().clear() that takes a parameter to specify desired capacitycapacity minimumNeededCapacity: _Capacity
added tests:

ByteBufferTests().testClearDoesReallocateStorageCorrectlyIfTheresOnlyOneBuffer()
ByteBufferTests().testClearDoesAllocateStorageCorrectlyIfTheresTwoBuffersSharingStorage()

Result:

NIO users can provide a minimum capacity when clearing a ByteBuffer.
Existing implementations are not affected.

@Lukasa I have incorporated your feedback and pushed my changes.

@swift-nio-bot test this please

Can you please run ruby scripts/generate_linux_tests.rb?
Sure, done!

@swift-nio-bot test this please

Unfortunately this patch has a small conflict in the auto generated test file. If you rebase this onto the current master branch you should be able to regenerate the test file to resolve the conflict.

@swift-nio-bot test this please

@swift-nio-bot test this please

@weissi want to re-review?


Missed objects in SN-like SQL query

These objects (subsequently flagged by Pan-STARRS) are not being picked up by the SN-like candidates query, in spite of being clearly young and rising.  Ken to investigate.
https://lasair-iris.roe.ac.uk/object/ZTF21ackoehe/
https://lasair-iris.roe.ac.uk/object/ZTF21acjuwuk/

I think was about Lasair being offline at the time the alerts came through


feature: add dns controller to sync cluster node dns records

Ⅰ. Describe what this PR does
feature: add dns controller to sync cluster node dns records
Ⅱ. Does this pull request fix one issue?

Ⅲ. List the added test cases (unit test/integration test) if any, please explain if no tests are needed.
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

@SataQiu Thank you for making the pull request.
would you add more detail info like background, reason, solution etc to explain why we need this pull request?


Link Bootsnap in README to the right anchor

Seems like a simple typo in the README linked both the Spring and Bootsnap "see section below" link tot he Spring explanation.

argh, thanks! :)


Minor issue in the deploy script

warning: You ran 'git add' with neither '-A (--all)' or '--ignore-removal',
whose behaviour will change in Git 2.0 with respect to paths you removed.
Paths like 'scripts/app-9806398a.js' that are
removed from your working tree are ignored with this version of Git.

* 'git add --ignore-removal <pathspec>', which is the current default,
  ignores paths you removed from your working tree.

* 'git add --all <pathspec>' will let you also record the removals.

Run 'git status' to check the paths you removed from your working tree.

[gh-pages 9fe8920] release 5f7cc771f1a520e11d96bcd9778095a930debfcc
 2 files changed, 4 insertions(+), 4 deletions(-)
 rename scripts/{app-9806398a.js => app-09f7f368.js} (82%)
Counting objects: 11, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 54.75 KiB | 0 bytes/s, done.
Total 5 (delta 2), reused 0 (delta 0)
To git@github.com:uwdata/facetedviz.git
   7aad68d..9fe8920  gh-pages -> gh-pages

can’t reproduce.


sched: change pthread_mutex implementation from sem to mutex

Summary
Since pthread_mutex is implemented by sem, it is impossible to see in ps who holds the lock and causes the wait.
Replace semaphore with mutex implementation to solve the above problems
Impact
It depends on https://github.com/apache/nuttx/pull/13104
Testing
ostest & ltp

Please check CI error


Navbar Issues

Hey,
I am getting a nav bar issue.
When I click on an item from the dropdown navbar, i get dual dropdowns. I don't know if it is a rendering error, but i get it whenever i click on the options. I'm attaching a screenshot too.

@Athul-CA  the navbar for mobile sites is not optimized yet. We will be working it on soon Thank you for your feedback

#219 duplicate


Use the new LogicalSize with set_inner_size

Change introduced in winit 017.2:

Breaking: The entire API for sizes, positions, etc. has changed.
In the majority of cases, winit produces and consumes positions and
sizes as LogicalPosition and LogicalSize, respectively.

Thanks!


Adding Minimal Label:Project Page👾

Adding Minimal Labels to the project so that they look good

Mam which kind of lables you want there?

Mam which kind of lables you want there?

Mam which kind of lables you want there?

Labels like "react" which pop up on hover for project page cards

Mam which kind of lables you want there?

Labels like "react" which pop up on hover for project page cards

@smaranjitghose I believe the labels are already present.

@smaranjitghose I believe the labels are already present.

@smaranjitghose I'd like to take it up. How should I change the label's design, any suggestion?

@smaranjitghose I'd like to take it up. How should I change the label's design, any suggestion?

You can use https://tailwindcomponents.com/component/tags these and add this to the project page of the site

You can use https://tailwindcomponents.com/component/tags these and add this to the project page of the site

You can use https://tailwindcomponents.com/component/tags these and add this to the project page of the site

Sure, any background color preferences or should I send a pic for each one?

You can use https://tailwindcomponents.com/component/tags these and add this to the project page of the site

Sure, any background color preferences or should I send a pic for each one?

Currently the labels are like this

Currently the labels are like this

Okay 👍

Okay 👍

@anushbhatia please review my pull request #508 and suggest any change if required.

@anushbhatia please review my pull request #508 and suggest any change if required.

2. Adding Custom labels
@Chaitanya31612 I am closing this issue. Raise a new issue for this as discussed in your PR comments. Also, let me know if I have assigned you the right tags for the open source program you are in. I am not sure whether you are in SWoC or DWoC

2. Adding Custom labels
@Chaitanya31612 I am closing this issue. Raise a new issue for this as discussed in your PR comments. Also, let me know if I have assigned you the right tags for the open source program you are in. I am not sure whether you are in SWoC or DWoC

2. Adding Custom labels
@Chaitanya31612 I am closing this issue. Raise a new issue for this as discussed in your PR comments. Also, let me know if I have assigned you the right tags for the open source program you are in. I am not sure whether you are in SWoC or DWoC

I am in SWOC, not in DWOC. Are there any criteria on how pr will be evaluated/scored?

2. Adding Custom labels
@Chaitanya31612 I am closing this issue. Raise a new issue for this as discussed in your PR comments. Also, let me know if I have assigned you the right tags for the open source program you are in. I am not sure whether you are in SWoC or DWoC

I am in SWOC, not in DWOC. Are there any criteria on how pr will be evaluated/scored?

2. Adding Custom labels
@Chaitanya31612 I am closing this issue. Raise a new issue for this as discussed in your PR comments. Also, let me know if I have assigned you the right tags for the open source program you are in. I am not sure whether you are in SWoC or DWoC

I am in SWOC, not in DWOC. Are there any criteria on how pr will be evaluated/scored?

No, I was just asking so that I can make sure that I can award you for all the programs you are in

2. Adding Custom labels
@Chaitanya31612 I am closing this issue. Raise a new issue for this as discussed in your PR comments. Also, let me know if I have assigned you the right tags for the open source program you are in. I am not sure whether you are in SWoC or DWoC

I am in SWOC, not in DWOC. Are there any criteria on how pr will be evaluated/scored?

No, I was just asking so that I can make sure that I can award you for all the programs you are in


Use reactive framework for popup and options

It can make development easier because we can much reuse components.
We should use React or Vue.

This would be too expensive to rewrite all this stuff.


Protect LLVM library calls with a global lock

also refactored some exports to avoid importing LLVM.Internal

Workaround until #488 can be worked on

No significant changes for KEVM tests. Kontrol tests currently broken (when using its master) because names-as-id is missing

Test
jb-llvm-with-global-lock time
master-5976645 time
(jb-llvm-with-global-lock/master-5976645) time

erc20/hkg/transferFrom-failure-1-spec.k
27.23
40.48
0.6726778656126483

mcd/dsvalue-read-pass-summarize-spec.k
53.29
68.75
0.7751272727272727

mcd/dai-adduu-fail-rough-spec.k
48.32
58.38
0.8276807125727988

bihu/forwardToHotWallet-failure-2-spec.k
39.23
43.52
0.901424632352941

erc20/ds/allowance-spec.k
34.56
38.02
0.908995265649658

bihu/forwardToHotWallet-failure-3-spec.k
39.33
41.39
0.950229524039623

erc20/ds/transfer-failure-1-a-spec.k
26.45
27.62
0.9576393917451121

erc20/hkg/transfer-success-2-spec.k
24.83
25.87
0.9597989949748743

bihu/forwardToHotWallet-failure-1-spec.k
26.77
25.73
1.0404197434900893

mcd/end-subuu-pass-spec.k
148.93
134.93
1.1037575038909064

mcd/dai-symbol-pass-spec.k
63.47
54.54
1.1637330399706638

erc20/hkg/transferFrom-failure-2-spec.k
36.67
25.94
1.4136468774094064

TOTAL
569.0799999999999
585.1700000000001
0.972503716868602

Ran the reproduction script provided by @nwatson22 on slack , and it did not crash the server in several minutes (while the version from main does crash within seconds), with various errors).


Duplicated Code in Window::move_to_foreground() and Window::grab_focus()

Godot version
4.1.2.stable.mono
System information
Desktop
Issue description
The Window::move_to_foreground() and Window::grab_focus() methods in the Window class contain duplicated code that serves the same purpose.
void Window::move_to_foreground() {
	ERR_MAIN_THREAD_GUARD;
	if (embedder) {
		embedder->_sub_window_grab_focus(this);
	} else if (window_id != DisplayServer::INVALID_WINDOW_ID) {
		DisplayServer::get_singleton()->window_move_to_foreground(window_id);
	}
}

void Window::grab_focus() {
	ERR_MAIN_THREAD_GUARD;
	if (embedder) {
		embedder->_sub_window_grab_focus(this);
	} else if (window_id != DisplayServer::INVALID_WINDOW_ID) {
		DisplayServer::get_singleton()->window_move_to_foreground(window_id);
	}
}

Steps to reproduce
Open scene/main/window.cpp
Minimal reproduction project
not needed

I assume the correct solution would be to keep one of them and change all calls to the other method to the one kept; this leaves the question of which of these methods' name is a better fit for what it does - I believe grab_focus() to be the better one.

I did some quick code clone detection , I should point out that duplicate code is not rare, maybe we can do something about it.

@jsjtxietian maybe you could open an aggregate issue with all the duplicated code examples you found, the recently merged PR set a precedent on what we might do in similar situations.

maybe you could open an aggregate issue with all the duplicated code examples you found

Certainly but maybe not now as I'm a little busy recently. But I can share the tool I used: https://github.com/terryyin/lizard
Anyone interested in this can use this tool to investigate more.


Zondax -- Update Test Cases & Stored Interactions

Background
Zondax requires test cases for the transactions that will be included in ledger devices.
Since the cadence code for these transactions is being changed to support public keys to be included as hex encoded strings as transaction arguments, the test cases need to be updated accordingly.
The stored interactions for these transactions must also be updated accordingly.
Expected Outcomes

[ ] Test cases are update to show hex encoded strings as transaction arguments for public keys.
[ ] Stored interactions are updated.

cc: @caseyturnerarrington

@JeffreyDoyle as a part of this ticket, can you also do the following;

Juan asked for us to create some 'extreme case' test cases so we can ensure the breadth of test cases we are covering is large.


Add sign up page

Enter email address, enter password, send email that finalizes registration.

Issue closed. Sign up page needs redesign, but it works functionally.