do not generate other routes when catch all route is present

[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[X] Does not have any changes that may affect Istio users.

@ramaraochavali: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
82f31bdac6e0bcde37e4578ce614a9ce68a6504a
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ramaraochavali: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
82f31bdac6e0bcde37e4578ce614a9ce68a6504a
link
/test lint_istio

gencheck_istio
82f31bdac6e0bcde37e4578ce614a9ce68a6504a
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ramaraochavali: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-distroless-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-distroless-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test integ-distroless-k8s-tests_istio

@ramaraochavali: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-distroless-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-distroless-k8s-tests_istio

integ-ipv6-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-ipv6-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test integ-ipv6-k8s-tests_istio

@ramaraochavali: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-ipv6-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-ipv6-k8s-tests_istio

integ-distroless-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-distroless-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ramaraochavali: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-distroless-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-distroless-k8s-tests_istio

integ-ipv6-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-ipv6-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ramaraochavali: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-distroless-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-distroless-k8s-tests_istio

integ-ipv6-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-ipv6-k8s-tests_istio

integ-security-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-security-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ramaraochavali: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-distroless-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-distroless-k8s-tests_istio

integ-ipv6-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-ipv6-k8s-tests_istio

integ-security-k8s-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-security-k8s-tests_istio

integ-pilot-multicluster-tests_istio
1032d1c9814fa644d3d264298e3cbb04b8e56043
link
/test integ-pilot-multicluster-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Closing this as there is some issue with the fix

I mean we did this, then reverted it later

ok.. did not understand what is causing it fail though. I will take a deeper look later.


Log warning when module specified in override.cfg not found

Contains
Fixes #3673
Logs warning in StateHeadlessServer when module is not found in module registry.
How to test
Add a non-existing module (e.g. TestMissingModule) to the override.cfg file and then start the headless server (make sure you have no saved games otherwise it will load the config from the first one). In the logs you should see the message "ModuleRegistry has no latest version for module ".
Note: I noticed that the modules from override.cfg are loaded first, and then config.cfg. This tripped me up while testing. First you'll have to delete any entry in config.cfg for this
"defaultModSelection": {
    "modules": []

otherwise what you specify in override.cfg will be completely ignored.

Can one of the admins please verify this patch?

Hi @askneller and welcome! Thanks for the well-written PR :-)
Triggering bot for auto-testing
@GooeyHub: add to whitelist

Hooray Jenkins reported success with all tests good!

Works and LGTM so i'm merging in.


[OCIS-Storage] are not updated for share receiver

when receiving a share it seems not to matter what happens to the content of the share, for the receiver the etags always stay the same

@individual-it if still relevant, care to add more context or steps to reproduce?

@individual-it if still relevant, care to add more context or steps to reproduce?

Another etag-propagation issue https://github.com/owncloud/product/issues/279

Another etag-propagation issue https://github.com/owncloud/product/issues/279

I've just tried with upload and cannot reproduce it anymore with OCIS storage, etags seem to be updated also no tests are tagged with #642 in the expected to fail list, so closing this for now

I've just tried with upload and cannot reproduce it anymore with OCIS storage, etags seem to be updated also no tests are tagged with #642 in the expected to fail list, so closing this for now


Allow localized -edited suffix

If the user has their Google Photos localized in a language that is not English, the suffix of the edited pictures will be translated.
Add the option to configure the suffixes for different languages.

By the way, I opened the issue (and I will open a PR to your fork) because I realized that you are the only one working recently on this project.
I wanted to contact you, but I could not find your email. Feel free to contact me if you want to coordinate with me. My email is on my profile.

Hi @6temes sorry I missed notifications on this for quite some time. I've merged your requests and thanks for your contribution! Looks like whomever needs localized suffixes still needs to add them manually to the suffix array, but that's fine, this at least gives the framework for doing so. Marking the issue as fixed for now.


Add no traffic interval config

Add no traffic interval config
This PR adds a new "no traffic interval config". The "no traffic interval" is
a special health check interval that is used when a cluster has never
had traffic routed to it. This lower interval allows cluster information
to be kept up to date, without sending a potentially large amount of active
health checking traffic for no reason. Once a cluster has been used for traffic
routing, Envoy will shift back to using the standard health check interval
that is defined.
Risk Level: Low
Docs Changes:

https://github.com/envoyproxy/data-plane-api/pull/554

Release Notes:

Added no traffic interval config for HC.

Fixes #2782
API Changes:

https://github.com/envoyproxy/data-plane-api/pull/543

Signed-off-by: Dhi Aurrahman<EMAIL_ADDRESS>

@dnoe do you mind taking a first pass?

Per new release note policy please add a release note with any applicable feature docs to https://github.com/envoyproxy/data-plane-api/blob/master/docs/root/intro/version_history.rst. Thank you!

The release note is added here. PTAL, thanks!


Why this lib requires api > 14?

Why this lib requires api > 14?

It uses ValueAnimators for the animations.


[mle] parent does not assign Child ID if network data is "stale"

I don't know if this is a bug, or the intended behavior.
In a network with many SEDs and two or three REEDs, if we try to activate the built-in commissioners of the REEDs periodically, the parents may constantly deny assigning Child IDs. The error we see in the logs is Failed to process Child ID Request: InvalidState. We think that the invalid state error comes from Mle::AppendNetworkData called from MleRouter::SendChildIdResponse which is in turn called from MleRouter::HandleChildIdRequest. It seems that Mle::AppendNetworkData returns kErrorInvalidState if the parent's network data is stale (mRetrieveNewNetworkData == true). I don't think this is necessarily a bad thing, but if network data changes constantly (which is definitely a bad thing), then the children never attach.
A possible "optimization" would be to allow children with stale data (ignore mRetrieveNetworkData when handling this request), but I don't know if there could be unintended side effects. If I understand correctly, the network data will propagate to the child when it is updated.
What do you think?
Thanks!

@dismirlian , thanks for raising this issue!
The logic in question was added in #3354. The scenario it was trying to address was a Leader that recently restarted and is trying to restore its state from neighboring devices. In this case, we do not want the Leader to be sending Network Data until it has synchronized with the network. There are other similar situations, like when a devices changes partitions. We could consider allowing a child to attach when the Network Data is stale, but I think we need to be careful to differentiate between "stale" and "invalid".
What I'd like to first understand is why mRetrieveNewNetworkData is true more often than not, even when you are periodically activating a commissioner. When a router receives an update to the Network Data, it sends an unsolicited Data Response message to provide neighboring nodes with the updated Network Data. If a device learns of an update from an Advertisement, then it will send a Data Request and should immediately receive a Data Response.
Is it possible for you to grab some detailed device logs when this issue is occurring so that we can better diagnose the issue?

Hi @jwhui, thanks for your answer!
Now I understand the reason for this logic. I think that allowing a child to attach when the Network Data is stale is only an "optimization".
We are also trying to understand why mRetrieveNewNetworkData is usually true. We think this is related to another issue (#7513), partitions frequently merging/unmerging, and commissioners "fighting" (#6951). We will try to solve all these before this one.
We will return with more details, if we can catch some relevant logs. Any idea of what to look at?

Closing stale issue.


Cannot read property 'offsetWidth' of undefined

Hi Team,
I am getting "Cannot read property 'offsetWidth' of undefined" in my website which contains bootstrap carousels. Interestingly all carousels are working fine but when I see the console, there it is. I would like to know why it is coming and How could I fix this.
url: https://classicescapes.com.au/home
Thanks,
Vinod.

Does this happen outside your website? As in, do you see the error in our docs or in a reduced test case?

What do you mean by outside website?
As I said all carousels are working fine, and I don't want to have a console error behind the scene.
I couldn't find anything helpful in git hub or in other forums. Please take a look at it.

@mdo his website use Bootstrap v3.3.6 FYI and I'm unable to reproduce this error from our documentation.

hi，I have the same problem, this mistake in my carousel cannot switch the picture, this error is a 40% chance. My url:http://test.iptid.com/guchenghu_api_pc/web/index.html, in the "APPRECIATION BEAUTY" module, click the corresponding picture appear this error. Please help, thank you.

Closing on account of v3 not being actively developed anymore.


code within a CASE's ELSE BEGIN block is indented by 1 tab too far

Describe the bug
The title says it all.
To Reproduce
Type a case statement whose else block is a compound statement and hence should read else begin as per the (outdated but presumably still instructive) AL Control Statements documentation:

Let VS Code auto-format this. The lines between the else begin and its end; are indented 2 tabs:

Expected behavior
One would expect the lines between the else begin and its end; line to be indented only one tab stop further, just as the outdated documentation indicates we should (substituting 2 spaces in C/AL with 1 tab in AL).
Alternatively, one would expect to be guided to put the else on a separate line from the begin, and indent those just as with the preceding values tested by the case statement. But that's not what the documentation indicates we should do.
5. Versions:

AL Language: 5.0.254558

It is still an issue in latest, as per the example code from the link above.
Name: AL Language
Id: ms-dynamics-smb.al
Description: AL development tools for Dynamics 365 Business Central
Version: 8.3.570094
Publisher: Microsoft
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=ms-dynamics-smb.al

Please reopen :-)


[netdiff] Added support to OpenVPN parser

Coverage remained the same at 100.0% when pulling c109c2cf05dc2498b31af761394985fd2b47b689 on rohithasrk:openvpn-netdiff into 3c7590a1fb45abe3392ec9470a0abb917e342700 on netjson:master.


Creating SBOM for C++ Project

Hi,
I've installed cyclonedx using: npm install -g @cyclonedx/cdxgen
Now, I'm trying to run it over my c++ project repository, on my virtual machine ubuntu 22.04 (where I installed it).
I am receiving the error:
cdxgen -h
file:///usr/local/lib/node_modules/@cyclonedx/cdxgen/node_modules/find-up/index.js:8
let directory = path.resolve(toPath(options.cwd) ?? '');

                                                  ^

SyntaxError: Unexpected token '?'
I'd appreciate your help in running this successfully on my c++ project.

@Asaf-E can you ensure node.js >= 20 is installed?

Thank you, I Installed it and now it runs!


[CRTOOL] correcting analytics

Correcting the analytics labels and events to match @kelleyholden 's specifications
See: https://github.com/cfpb/teachers-digital-platform/pull/369#issuecomment-597195573
Changes

Updated the the following analytics variables:

"link clicked: Remove efficacy study", "Remove" => "link click", "remove efficacy study"
"Remove efficacy study modal", linkText => "efficacy modal", linkText

Review

@Scotchester @kelleyholden

Thanks for reviewing this @Scotchester. I figured since the original Analytics event for removing the study was the same, I didn't need to change it. But it's a good idea to confirm with Kelley. @kelleyholden did you want to change the analytics event for when the Study is actually removed? It's currently set to:
event category (keep the same): curriculum review tool interaction
event action: "button clicked"
event label: "Remove"

@kelleyholden did you get a chance to review this?

@nbucknor SO SORRY! I didn't realize i was filtering these out of my inbox (just set up a bunch of new filters) - i'll check to today and get back to you ASAP

@nbucknor yes let's update that to what i suggested, to keep it consistent with the rest of the modal.

Thanks @kelleyholden. Will do.

@nbucknor that works thank you! let me know when you'd like me to test.

hey! any updates on this?


[DCOS-39579] Forward requests to custom package managers when required

For Kubernetes package manager, I'd like to generate models, etc from swagger doc - how can I get a swagger doc for this PR to generate from?

@jimmidyson looks like the previously working swagger json generation part is now broken due to some refactoring done in recent past. You can refer to the dcos docs at https://docs.mesosphere.com/1.11/deploying-services/package-api/#/default/POST_cosmos_service_describe or https://github.com/mesosphere/dcos-docs-site/blob/staging/pages/1.12/api/package-manager.yaml while we work on fixing this. Sorry for the inconvenience.

@takirala That doesn't include the changes from this PR though, notably the packageName and packageVersion fields, as described in the https://docs.google.com/document/d/1hJTZImY5JBeIBkQVgPUjVu0TwMb6bkzu71q4SbDDIfo/edit#heading=h.f5dabj99fu8. Any chance of a regen somehow for this PR? I can manually edit the swagger doc but I'm likely to make mistakes that way and want to be as foolproof as possible.

Unfortunately there is no easy way of generating swagger doc currently. All the tooling has been removed from the repo and it requires at least a few days of work to get it back or find a new way. The person working on refactoring left mid way and we never got around to fixing it. Doing it manually (because its only one RPC and you already have the base structure from on older version of the RPC from the linked yaml) would definitely be much faster than we fixing the swagger generation. Sorry!

Looks good in general.

We still need to investigate the flake of the admin router test (the test was definitely stable before this PR)
https://github.com/dcos/cosmos/pull/739#discussion_r211746809
Remove .DS_Store files from the diff

@kvish fixed some comments in https://github.com/dcos/cosmos/pull/742
I was unsure of a corner case in CustomPackageManagerRouter, lets discuss this offline and then merge #742


[Event Request] Table 38 - Purchase Header - OnBeforeValidatePrepmtPaymentDiscountPercent

Dear ALAppExtensions team,
through this issue we would like to request adding event publisher OnBeforeValidatePrepmtPaymentDiscountPercent in Table 38 Purchase Header with the following signature:
[IntegrationEvent(false, false)]
local procedure OnBeforeValidatePrepmtPaymentDiscountPercent(var PurchaseHeader: Record "Purchase Header"; CurrFieldNo: Integer; var IsHandled: Boolean)
begin
end;

which would be called as follows in the OnValidate trigger of field 144 - Prepmt. Payment Discount %:
trigger OnValidate()
// >>>> New >>>>>>>>>>>>>>>>
var
    IsHandled: Boolean;
// <<<< New <<<<<<<<<<<<<<<<
begin
    // >>>> New >>>>>>>>>>>>>>>>
    IsHandled := false;
    OnBeforeValidatePrepmtPaymentDiscountPercent(Rec, CurrFieldNo, IsHandled);
    if IsHandled then
        exit;
    // <<<< New <<<<<<<<<<<<<<<<
    if not (CurrFieldNo in [0, FieldNo("Posting Date"), FieldNo("Document Date")]) then
        TestStatusOpen();
    GLSetup.Get();
    if "Payment Discount %" < GLSetup."VAT Tolerance %" then
        "VAT Base Discount %" := "Payment Discount %"
    else
        "VAT Base Discount %" := GLSetup."VAT Tolerance %";
    Validate("VAT Base Discount %");
end;

Thanks in advance!

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 47054.


[ Security ] Is it secure enough?

Hello and thank you for making this.
I'm really tempted to use this lib for an experiment of mine. I have one question tho. As you may know, today the Fortnite credentials are data a lot of malicious people would love to get.
Therefore I'm wondering how secure it is to enter our own credentials before using this API.
From what I've seen, they shounldn't leak anywhere, but just want to be sure. I've seen other APIs returning data without the use of any credentials, so I would love to know more.
Thanks.

Hi Lucas,
Actually as you can see on source files, I didn't store any credentials.
You need to provide your credentials, and it's only used/see by you. Secure
& Independant is the best way ! 👌
Quentin


Adding Hover Effects to various buttons ,  Menu Card and social media links.

I want to contribute under GSSoC'24 . Please assign it to me . I will surely add the hover effect to all card  , buttons as well as to all social media links. please assign it to me.

I can handle this task because I have previous experience working on similar projects.

Hello! Could you please assign this issue to me? I can help you work on this.

I want to work on this issue. Can you please assign me this task?

i have very good experience in fronted part, i did some good projects related to fronted so, could you please assaign it to me i will do it

Hi, I hope you are doing well! I have experience with front end .
Could you please assign this issue to me?
I believe I can solve it effectively.
I am eager to get started and make meaningful contribution to this project.

Hi, I have pretty good ideas about the hover effects which I have been working recently can assign this task to me I want learn and contribute under GSSoC'24

Hi @khushi-joshi-05 , I'm a Gssoc'24 contributor.
I can improve hover effects for this project . Can you please assign it to me
so that I can start making meaningful contributions  to this project

Can you assign this issue to me?

Can I get this issue as I have similar experience that is require and want to contribute towards this as my first GSSoC contribution . I have good ideas for the hover animations for all kinds and it would be smooth.

objective - add hover effects to buttons, menu card , social media link.
solution- this can be done by using hover function , also have couple of ideas
please assign me this issue

I have previous experience working on a task similar to this
please assign it to me
thank you

hi @khushi-joshi-05 . I have done similar tasks while creating amazon clone website  myself . I  would love to make a better hover effects to various buttons , Menu Card and social media links.
I'm a gssoc contributor. Please assign the issue to me.Thank you.

I have been developing my own websites it is not completely developed assign this task to me I have done this work on my website too

I have worked with frontend stacks . I am suitable for resolving this.
Can you assign me under GSSOC'24?

I would like to contribute in this issue . Kindly assign it .

I want to contribute under GSSoC'24 . Please assign it to me . I will surely add the hover effect to all card , buttons as well as to all social media links. please assign it to me.

i am a contributer of Gssoc 24 and have an hands on experience in ui have previously worked with adding wonderful hover animation to social media links and buttons can you please assign it to me

@khushi-joshi-05 I would like to work  on this under GSSoC'24. can you please assign me this!

hello, I would like to work on this issue. can i please ?

Hello @khushi-joshi-05 I am interested in working and contributing for this .I hope I will be considered for this issue and  add hover effects on the mentioned components and make it visually appealing .

Hey , I know how to work with the hover function and can handle this task . Can you please assign this issue to me

Hey @khushi-joshi-05 , I would like to work on this issue.Kindly assign it.

hello @khushi-joshi-05 , I would like to work on this issue under  GSSoC'24. I have already built a blogging website using reactjs and uploaded it on my github.
Link - https://github.com/pahuja-sahil/Online-Blogging-System.
I can add the hover effects on various button easily and efficiently . So I kindly request you to please assign this issue to me under GSSoc'24 level 1.
Thank you.

Hey, I would like to work on it. Can you please assign it to me?

Hi @khushi-joshi-05, Please assign me this issue. I have prior experience in animation, transitions, and effect like these.

Hi @khushi-joshi-05 please assign me this issue..i can solve it

I'm a Gssoc'24 contributor and I'm interested in working on the task of adding hover effects to the buttons, menu cards, and social media links. Please assign it to me, and I'll get started right away.

Hey, I would love to work on this issue, as previously I have worked on this before. Please assign me with this issue. Looking forward for the approval

@pahuja-sahil I have assigned you the issue. Go ahead . All the best.

@kanishk-2 I have assigned you the issue. Go ahead . All the best.

Hi there, I've been learning UI/UX and I'm a beginner at open-source contribution so I want to gain hands-on experience by contributing to this project through GSSOC'24. Please assign this issue to me. Thank you.

@khushi-joshi-05 I have created a pull request for the changes that are made by me but it seems there is a conflict .kindly see to it when you have time and reply if possible.
Thank you.

@khushi-joshi-05 I have created pull request for the changes for hover effect on menu cards, social media icons.
Do check and reply . Thank you

@sunny0625 and @khushi-joshi-05  kindly please see my pull request created today only with zero branch conflicts. Please respond with a text if possible .


Complications with No Tree Punching Mod

Minecraft version
1.20.1
Farmer's Delight version
2.1.2
Fabric Loader version
0.16.0
Fabric API version
0.92.2
Description
When I have installed Farmers Delight Refabricated, the "Plant Fiber"(No Tree Punching mod) does not drop from grass or tall grass at all.
Steps to reproduce
No response
Mod list
https://modrinth.com/mod/no-tree-punching/version/POWV0EfQ
Logs
No response
Minimal instance

[x] I have tested this on a minimal instance

Performance and shader mods

[ ] I am using performance or shader mods

this mode uses porting lib loot modifiers, if they conflict with no tree punching then that mod likely has that conflict with porting lib, or removing loot from grass is an intentional feature of it

Likely fixed by Porting Lib 2.3.8+1.20.1


fix: Use After Free in PacketReader

I hereby agree to the terms of the CLA available at: https://databend.rs/dev/policies/cla/
Summary
related issue: https://github.com/datafuselabs/opensrv/issues/66
Refactor packet_reader.rs to avoid Use After Free due to dropping Vec while still holding packets of u8 slice from it.

impl NomBytes type which allow nom to parse bytes::Bytes which is smart pointer to array of u8, hence avoid uaf
reuse buffer whenever possible to improve performance
make sure packet still have a lifetime arg, so to prevent breaking change to api
correct both impl of next() and next_async() to prevent UAF or unsafe code
add tests that run to those large packet dealing logics(Which disclosure another bug about having packet size of exactly U24_MAX would also cause nom to refuse parse packets due to lack of opt, fixed)
cargo test is passed

@PsiACE might want to take a look?

The style warning is all in clickhouse/*, I'm not sure if I should fix it in case might break something,
The MacOS CI failure seems to be related to wrong CI setting in Mac env?

Thanks @discord9 . I will check tonight, I am now a community contributor.


Bug

Error downloading account name, exception details: System.ApplicationException: Unable to deserialize object
em POEApi.Model.POEModel.GetProperObjectFromTransport[T](Stream networkData)
em POEApi.Model.POEModel.GetAccountName()

Hi, thanks for the report.  Please attach the DebugInfo.log file so we can better diagnose the issue.


Implement subchannel-renew protocol

Add new renew protocol to sub channel manager.

I don't think we need this anymore. It is a nice-to-have, so we can always reopen it.


remove false positive metamask-snap-polkadot.pages.dev

remove false positive metamask-snap-polkadot.pages.dev
Reference: https://github.com/MetaMask/eth-phishing-detect/pull/13752
This domain needs to be unblocked, it’s from ChainSafe, who are building the Polkadot Snap: metamask-snap-polkadot.pages.dev
Reference: https://github.com/ChainSafe/metamask-snap-polkadot/
Ping the Consensys (Metamask) team if you have any questions
Thanks
(i know, i dont trust pages.dev one bit either and i wish the project got a legit domain)

Thanks dub!


can't set up new manual project

Tried to setup strider today. Initial installation was ok. Ran into a couple issues trying to create a project:

for Manual Add, what is the 'Name" field for? No matter what combination of project name and slash / I tried, I couldn't get it to stop marking red.
Create new button didn't work -- probably because I couldn't get past the Manual Add field.

Moving my repo url to the 'Name' field enabled the Create New button, but resulted in a 'failed to create project' error popup.
Looks like this page needs some work? Cause unfortunately this isn't easy to configure :(

+1
I'm unable to add a github project at all.
Isn't this a basic use case?

The manual add page has been massively improved. This issue is old. @mingfang make a new issue and let us know your actual errors, etc. +1 isn't very helpful in this case since the original issue is outdated and resolved (the title should have been: Manual Add form is confusing.)

And yeah it is a basic use case, one that Strider supports really well -- let us know more in a new issue and we can help you.


Fix glossary entry for rkt

Currently, https://kubernetes.io/docs/reference/glossary/?all=true#term-rkt contains incorrect formatting.

fix that
also tweak the wording slightly

/lgtm
/approve
Thanks.


Typo OPENSS_NO_QUIC -> OPENSSL_NO_QUIC

Looking at the code on master(810f7dc1c7) I found a typo in s_client.c: OPENSS_NO_QUIC. It looks like it should be OPENSSL_NO_QUIC.

Thanks for the report. Fix in #21293


[Impeller][Android] Poor performance with cached lottie images on Vulkan.

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
Run this sample
https://github.com/delfme/sample_demo
Tested with master 3.16.0-15.0.pre.27 on iphone 13 pro ios16 and android 13 Xiaomi Mi Lite 5g
Issue occurs when there are many images on the scene.
To reproduce issue for this, I created a simple sample that:

fetches a lottie json animation
caches all images inside the animation
displays a grid view of 60 items.

Rendering and scrolling is blazing fast with Impeller iOS.
Current version of Impeller Android still not on par with iOS.
Expected results
Same performance as with iOS Impeller
Code sample
Code available here:
https://github.com/delfme/sample_demo
Screenshots or Video
Android Impeller not on par with iOS: Raster max about 20-30ms/frame and UI max about 20-40 ms/frame
https://github.com/flutter/flutter/assets/53510751/2b53e0e4-d605-428f-b85b-183ec29cdf45
iOS Impeller is blazing fast with Raster max below 3ms/frame and average UI max about 10 ms/frame
https://github.com/flutter/flutter/assets/53510751/673a079a-7256-43bd-b713-06b4a2e96038
Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[✓] Flutter (Channel master, 3.16.0-15.0.pre.27, on macOS 12.6.5 21G531 darwin-arm64, locale en-IT)
[!] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS (Xcode 14.0.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.2)
[✓] Connected device (3 available)
[✓] Network resources

Why would performance on Android match iOS, impeller or no impeller?

If you have examples of perofrmance being worse than Skia, I'd be happy to look at that. We'd also need information on what backend is being used on that phone - OpenGLES or Vulkan, as only one is near preview readyness.

Hi @jonahwilliams we have this messaging app which is pretty demanding. With iOS Impeller it performs native-like, but not on android.
For example, we have this stickers keyboard which is smooth on iOS and janky on android (both Impeller and Skia).

The janks occur when many images are on the scene, in our case: chat screen, contents feeds and user profile screen.

But again, why would Impeller allow us to deliver iOS like experience on Android? These are very different hardware specs. Our immediate term goal is to just do no worse than Skia, and long term improve performance on Android. Its just not feasible to get comparable performance to iOS

If you have examples of perofrmance being worse than Skia, I'd be happy to look at that.

Is Skia a performance reference for Impeller android or can we expect native-like performance also on impeller android in the future?

We'd also need information on what backend is being used on that phone - OpenGLES or Vulkan, as only one is near preview readyness.

How to get this data?

Impeller on iOS can't be a native reference point for Android hardware, you'd need a Android framework built application for that.
RE: rendering backend, you can check in the device logs when you flutter run. It should print something like:
jonahwilliams-macbookpro3:macrobenchmarks jonahwilliams$ android-debug
Launching lib/main.dart on Pixel 6 Pro in debug mode...
Running Gradle task 'assembleDebug'...                             30.0s
✓  Built build/app/outputs/flutter-apk/app-debug.apk.
Installing build/app/outputs/flutter-apk/app-debug.apk...          20.5s
E/flutter (12814): [ERROR:flutter/shell/platform/android/android_context_vulkan_impeller.cc(45)] Using the Impeller rendering backend (Vulkan with Validation Layers).
Syncing files to device Pixel 6 Pro...                              29ms

Keep in mind that debug mode will be running much slower than profile mode with Impeller, as we have additional debugging enabled in the engine.

But again, why would Impeller allow us to deliver iOS like experience on Android? These are very different hardware specs. Our immediate term goal is to just do no worse than Skia, and long term improve performance on Android. Its just not feasible to get comparable performance to iOS

Yea I used wrong sentence. I meant to say, performance good enough to have a smooth UI also on android. We are testing on mid and high end phones and we dont notice much difference. Thought to share that sample in the hope that you can see something.

On my phone it is Vulcan:
Installing build/app/outputs/flutter-apk/app-debug.apk...           8.8s
E/flutter (24953): [ERROR:flutter/shell/platform/android/android_context_vulkan_impeller.cc(45)] Using the Impeller rendering backend (Vulkan with Validation Layers).

I also gets some logs that I always considered as spamming from system but maybe they refers to real issues:
A Dart VM Service on 2109119DG is available at: http://<IP_ADDRESS>:56933/bB1g1v7C0II=/
The Flutter DevTools debugger and profiler on 2109119DG is available at: http://<IP_ADDRESS>:9100?uri=http://<IP_ADDRESS>:56933/bB1g1v7C0II=/
E/qdgralloc(24953): GetGpuPixelFormat: No map for format: 0x38
E/AdrenoUtils(24953): <validate_memory_layout_input_parmas:1970>: Unknown Format 0
E/AdrenoUtils(24953): <adreno_init_memory_layout:4720>: Memory Layout input parameter validation failed!
E/qdgralloc(24953): GetGpuResourceSizeAndDimensions Graphics metadata init failed
E/Gralloc4(24953): isSupported(1, 1, 56, 1, ...) failed with 1
E/GraphicBufferAllocator(24953): Failed to allocate (4 x 4) layerCount 1 format 56 usage b00: 1
E/AHardwareBuffer(24953): GraphicBuffer(w=4, h=4, lc=1) failed (Unknown error -1), handle=0x0
E/qdgralloc(24953): GetGpuPixelFormat: No map for format: 0x38
E/AdrenoUtils(24953): <validate_memory_layout_input_parmas:1970>: Unknown Format 0
E/AdrenoUtils(24953): <adreno_init_memory_layout:4720>: Memory Layout input parameter validation failed!
E/qdgralloc(24953): GetGpuResourceSizeAndDimensions Graphics metadata init failed
E/Gralloc4(24953): isSupported(1, 1, 56, 1, ...) failed with 1
E/GraphicBufferAllocator(24953): Failed to allocate (4 x 4) layerCount 1 format 56 usage b00: 1
E/AHardwareBuffer(24953): GraphicBuffer(w=4, h=4, lc=1) failed (Unknown error -1), handle=0x0
E/qdgralloc(24953): GetGpuPixelFormat: No map for format: 0x38
E/AdrenoUtils(24953): <validate_memory_layout_input_parmas:1970>: Unknown Format 0
E/AdrenoUtils(24953): <adreno_init_memory_layout:4720>: Memory Layout input parameter validation failed!
E/qdgralloc(24953): GetGpuResourceSizeAndDimensions Graphics metadata init failed
E/Gralloc4(24953): isSupported(1, 1, 56, 1, ...) failed with 1
E/GraphicBufferAllocator(24953): Failed to allocate (4 x 4) layerCount 1 format 56 usage b00: 1
E/AHardwareBuffer(24953): GraphicBuffer(w=4, h=4, lc=1) failed (Unknown error -1), handle=0x0
E/qdgralloc(24953): GetGpuPixelFormat: No map for format: 0x38
E/AdrenoUtils(24953): <validate_memory_layout_input_parmas:1970>: Unknown Format 0
E/AdrenoUtils(24953): <adreno_init_memory_layout:4720>: Memory Layout input parameter validation failed!
E/qdgralloc(24953): GetGpuResourceSizeAndDimensions Graphics metadata init failed
E/Gralloc4(24953): isSupported(1, 1, 56, 1, ...) failed with 1
E/GraphicBufferAllocator(24953): Failed to allocate (4 x 4) layerCount 1 format 56 usage b00: 1
E/AHardwareBuffer(24953): GraphicBuffer(w=4, h=4, lc=1) failed (Unknown error -1), handle=0x0
D/impeller_issues(24953): MiuiProcessManagerServiceStub setSchedFifo
I/MiuiProcessManagerImpl(24953): setSchedFifo pid:24953, mode:3

I've retitled the issue to reflect the specific issue. We can look into this and see if there is anything obvious that could be improved.

Thx. I really appreciate it.
What Raster max and Ui max values you get on your Pixel 6 Pro?

Skia
Starts out incredibly slow but speeds up

Impeller
Seems to have more consistent performance, though I notice the UI thread seems to block a bit more during encoding.

@delfme can you share a timeline from the Impeller recording you took?

Timeline
https://drive.google.com/file/d/10grUyuycXl48pIKvT0yk83VeebNizsaU/view?usp=sharing

Indeed I think there is hope. It seems it is images issue but mostly due to animations.
I changed a bit the sample to let you notice the difference when using still images.
Will share it soon.

@delfme that is a Skia trace

Here it is:
Please try to set testStillImages to true. In that case we will load still images and situation gets back under control, Raster max and Ui max below 16 ms/frame most of time.
https://github.com/delfme/sample_demo/blob/27e88cefa4a088fbe4b5cee5291925f960c07334/lib/main.dart#L100

@delfme that is a Skia trace

Is this correct?
https://drive.google.com/file/d/1HSYznWaATAi-QjQSVfzpbbGXcCgGRLT4/view?usp=sharing

Skia
Starts out incredibly slow but speeds up

Impeller
Seems to have more consistent performance, though I notice the UI thread seems to block a bit more during encoding.

Woah I never see your Impeller screenshot. If we get when scrolling, that would be native.

That is better. So something I can point out, it looks like we're bottlenecked on the GPU on your phone.

The feeling is that a fix would increase smoothness also everywhere, coz although we use lottie, we are caching/animating the internal images, which is not really like using lottie.
Here is for visual comparison, see screen transition on the two platforms (relase mode)
https://github.com/flutter/flutter/assets/53510751/549e719a-caab-434e-8068-deb862c4046e
https://github.com/flutter/flutter/assets/53510751/edfb5ce5-b383-4166-a8c5-e6885a101e2e

@delfme the timeline you posted shows pretty consisted 12ms frame times. Is this a high frame rate device or is it 60fps? This doesn't seem to match the video you posted which is showing ~30ms frame times.

Refresh rate is set to 90Hz specs below. It is mid end phone but pretty smooth.

But jittery occurs also with simpler screen.  I will share a timeline soon.
https://github.com/flutter/flutter/assets/53510751/bd0cc102-1ec0-4723-8bfe-0bdc46783e2a

Timeline
https://drive.google.com/file/d/1EraTdg7cPA1xMXkvD1s_CeA8i8RIJ38m/view?usp=sharing

@delfme that looks like an entirely different application then the one you originally filled. Again, let me ask: The original bug you filled shows raster times in excess of 20ms. The timeline you posted afterwards shows ~12ms.
Now you'e posted a second app/timeline but no code for this either.
I can't really help you if you can't nail down the specific issue you're filling a bug for. We don't really want to have "make Impeller faster bugs" open. Thats already the goal.

I tested the sample code with same phone. Prolly I switched from 60Hz to 90Hz and vice-versa while testing and shared same timeline with different device settings. Let me share here the 2 timelines for the sample at both 60Hz and 90Hz.
testStillImages is used to reproduce two cases:
A) property set to true will load cached lotties (the heavy case where engine struggles with many janks).
B) property set to false will load network still images (lightweight case where some janks are still noticeable).
https://github.com/delfme/sample_demo/blob/27e88cefa4a088fbe4b5cee5291925f960c07334/lib/main.dart#L100
Timelines
CASE A)
Timeline with phone display set at 90Hz and max performance mode
https://drive.google.com/file/d/1cK6vvDy4RrYJmgRFDvqwWWySUzdUVtMD/view?usp=sharing
Timeline with phone display set at 60Hz
https://drive.google.com/file/d/1Mk7Iv9IkrK_HUnfEA79MPtWXRkOShsZn/view?usp=sharing
CASE B)
Timeline sample code 60Hz
https://drive.google.com/file/d/1IbktfHi0GLCWbdvx5PttfeYQiJKoruoJ/view?usp=sharing
Timeline sample code 60Hz
https://drive.google.com/file/d/16OO-WO8gvMpykOnK9CJEjEfyKkvNUjvl/view?usp=sharing

Now you'e posted a second app/timeline but no code for this either.

@jonahwilliams I will try to create another sample for the case where I'm hit by performance issue "on Xiaomi mid-end android phone when no heavy widgets are on the scene". But that will take me time, just shared that other timeline to let you see what I meant.

Thank you!

@delfme you never provided the follow ups needed to triage this bug, so I'm closing the issue. Its impossible to make sense of the information you've provided which is all over the place. Please make an effort to file more focused and clear bugs.


gitian: ask user if they want to auto-start bitcoinxtd service during deb pkg installation

moved debian installation scripts (postinit, prerm) out of build.sh file to separate files
added debconf as a package dependency
updated postinit script to ask user if they want to autostart bitcoinxtd and act accordingly
added debconf templates file with autostart question verbiage
added postrm script to clear debconf data if package removed with "purge" option

Tested on Debian 8 (with systemd) and Debian 7 (no systemd) systems.
Note: Once user selects Yes or No for autostarting bitcoinxtd during installation they will not be prompted again unless they uninstall bitcoinxt with sudo apt-get purge bitcoinxt.

Since I'm not familiar with the debconf priorities, have you tested whether the db_input high ... results in an acceptable apt-get install -y bitcoinxt non-interactive default?

@Beanow unfortunately the default debconf behavior is to only ask users questions marked with priority high.  I've tried testing with sudo gdebi -o APT::Get::Assume-Yes=true to simulate apt-get install -y , but that option seems to be ignored for debconf questions.  Since I believe the most common installation case is interactive I'm leaving the db_input priority high.
For those more technical users who want to do non-interactive installs (ie. for something like a docker config) I've updated the README.md file with instructions for pre-answering the autostart question.

Hmm, that's unfortunate. We can keep that in mind for future improvements if people actually find it a problem. The interactive default is imo more important now.
Steve Myers<EMAIL_ADDRESS>schreef op 13 september 2015 23:42:48 CEST:

@Beanow unfortunately the default debconf behavior is to only ask
users questions marked with priority high.  I've tried testing
with sudo gdebi -o APT::Get::Assume-Yes=true to simulate
apt-get install -y , but that option seems to be ignored for
debconf questions.  Since I believe the most common installation
case is interactive I'm leaving the db_input priority high.
For those more technical users who want to do non-interactive installs
(ie. for something like a docker config) I've updated the README.md
file with instructions for pre-answering the autostart question.

Reply to this email directly or view it on GitHub:
https://github.com/bitcoinxt/bitcoinxt/pull/71#issuecomment-139921240

I was OK with the autostarting - it's pointless to install a Bitcoin node and then not actually use it. But I'm happy to delegate the Debian stuff to you, so will merge this now.

Merged, thanks!

Thanks Mike!  I'll keep an eye on feedback to see if we need to keep it this way.
One nice thing about debconf is how ever you answer it won't ask you again (unless you removed the pkg first with a apt-get purge).  So updates will always be non-interactive.


All tests and functions

add tests and all functions

Can you remove get_user_and_dataset_name and get_photo_name from all cloud functions? (but import them from file_path_utils.py)?
You'd prefer to have a single PR vs 4 PRs? I think 4 PRs are better.

Yup, I can do 4, just thought earlier one would be quicker. I'm about to send in another PR on this branch, and when you approve it I can just update the code on the other branches and hopefully there will be no conflicts

Can you remove get_user_and_dataset_name and get_photo_name from all cloud functions? (but import them from file_path_utils.py)?
You'd prefer to have a single PR vs 4 PRs? I think 4 PRs are better.

Yup, I can do 4, just thought earlier one would be quicker. I just sent in another PR on this branch, and if you approve it I can just update the code on the other branches and hopefully there will be no conflicts

The change looks good (but please remove all other tests except file_path_utils_test.py) and creating a new PR sounds ok, too (but why not modify this PR?)

Can you remove get_user_and_dataset_name and get_photo_name from all cloud functions? (but import them from file_path_utils.py)?
You'd prefer to have a single PR vs 4 PRs? I think 4 PRs are better.

Yup, I can do 4, just thought earlier one would be quicker. I just sent in another PR on this branch, and if you approve it I can just update the code on the other branches and hopefully there will be no conflicts

The change looks good (but please remove all other tests except file_path_utils_test.py) and creating a new PR sounds ok, too (but why not modify this PR?)

Hm ok, I don't see the ones outside of file_path_utils_test.py, but maybe I'm missing them? Could you point them out to me in the file you saw them in?
And sorry, I thought you wanted me to finish this branch and then work on the other 4 PRs that I already have open?

Can you remove get_user_and_dataset_name and get_photo_name from all cloud functions? (but import them from file_path_utils.py)?
You'd prefer to have a single PR vs 4 PRs? I think 4 PRs are better.

Yup, I can do 4, just thought earlier one would be quicker. I just sent in another PR on this branch, and if you approve it I can just update the code on the other branches and hopefully there will be no conflicts

The change looks good (but please remove all other tests except file_path_utils_test.py) and creating a new PR sounds ok, too (but why not modify this PR?)

Hm ok, I don't see the ones outside of file_path_utils_test.py, but maybe I'm missing them? Could you point them out to me in the file you saw them in?
And sorry, I thought you wanted me to finish this branch and then work on the other 4 PRs that I already have open?

This is what I see:
https://screenshot.googleplex.com/EPqUPsuueWb.png
(From https://github.com/jdstriker731/MLplayground/pull/19/files, after collapsing all of the file views).

Can you remove get_user_and_dataset_name and get_photo_name from all cloud functions? (but import them from file_path_utils.py)?
You'd prefer to have a single PR vs 4 PRs? I think 4 PRs are better.

Yup, I can do 4, just thought earlier one would be quicker. I just sent in another PR on this branch, and if you approve it I can just update the code on the other branches and hopefully there will be no conflicts

The change looks good (but please remove all other tests except file_path_utils_test.py) and creating a new PR sounds ok, too (but why not modify this PR?)

Hm ok, I don't see the ones outside of file_path_utils_test.py, but maybe I'm missing them? Could you point them out to me in the file you saw them in?
And sorry, I thought you wanted me to finish this branch and then work on the other 4 PRs that I already have open?

This is what I see:
https://screenshot.googleplex.com/EPqUPsuueWb.png
(From https://github.com/jdstriker731/MLplayground/pull/19/files, after collapsing all of the file views).

Thanks for the location, just took it out

Great! If you can, can you actually move all this changes to:
https://github.com/jdstriker731/MLplayground/pull/11
Because that's the one you linked to your self-evaluation.

Great! If you can, can you actually move all this changes to:
#11
Because that's the one you linked to your self-evaluation.

Done!


Question: What is the best way to compare animated gifs?

From what I can tell while using this crate, the comparison functions seem to just use the first frame of an animated gif for comparison, not all frames.
To get around this, I was considering trying to compare frame by frame manually or by stacking them into a "sprite sheet" of each frame.
I feel neither of these are particularly good solutions, but I'm not really certain what the best way to go about this problem is. Do you have any suggestions?

Hi!
sorry for my delayed answer and happy new year.
So regarding your question I have several remarks or suggestions.
What is the goal :)
First of all, you should think about what you want to measure, do you want some strictly mathematical comparison or do rather want to model the perceived difference by a human.
The second question we have to clarify is if your input gifs are always of the same temporal resolution (the same frames per second).
How similar is your input wrt temporal resolution
Since it only makes sense to compare frames at the same point in time, it might require you to interpolate the higher resolution one to the exact times of the lower resolution one.
E.g.
Gif1 has 33fps, Gif2 has 50. It makes sense to use every frame of the 33 fps video and interpolate between the 50fps version frames since interpolating between closer frames reduces the temporal interpolation error.
The comparison
One dimensional approach
Assuming we now have two image stacks with identical temporal resolution and we just want "some diff", we are probably fine using the similarity of the hybrid compare for each frame. The score can then be either just averaged (no need to absolute them here) over all frames or root-mean-squared (sqrt(sum(score*score)). Both are valid choices, see any RMS vs Average Absolute Deviation discussion.
Two dimensional approach
While the above will yield some similarity, it will not be very sensitive to anything close to perceived difference. For perception, the problem becomes multidimensional.
1.) How different are the single frames of the two images \del_x(i) = ||A[i] + B[i]|| / 2 (lets call the image-dimension x)
2.) How temporally stable are the frames inside each image \del_t(A, i (should be t)) = ||A[i] + A[i+1]  +A[i-1]|| / 3 (and the temporal dimension t)
3.) How temporally stable are the differences between the frames \del_xt(i (should be t)) = (\del_x(i) + \del_x(i+1) + \del_x(i-1)) / 3
The first point was discussed already, but for the second dimension imagine the following:
Both imagestacks are stable e.g. each frame is identical. Any difference will be more easy to spot for a human then say an animated explosion with a single wrong frame. I would suggest taking the hybrid-similarity between temporally adjacent frames into the model, maybe as a floating average over something distinguishable by humans e.g. 1/20s or so. In the equation above i just used 3 to clarify the idea. If the difference is higher just down-weight any difference between the two frames of the two images.
The third point is stability of the difference. If a single frame of a temporally correlated image stack is completely different it might not be noticed if short enough. The longer difference persists, the stronger the perception of the difference will be. As an example: Think of a 100 fps image with 4 frames per second being totally different but nearly equidistant in time: frame 2, 33, 66, 99. It will be harder to spot these than 4 adjacent different images because the brain just gets more time to process the differences.
So this would be my first shot for modeling something like a perception-like difference metric between temporally equidistant image stacks.
Kind regards!

Wow, this was a significantly more detailed of a response than I was expecting! You've definitely given me a lot to think about in how I want to approach this problem.
I'll give you some more context on what my goal is here. I have a website that I maintain for fun which hosts ~8124 custom emojis from various slack servers and discords I'm in to make them easily accessible to others. https://abbedu.to/emojis if you're curious.
For a while I've been working on a admin feature to be able to bulk upload a large list of emojis from new slack servers I join. For any new emojis that have the same name as an existing emoji, I want to compare the new one to the existing one to see how similar they are.

If they look similar enough, then they are likely the same image and I'll merge their data together automatically
If they look different enough, then they are likely different images, and it's up to me to manually determine what to do in those scenarios

So I'm looking for human perceived difference in images.
Obviously I quickly ran into the issue of animated gifs as I stated in my initial issue. If you're serious about your offer to work on a gif comparison function, I would greatly appreciate it! But in the meantime I could definitely create something to work at a basic level given your feedback/suggestions.
Another issue I started running into is that rgb_hybrid_compare takes an Rgb8 image. Specifically the fact that it doesn't support transparency. When using DynamicImage::into_rgb8(), the transparency is dropped and any parts of the image that were transparent become whatever the pixel values were set there, which most of the time seems to be RGB(0, 0, 0) (black). This is problematic for my use case as images like thank-you-simple.png or amd.png become pitch black and then look 100% similar according to the algorithm. Is there any specific reason that you don't support Rgba8 images?
In case it wasn't clear by now, I don't understand the math behind image comparison in the slightest. BUT I would be happy to learn if you have any resources you'd suggest on how to understand this stuff because a lot of the details you had in the math went straight over my head. I really appreciate you responding at all let alone with so much detail. Thank you so much!

Heyho!
Thanks, nice to hear it helped you. Since it's pretty late here (for a dad who needs to work tomorrow 😂) I would just quickly sheet answer the alpha question: it's not trivial to reason how alpha should be taken into account wrt perception. transparency is complex. I could think of at least three ways to take it into account but we would need data to check whether their respective results make sense.
Initial 💡:
1.) Mssim over alpha and just add to hybrid rating, differences in transparency are perceivable after all, probably similar to grayscale structure.
2.) Weight hybrid score with alpha, the more transparent the lesser the visible difference.
3.) Both.
If you are interested I can implement that on a branch and you try to find / make some test data for it to evaluate which works best. Seems like you have a lot of similar images on your server.
Regards and good night 🌃
Chris

@cole21771  I am currently working on an RGBA Version of the hybrid compare. Would you mind testing it?
You can find it on the branch "0.3.0-dev" and I provided the same API as known from the 0.2.x series.
I would like to revamp the API of the crate for 0.3.0 so please don't take this API for stable.
I would love some feedback on this from you, especially if the numerical results are good enough for you to solve your problem.
Regards
Chris

Hey @ChrisRega, I really appreciate you looking into this for me! I kept forgetting to get back to you as I've been busy these past few weeks with other things. I had a quick chance to look into it to see how well it works and it seems to be giving some majorly inflated scores for images that the previous algorithm didn't think were nearly as similar.
I have a bunch more interesting image comparisons if you need more examples of interesting findings. So please don't hesitate to ask if there's something I can help you with. Here's a few I took the time to investigate:
Examples
Notes

"Old Score" refers to letting DynamicImage::into_rgb8() convert the emoji from transparent to not. It seems to just take any transparent pixels and make them black.
"Old Processed Score" is my messing around version of trying to temporarily improve it. The last version I had running does the same as into_rgb8, except instead of making transparent pixels black, it makes them white.

Tesla Logo
https://emoji.slack-edge.com/T8U2SMNKG/tesla/832105356ddd0c58.png
https://d3kykrewn4qzx5.cloudfront.net/tesla.jpg
These images are obviously similar to a human, but I would not want the algorithm to think they are the same due to the color difference, the transparency differences, and the added text at the bottom.  I find it really strange that even my old processed score thought they were 46% similar.
New Score: 0.4181016683578491
Old Score: 0.008480727672576904
Old Processed Score: 0.4677591323852539
Goose
https://emoji.slack-edge.com/T8U2SMNKG/goose/9fbeb19ac2225b54.png
https://d3kykrewn4qzx5.cloudfront.net/goose.jpg
Once again, these are both obviously pictures of a goose. But one is from a game and the other is a real life goose and they look nothing alike. I have no clue why the new score thinks they're so similar, I would love to hear your theory on that since I don't understand the math at all.
New Score: 0.3890223503112793
Old Score: 0.016255812719464302
Old Processed Score: 0.06096023693680763
200
https://emoji.slack-edge.com/T8U2SMNKG/200/e5388944a0cc701f.png
https://d3kykrewn4qzx5.cloudfront.net/200.png
Similar images of 200. The second one obviously mocking the first one. I'm impressed that it finds them 44% similar and I would somewhat agree with that score if you ignore the lack of transparency on the second one. But unfortunately, that's where the big concern lies. The white background on the second one I would expect would make them seem significantly more dissimilar.
New Score: 0.44058308005332947
Old Score: 0.1358027458190918
Old Processed Score: 0.43305855989456177

@cole21771 that's super interesting, thanks for the data. Could you provide the final input data to the algorithm, just so I can reproduce the numbers here. Especially interesting would be the one where the difference is so high.
Thanks in advance for your help and effort
Chris

Sure, I'd love to give you some data to help you out. Is there a way that you had in mind that I could get you that data? I'm not certain how I would be able to get you any data in another format other than the pngs themselves like I did with the links above.
As of right now (ignoring the old processed score) I'm just doing a resize with Lanczos3 to make sure the image sizes are the same and then calling rgb_hybrid_compare vs rgba_hybrid_compare. For the rgb images, I'm just using DynamicImage::into_rgb8() to convert a rgba image into rgb.

@cole21771 yes that's exactly the data I would need. Just save them to png after preprocessing and send them to<EMAIL_ADDRESS>please :)
Then I'll have a look the next days.
Thanks in advance
Chris

Hello @cole21771
Sorry for the long absence, had some minor health issues that stacked up. But I am back now :)
So, I just had a look at the bottom two images - there was a bug on the branch with the alpha weighting on the similarity.
With the commit from just now, I get:
Goose: 0.01106379833072424
200: 0.007834967225790024
That sounds reasonable to me, I also improved the visualization of the diffs a bit, see the attached images. Could you check whether this fixes your issues?


⚠ Bofrost.lu has degraded performance

In 52909e9, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1439 ms

Resolved: Bofrost.lu performance has improved in 7c6ea7b after 6 minutes.


Ask pyup.io to ignore the toolbox

What is the purpose of this Pull Request?
#103 actually fixed the version of serenata-toolbox, so we'd need to wait for a PR (even an automatic PR from pyup.io) to guarantee we are working with the newest version of this package — this is not cool.
What was done to achieve this purpose?
I asked pyup.io to ignore the package so every time we pip install it we get the most recent update.
How to test if it really works?
My suggestion:

pip install a really old version of the toolbox
pip install -r requirements.txt and check if the toolbox was updated

Who can help reviewing it?
@anaschwendler

Hi @cuducos, to test this PR I think the best is to run the requirements.txt and if it runs well this might not influence in the enviroment.

Clone the project:

$ git clone git@github.com:datasciencebr/rosie.git

Change to Rosie' folder:

$ cd rosie

Change to the tested branch:

$ git checkout -b cuducos-keep-toolbox-updated origin/cuducos-keep-toolbox-updated

Merge its content:

$ git merge master

Run the new Docker commands:

$ docker build -t rosie .

Result:
Collecting serenata-toolbox (from -r requirements.txt (line 7))
  Downloading serenata_toolbox-12.2.2-py3-none-any.whl

So it does not influence on the code ;)


Dont run (mobile) github actions (for required checks) if there is no need

In #24407 a change was made to not use the paths feature in github actions to exclude checks
this was done to ensure that the checks could be required for PRs to pass
the problem with this approach is that it pulls a full copy of the repo and is much slower than using githubs paths (which afaict uses its own diff algorithm against the target branch, and perhaps pre-checksout the repo - not sure about this exactly)
in more recent version of the github actions/checkout action the default is to pull the repo with a depth of 1, so the current mobile/should_run_ci.sh script, where it assumes that the full repo is checked out, breaks (this is easy enough to workaround but just hightlights the issue)
i think we can speed this up and reduce the load on CI considerably by reverting to using the paths selector and adding the github way of allowing a required check to pass when skipped (https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks)
like the azp way its a bit kludgy but it think it would be quite a bit faster/more efficient

cc @jpsim @alyssawilk
i was going to comment something similar on the PR but it landed before i had gotten round to reviewing it

i think we can speed this up and reduce the load on CI considerably by reverting to using the paths selector and adding the github way of allowing a required check to pass when skipped (https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks)

Oh nice, I wasn't aware that this was possible.


fix: dex missing compiler issue through in-app browser

Previously our goal was to completely remove our dependency on http compiler, resolving this issue (I'm not sure what exactly is the problem) like that is a step back in my opinion.

I completely agree with you, the issue is that I suppose the DEX is relying on the compiler for some actions.
If you try to reproduce the linked issue you'll see that we get an error that the compiler is not ready.

CompilerHttp has been deprecated. Same functionalities available using the JS lib https://github.com/aeternity/aepp-calldata-js
This issue should probably be fixed in the DEX


Fix  issues with c() in function args

Uses the match pattern for functions from the textmate R grammar in place of the previous function pattern. I don't have experience with using textmate grammar, but from testing on my code I haven't seen any issues thus far. If anyone is more knowledgeable with textmate and would like to chime in, that would be greatly appreciated :)
The grammar's repo indicates that there shouldn't be any licensing issues either.
What problem did you solve?
Fixes #713 and incidentally #120.
How can I check this pull request?
The following should not have issues with text decoration when using the PR.
# issue 713
fun <- function(a, c = c("a", "()"), d) {
    function body, not a quoted string
}

# issue 120
f <- function(a=c("a", "b", "c")) {}

As I wrote in the comments https://github.com/REditorSupport/vscode-R/issues/713#issuecomment-885423686, do you need to remove the link to the R-Box which is already archived?
Anyone who comes to this repository looking at the vscode source code can be confused.

Thanks for the reminder! I've removed the statement, as modifications to the syntax should be made here anyway


Importing components in .mdx files error (react native)

Bug Report
Describe the bug
Docz cannot find exports to insert components in .mdx files.
To Reproduce
I am building a react native project with expo. I am also using TypeScript. I would like to integrate docz for documentation. However, I am not able to import components into my .mdx files. I had found an issue describing this same issue and that issue was resolved by adding
export default {
    typescript: true
}

to the doczrc.js. However, this does not work for me, because that produces another error, which has something to do with Webpack I think. This produces the following error when building the development server:
 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (12:37)

File: ../node_modules/expo-asset/build/PlatformUtils.js:12:37

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (130:8)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedBezier.js:130:8

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (13:44)

File: ../node_modules/expo-asset/build/EmbeddedAssets.js:13:44

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (13:7)

File: ../node_modules/react-native/Libraries/Image/AssetRegistry.js:13:7

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (13:7)

File: ../node_modules/react-native/Libraries/Image/AssetSourceResolver.js:13:7

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (13:7)

File: ../node_modules/react-native/index.js:13:7

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (14:11)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedCall.js:14:11

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (18:12)

File: ../node_modules/react-native/Libraries/Image/resolveAssetSource.js:18:12

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (36:6)

File: ../node_modules/react-native-reanimated/lib/reanimated1/Transitioning.js:36:6

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (48:32)

File: ../node_modules/expo-constants/build/Constants.js:48:32

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (4:12)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedClockTest.js:4:12

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (65:8)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedOperator.js:65:8

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (69:40)

File: ../node_modules/react-native-reanimated/lib/createAnimatedComponent.js:69:40

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (6:16)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedClock.js:6:16

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (6:7)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedAlways.js:6:7

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (7:12)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedCond.js:7:12

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (7:12)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedStartClock.js:7:12

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (7:12)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedStopClock.js:7:12

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (7:7)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedSet.js:7:7

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (7:8)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedBlock.js:7:8

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (83:10)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedNode.js:83:10

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (8:7)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedFunction.js:8:7

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (98:13)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedEvent.js:98:13

 ERROR #98123  WEBPACK

Generating development SSR bundle failed

Unexpected token (9:10)

File: ../node_modules/react-native-reanimated/lib/reanimated1/core/AnimatedDebug.js:9:10

not finished Building development bundle - 5.390s

I do not know what to do about this error, since I cannot find anyone who has the same problem.
Expected behavior
I would expect the component to be imported in the .mdx files and working as it should.
Environment

docz version: 2.3.1
OS: MacOS Big Sur 11.2.3
Node/npm version: Node v14.15.4, yarn 1.22.10

hey @cristianpjensen, thank you for reporting this! Try to do this following https://github.com/doczjs/docz/issues/1637#issuecomment-897427356, and let me know it goes.
As far we noticed, there are some quirks in react-native that we're still not supporting properly, but maybe this workaround will work for you.

Hello @renatobenks, thanks for your quick response. I tried your suggestion, however, it did not change the situation. I also tried your suggestion without typescript: true, however then it is not able to find any exports.
So, the situation is that whenever I remove typescript: true from doczrc.js, it cannot find any exports, but when I add it, some error occurs regarding webpack. I have no experience with webpack, so I do not know what it means.

After further investigation of the other error, I think it has something to do with it not installing my dependencies to the Gatsby website. When I add typescript: true, it is able to find the exports, but it cannot find the dependencies that those exports rely on. I think, but I am not sure if this should even produce a problem.

@cristianpjensen did you try to put the src option as well? Well, based on the error shown above, the webpack has been unable to parse your dependency files to build the gatsby project, so I believe it's because docz is properly configured, so try to follow this example to see what you got: https://github.com/doczjs/docz/blob/main/examples/react-native

how it worked to you @cristianpjensen, can we close this one?


Make temporary plane more internal in motion estimation

The temporary plane need not be provided by the caller of sub_pixel_me() and telescopic_subpel_search().
Expose it only when it allows to avoid reallocations between several function calls.
Also, the callers of diamond_me_search() need not provide the optional plane; they just need a flag to enable subpixel motion estimation.

Coverage decreased (-0.007%) to 82.11% when pulling 7e05914dd2d6af93c8da8e3c65f313130e243e54 on rom1v:tmpplane into 537679d058ab6928b3af4abba2f6764c13064a27 on xiph:master.


HTML comment between text nodes causes DOM rendering error

Version
v2.12.1
Reproduction link
https://codesandbox.io/s/brave-shockley-1js8l
Steps to reproduce
Just type HTML comment between any text nodes:
<div>
text1 <!- comment --> text2
</div>

What is expected ?
Nothing at all
What is actually happening?
Error:
[Vue warn]: The client-side rendered virtual DOM tree is not matching server-rendered content. This is likely caused by incorrect HTML markup, for example nesting block-level elements inside < p >, or missing < tbody >. Bailing hydration and performing full client-side render.
If the HTML comment is located in some component then other components on the same Page might be duplicated without any reason! It means double mounted() calls in those components.
Additional comments?
Spent 3 days to find the bug!

This bug report is available on Nuxt community (#c10454)

You can add comments  attribute to template tag, like this <template comments>.The reason for this problem is that vue resolves to two vnodes when it meets a comment.


[SMALLFIX] Resolve test flakiness.

Journal recovery also comes with consistency checking which may take longer.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12286/
Test PASSed.


Japanese translation

I translated all message into Japanese and I publish it here now.
If this plugin use my Japanese translation by default, I will be happy :)
File is renamed from messages.yml to messages.txt to upload.
messages.txt
Since this plugin has too many translation, I could not test all message.
So some mistranslation may be found.

Thank you again, we now have a builtin JP language option.


Redesign GUI

For 2.0, we should look at a substantial redesign of the GUI.
A few features worth considering (feel free to add yours)

Resizable output box
Separate formatting for stderr than stdout
Elevation of exceptions from the eval, i.e., do something different than just stderr
Better left/right management of code box & rendering in edit mode.
Sizing hints for code blocks? Can we add a rows parameter or something to the ```javascript
Re-evaluate workflow (including documenting current expectation)
Flesh out  use cases and user model

To-do

[ ] Domain Map
[ ] User Model
[ ] Engagement Model
[ ] Context Model
[ ] Content Models
[ ] Paper Prototypting?
[ ] Visual Design
[ ] HTML/CSS and assets implementing design

/move to satyrnjs/satyrn


Can't precompile Forecast due to missing source file

added using
] add https://github.com/viraltux/Forecast.jl
(@v1.6) pkg> precompile
0 dependencies successfully precompiled in 3 seconds (275 already precompiled)
ERROR: The following 1 direct dependency failed to precompile:
Forecast [6efb3b9f-b065-4dd1-b1a5-fac2350e161b]
Error: Missing source file for Forecast [6efb3b9f-b065-4dd1-b1a5-fac2350e161b
New to Julia, please advise on how to get more detailed information on this error if required.

I am getting a different error:
ERROR: Unsatisfiable requirements detected for package Plots [91a5bcdd]:

I had the same issue while trying to install Forecast today. The error did not go away when I deleted the registries or reinstalled the package.
Error: Missing source file for Forecast

I suppose @viraltux uses a linux machine where the file names are case-sensitive and has 2 files with same name (multiple) modulo the case. When git tries to pull it it randomly keeps one file. I created a fork of it renaming some of the files. I couldnt get git to work properly with it, until @viraltux fixes this I suppose if anyone needs it in mac/windows, here is a fork (without any history, i couldnt get git to play nicely), https://github.com/yellowflash/Forecast.jl


Add support for uploading IPA to DeployGate

Coverage decreased (-1.26%) to 89.41% when pulling dda029684515bba8cbaecefbd5b43948929ffa3a on deploygate into 834e43944f9481c696e3a130678be9b98040736a on master.

Coverage increased (+0.69%) to 91.36% when pulling c7f8772882037da946fa666b4695afe03af80b40 on deploygate into 834e43944f9481c696e3a130678be9b98040736a on master.

Coverage increased (+0.69%) to 91.36% when pulling c7f8772882037da946fa666b4695afe03af80b40 on deploygate into 834e43944f9481c696e3a130678be9b98040736a on master.


Allow editors to change their display name on Cofacts site

Fixes #64

Coverage decreased (-0.3%) to 88.315% when pulling 3f4b50761a41d59c1a30b7cf868824e1a22931a8 on 64-edit-name into 2b39601ea100351bc41b3edaeb826f53a28d995f on master.


Jest Testing Feedback

I have migrated my unit tests to Jest and this is my feedback about it:

Webpack is poorly supported, reason I precompile my Apps before testing. Is not a big deal, though.
Jest support snapshots, for which to support is simple enough by converting the rendered DOM to JSON. But, it should be nicer if there was some standard way doing this. I guess this rise the idea of creating official testing utils, which is not new if I recall.
I think Jest relaunch everything on each test because the message You are running Vue in development mode... rise each time. Is kind of annoying. Vue only rise it on production mode and if inBrowser (if window global variable is defined). Adding a check for 'testing' environment could help solve it, as using the min version is not ideal during testing.

Beside that, I found the experience using Jest satisfactory. From having about 6 heavy testing dependencies now I only have one that gets installed fast. And its watch mode is awesome!

@blake-newman Has been testing this as well, me may provide some feedback too

I have just discovered jest-vue-preprocessor, which, once @vire merges the PR from @blake-newman, saves the need to use webpack and simplifies the process. Thanks for that!

Hey,
Yes been playing around with Jest recently.
The processor needs a little fine tuning, possibly the ability to hook in to apply custom languages.
One issue to highlight is that coverage reports do not currently map back correctly. Been experimenting to get support but it's a little tricky.
Possible if we can provide sourcemap to jest for its internal coverage mechanism. At the moment I don't think it's fully possible, however I could just be missing something.

In deed, the preprocessor, even with your updates, is not compiling well. In some components I got missing the entire props definition, for example. Getting back to precompile with Webpack...
I'm not in a need for the coverage at the moment, but anyway, it should be getting better with time. For now, I am satisfied.

@miljan-aleksic: @vire want me to let you know that he is of the keyboard until Thursday so he will take look at that PR when he will get back

Ok @elmariofredo, I will check it out once again then and report the issues I found. Thanks!

@elmariofredo Thanks for the update. No rush for now @miljan-aleksic you can use an exotic reference to my branch in package.json if you with to test the PR out.
jest-vue-preprocessor<EMAIL_ADDRESS>

@blake-newman, I know :)
Already tested it and it works but found some new issues which I think is better to address once current changes merged.

@blake-newman your PR is merged!

I'm running into an issue regarding CSS Modules. When I use the pre-processor for Jest, the $style property isn't getting created, so attempting to render a template breaks because $style is undefined. I haven't found any pre-processor scripts to take care of this, I'm not seeing it in vueify, and I can't reason about vue-loader well enough to determine how to do it from there.

@joezimjs, by experience I can say the Vue jest preprocessors are not mature enough. I opted to build pre testing and as running another build while in jest watch mode would trigger the tests to run again, it's pretty good.

So how does that work? Does your build include the Jest spec files? If so, how do you set up that webpack config?

I just separate the two steps. First build my package and then use the dist/ files for the testing. You can check a working example in Vuikit next branch. In the tests there is an util file which loads Vue and Vuikit dist directly.
Is not perfect but if want to start experimenting with jest, is a good start.

@miljan-aleksic That's completely different from what I'm trying to do. I'm building an application, so my bundled file is a file that runs immediately and doesn't export anything, so just importing the bundle doesn't help me one bit.

@joezimjs, you have a build process that on the end returns a script or code you want to test. Firing the build during or before the tests execution, is exactly the same to jest. If your autoexecutable script is testable, then does help you, a lot. If you still think it doesn't, please open a new issue, as it would be unrelated to this topic.

@miljan-aleksic The build process returns an entire application. The tests want to test individual pieces of that application which I cannot get access to by importing the bundle.
This does belong in here because it is feedback on testing Vue with Jest. The issue is that .vue files need some sort of processing before it can be used by a script. What's needed is some sort of utility that can fully process a single .vue file and spit out a JavaScript module, like what vue-loader does, except it needs to work outside of webpack, unless there's a way to use webpack to handle individual files and do it without changing the module system.

@joezimjs, you can always create a separate build that will return the functions and features you want to test without the in production execution.
Seems you are referencing the jest vue preprocessor.

The separate build is definitely not great because I have to create a new entry file that is similar to your lib/index.js file that imports everything that I need to test and then re-exports it. This means I have to edit this file every time I want to test a new file. Seems like it should work, but it also seems like something we shouldn't need to do.
jest-vue-preprocessor works great except it completely ignores the styles section, so CSS Modules break because there is no $style property on the vm.

If you are testing your vue components, you should test them separately and isolated, mocking the data and environment. For such, having one index build with all your components, like in Vuikit, would do the job. If you are testing how your entire App behaves, it workflow, etc. perhaps jest and the domjs is not the best tool for the case.

You're right, and right now the index build is probably the only way to go, but it's something that shouldn't be necessary. So my feedback for Jest testing is that it's unnecessarily difficult to test .vue components when you are using CSS Modules.

Cristian Carlesso just published an awesome post about Jest and Vue. Time to refactor my workflow!

Closing as we don't have much actionable items here, but the the community has come up with decent solutions getting the two work together. We will likely have some guide once the official unit test util is published.

We used all the good stuff mentioned here together on our search UI components library: https://github.com/algolia/vue-instantsearch.
I took us some time to put everything together, but working very well now.
the only issue we have so far, is that we need to compile CJS build prior to testing Vue components.
We use Rollup with the Vue pre-processor plugin mentioned in this thread & Jest (with snapshots).
Cristian Carlesso inspired us a lot on our current setup!

@rayrutjes Do you have code coverage working for you? Did you happen to encounter the same issues I describe here?


[ITensors] Improve type stability of svdMPO and qn_svdMPO

Description
This PR improves the performance of svdMPO and qn_svdMPO which are called from MPO(os::OpSum, sites::Vector{<:Index})::MPO.
My research has revealed the following:
Getting ValType = determineValType(terms(os)) inside the method svdMPO and defining Vs = [Matrix{ValType}(undef, 1, 1) for n in 1:N] without type annotation causes type instability.
Type instability causes the following code sections to run slowly.
https://github.com/ITensor/ITensors.jl/blob/b54e8d74d528f2dac481f1115ed7b7117296352d/src/physics/autompo/opsum_to_mpo.jl#L96-L113
If practical and applicable, please include a minimal demonstration of the previous behavior and new behavior below.
Minimal demonstration of previous behavior

Step1: Prepare the following Python script to generate the test data:

# qph.py
from openfermion import MolecularData
from openfermionpyscf import run_pyscf

# pip3 install quri-parts-openfermion
from quri_parts.openfermion.transforms import jordan_wigner

basis = "6-31g"
multiplicity = 1
charge = 0
distance = 1.6
geometry = [("Li", (0, 0, 0)), ("H", (0, 0, distance))]

pyscf_molecule = MolecularData(geometry, basis, multiplicity, charge)
molecule = run_pyscf(pyscf_molecule)
n_orbs = molecule.n_orbitals
n_elecs = molecule.n_electrons

op_mapper = jordan_wigner.get_of_operator_mapper()

n_active_orbs = 8

qubit_count = 2 * n_active_orbs
hamiltonian = molecule.get_molecular_hamiltonian(
    range(n_elecs // 2), range(n_active_orbs)
)
qp_h = op_mapper(hamiltonian)

li = []

for pauli, c in qp_h.items():
    ps = []
    for i, p in pauli:
        ps.append((i, p))
    li.append(pauli)

print(f"N={qubit_count}")
print("paulis = [")
for e in sorted(li, key=lambda g: len(g)):
    if len(e) == 0:
        continue
    sorted_list = sorted(list(e), key=lambda e: e[0])
    sorted_list = [(1 + s[0], s[1].name) for s in sorted_list]
    out = "    ["
    seqs = []
    for s1, s2 in sorted_list:
        seqs.append('"' + s2 + '"')
        seqs.append(str(s1))
    out += ",".join(seqs)
    out += "],"
    print(out)
print("]")

Step2: Run the following command:

python qph.py > paulis.jl

It will create a file paulis.jl.
You can also find paulis.jl from my gist.

Step3: Prepare the following Julia script mpo_bench.jl to show our Pull Request improves performance for creating MPO.

# mpo_bench.jl
using ITensors

include("paulis.jl") # export paulis, N

for conserve_qns in [true, false]
  sites = siteinds("Qubit", N; conserve_qns)
  os = ITensors.OpSum()

  for p in paulis
    coeff = rand()
    os += ITensors.Ops.op_term((coeff, p...))
  end

  @time MPO(os, sites)
  @time MPO(os, sites)
  @time MPO(os, sites)
end

On main branch we have:
$ julia mpo_bench.jl
 26.777017 seconds (84.34 M allocations: 4.188 GiB, 5.44% gc time, 90.48% compilation time)
  2.426720 seconds (44.33 M allocations: 1.601 GiB, 14.37% gc time)
  2.540036 seconds (44.33 M allocations: 1.601 GiB, 13.92% gc time)
 29.800494 seconds (263.40 M allocations: 10.456 GiB, 8.58% gc time, 36.43% compilation time)
 20.952781 seconds (246.38 M allocations: 9.343 GiB, 9.42% gc time)
 16.334621 seconds (246.38 M allocations: 9.343 GiB, 9.50% gc time)

Minimal demonstration of new behavior
Our new pull request reduces the number of allocations and improves the performance of getting MPO(os, site).
julia mpo_bench.jl
 26.626078 seconds (44.08 M allocations: 3.383 GiB, 5.20% gc time, 95.01% compilation time)
  1.958892 seconds (6.27 M allocations: 968.143 MiB, 17.07% gc time)
  1.869094 seconds (6.27 M allocations: 968.143 MiB, 16.23% gc time)
 20.243849 seconds (21.06 M allocations: 6.434 GiB, 5.73% gc time, 46.55% compilation time)
 11.731973 seconds (3.96 M allocations: 5.315 GiB, 6.59% gc time)
  9.871340 seconds (3.96 M allocations: 5.315 GiB, 5.76% gc time)

How Has This Been Tested?
$ julia -q
julia> ]
] activate
] instantiate
] test

Checklist:

[ x ] My code follows the style guidelines of this project. Please run using JuliaFormatter; format(".") in the base directory of the repository (~/.julia/dev/ITensors) to format your code according to our style guidelines.
[ x ] I have performed a self-review of my own code.
[ x ] I have commented my code, particularly in hard-to-understand areas.
[  ] I have added tests that verify the behavior of the changes I made.

This PR does not break user interface.

[  ] I have made corresponding changes to the documentation.
[ x ] My changes generate no new warnings.
[  ] Any dependent changes have been merged and published in downstream modules.

No additional dependencies are required for this PR.

Codecov Report

Merging #1183 (aad8129) into main (b54e8d7) will decrease coverage by 18.23%.
The diff coverage is 50.00%.

:exclamation: Current head aad8129 differs from pull request most recent head c52861c. Consider uploading reports for the commit c52861c to get more accurate results

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@             Coverage Diff             @@
##             main    #1183       +/-   ##
===========================================
- Coverage   85.40%   67.17%   -18.23%
===========================================
  Files          88       87        -1
  Lines        8405     8371       -34
===========================================
- Hits         7178     5623     -1555
- Misses       1227     2748     +1521

Files Changed
Coverage Δ

src/physics/autompo/opsum_to_mpo.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/physics/autompo/opsum_to_mpo_qn.jl
97.07% <100.00%> (-2.34%)
:arrow_down:

... and 39 files with indirect coverage changes

Hi @terasakisatoshi, thanks a lot for the PR. Nice to see a relatively small change leads to big improvements in speed and memory allocations.
You're pull request inspired me to make my own here: #1184 that essentially implements the same design you suggest of creating a function barrier, but also updates some of the style of the surrounding code which I noticed was a bit outdated. Would you mind benchmarking that PR to see if it leads to the same performance improvements as this PR for your use case?
Also, it's neat to see that you are passing Hamiltonians generated by OpenFermion into ITensor. We have similar functionality in an experimental package called ITensorChemistry.jl which calls out to PySCF using PythonCall.jl. We found that generating the MPOs for generic quantum chemistry Hamiltonians can scale pretty badly with the number of orbitals, which was one of the inspirations for the package ITensorParallel.jl, which is based around splitting up the Hamiltonian into parts and generating sums of MPOs instead of a single MPO, which can be more efficient.

Also, it's neat to see that you are passing Hamiltonians generated by OpenFermion into ITensor. We have similar functionality in an experimental package called ITensorChemistry.jl which calls out to PySCF using PythonCall.jl. We found that generating the MPOs for generic quantum chemistry Hamiltonians can scale pretty badly with the number of orbitals, which was one of the inspirations for the package ITensorParallel.jl, which is based around splitting up the Hamiltonian into parts and generating sums of MPOs instead of a single MPO, which can be more efficient.

This advice is very helpful to me. I would definitely like to try the package you suggested.

Thanks for catching this issue!

It's time to merge?


Use QLDB

I have seen this article and I was wondering if in the future will be possible to setup the same thing with amplify-cli just like the AppSync+DynamoDB service is today.

Thank you for the feedback. I am tagging this as an feature request, for this to goto our product backlog.

+1

+1


Update step documentation

Update step documentation with examples, to show users how actually step is applied. Highlight the phrase about setting step in seconds and move to the beginning. Add mentioning of the dropdown visibility.

Yup, one of the current examples on the HTML Examples page is showing step="0.5" and it doesn't even work. You need to set step="1800" in order to get half hour (30 * 60 = 1800) intervals. The documentation should reflect that.

This is what we currently have in the demo:

The step property specified in seconds affects the resolution of the time picker and visibility of the dropdown. If step is less than 15 mins dropdown is hidden

I think there should be a separate demo with a step big enough to show dropdown.


Why PyHAT , when PHAT Sounds perfect.

Sounds fun too.
Look bro , My Stack is so PHAT!
From Websters
phatter; phattest
[Synonyms of phat](https://www.merriam-webster.com/thesaurus/phat)
: highly attractive or gratifying : [EXCELLENT]

Yes, someone actually mentioned this in one of the discussions. I've used PyHAT in a few talks and other docs, but I think it was always initially up for discussion. I like the visual of PyHAT with logo potential (snake with a hat 🐍 🤠 ),  but I agree that PHAT stack sounds better.
@benjamin-kirkbride any thoughts?

I would like to prefice everything I'm about to say with the disclaimer that I do not believe that being fat is wrong or a moral failing. Everything I think about and talk about below is me trying to explain how I think that decisions we make might harm our project, and harm others.
I also want to make it clear that I don't believe anyone advocating for "PHAT" is doing so with bad intentions, for what that's worth.

The reason that I have been opposed to "PHAT" in the past is because it is a homophone of "fat" and often used in slang to mean "fat". I do not want this project to be mired with accusations of fat-phobia, ablism, etc. It can kill a project when the name is controversial.
As far as the wold "phat" appearing in dictionaries to mean something else, here is what etymonline.com has to say:

hip-hop slang, "great, excellent," 1992, originating perhaps in the late 1980s and meaning at first "sexiness in a woman."  The spelling is attested as far back as 1678, as an erroneous form of fat (a classical over-correction; see ph).
In the modern word it is said by some to be an acronym, and supposed originals are offered: "pretty hot and tasty," or "pretty hips and thighs" among them, all unconvincing. These may have begun as improvised explanations to women who felt insulted by the word.

This is more or less what I thought it meant. I realize that the word "phat" does not have the exact same negative connotation as "fat" does. That said:

this is typically aimed at women (and seemingly also typically aimed at women of color), and seemingly it is aimed at women who do not appreciate being called that (associated with catcalling?)
I could easily see this being considered a form of benevolent prejudice, which is something that has become more widely known to be bad in recent years.

There are a lot of adjectives that are in theory "good", but have a history of being used by men to catcall, degrade, objectify, etc women. Many of these words also have a history of racial prejudices as well.
Examples:

curvy
thicc
spicy
foxy / vixen
juicy
chick

I think "phat" is also on this list. All that being said, I don't think that the word PHAT likely to cause harm to anyone, which is obviously the most important thing. But I do think that it may cause harm to the project. I agree it is a more catchy name, but PyHAT is pretty good too IMO.
It is hard for me to say "I think using PHAT is fine" because I am not fat, nor a woman, nor am I black (nor am I in the hip-hop scene).
Again I want to make it clear that I don't believe anyone advocating for "PHAT" is doing so with bad intentions.

Why? This is veering too much from official definition from various leading dictionary. I had looked into top Three dictionary and all return non sexist, or nothing related to fat.  I am 6 ft 250lbs and I am not offended by that.

This is veering too much from official definition from various leading dictionary

@v3ss0n dictionaries are for definitions, but they typically do not make moral judgement. One must consult etymological sources to determine the history, context, and connotation associated with a given word.
It's also worth mentioning that dictionaries are not the arbiters of "what words mean"; words mean what people intend and understand them to mean, and dictionaries aim to capture that, but dictionaries tend to not be great at accurately defining slang, and education/academia in general are notoriously discriminatory towards AAVE, so again discernment is required when researching these topics.
I consulted with the following sources in researching the above:

https://www.etymonline.com/word/phat
https://www.snopes.com/fact-check/chewing-the-phat/
https://en.wiktionary.org/wiki/phat#Etymology

In addition, I spoke with a woman who was into Hip Hop in the 80's when in re-surged in popularity in AAVE.