Issue 1165 - Migrate the Maven layout provider tests to use the new annotations

Fixes #1165:

[x] ArtifactManagementServiceImplTest
[x] MavenMetadataExpirationSingleGroupCaseTest

@carlspring as per the travis build logs the following test is failing:
at org.carlspring.strongbox.providers.io.MavenMetadataExpirationProxyCaseTest.expiredProxyRepositoryMetadataPathShouldBeRefetched
But I have not made any changes to this test. Could you pls let me know if anything is required on my part to fix the failing build.

We will ignore this, as it fails intermittently. The test will have to be re-worked in a similar way, so that it can benefit from the annotations and then the random failure will (most-likely) go away.

The PR looks good to me, (with minor remarks)! Would you mind addressing them, so that I could merge this? Thanks! :)

Re-opening, (closed by accident!).

@yugander-krishan-singh ,
Would you mind rebasing your branch? The strongbox-web-integration-tests failed against it, because your branch doesn't have some of the latest changes.
Please, let me know, when you think it's ready for reviewing and merging! Thanks! :)

@carlspring I rebased and force-pushed but the build is still failing.

Travis build failed because of following test - at org.carlspring.strongbox.services.ArtifactManagementServiceImplTest.testConcurrentReadWrite but when I run this test locally it passed.

Jenkins build failed due to org.carlspring.strongbox.providers.io.MavenMetadataExpirationProxyCaseTest

I executed all the tests in ArtifactManagementServiceImplTest class and they all are passing. The test testConcurrentReadWrite which is failing in travis is also passing.

@yugander-krishan-singh,

Travis build failed because of following test - at org.carlspring.strongbox.services.ArtifactManagementServiceImplTest.testConcurrentReadWrite but when I run this test locally it passed.

As this is a test you're working on in this PR, I believe you'll have to figure out what's causing it to fail in Jenkins.

Jenkins build failed due to org.carlspring.strongbox.providers.io.MavenMetadataExpirationProxyCaseTest

Please, ignore this for now.

Jenkins build failed due to org.carlspring.strongbox.providers.io.MavenMetadataExpirationProxyCaseTest

I'm currently investigating this issue

I executed all the tests in ArtifactManagementServiceImplTest class and they all are passing. The test testConcurrentReadWrite which is failing in travis is also passing.

Running the single test is not good enough. There may be other tests (hopefully not, but possibly) affecting the outcome of your test. The goal of this task for re-working the tests is to clean them up in such a way that no two test cases share the same resources, or repositories and that each test properly cleans up after itself and is idempotent (is self-sufficient and can be run as many times as you like).

@fuss86 I went through the PR to see what is causing the Travis build failure and found out the following-
[ERROR]   ArtifactManagementServiceImplTest.testConcurrentReadWrite:614 Operation [read:1] content size don't match. ==> expected: <40000> but was: <0>
The same test is causing the Travis build failure in current PR also. Could you please let me know if you have investigated the above test failure?
Thanks

PR for Issue 1244

Hi @yugander-krishan-singh , thanks for the heads up. I haven't checked that failed test yet.

I've created #1248 for the ArtifactManagementServiceImplTest failures. The test is now temporarily @Disabled via #1246.

Hi @yugander-krishan-singh, could you please rebase and resolve the conflicts? Thanks!

@yugander-krishan-singh it looks like Travis is not picking up the changes in this PR for some reason. Could you please rebase and create a new PR? That should hopefully fix it.


I/swiftshader: lock failed: buffer of 640x480 too small for window of 480x640

Tried this app out of the box, without making any changes and the preview just keeps flickering & this message keeps popping up in the logcat.
I/swiftshader: lock failed: buffer of 640x480 too small for window of 480x640
This is being tried out on an emulator Nexus S Api 22

This sample has been migrated to a new location where we can accept Pull Requests (check README for more information).
As recommended by GitHub, we are closing all issues and pull requests now that this older repo will be archived.
If you still see this issue in the updated repo, please reopen the issue/PR there. Thank you!


Safehouse door upgrades

Edit the wording so it shows the complete amounts needed.
1st upgrade - 5 Planks and 5 Sheet Metal
2nd upgrade - 8 Planks and 8 Sheet Metal

Fixed in https://github.com/GamerSafer/ablockalypse/commit/a55eac7bf273c5640260485595b1448875ced135


Migrate EmojiPickerMenu to FlashList

Details

Migrating EmojiPickerMenu to FlashList for both Web and Mobile
Fixed Issues

$ https://github.com/Expensify/App/issues/30911
PROPOSAL:
Tests

Open emoji picker
Scroll the list
Press the emojis category on the top and verify it scrolls to the category
Change skin tone and verify it changed in the emoji list
Type "aaa" in search bar and verify no results message is displayed
Type "a" in search bar and verify filtered list scrolls

[x] Verify that no errors appear in the JS console

Offline tests

n/a
QA Steps

Open emoji picker
Scroll the list
Press the emojis category on the top and verify it scrolls to the category
Change skin tone and verify it changed in the emoji list
Type "aaa" in search bar and verify no results message is displayed
Type "a" in search bar and verify filtered list scrolls

