Conversation
|
@theborakompanioni I assumed that #564 could be merged and that there would be no conflicts with this PR. Turns out the assumption was wrong. To avoid this in the future, we could change the base branch of cascading PRs? In any case, I will review this again after conflicts are resolved. |
I thought so too. My fault. Yes, will change base branches of cascading PRs from now on. Sorry for the delay.
Conflicts are resolved. |
dergigi
left a comment
There was a problem hiding this comment.
Finally managed to review and test this PR, apologies for the delay.
Looks good to me, and I didn't run into any issues while testing. Performance improvement is substantial! Well done 🙌
tACK ✅
* chore(release): v0.1.4 * docs: add #566 to CHANGELOG
Resolves #356.
Based on #564.
Note: This is based on #564 - you can either review them separately or just review this one. Be aware that the change set is rather large. Unfortunately, this could not be avoided due to the deep impact of the new behaviour on nearly all components.
Before this commit, a request to API endpoint
/displaywas always triggered on almost every page load.After this commit, the request to
/displayis made when necessary.Users have reported that on
mainnet, this request alone can take up to ~20 seconds!The speed increase is also very noticeable on
regtestin your dev environment.Behaviour before
Requests to
/displaywere done when:MainWalletViewSendEarnJamBehaviour now
Requests to
/displayare done when:However, there are trade-offs! Now, one must know which data is needed on the current screen as opposed to just reloading all data. i.e. if
addressSummaryis needed, data from/displaystill has the be loaded.Also, it can be that the user is not warned when an address is reused. This is the case after sending to an own address. Before, if a second attempt to send to the same address is made, a user has seen a warning. Now, this warning is not displayed anymore. It can be mitigated by also scanning the UTXO addresses (not done in this PR!).
How to test
You can compare new and past behaviour by clicking through the UI on
localhost:3000(new behaviour) and onlocalhost:29080(past v0.1.2 behaviour). If you open these in two windows next to each other, the speed increase becomes apparent.