[x] 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: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb 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 the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[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 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 the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[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.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/13985840/2902d724-2742-49dd-bb9c-a0e8de62f3b3

Android: mWeb Chrome

https://github.com/Expensify/App/assets/13985840/49f00a4e-c35b-4f5b-b397-0d000a286635

iOS: Native

https://github.com/Expensify/App/assets/13985840/da70eadf-31e6-4c5e-9536-54f3260bb499

iOS: mWeb Safari

https://github.com/Expensify/App/assets/13985840/1201562f-28ec-444c-90d7-58a72ade41d0

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/13985840/ec91e288-4aca-491b-8460-c66d6650870d

MacOS: Desktop

https://github.com/Expensify/App/assets/13985840/93677f6c-28bc-455f-8d30-5821674b6b47

Exception:
https://github.com/Expensify/App/assets/2590174/dacab996-5dda-4525-9fce-f2285c59d873

@cubuspl42 thanks for testing, I addressed both of your comments

hi @cubuspl42, did you have a chance to take another look on this PR?

@TMisiukiewicz I will; I have a personal situation that affects my capacity. Everything will be back to normal after Friday. Is this urgent or conflict-prone?

@cubuspl42 no worries, it can wait until you are back!

hi @cubuspl42, will you find some time to check this PR this week? 🙏

Please also merge main

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible 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 checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

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

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (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 the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[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] 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 verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[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] 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 the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[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 reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/2590174/17961475-ee11-42e0-8e27-c32e15638fba

Mobile Web - Chrome
https://github.com/Expensify/App/assets/2590174/a9273e00-87a3-4da1-869d-982623712124

Mobile Web - Safari
https://github.com/Expensify/App/assets/2590174/448cb4f2-0a46-439b-a1e1-851f48782015

Desktop

iOS
https://github.com/Expensify/App/assets/2590174/149efeca-d51c-45a6-bc85-5511ad389b50

Android
https://github.com/Expensify/App/assets/2590174/547eff39-d4b8-4bc5-82d7-056c500d1df8

main has been merged ✅

Conflicts and lint errors

@roryabraham done ✅

@roryabraham I applied all requested changes

Sorry I didn't review this earlier as I've had some unplanned ooo. Can you please resolve conflicts here?

Also, I strongly recommend using a file comparison tool (I use WebStorm), to look at the diff between EmojiPickerMenu/index.js and EmojiPickerMenu/index.native.js side-by-side, and iteratively review the diff between the files to see what differences are necessary and what can be potentially DRYed up:

@roryabraham Good catch with the repeated code. I'll start using the IDE diffing trick 👍

@roryabraham thanks for your valuable comments 🙌 I already applied most of them.
I did an investigation about useArrowKeyFocusManager, however it currently supports only ArrowUp and ArrowDown, and we need the ArrowLeft and ArrowRight as well. I'd say for now we should stick to the current implementation, because mixing both implementations would be confusing. We could think of adding  ArrowLeft and ArrowRight to useArrowKeyFocusManager, but I'd treat it as something to tackle separately from this task.
I'll do another round of review what could be possibly DRYed up tomorrow - will let you know once it's done

@roryabraham it's ready for review

Thanks for all the work here and sorry for the delay in re-reviewing @TMisiukiewicz, jumping back into this PR review now

@roryabraham thanks, applied all the necessary changes! Additionally, when testing I noticed that there is a barely-visible flicker of the list when opening the Emoji picker. It's probably caused by missing estimatedListSize prop in the Flashlist. I'll investigate and fix it on Monday

@TMisiukiewicz Please try not to force-push in general while working on code for Expensify as it makes things harder to review. Feel free to just merge main into your branch rather than rebasing

@roryabraham thanks for your eagle-eye reviews! Really appreciate all the stuff you keep findind and your knowledge of the project. I addressed your comments and fixed the flicker on the initial list render I mentioned on Friday

@cubuspl42 there have been a lot of changes here since your last review. Can you please review and test again before I merge this? I see the reviewer checklist is failing, maybe try again with a fresh checklist?

thanks for your review @roryabraham! Can we create an issue for supporting ArrowLeft and ArrowRight in useArrowKeyFocusManager? Christmas break is very close and just want to make sure once we are back from holidays, me or other Callstack folk could pick this up

@TMisiukiewicz Would you merge main? We're >600 commits behind

@cubuspl42 whoops that's a pretty big number, updated!

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible 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 checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (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 the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[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] 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 verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[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] 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(theme.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 the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[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 reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/2590174/17961475-ee11-42e0-8e27-c32e15638fba

Mobile Web - Chrome
https://github.com/Expensify/App/assets/2590174/a9273e00-87a3-4da1-869d-982623712124

Mobile Web - Safari
https://github.com/Expensify/App/assets/2590174/448cb4f2-0a46-439b-a1e1-851f48782015

Desktop

iOS
https://github.com/Expensify/App/assets/2590174/149efeca-d51c-45a6-bc85-5511ad389b50

Android
https://github.com/Expensify/App/assets/2590174/547eff39-d4b8-4bc5-82d7-056c500d1df8

: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/roryabraham in version: 1.4.17-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
cancelled 🔪

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.4.17-8 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


Add support for generating valid dates

What: Add support for dates
Why: Dates are quite essentials in APIs
How: By generating Dates in the same way as DateTime
Checklist:

[ ] Documentation added to the README.md OR link to PR on https://github.com/specmatic/specmatic-documentation
[x] Tests
[x] Sonar Quality Gate

Closed in favour of #652


feat(risedev): add some configs for monitoring

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

Current dependencies on/for this PR:

#15354  👈
#14465
#14172
#15104
#15103
main

This stack of pull requests is managed by Graphite.

ping @BugenZhao


Some warnings with CallM genomes

Hi, zjshi, I ran the CallM with this cmd:
CallM genomes --fna-dir {} --out-dir {} --threads {} --snp-freq 0.01 --min-prev 0.9'.format(fna_dir,out_dir,'10')
It has completely done but with several warnings:
[Warning] Total number of genomes (10) < min. number of genomes required for effective SNP calling with MAF 0.01 (100)
[Warning] Skip tag genome selection, all genomes will be used

...
***/CallM/snps_io/align_assembly.py:228: FutureWarning: comparison to `None` will result in an elementwise object comparison in the future.
  freq_row[snp_freqs[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:228: VisibleDeprecationWarning: using a boolean instead of an integer will result in an error in the future
  freq_row[snp_freqs[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:231: FutureWarning: comparison to `None` will result in an elementwise object comparison in the future.
  snp_ref_prob_row[snp_ref_prob_mat[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:231: VisibleDeprecationWarning: using a boolean instead of an integer will result in an error in the future
  snp_ref_prob_row[snp_ref_prob_mat[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:234: FutureWarning: comparison to `None` will result in an elementwise object comparison in the future.
  snp_alt_prob_row[snp_alt_prob_mat[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:234: VisibleDeprecationWarning: using a boolean instead of an integer will result in an error in the future
  snp_alt_prob_row[snp_alt_prob_mat[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:237: FutureWarning: comparison to `None` will result in an elementwise object comparison in the future.
  snp_third_prob_row[snp_third_prob_mat[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:237: VisibleDeprecationWarning: using a boolean instead of an integer will result in an error in the future
  snp_third_prob_row[snp_third_prob_mat[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:240: FutureWarning: comparison to `None` will result in an elementwise object comparison in the future.
  snp_forth_prob_row[snp_forth_prob_mat[:,i] == None] = -1
***/CallM/snps_io/align_assembly.py:240: VisibleDeprecationWarning: using a boolean instead of an integer will result in an error in the future
  snp_forth_prob_row[snp_forth_prob_mat[:,i] == None] = -1

My questions:

I want to use CallM results as the input of GT_Pro database building, will these warnings cause any error in the following GT_Pro build tasks?
GT_Pro build needs the file named msa.fa, but CallM outputs the file named tag_msa.fna. Can tag_msa.fna be used as the msa.fa in GT_Pro database building?

Hi wjj666, thanks for using CallM! By default, CallM will rely on the MAF(--snp-freq) reduce the input genomes to a minimal tag set. For example, at least 100 genomes are required to make 1% MAF effective. If there are only 10 genomes, the lowest MAF of a SNP it possibly can go is 10%, i.e., only one genome has an alternative allele. In your case, perhaps consider using --keep-redundancy switch, and all genomes will be used for sure. For species with >100 genomes, sure tag_msa.fna can replace msa.fa for GT_Pro database building. But please be aware that only tag genomes would be used. Let me know please if you have follow-up questions.


Running Torus inside docker container

I'm trying to torus run inside a Docker container. Confusingly it has worked once and otherwise failed without any changes to the code/setup. The error I get back changes between runs too so I suspect there might be a race condition.
The error tends to be one of the following... (the first is the most common)
Attempting to login with token id: [machine-token-id]
Error fetching secrets.

Login using 'login' or create an account using 'signup'.

Have I installed Torus into the container correctly? The Dockerfile I'm using looks something like this...
 Looking at the docs it seems torus machines are ideal for this use case.
torus -v
CLI         0.24.1
Daemon      0.24.1
Registry    0.20.0

torus debug
Unauthorized: invalid login

~/.torus/daemon.logs
2017/06/09 10:41:27 v0.24.1 of the Daemon is now listening on /root/.torus/daemon.socket
2017/06/09 10:41:27 last update check: 0001-01-01 00:00:00 +0000 UTC
2017/06/09 10:41:27 GET /v1/version
2017/06/09 10:41:27 GET /v1/session
2017/06/09 10:41:28 POST /v1/login
2017/06/09 10:41:28 GET /v1/self
2017/06/09 10:41:28 check updates
2017/06/09 10:42:44 v0.24.1 of the Daemon is now listening on /root/.torus/daemon.socket
2017/06/09 10:42:44 cannot get last update: parsing time "" as "2006-01-02T15:04:05Z07:00": cannot parse "" as "2006"
2017/06/09 10:42:44 last update check: 0001-01-01 00:00:00 +0000 UTC
2017/06/09 10:42:44 GET /v1/version
2017/06/09 10:42:44 GET /v1/version
2017/06/09 10:42:44 GET /proxy/version
2017/06/09 10:42:44 GET /v1/updates
2017/06/09 10:42:45 check updates
2017/06/09 10:43:31 v0.24.1 of the Daemon is now listening on /root/.torus/daemon.socket
2017/06/09 10:43:31 cannot get last update: parsing time "" as "2006-01-02T15:04:05Z07:00": cannot parse "" as "2006"
2017/06/09 10:43:31 last update check: 0001-01-01 00:00:00 +0000 UTC
2017/06/09 10:43:31 GET /v1/version
2017/06/09 10:43:32 GET /v1/self
2017/06/09 10:43:33 check updates

It looks like the Torus daemon is stopping and starting, losing the login session. Is it possible that the daemon and cli versions don't line up?
Relevant Issue: https://github.com/manifoldco/torus-cli/issues/257

Thanks for this @ianlivingstone, I checked the CLI and daemon versions and they were both at 0.24.1.
I have found a temporary solution however. I was using the compact Alpine linux distro as my base image. When switching to the non-Alpine image (Ubuntu I think) it seems to run the daemon just fine.
This change has increased the image size by 500% so it's not ideal. The image readme suggests the following which may be relevant...

The main caveat to note is that it does use musl libc instead of glibc and friends, so certain software might run into issues depending on the depth of their libc requirements.

Does torus depend on "glibc and friends" or is there a way to get it working using musl libc?

Does torus depend on "glibc and friends" or is there a way to get it working using musl libc?

Nope! but in this case, it does need system ca certificates, which is why it was failing for you. A quick workaround would be to apk add --no-cache ca-certificates before running.
There are two bugs here though that should be fixed:

When checking for updates, the client attempts to use the http response before seeing if there is an error: https://github.com/manifoldco/torus-cli/blob/master/daemon/updates/updates.go#L236
The updates check call uses the default http client, rather than using one that uses the included CA certificate bundle

Thanks @jbowes - sadly adding ca-certificates didn't seem to help. I'm going to stick with the Ubuntu base image for now and just bite the bullet on the extra memory/storage requirements. Cheers for your help


Wrong path for eslintrc extendable main file when generating new library

🐞 Bug report
Command (mark with an x)

[ ] new
[ ] build
[ ] serve
[ ] test
[ ] e2e
[x] generate
[ ] add
[ ] update
[ ] lint
[ ] extract-i18n
[ ] run
[ ] config
[ ] help
[ ] version
[ ] doc

Is this a regression?

No, this bug is related to the eslint integration
Description
When generating a new library using a composed name (eg: @company/package), the "extends" property in the eslintrc.json file becomes ../../.eslintrc.json instead of ../../../eslintrc.json.
🔬 Minimal Reproduction

Create a new project using ng new --collection=@angular-eslint/schematics --strict=true, generate a new library using ng g library @company/package
🔥 Exception or Error

Linting<EMAIL_ADDRESS>An unhandled exception occurred: Failed to load config "../../.eslintrc.json" to extend from.
Referenced from: /home/guilherme/projects/bibliotecas/projects/sb/file-upload/.eslintrc.json
See "/tmp/ng-ck7Pfb/angular-errors.log" for further details.

🌍 Your Environment

Angular CLI: 11.1.1
Node: 12.18.3
OS: linux x64

Angular: 11.1.0
... animations, cdk, common, compiler, compiler-cli, core, forms
... language-service, material, platform-browser
... platform-browser-dynamic, router
Ivy Workspace: Yes

Package                            Version
------------------------------------------------------------
@angular-devkit/architect          0.1101.1
@angular-devkit/build-angular      0.1101.1
@angular-devkit/build-ng-packagr   0.1002.0
@angular-devkit/core               11.1.1
@angular-devkit/schematics         11.1.1
@angular/cli                       11.1.1
@schematics/angular                11.1.1
@schematics/update                 0.1101.1
ng-packagr                         11.1.2
rxjs                               6.6.3
typescript                         4.1.3

Anything else relevant?

I'm sorry, but this issue is not caused by Angular CLI. Please contact the author(s) of the @angular-eslint/schematics project or file an issue on their issue tracker.

I'm sorry, but this issue is not caused by Angular CLI. Please contact the author(s) of the @angular-eslint/schematics project or file an issue on their issue tracker.


[CodingStandard] fqn class names to use statements

Inspire at umpirsky

https://github.com/umpirsky/Symfony-Upgrade-Fixer/blob/master/src/Symfony/Upgrade/Fixer/AbstractFixer.php

Make use of Slevomat partial detection:


Did u use discord pls give yyour tag and id

Pls give me ur discord tag and username

Pls give me ur discord tag and username

Mine was Arie#4060


Don't Merge! PR real time test for source branch full build

Docs Build status updates of commit 29173b1:
:clock10: Pending: waiting for processors (32 builds ahead of you)
:warning: Docs Build is busy, currently there are 32 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 29173b1:
:clock10: Full build: the average full build time is 7 min(s) 36 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit 29173b1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


inference is not generalizing in a complete way

Reading the code with @lcnr and @compiler-errors we found that...

the "occurs check" in the inference code is overly simplistic when it comes to aliases
see also rust-lang/trait-system-refactor-initiative#8

General sketch of the algorithm we want

walk down the non-variable type T and look for aliases
if the alias references a variable bound in T, then return "ambiguous, can't make progress"
otherwise, replace it with an inference variable (and a new resulting goal)

@rustbot assign @lcnr

@rustbot assign @lcnr

🎉


Stop extraneous fetch of belongsTo when model is empty

Hi,
I noticed a bug where if you have linkage data with no attributes passed through on a server request, e.g:
{
   data: {
      ...
     relationships: {
       other-model: {
         data: {
           type: 'my-other-model',
           id: 123
         }
       }
       ...
     }
 }

the sticky code will cause a server request for every single one of these properties, as it calls get on the empty object.
I've put a temporary fix in that works for me, by inspecting if it's empty before doing anything else. No idea if you want to keep this or find some other way of dealing with this problem, but I figured I'd send it through in case it's useful.
Best,
Hugh

@nagirrab thanks for the PR. I made some changes avoiding using internal APIs, which should hopefully fix your bug. Released in v0.1.6. Let me know how it goes 😃

Works perfectly, thanks! I'll close this guy. Thanks for the snappy response.

@nagirrab thanks for the follow-up!


Rails 5 boilerplate

@flere 👍

✅ Commit 2d43c60 has been approved by @tarcieri

⌛Testing commit 2d43c60 with merge 512b5a1

🏁 2d43c60 has passed the tests and been merged to master as 512b5a1


refactor(client): move lazy evaluation releated code to "client/lazy.py"

Pull Request Test Coverage Report for Build 921010877

151 of 155 (97.42%)  changed or added relevant lines in 6 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 85.535%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

tensorbay/client/lazy.py
143
147
97.28%

Totals

Change from base Build 920913795:
0.02%

Covered Lines:
4849

Relevant Lines:
5669

💛  - Coveralls


Add character/char data type and fix alias for byte

Summary of the changes / Why this improves CrateDB
The single-byte byte data type was falsely alias with char while it should have aliased with "char" (Note the double quotes).

See also https://www.postgresql.org/docs/14/datatype-character.html and specially https://www.postgresql.org/docs/14/datatype-character.html#DATATYPE-CHARACTER-SPECIAL-TABLE.
Fixes #12512.
Checklist

[x] Added an entry in CHANGES.txt for user facing changes
[x] Updated documentation & sql_features table for user facing changes
[x] Touched code is covered by tests
[x] CLA is signed
[x] This does not contain breaking changes, or if it does:

It is released within a major release
It is recorded in CHANGES.txt
It was marked as deprecated in an earlier release if possible
You've thought about the consequences and other components are adapted
(E.g. AdminUI)

I've removed review request for now, since 1 test fails now (due some recent changes in my branch). I'll look into this asap.

retest this please, unrelated kill test failures

Oh I think we also need to extend the list here: https://github.com/crate/crate/blob/aefd4a221d835f35a917cdbf4bc2249daf010a0a/docs/interfaces/http.rst#L239-L288

Oh I think we also need to extend the list here:

ah thanks, good catch!


Is there any code for tensorflow version 2 or pytorch version?

Sorry, we now have no plan to convert SGG to tf2.0+ or Pytorch version.


TODO: support int and float seconds since epoch

Support timestamps such as those in this example:
\x1b[38;5;117m[1694412570.262003500|INFO](process_name) \x1b[0mSomething interesting happened!
\x1b[1;31m[1694412660.108488351|ERROR](process_name) \x1b[0mSomething bad happened!

Detect int and float values. Detect timestamp in seconds, milliseconds, and maybe nanoseconds (inferred from order of magnitude of the parsed number).

Seconds and milliseconds since epoch times will be in 0.2.0

Released in 0.2.0


Stop overwriting Rad Enable state

The firmware previously set the radiometry to ENABLE every time
Y16 streaming started. The new behavior is to leave radiometry
alone and to turn TLinear off when rgb888 starts and restore
the TLinear state when rgb888 stops.

Thanks for taking the time to review this. If you look at what it's doing, it clears the cache when it sets the value, so it only sets the value once (when closing the rgb888 stream). Thus we don't need to worry about restoring the cache multiple times. I've verified this experimentally.

Turn on TLinear using the extension unit
Turn on rgb stream
Read TLinear (it is off)
Turn off rgb stream
Read TLinear (it is on)
Turn off TLinear using the extension unit
Toggle any stream (rgb, y16, etc)
Read TLinear (it is off, as hoped)

Per is arguing that TLinear is one of a significant number of parameters he might want to set, and that having a frame format for each combination of parameter-states would be overwhelming and hard to access.
Does this solution seem reasonable in light of the fact that it only restores the cached value once?

OK, I missed the part where this thing cleared the cache after restoring it, which meets my ask -- to push altered state only around rgb888, and do it every time. I looked this over a few of times and missed that, and I think that speaks to my point about this being a little confusing.
I agree with your instinct to keep this simple, and I fully support that.
My ask is simply to make it a little easier to read and understand, not to make this any more generic. How about this: instead of overloading the cached_TLinear_state variable with the cache validity, simply keep track of this variable separately. I know it introduces yet another global, but it should make this already confusing state machine a bit easier to grok.

I'll push an update

Should I add a field indicating what mode (y16, rgb888, etc) we're coming from too?

I don't think so, at least not now. It seems sufficient to be able to say when streaming ends "there's stuff in the cache, restore it", and until we need to make a determination based on mode which values to restore, that's probably overkill.

Pushed

That's much easier to understand, thanks for that change.
Now I wonder, would this get called the first time into the loop and set the uninitialized cache value?

What do you think of this?

Looks good. Merging into development.

Thanks Sheyne!


Update roadmap for Q1 2024

This updates the roadmap for quarter 1 (April to June) 2024. It has been produced in collaboration with team leads and our service owner, @psd.
It contains what we'll be working on over the next 3 months. My intention is to update this roadmap once a month, or sooner where necessary.
Please add comments or suggestions for anything I've missed that needs adding or anything that needs tweaking.

@stevenjmesser looks good to me. For the standards that we're working on we could link to the draft specifications:

planning applications
development plans

Thanks @mattlucht! Sorry if I'm being dim but where would you add a link to development plans?

Thanks @mattlucht! Sorry if I'm being dim but where would you add a link to development plans?

Ah sorry, I wasn’t clear! My bad. Local plans are a type of development plan. So the specification is development-plan which will include local plans

Should be done now, @mattlucht, take another look if ya can.

Should be done now, @mattlucht, take another look if ya can.

Nice one!


[JavaToolInstallerV0] Update dependencies to get rid of vulnerabilities

Required Information
Entering this information will route you directly to the right team and expedite traction.
Question, Bug, or Feature?
Type: Bug
Enter Task Name: JavaToolInstallerV0
Issue Description
This task dependency on "azure-pipelines-tasks-utility-common" that has critical vulnerability in "azure-pipelines-tool-lib > typed-rest-client > underscore".

Please update this dependency to the latest version.
This vulnerability was fixed in PR.
These tasks have dependency on "azure-pipelines-tasks-azure-arm-rest-v2" that has critical vulnerability in "typed-rest-client > underscore".

Please update this dependency to latest version.
This vulnerability was fixed in PR.
Error logs

                       === npm audit security report ===

# Run  npm install<EMAIL_ADDRESS>to resolve 1 vulnerability

  High            Arbitrary Code Execution

  Package         underscore

  Dependency of   azure-pipelines-tasks-azure-arm-rest-v2

  Path            azure-pipelines-tasks-azure-arm-rest-v2 > typed-rest-client
                  > underscore

  More info       https://npmjs.com/advisories/1674

# Run  npm install<EMAIL_ADDRESS>to resolve 1 vulnerability

  High            Arbitrary Code Execution

  Package         underscore

  Dependency of   typed-rest-client

  Path            typed-rest-client > underscore

  More info       https://npmjs.com/advisories/1674

# Run  npm update azure-pipelines-tool-lib --depth 2  to resolve 1 vulnerability

  High            Arbitrary Code Execution

  Package         underscore

  Dependency of   azure-pipelines-tasks-utility-common

  Path            azure-pipelines-tasks-utility-common >
                  azure-pipelines-tool-lib > typed-rest-client > underscore

  More info       https://npmjs.com/advisories/1674

# Run  npm update typed-rest-client --depth 2  to resolve 1 vulnerability

  High            Arbitrary Code Execution

  Package         underscore

  Dependency of   azure-pipelines-tool-lib

  Path            azure-pipelines-tool-lib > typed-rest-client > underscore

  More info       https://npmjs.com/advisories/1674

# Run  npm update path-parse --depth 7  to resolve 7 vulnerabilities

  Moderate        Regular Expression Denial of Service in path-parse

  Package         path-parse

  Dependency of   azp-tasks-az-blobstorage-provider-v2

  Path            azp-tasks-az-blobstorage-provider-v2 > artifact-engine >
                  azure-pipelines-task-lib > shelljs > rechoir > resolve >
                  path-parse

  More info       https://npmjs.com/advisories/1773

  Moderate        Regular Expression Denial of Service in path-parse

  Package         path-parse

  Dependency of   azp-tasks-az-blobstorage-provider-v2

  Path            azp-tasks-az-blobstorage-provider-v2 >
                  azure-pipelines-task-lib > shelljs > rechoir > resolve >
                  path-parse

  More info       https://npmjs.com/advisories/1773

  Moderate        Regular Expression Denial of Service in path-parse

  Package         path-parse

  Dependency of   azure-pipelines-task-lib

  Path            azure-pipelines-task-lib > shelljs > rechoir > resolve >
                  path-parse

  More info       https://npmjs.com/advisories/1773

  Moderate        Regular Expression Denial of Service in path-parse

  Package         path-parse

  Dependency of   azure-pipelines-tasks-azure-arm-rest-v2

  Path            azure-pipelines-tasks-azure-arm-rest-v2 >
                  azure-pipelines-task-lib > shelljs > rechoir > resolve >
                  path-parse

  More info       https://npmjs.com/advisories/1773

  Moderate        Regular Expression Denial of Service in path-parse

  Package         path-parse

  Dependency of   azure-pipelines-tasks-utility-common

  Path            azure-pipelines-tasks-utility-common >
                  azure-pipelines-task-lib > shelljs > rechoir > resolve >
                  path-parse

  More info       https://npmjs.com/advisories/1773

  Moderate        Regular Expression Denial of Service in path-parse

  Package         path-parse

  Dependency of   azure-pipelines-tasks-utility-common

  Path            azure-pipelines-tasks-utility-common >
                  azure-pipelines-tool-lib > azure-pipelines-task-lib >
                  shelljs > rechoir > resolve > path-parse

  More info       https://npmjs.com/advisories/1773

  Moderate        Regular Expression Denial of Service in path-parse

  Package         path-parse

  Dependency of   azure-pipelines-tool-lib

  Path            azure-pipelines-tool-lib > azure-pipelines-task-lib >
                  shelljs > rechoir > resolve > path-parse

  More info       https://npmjs.com/advisories/1773

                                 Manual Review
             Some vulnerabilities require your attention to resolve

          Visit https://go.npm.me/audit-guide for additional guidance

  Moderate        Prototype Pollution

  Package         hoek

  Patched in      > 4.2.0 < 5.0.0 || >= 5.0.3

  Dependency of   azure-pipelines-tasks-azure-arm-rest-v2

  Path            azure-pipelines-tasks-azure-arm-rest-v2 > jsonwebtoken > joi
                  > hoek

  More info       https://npmjs.com/advisories/566

  Moderate        Prototype Pollution

  Package         hoek

  Patched in      > 4.2.0 < 5.0.0 || >= 5.0.3

  Dependency of   azure-pipelines-tasks-azure-arm-rest-v2

  Path            azure-pipelines-tasks-azure-arm-rest-v2 > jsonwebtoken > joi
                  > topo > hoek

  More info       https://npmjs.com/advisories/566

found 13 vulnerabilities (9 moderate, 4 high) in 217 scanned packages
  run `npm audit fix` to fix 11 of them.
  2 vulnerabilities require manual review. See the full report for details.

Created PR: https://github.com/microsoft/azure-pipelines-tasks/pull/15215


No API generated when used with Fastlane.swift

As per documentation after adding a plugin Fastlane will automatically generate the corresponding API and make it available in fastlane/swift/Plugins.swift.
However, for fastlane-plugin-firebase_management no API's are generated.

I don't think this is a problem of this specific plugin 🤔 Does it work well for other plugins?

I’ve tried fastlane-plugin-file_manager and apis were generated correctly.


docs: add Metalyoung to showcase

Pre-flight checklist

[x] I have read the Contributing Guidelines on pull requests.
[ ] If this is a code change: I have written unit tests and/or added dogfooding pages to fully verify the new behavior.
[ ] If this is a new API or substantial change: the PR has an accompanying issue (closes #0000) and the maintainers have approved on my working plan.

Motivation
Add https://www.metalyoung.com to showcase.
Test Plan

N/A
Related issues/PRs

N/A

谢谢~


Fixed asset sort to transferable balance

#8692t8mcn

Task linked: CU-8692t8mcn Android. Apply sort tokens by fiat value


git clone error

A nice work.
However, it seems that i got a trouble when clone this project. And the  error is as follows:
Cloning into 'external/eigen'...
remote: A repository for this project does not exist yet.
fatal: repository 'https://gitlab.com/libeigen/eigen.git/' not found

There appears to be some temporary issue with Eigen on GitLab which should be resolved soon: https://gitlab.com/libeigen/eigen/-/issues/2336.


Failure by trying upload iphone crash ips file

Trying to upload ips file get the next exception:
/bin/bugsnag-upload-report:110:in `strptime': no implicit conversion of nil into String (TypeError)

	from ./apple-crash-report-uploader-master/bin/bugsnag-upload-report:110:in 'format'

	from ./apple-crash-report-uploader-master/bin/bugsnag-upload-report:21:in 'send_report'

	from ./apple-crash-report-uploader-master/bin/bugsnag-upload-report:323:in '<main>'

Below is the top of ips file
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Incident Identifier: 674C1AFF-7DF6-4430-81CD-E450C7792E9F
Beta Identifier:     BC11B0DA-5BFD-4431-A20D-6751720D1A60
Hardware Model:      iPhone14,5
Process:             ****** [29520]
Path:                /private/var/containers/Bundle/Application/A3AEDCCD-4E39-4CEE-9EA7-6E7000D7A43C/****.app/****
Identifier:          ****
Version:             4.4.0 (7)
AppStoreTools:       14E221
AppVariant:          1:iPhone14,5:16
Beta:                YES
Code Type:           ARM-64 (Native)
Role:                unknown
Parent Process:      launchd [1]
Coalition:           **** [4096]

Date/Time:           2023-05-17 19:50:30.3762 +0100
Launch Time:         2023-05-17 18:42:27.2514 +0100
OS Version:          iPhone OS 16.4.1 (20E772520a)
Release Type:        User
Baseband Version:    2.55.00
Report Version:      104

Exception Type:  EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Termination Reason: RUNNINGBOARD<PHONE_NUMBER>

Triggered by Thread:  0

Sure, already sent


Fatal error: Class 'JMS\Payment\CoreBundle\JMSPaymentCoreBundle' not found in /home/sairuskvk/mywebs/gmmo/globimmo/app/AppKernel.php on line 43

Fatal error: Class 'JMS\Payment\CoreBundle\JMSPaymentCoreBundle' not found in /home/sairuskvk/mywebs/gmmo/globimmo/app/AppKernel.php on line 43 Call Stack: 0.1421 637680 1. {main}() /home/sairuskvk/mywebs/gmmo/globimmo/web/app_dev.php:0 2.4923 2323952 2. Symfony\Component\HttpKernel\Kernel->handle(???, ???, ???) /home/sairuskvk/mywebs/gmmo/globimmo/web/app_dev.php:20 2.4923 2324112 3. Symfony\Component\HttpKernel\Kernel->boot() /home/sairuskvk/mywebs/gmmo/globimmo/app/bootstrap.php.cache:544 2.4923 2324112 4. Symfony\Component\HttpKernel\Kernel->initializeBundles() /home/sairuskvk/mywebs/gmmo/globimmo/app/bootstrap.php.cache:511 2.4923 2325048 5. AppKernel->registerBundles() /home/sairuskvk/mywebs/gmmo/globimmo/app/bootstrap.php.cache:717
I have my JMSPaymentCoreBundle() class stored in vendor/bundles/JMS/Payment/Corebundle/
in my AppKernel.php i registred my bundle as: new JMS\Payment\CoreBundle\JMSPaymentCoreBundle(),
in autload.php i have properly registered namespace as: 'JMS'              => DIR.'/../vendor/bundles',
i also use another JMS bundles without any problem
i tried to move this bundle to src/JMS/Payment/CoreBundle/ than JMSPaymentCoreBundle class was found but PHP was complaining about  JMS\Payment\CoreBundle\DependencyInjection\Compiler\AddPaymentPluginsPass() class was not found.
It's really weird because even my IDE(netbeans) code completion can see JMSPaymentCoreBundle() class and /JMS/Payment/Corebundle/ namespace.

thx for your quick reply but i mispelled it twice here(sry for that) ... in my application is properly named CoreBundle


[Component Proposal] MapComponent exploration

Summary
Component containing mapping capabilities. ~More TBD coming from the dashboarding guild~
Outcomes from dashboard guild have been published here. For this issue we need to see what pieces are common among map providers like Mapbox, Esri.com,
Related
Internal Watson-IoT/pal-tracking#222
Internal Watson-IoT/pal-tracking#481

TBD depending on outcomes from the dashboarding guild.
I'm going to broaden this issue until we hear from the dashboard guild as to two use cases:

An interactive map placed in a card to be put on a dashboard
An interactive map that is larger, potentially full screen, with many data points/layers/etc.

@davidicus did the dashboard guild ever provide more guidance on the 2 use cases?

The outcomes from the design map exploration have been published on our internal site here

For more background on this item, the MAS team would like to understand what the Health team did for Maps in Graphite for the upcoming MAS v8.4 release to ultimately determine how to leverage the design and component.

May need to look into open layers implementation. Check with Ron Baker for the use cases for this specific technology

Health and Predict designs:
Prototype
https://ibm.invisionapp.com/share/APNZ6UW9Z5B#/319820201_APM_Map_-_Map_-_Cluster_Disabled
Flow
https://ibm.invisionapp.com/share/APNZ6UW9Z5B#/319900432_Grid_And_Map
Environment
http://health-team31.rtp.raleigh.ibm.com:9080/maximo_123/oslc/graphite/relengineer/index.html#/
Sketch files
https://ibm.box.com/s/k1uzysok8shrpxypnpe2a91xvkx5byba
These were shared by Steven (stevench@cn.ibm.com).

Exploration is complete for now. Going to track implementation of the component in #2157. The PAL will only be able to provide overlay components that each map provider can wire up to control the map. #2157 will include stories with at least two implementations from MapBox and Openlayers.


Fix small semantic issue in docs

Just a quick verbiage change. My first contribution to the clojurescript community? Officially a legend.

Thanks, Legend :-)

Thanks, Legend :-)


Switch some log message to debug level

To avoid mixing output useful for debugging and developing and output shown to end-user.

thanks i was thinking the same thing.


Do not work with quarto since version field has been added

The  commit e39e7b61cbddb32d0726d2c18d8e47c77c954022 changed the way diagram.lua  returns at the end. Since this commit quarto does not run the filter when used.

Thanks for the report. I added a test to make sure this won't happen again.

Fixed. Thanks @tarleb


Added -c /--config option to xrdp

This is the third and last PR in a series to implement #1588  (separate config file for xrdp and sesman).
The other two are for sesman (#1650) and chansrv (#1635), and are largely independent of this PR. This PR affects xrdp and libxrdp.
This PR makes the following changes:-
common/log.c
Opened the .ini file read-only with g_file_open_ex rather than g_file_open. Without this change, the logging code creates an empty ini file if one wasn't present, which is probably not what is required!
xrdp.c

A few methods were made static where not required to be global
File run through astyle which found a few issues.
A few hard-coded string value sizes have been removed.
local variable no_daemon replaced with daemon to avoid double-negatives (i.e. !no_daemon)

xrdp (other files)

Manpage updated
Other changes made to remove hard-coded references to the location of xrdp.ini

libxrdp

Extra parameter added to libxrdp_init() which allows the location of xrdp.ini to be specified for the session. NULL can be specified for this parameter to implement the existing behaviour with the default file.

@matt335672  Hi, it's been a long time.  Overall, it looks good to me. Let's ship it if you're sure it works.

Hi @metalefty - good to hear from you.
Yes, I'm happy with it - I just wanted you to check it before a merge. I'll do that then.
The PR I'd really like to see merged in is #1633. I'm happy with it, but until it's merged it's acting as a bit of a blocker. I've got other changes to chansrv which need to be submitted but I don't want to do so until the logging is stable. I'd be grateful if you could take a look at it when you're able.
Thanks,

Just find a minor issue around libxrdp initialisation. I'll fix it and re-test thoroughly before I merge.


[$1000] LOW [W4 Scan Receipts] LHN shows user paid $0.00 when sending first money request via Scan

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

As userA, request money from userB via Scan
Notice that the LHN shows <user> paid $0.00

Expected Result:
The LHN should show Scan in progress
Actual Result:
LHN says <user> paid $0.00
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Version Number:
Reproducible in staging?:
Reproducible in production?:
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
Expensify/Expensify Issue URL:
Issue reported by:
Slack conversation:
View all open jobs on GitHub

Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~015c1a629214ef23ce
Upwork Job ID:<PHONE_NUMBER>880183808
Last Price Increase: 2023-08-23

Proposal
Please re-state the problem that we are trying to solve in this issue.
LHN shows user paid $0.00 when sending first money request via Scan
What is the root cause of that problem?
getMoneyRequestReportName function doesn't have check for scanning receipts.
What changes do you think we should make in order to solve the problem?
Add the below code to show the correct status.
// eslint-disable-next-line no-use-before-define
const transactionsWithReceipts = getTransactionsWithReceipts(report.reportID);
if (_.some(transactionsWithReceipts, (transaction) => TransactionUtils.isReceiptBeingScanned(transaction))) {
    return Localize.translate(undefined, 'iou.receiptScanning');
}

The above will show the message if any receipt in the Report is being scanned. To show only for the last message, we can only check with the lastReportAction. We can get that by passing it as argument or use methods such as getLastVisibleMessage (have further checks to see if its not a pending action like delete).
https://github.com/Expensify/App/assets/65986357/e600b0de-3e2b-40e8-a598-28bb303f2b79
Though it's not main issue listed here, i'd like to mention that if such message has to be shown somehwere else, like in the report where the IOU was created, similar logic can be used in functions like getLastMessageTextForReport.

@ygshbht proposal looks mostly good to me, but what is the first undefined param here Localize.translate(undefined, 'iou.receiptScanning');?

We can sort that out in the PR review. Assigning you to the issue.

@luacmartins  @thesahindia The PR is ready for review!

@luacmartins Can this be eligible for bonus? The PR was ready within a day of assignment. Then a slight delay due to change of C+. Post that some additional changes to other places were mentioend. And then once again. All these changes were done immediately within few hours or maximum a day due to timezone. Then some of those additional changes were reverted. At last, the PR ended up fixing issue different than the original one. I'd even say for such intensive back and forth and revisions, the base price should be doubled lol 😆. However, I'll respect whatever you deem fair

Hey @ygshbht! We certainly appreciate the speed in the response and I think your contributions have been great so far. While I understand there have been delays in getting the PR reviewed and discussions, these are part of the process and and we have accounted for them in deciding to pay a speed bonus. So in this case, I'd say that no bonus is applicable.
Again, I think you've been doing great work and I'm sure you'll be getting a lot of speed bonuses in other issues. Let's keep it up!

@luacmartins I understand. My primary concern has been the change of requirements throughout the process which was not outlined in the original issue. And as you see, the end result is different than what the original issue wanted to fix (title of LHN vs subtitle of LHN). Nevertheless, if you still feel that no bonus should be applicable, no problem with that

Post that some additional changes to other places were mentioend. And then once again. All these changes were done immediately within few hours or maximum a day due to timezone. Then some of those additional changes were reverted. At last, the PR ended up fixing issue different than the original one

payment due Friday

Payments

[ ] Reporting bonus - N/A
[ ] Contributor ($1k) - @ygshbht
[ ] C+ ($1k - paid via NewDot) - @allroundexperts

if no regressions, will pay @ygshbht on 9/15.

everyone is paid 👍

I think this will be covered by receipt regression tests once we create those. So no need to create a separate test for it.

I think we're good to close this issue. Thanks everyone!

Thanks @maddylewis. I have accepted the Upwork job offer

sorry for the delay @ygshbht - paid now!

No problem. Thanks!

$1,000 payment approved for @allroundexperts based on BZ summary.

👋 @ygshbht @allroundexperts @luacmartins looks like user paid $0.00 is still showing as the iouReport/expenseReport title in the LHN when the receipt scan is in progress.
https://github.com/Expensify/App/assets/16232057/a5e1716c-1e71-45c4-9950-fadfbda08a0f
If the expense/iouReport is viewed in the LHN while the only request on it is still scanning, it should be showing as:
iouReport
%displayName% owes $0.00
Receipt scan in progress...
expenseReport
%workspaceName% owes $0.00
Receipt scan in progress...

Can you guys help look into this please? I'm going to track this now in wave7.

@trjExpensify I think that was the inital job but had to revert due to change in requirements. You can follow the dicussion in the PR or read only from here. Unfortunately, there were confusions

@trjExpensify Sorry, I don't understand.
Here is the expectation and I asking for clarificaiton

Here's the response https://github.com/Expensify/App/pull/25906#issuecomment-1705480579

Right, and prior to the receipt scan completing then the title of the expenseReport (providing this is the only request on the report) is %workspaceName% owes $0.00?

That's what you see, don't you?
From what i infer, you probably want to show the Scan in progress.. message for LHN title if it's the first reportAction as the job title says?
Again, this was the basis on which I did/ undid the changes

https://github.com/Expensify/App/pull/25906#issuecomment-1705465391

Minor issues here and there happen. I regret if its a fault on my side.
If you want, I am more than willing to implement your request through a new job.

From what i infer, you probably want to show the Scan in progress.. message for LHN title if it's the first reportAction as the job title says?

Ah, so that's the diff. I'm not saying that. For the expenseReport...
The LHN title is: %workspaceName% owes $0.00
The LHN description is: Receipt scan in progress...
Right now the LHN title is user paid $0.00 which is incorrect. The LHN description is correct.

So instead of user paid $0.00, you want to show %workspaceName% owes $0.00? Owe instead of Pay?

Correct, owes, and more specifically given we have two types of reports in question here:
iouReport
%displayName% owes $0.00
Receipt scan in progress...
expenseReport
%workspaceName% owes $0.00
Receipt scan in progress...

Sorry, whats the iouReport from the below three? Is it the request view?

It's the expenseReport one.
If I request money from you, the expense goes on a report of type iou and therefore you owe me.
If I request money from my company on a workspace, the expense goes on a report of type expense therefore the workspace owes me.

Ok, so in iou, user owes and in expense workspace owes.
And does this needs to be shown under the condition that there's only one reportAction  and is being scanned or when the owe amount is 0?

Ok, so in iou, user owes and in expense workspace owes.

That's correct!

I can make that change and create a small PR with the commit or push it to this PR.

I don't understand the latter as an option because this PR has been deployed already. I also don't think this needs a new issue, so can we please create a follow-up PR linked to this issue to fix it?

@trjExpensify The owes is not limited to the first request or scan request right? Instead of showing user paid $$, you always want to show userB owes $$?

@trjExpensify Created PR

Okay, so with that now taken care of I think we can proceed to close this out for good now. Thanks everyone!


Allow modifications of the request authorization headers

This will let Avalanche make requests with custom authorization headers.

Looks like this PR was already approved?  Is this feature still of interest? If not, may close as stale.


Separate VS core to NPM package

offering the VueStorefront code as NPM package

is easier to install
easier to update
hide complexity
easier the API

Includes adding CLI

@andrzejewsky how about this one? :)


Support import?

I'm new on TypeScript, so sorry if it no make sense. But I like to know if to I import first I really need use the "reference" tag. If yes, why not have only a "import" or similar to do same, as a shortcut?
import "myfile.ts";
class Animal { ... }

Or:
include "myfile.ts";

Or even omitting ".ts":
import myfile;
import path.to.myfile;
import path with space.myfile; // or "path with space".myfile; or "path with space.myfile";

Are your using a module loader (e.g AMD or commonjs if you are writing a node app)? or will you be including this file as a script in your html?

This page hopefully will make it somewhat clearer: https://github.com/Microsoft/TypeScript/wiki/Modules
We need to update it for ES6 style modules but they're roughly the same as external modules and distinct from internal modules in the same ways.


Add API docs for Resampler class

This may be a discoverability issue but I could not find API docs for the Resample class at https://docs.dask.org/en/latest/dataframe-api.html or https://docs.dask.org/en/latest/api.html

Separately, but relatedly, I find the information architecture around the API docs a little confusing. Typically, when I click on the API part of docs, I expect to go to an arguably less user-friendly part of a docs website and just be able to click around all classes and methods that are available. In the dask docs, when I click on the API link in the left menu, I get taken to a curated page. If I then click on a sub area (e.g. DataFrame) I am put back into the context of user documentation.
Some examples of docs where I have developed the expectation for this pattern:

bokeh user guide vs reference (https://docs.bokeh.org/en/latest/docs/reference.html)
jinja2 - https://jinja.palletsprojects.com/en/2.10.x/api/
pandas - api reference https://pandas.pydata.org/pandas-docs/stable/reference/index.html
spark - https://spark.apache.org/docs/latest/api/python/index.html (vs programming guides https://spark.apache.org/docs/latest/sql-getting-started.html)

Conversely, djangoproject is an example of one of, in my opinion, the best documented projects out there that doesn't meet this pattern. Also sphinx. This is just to emphasize that I'm not trying to claim that there are no standards and this separate observation is just that.

Thanks for pointing this out @birdsarah. Addressed over in #5551


Rework Dependancy Script

Sharkwouter and I have been reworking the Dependancy script to simplify requirements for all operating systems making it much less fuss free setup.
This will also need to be replicated across to psptoolchain-allegrex

On the Fedora docker container the which command is not installed by default it seems.


Dragdrop issue

Problem/Motivation
Dragging a *.tar file from windows7 to IDE works, but gets deleted instantly afterward by IDE.
But dragging lets say a text file or yaml file, works perfectly. Tried renaming a .tar file to .txt, but still got deleted.

(Why the issue was filed)
log.txt

Expected behavior
Drag-drop should hopefully work in general It's a great feature and it works flawlessly in 0.8.0
I have 0.8.0 running on one instance and 1.0 on another.

(What you expected to happen)

Actual behavior

(What actually happened)
.tar file gets deleted instantly

Steps to reproduce

(How can someone else make/see it happen)

Proposed changes
please fix this GREAT tool and btw - you guys are the greatest!! Without minds and skills like yours, and your contributions, I would still be in the stone age

(If you have a proposed change, workaround or fix,
describe the rationale behind it)

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

"maybe" added bonus...
It looks as if it's file size dependent - observations are that anything above 10mb gets deleted and anything below 10mb is allowed/kept

Hmm, this might be related to file size. Could you test with a smaller file? (let's say 500kb?)

No response, closing issue.


Preserve transparency in supplied colorants

The matching element of the pair for https://github.com/dcjones/Compose.jl/pull/152

(Tests will be expected to fail on this until that PR gets merged.)

Thanks!


[Kernel] Update ConflictChecker to perform conflict resolution of ICT

Which Delta project/connector is this regarding?

[ ] Spark
[ ] Standalone
[ ] Flink
[x] Kernel
[ ] Other (fill in here)

Description

Update ConflictChecker to perform conflict resolution of inCommitTimestamp and complete the inCommitTimestamp support in Kernel.
How was this patch tested?

Add unit tests to verify the conflict resolution of timestamps and enablement version.
Does this PR introduce any user-facing changes?

Yes, user can enable monotonic inCommitTimestamp by enabling its property.

This PR is based on https://github.com/delta-io/delta/pull/3282 merge it first.


[BUG] Mis-linked page

Describe the bug.
When navigating to  Welcome | AsyncAPI Initiative for event-driven APIs
The contribute to docs button returns a 404
Found an error? Have a suggestion?

[Edit this page on GitHub](https://github.com/asyncapi/website/blob/master/pages/docs/index.md)

The url "https://github.com/asyncapi/website/blob/master/pages/docs/index.md" returns a 404 error
Expected behavior
A 200 response from the link is expected, with page displaying source code with editing functionality for contribution to the repo
Screenshots

How to Reproduce

Navigate to https://www.asyncapi.com/docs
Below the 'Welcome' heading, look for text that looks something like this

Found an error? Have a suggestion? Edit this page on GitHub

Click on the 'Edit this page on GitHub' and you have now reproduced the 404 error

🥦 Browser
Mozilla Firefox
👀 Have you checked for similar open issues?

[X] I checked and didn't find similar issue

🏢 Have you read the Contributing Guidelines?

[X] I have read the Contributing Guidelines

Are you willing to work on this issue ?
Yes I am willing to submit a PR!

@IyaadDev Can i work on this?

Hang on a second, https://github.com/asyncapi/website/tree/master/pages/docs doesn't exist... If possible for clarification, how are the docs pages rendered?

i guess the docs are in markdown/docs/index.md

Waiting for merge, PR#3303 fixes the issue.

lgtm

Ready to merge, PR #3327 fixes this issue


[PT Run] Improve the Win32 Program Indexing speed

Summary of the Pull Request
What is this about:
Improve the performance of the Win32 scanning.
What is include in the PR:

Performance Improvements

Parallelize collection of all paths with multiple sources
Deduplicate all paths which are duplicate
Resolve all indexed program paths in parallel

When checking Steam/Epic games, do not read whole file if not needed

Refactored indexing on several points

Always LowerCase the fullpath (like done on other places
Updated some usage of more modern C# features where i felt it made it more clear.

Removed Indexing from constructor (so it won't run if the plugin is disabled)
Fix Chrome PWA's not having the correct AppType
Change Security Exceptions to Warnings in the logs
Allow Searching by executable name (e.g. WINWORD.EXE)

How does someone test / validate:

Run PT Run and check the logs if it's faster for that device
Disable PT Run within the Settings UI & the 'Microsoft.Plugin.Program.Main - Win32Program index cost ' will not be logged

Quality Checklist

[x] Linked issue: #7208
[x] Communication: I've discussed this with core contributors in the issue.
[x] Tests: Added/updated and all pass
[ ] Installer: Added/updated and all pass
[x] Localization: All end user facing strings can be localized
[ ] Docs: Added/ updated
[ ] Binaries: Any new files are added to WXS / YML

[x] No new binaries
[ ] YML for signing for new binaries
[ ] WXS for installer for new binaries

Contributor License Agreement (CLA)
A CLA must be signed. If not, go over here and sign the CLA.
Additional Information

@royvou
#10981 can conflict with your PR!

@royvou
if you have the time, it would also be great to stop logging as exceptions errors that are not fatal. It's ok to report them as info/warn.

I need to verify the filewatcher logic as the unit tests are failing

Program plugin with changes doesn't show any results from the Program plugin.
Master branch:

Current branch:

@enricogior
Does it make sense to look at #10210 while refactoring plugin code?

Measured improvement
The branch:
Microsoft.Plugin.Program.Main - Win32Program index cost <796ms>
Microsoft.Plugin.Program.Main - Win32Program index cost <244ms>
Microsoft.Plugin.Program.Main - Win32Program index cost <245ms>
Master:
Microsoft.Plugin.Program.Main - Win32Program index cost <280ms>
Microsoft.Plugin.Program.Main - Win32Program index cost <265ms>
Microsoft.Plugin.Program.Main - Win32Program index cost <264ms>

@royvou
On the master, I have 972 indexed programs and on the current branch 965. Any idea why the number differs? I haven't figured it out.

@royvou
On the master, I have 972 indexed programs and on the current branch 965. Any idea why the number differs? I haven't figured it out.

I just validated and i noticed the difference locally is two instances of
c:\windows\system32\dfrgui.exe

One resolved as RunCommand
One resolved as .Lnk (from the startmenu)

The change in the LnkProgram to override the ExeProgram (e.g. to allow to search for WINWORD.exe instead of word.lnk) (#10210) and return back to the 'old behaviour' (Also means program.ExecutableName = Path.GetFileName(program.FullPath); is always true and removes the need to compute the hash of each "ExecuteableName")

@royvou
Which file types are supported?

@royvou
Which file types are supported?

The same as before, the only difference is that the combination name <> FullPath should be unique (e.g. a lnk/exe with the same name will be deduplicated.

@royvou
Which file types are supported?

The same as before, the only difference is that the combination name <> FullPath should be unique (e.g. a lnk/exe with the same name will be deduplicated.

What happened if parameters in two lnks are different. (e.g. program.exe -admintool & program.exe -backuptool)
In the code (productive master branch) is a list of file types that includes .msc. Should RSAT tools and other mmc tools not be shown then?

@royvou
Which file types are supported?

The same as before, the only difference is that the combination name <> FullPath should be unique (e.g. a lnk/exe with the same name will be deduplicated.

1. What happened if parameters in two lnks are different. (e.g. `program.exe -admintool` & `program.exe -backuptool`)

2. In the code (productive master branch) is a list of file types that includes `.msc`. Should RSAT tools and other mmc tools not be shown then?

The change regarding the Arguments Property, it's only used to determine if its a Chrome/Chromium (Not edge) based PWA and show the correct subtitle. Otherwise the logic remains the same (e.g one or the other one will be chosen / the other one deduplicated like now, since some programs have like a -startmenu or -desktop parameter to show where it is launched from)
You mean the 'ExecutableApplicationExtensions' variable?

You mean the 'ExecutableApplicationExtensions' variable?

@royvou
Yes. But the reason why I asked is answered by my self. Please see https://github.com/microsoft/PowerToys/issues/3491#issuecomment-852303293.

Ah sorry @htcfreek ! (Yes i can search on those names in this PR)

Ah sorry @htcfreek ! (Yes i can search on those names in this PR)

Which local do you have? Other than englisch? Maybe you see the reason why some tools not searchable by the translated name while working on this PR.

Ah sorry @htcfreek ! (Yes i can search on those names in this PR)

@royvou
Which local do you have? Other than englisch? Maybe you see the reason why some tools not searchable by the translated name while working on this PR.

EN-UK, but this seems not to have changed over the current PT Run release, so let's continue that in the other issue :)

Ah sorry @htcfreek ! (Yes i can search on those names in this PR)

@royvou
Which local do you have? Other than englisch? Maybe you see the reason why some tools not searchable by the translated name while working on this PR.

EN-UK, but this seems not to have changed over the current PT Run release, so let's continue that in the other issue :)

Issue exists since while. :)

@royvou / @mykhailopylyp what is missing to close this out

@crutkas @royvou
I'm good with it as long as we keep win32 program hash function as it was before(that is with executable name) and a number of indexed programs don't differ after this change.

@mykhailopylyp / @crutkas I'll revert the change that .lnks will always have the .exe name set to the name of the exe (e.g. WINWORD for word) and we should create a seperate issue for that how we want that to behave.
Now it will be the same as on master (e.g. no results)
Also added back the previous comparer.


notebook module shadows module causing mypy errors

When a repo has notebook within a module with custom namespace, it breaks mypy check.
Reproduction repo: https://github.com/ravwojdyla/_nbqa_example:
Reproduce:
(tr-dev) ➜  _nbqa_example git:(master) pre-commit run -a
black....................................................................Passed
nbqa-mypy................................................................Failed
- hook id: nbqa-mypy
- exit code: 1

pipelines/ex.py:2: error:
Module 'my_utils' has no attribute 'foo'  [attr-defined]
    from my_utils import foo
    ^
my_utils/baz/notebook/ex.ipynb:cell_1:1: error:
Module 'my_utils' has no attribute 'foo'  [attr-defined]
    from my_utils import foo
    ^
Found 2 errors in 2 files (checked 2 source files)

mypy.....................................................................Passed

Notice:

plain mypy passes
nbqa-mypy fails in pipelines/ex.py (!)
nbqa-mypy fails in my_utils/baz/notebook/ex.ipynb
nbqa-mypy doesn't fail in pipelines/ex.ipynb

Now:
(tr-dev) ➜  _nbqa_example git:(master) g rm my_utils/baz/notebook/ex.ipynb
rm 'my_utils/baz/notebook/ex.ipynb'
(tr-dev) ➜  _nbqa_example git:(master) ✗ g st
On branch master
Your branch is ahead of 'origin/master' by 3 commits.
  (use "git push" to publish your local commits)

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        deleted:    my_utils/baz/notebook/ex.ipynb

(tr-dev) ➜  _nbqa_example git:(master) ✗ pre-commit run -a
black....................................................................Passed
nbqa-mypy................................................................Passed
mypy.....................................................................Passed

You can also fix it by applying this patch:
diff --git a/my_utils/__init__.py b/my_utils/__init__.py
index 863befe..e69de29 100644
--- a/my_utils/__init__.py
+++ b/my_utils/__init__.py
@@ -1,3 +0,0 @@
-from my_utils.baz.foo import foo
-
-__all__ = ["foo"]
diff --git a/my_utils/baz/notebook/ex.ipynb b/my_utils/baz/notebook/ex.ipynb
index a3d6519..6bdfbe5 100644
--- a/my_utils/baz/notebook/ex.ipynb
+++ b/my_utils/baz/notebook/ex.ipynb
@@ -6,7 +6,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "from my_utils import foo"
+    "from my_utils.baz.foo import foo"
    ]
   },
   {
diff --git a/pipelines/ex.ipynb b/pipelines/ex.ipynb
index a3d6519..6bdfbe5 100644
--- a/pipelines/ex.ipynb
+++ b/pipelines/ex.ipynb
@@ -6,7 +6,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "from my_utils import foo"
+    "from my_utils.baz.foo import foo"
    ]
   },
   {
diff --git a/pipelines/std.py b/pipelines/std.py
index cb97531..5199db5 100644
--- a/pipelines/std.py
+++ b/pipelines/std.py
@@ -1,4 +1,4 @@
-from my_utils import foo
+from my_utils.baz.foo import foo
 import pandas

 foo()

My theory, knowing close to nothing about nbqa (so it's likely completely wrong), is that there is probably a temporary directory for the notebooks which also shadows the project structure. Notebooks are staged into that temp directory, what probably happens is that that module structure then in same cases can shadow the structure in the project confusing mypy. It's likely that the temp structure is earlier in the PYTHONPATH/MYPYPATH (is it?, should it be?)?

Hi @ravwojdyla - thanks for your excellent bug report! Will take a look

@s-weigand yesqa writes temporary files to the same directory. Not saying that just because Anthony Sottile does something we necessarily need to do the same thing, but...well, it does mean it can't be that bad of an idea, and I think it could solve this bug

Indeed, #573 solves this...got a bit more work to do to sort it out, but I think this is a reasonable solution!

@s-weigand yesqa writes temporary files to the same directory. Not saying that just because Anthony Sottile does something we necessarily need to do the same thing, but...well, it does mean it can't be that bad of an idea, and I think it could solve this bug

Black does it too, I think the reason for this is that it is more atomic (less time for something to go wrong) to just rename a file compared to writing or copying the file since it just needs to update the reference in the filesystem.
Atm, we copy files if the temp and target folder are on different drives and rename them if they are on the same drive.

closed in  #573


Remove the win10/win11 digit from our version number.

As of about 2022, the one's digit of the Build of our version is a placeholder value to differentiate the Windows 10 build from the Windows 11 build. Let's trim that out, it's only a source of confusion.
For additional clarity, let's omit the Revision, which must be .0, and doesn't provide any value to report.
We will need to make sure we report releases as 1.17.ABC now, instead of 1.17.ABC1.0/1.17.ABC2.0
Let's not backport this. 1.17 will be the start of the new numbering scheme. Otherwise, 1.16.EFG < 1.16.ABC1.0, for an old version ABC1 and a new version EFG.

closes #14106
As summarized here: https://github.com/microsoft/terminal/issues/14106#issuecomment-1289462310

The original author of that thread brought up a fair consideration: that version number is required, and we will have to talk about it sometimes, because it's the package version on disk. System builders/distributors will need to know the "real" number, and the filenames will contain it too. How do we square those things?

How do we square those things?

That's a good question. I don't know. Hover the short version to reveal the full version string? Bold this part of the string, but show the rest at normal font weight?

@DHowett I'm gonna hand this one to you for the 1.17 call. If you want to sort out this for 1.17, That's cool. Otherwise I don't mind punting on this decision for another release.


Change TFLu Renode tests flow

With this changes :

robot file is generated in ${TEST_TMPDIR},
all console output is handled by robot,
all tests are executed even if one of them fails.

Example output after running `tensorflow/lite/micro/testing/test_bluepill_binary.sh tensorflow/lite/micro/tools/make/gen/bluepill_cortex-m3/bin:

In case of pass

Preparing suites
Started Renode instance on port 9999; pid 101044
Starting suites
Running /tmp/test_bluepill_binary//Bluepill.robot
+++++ Starting test 'Bluepill.Should Create Platform'
+++++ Finished test 'Bluepill.Should Create Platform' in 1.96 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_activations_test'
+++++ Finished test 'Bluepill.Should Run kernel_activations_test' in 0.68 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_add_test'
+++++ Finished test 'Bluepill.Should Run kernel_add_test' in 0.47 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_arg_min_max_test'
+++++ Finished test 'Bluepill.Should Run kernel_arg_min_max_test' in 0.47 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_ceil_test'
+++++ Finished test 'Bluepill.Should Run kernel_ceil_test' in 0.42 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_comparisons_test'
+++++ Finished test 'Bluepill.Should Run kernel_comparisons_test' in 0.49 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_concatenation_test'
+++++ Finished test 'Bluepill.Should Run kernel_concatenation_test' in 0.47 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_conv_test'
+++++ Finished test 'Bluepill.Should Run kernel_conv_test' in 0.45 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_depthwise_conv_test'
+++++ Finished test 'Bluepill.Should Run kernel_depthwise_conv_test' in 0.42 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_dequantize_test'
+++++ Finished test 'Bluepill.Should Run kernel_dequantize_test' in 0.44 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_elementwise_test'
+++++ Finished test 'Bluepill.Should Run kernel_elementwise_test' in 0.56 seconds with status OK
Cleaning up suites
Closing Renode pid 101044
Aggregating all robot results
Output:  /tmp/test_bluepill_binary/robot_output.xml
Log:     /tmp/test_bluepill_binary/log.html
Report:  /tmp/test_bluepill_binary/report.html
Tests finished successfully :)

In case of fail

Preparing suites
Started Renode instance on port 9999; pid 99620
Starting suites
Running /tmp/test_bluepill_binary//Bluepill.robot
+++++ Starting test 'Bluepill.Should Create Platform'
+++++ Finished test 'Bluepill.Should Create Platform' in 2.30 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_activations_test'
+++++ Finished test 'Bluepill.Should Run kernel_activations_test' in 0.73 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_add_test'
+++++ Finished test 'Bluepill.Should Run kernel_add_test' in 4.74 seconds with status failed
      ╔═
      ║ UART OUTPUT:
      ║
      ║ Testing FloatAddNoActivation
      ║ golden[i] (-1.9249991*2^2) near output[i] (-1.8999992*2^0) failed at tensorflow/lite/micro/kernels/add_test.cc:87
      ║ golden[i] (1.9249991*2^2) near output[i] (1.5999993*2^-2) failed at tensorflow/lite/micro/kernels/add_test.cc:87
      ║ golden[i] (1.9249991*2^2) near output[i] (1.0*2^0) failed at tensorflow/lite/micro/kernels/add_test.cc:87
      ║ golden[i] (1.9249991*2^2) near output[i] (1.2999993*2^0) failed at tensorflow/lite/micro/kernels/add_test.cc:87
      ║ Testing FloatAddActivationRelu1
      ║ Testing FloatAddVariousInputShapes
      ║ Testing FloatAddWithScalarBroadcast
      ║ Testing QuantizedAddNoActivationUint8
      ║ Testing QuantizedAddNoActivationInt8
      ║ Testing QuantizedAddActivationRelu1Uint8
      ║ Testing QuantizedAddActivationRelu1Int8
      ║ Testing QuantizedAddVariousInputShapesUint8
      ║ Testing QuantizedAddVariousInputShapesInt8
      ║ Testing QuantizedAddWithScalarBroadcastUint8
      ║ Testing QuantizedAddWithScalarBroadcastFloat
      ║ Testing QuantizedAddWithScalarBroadcastInt8
      ║ Testing QuantizedAddWithMixedBroadcastUint8
      ║ Testing QuantizedAddWithMixedBroadcastInt8
      ║ 14/15 tests passed
      ║ ~~~SOME TESTS FAILED~~~
      ║
      ║
      ╚═
+++++ Starting test 'Bluepill.Should Run kernel_arg_min_max_test'
+++++ Finished test 'Bluepill.Should Run kernel_arg_min_max_test' in 0.49 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_ceil_test'
+++++ Finished test 'Bluepill.Should Run kernel_ceil_test' in 0.46 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_comparisons_test'
+++++ Finished test 'Bluepill.Should Run kernel_comparisons_test' in 0.45 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_concatenation_test'
+++++ Finished test 'Bluepill.Should Run kernel_concatenation_test' in 0.43 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_conv_test'
+++++ Finished test 'Bluepill.Should Run kernel_conv_test' in 0.55 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_depthwise_conv_test'
+++++ Finished test 'Bluepill.Should Run kernel_depthwise_conv_test' in 0.47 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_dequantize_test'
+++++ Finished test 'Bluepill.Should Run kernel_dequantize_test' in 0.46 seconds with status OK
+++++ Starting test 'Bluepill.Should Run kernel_elementwise_test'
+++++ Finished test 'Bluepill.Should Run kernel_elementwise_test' in 0.43 seconds with status OK
Cleaning up suites
Closing Renode pid 99620
Aggregating all robot results
Output:  /tmp/test_bluepill_binary/robot_output.xml
Log:     /tmp/test_bluepill_binary/log.html
Report:  /tmp/test_bluepill_binary/report.html
Some tests failed :( See logs for details!

@advaitjain  I merged this branch with master and resolved all conflicts.

https://github.com/tensorflow/tensorflow/pull/45761 adds an exception to the newly added license checks for the .resource file.