Commit Graph

5757 Commits

Author SHA1 Message Date
Roman Volosovskyi a1027cdfcc
[#10452] Keycard: updated PUK flow 2020-06-02 16:34:44 +03:00
Roman Volosovskyi 4021e957ea
[#10719] Change seed backup warning message 2020-06-02 12:58:32 +03:00
Andrea Maria Piana 9d7691312b
Fix topbar back-button flickering
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-06-01 13:51:05 +02:00
Andrea Maria Piana f69ae44d50
Improve chat loading performance
This commit does a few things:

Move collections top level

Move `messages`,`message-lists`,`pagination-info` from nested in
`chats` to top level at the db.
The reason for this change is that if any of the `messages` fields
change, any `sub` that relies on `chat` will be recomputed, which is
unnecessary.

Move chat-name to events

`chat-name` was computed dynamically, while it is now only calculated
when loading chat the first time around.

Remove `enrich-chats`

Enrich chats was doing a lot of work, and many subscriptions were
relying on it.
Not all the computations were necessary, for example it would always
calculate the name of who invited the user to a group chat, regardless
of whether it was actually used in the view.
This commit changes that behavior so that we use smaller subscriptions
to calculate such fields.
In general we should move computations to events, if that's not
desirable (there are some cases where we might not want to do that), we
should have "bottom/leaf heavy" subscriptions as opposed to "top heavy",
especially if they are to be shared, so only when (and if) we load that
particular view, the subscription is triggered, while others can be
re-used.

I have compared performance with current release, and there's a
noticeable difference. Opening a chat is faster (messages are loaded
faster), and clicking on the home view on a chat is more responsing
(the animation on-press is much quicker).
2020-06-01 13:50:49 +02:00
Gheorghe Pinzaru 5f7c795567
Remove usage of inline require
Revert translations

remove inline require

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-06-01 14:19:17 +03:00
Andrea Maria Piana e3815db497
Disable images in public chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-06-01 11:44:15 +02:00
Serhy 5720151484
Update e2e 2020-06-01 11:34:14 +02:00
Andrey Shovkoplyas f659cbf242
camera roll 2020-06-01 11:34:13 +02:00
Andrea Maria Piana 91bcd0c861
sending images over waku 2020-06-01 11:34:12 +02:00
Andrey Shovkoplyas 60d5815bde
images 2020-06-01 11:34:11 +02:00
Andrey Shovkoplyas 9a114128bc
[#10718] Update FAQ links
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2020-05-29 12:02:10 +02:00
Serhy 3181280bf5
Remove keyboard capability
Signed-off-by: Serhy <sergii@status.im>
2020-05-28 14:31:57 +03:00
hesterbruikman 6d937511ca
Removing all remaining multiaccount references
See all edits here: https://notes.status.im/DxYPvFWcQZGG2UIas2KJfw?view

Signed-off-by: Serhy <sergii@status.im>
2020-05-27 18:33:13 +03:00
Gheorghe Pinzaru d28ae1212d
Add animated list item into Quo
Change press animation ns

Add list item component

Fix pressable does not reset animation state

Improve long-press handling

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-05-26 13:53:40 +03:00
Jakub Sokołowski 2f65cedd2d
nix: replace grep and sed with AWK for parsing Gradle deps
The mess with regexes is hard to read and think about which is why it
had bugs with handling some Gradle formats.

It also lowers further the number of dependencies pulled from 785 to 744.

Changes:
- Added `gradle_parser.awk` script for getting dependencies from Gradle
- Changed the `deps.urls` file to contain full URLs to POMs
- Dropped the `deps.urls.old` part since `get_urls.sh` no longer exists
- Added `CLR` for learing line to `scripts/colors.sh`
- Wrote a new `nix/deps/gradle/README.md`
- Re-generated `nix/pkgs/go-maven-resolver/deps.nix`

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-25 19:34:56 +02:00
Roman Volosovskyi 335d2434f0
[#9661] Fix overlapping on puk code screen 2020-05-25 17:30:33 +03:00
Vitaliy Vlasov e26f5452b9
Do not use signer arg for keycard_signTypedData
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2020-05-25 17:03:25 +03:00
yenda 288c28df75
cljfmt src if there is no git diff
Signed-off-by: yenda <eric@status.im>
2020-05-25 14:34:30 +02:00
yenda e1074c7c01
fix #10591 error when scrolling account view
Signed-off-by: yenda <eric@status.im>
2020-05-25 14:32:26 +02:00
Vitaliy Vlasov ddbf7bc066
Temporarily fix Flipper dev-mode webview crashes
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2020-05-25 15:09:59 +03:00
Andrea Maria Piana 34755500d5
[Fixes: #10471] Parse markdown in chat subheader.
This commit adds parsing of markdown in the chat subheader.

Because of the added complexity performance are impacted but I have
also noticed that on each loading of the chat screen we calculate
alias & identicon through status-go, so that has been changed so that
they are returned from status-go.

Overall performance is now roughly identical, tested loading 150
one-to-one chats.

Another issue that I've spotted is that some `subs` are unnecessarely
recalculated (`active-chats`), when unrelated fields changes. I will
address this in a separate PR that should improve performance.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-05-25 14:03:24 +02:00
Jakub Sokołowski d0216674da
nix: use go-maven-resolver to fix nix-update-gradle
This Go package was implemented by me to avoid having to use Mavan or
Gradle to resolve all the dependencies for Nix:
https://github.com/status-im/go-maven-resolver

The Go tool is essentially a slightly smarter and more efficient version
of the `get_urls.sh` script, which was mostly slow due to the `mvn
dependency:list` calls and slow HTTP requests.

This takes down the `make nix-update-gradle` target to under 2 minutes
on my machine.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-24 18:08:05 +02:00
Churikova Tetiana 54ee386fb8
e2e: transaction custom token
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2020-05-22 11:30:03 +02:00
Andrea Maria Piana 789271f179
[Fixes: #5124] Fix rtl flag
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-05-22 09:55:05 +02:00
Serhy c68f734b98
Fixed typo
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2020-05-21 15:32:11 +02:00
jinhojang6 6344c765d3
Update translations and supported languages 2020-05-21 15:32:03 +02:00
jinhojang6 c9fc00bfd8
Add Play Store translations 2020-05-21 15:32:03 +02:00
Jakub Sokołowski 12e269d496
github-bot: drop PR checklist configuration
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-20 19:14:53 +02:00
Jakub Sokołowski 9500cd4543
nix: use clojure shells for run-clojure and run-metro
Otherwise we get issues with missing node modules.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-20 19:14:47 +02:00
Churikova Tetiana c3d14f1664
new e2e: stickers, share links, search
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2020-05-20 17:46:35 +02:00
Gheorghe Pinzaru 0ff6579fa3
Add animated buttons to Quo
Move haptic

Upgrade redash

Add button component

lint

Add button icon type

Add disabled theme

Add accessibility-label

Fix android color

Fix preview modal

Remove android ripple effect

test android

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-05-20 17:51:38 +03:00
Snyk bot 3481ab3c47
fix: test/appium/requirements.txt to reduce vulnerabilities (#10492) 2020-05-20 17:28:22 +03:00
Serhy 449cfd05b5
Flaky tests plugin and another capability
Signed-off-by: Serhy <sergii@status.im>
2020-05-20 16:27:18 +03:00
snyk-bot 3ac5a0ee1a
fix: test/appium/requirements.txt to reduce vulnerabilities
Signed-off-by: Serhy <sergii@status.im>
2020-05-20 15:57:27 +03:00
Jakub Sokołowski 883af7b57a
nix: add missing Gradle repo path in gradle shell
Also rename STATUSREACT_NIX_MAVEN_REPO to STATUS_NIX_MAVEN_REPO.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-20 13:59:49 +02:00
Jakub Sokołowski 0bec573eb3
nix: don't use gradle to patch node modules
Before in order to create `deps.nodejs-patched` the `deps.gradle` would
also have to be downloaded in order to patch `build.gradle` files with
path to the Gradle dependencies in Nix store.

It turns out just replacting lines referencing `mavenCentral()`,
`google()`, and `jcenter()` in `repositories` block is enough to make
Gradle properly fetch dependencies from repo provided via the command
line `-Dmaven.repo.local='${deps.gradle}` option.

This should reduce the required size for shells that don't use Gradle.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-20 10:50:29 +02:00
Jakub Sokołowski d494f3b267
nix: enforce xcode only for status-go for ios
According to gomobile docs Xcode is only necessary for iOS:

>For -target ios, gomobile must be run on an OS X machine with Xcode installed.

https://godoc.org/golang.org/x/mobile/cmd/gomobile

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-19 19:58:19 +02:00
Andrey Shovkoplyas 7731839693
[#10631] make it possible to debug webview in chrome on nightly
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2020-05-19 12:35:26 +02:00
Jakub Sokołowski 8a1704a064
nix: fix ios shell to use patched nodejs modules
This was missed in 604362958b

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-19 12:22:22 +02:00
Bitgamma 1cd58ceda8
restore Keycard 2.1 compatibility (#10673)
* change version of react-native-status-keycard
2020-05-19 12:43:43 +03:00
Andrea Maria Piana e158502819
Show text field as fallback for new content-types
When a new content-type is introduced, before we shown
"Unhandled content-type". Now we instead pull text if it's present,
otherwise we still show "Unhandled content-type". This makes for a
smoother upgrade path when adding new content types.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-05-19 11:18:36 +02:00
Churikova Tetiana d73cdbe26d
e2e: 10 participants in group chat
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2020-05-19 10:36:57 +02:00
Andrea Maria Piana 80c6a516d8
Denormalize message on replying
Before we stored only the message-id and had a subscription pulling the
message from the database when replying to the message.
This broke once we implemented offloading of messages, as the message
might not be in the database anymore.
This commit fixes the issue by storing the full message in the database,
so in the event of it being offloaded it is still shown.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-05-19 10:03:08 +02:00
Vitaliy Vlasov 6a42969e31
Pass requestArguments.params properly
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2020-05-18 17:02:18 +03:00
Serhy 84c31fcee0
Fix e2e by rerun in a case of TLS failure in emulator
Signed-off-by: Serhy <sergii@status.im>
2020-05-18 15:31:00 +03:00
Jakub Sokołowski 604362958b
nix: always use patched node_modules in shells
Becuase `clojure` shell used unpatched `node_modules` while the
`android` shell used the patched version when starting these shells
the `node_modules` would keep being switched between them wasting time.

Changes:
- Move `nix/tools/patchNodeModules.nix` to `nix/deps/nodejs-patched`
- Make `nix/deps/nodejs-patched` a normal derivation without extra arguments
- Use `deps.nodejs-patched` in `nix/mobile/android` shell
- Use `deps.nodejs-patched` in `nix/shells.nix` node shell
- Use `with pkgs` to reduce arguments in `nix/mobile/android/release.nix`

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-18 13:54:26 +02:00
Jakub Sokołowski 3e20616471
disable hermes warnings that dump translations to stdout
These kinds of warnings dump minified translation files to stdout:
```
/build/android/app/build/generated/assets/react/pr/index.android.bundle:943:1256: warning: The first definition was here.
__d(function(e,t,a,n,o,r,s){o.exports={"about-app":"About","about-key-storage-content":"Status will never access your private key. Be sure to backup your seed phrase. If you lose your phone it is the only way to access your keys.","about-key-storage-title":"About key storage","about-names-content":"No one can pretend to be you! You\u2019re anonymous by default and never have to reveal your real name. You can register a custom name for a small fee."
```

Details: https://github.com/facebook/hermes/issues/216

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-18 13:33:39 +02:00
Jakub Sokołowski 2fcf0964f8
nix: fix nix-cache builds using wrong status-go targets
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-16 15:31:15 +02:00
Jakub Sokołowski 559a79b3d5
nix: move jetify-ing Java files to patchNodeModules
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-15 22:44:40 +02:00
Jakub Sokołowski 2f9593a7d2
unify multiple Makefile targets
Changes:
- Drop a bunch of `watch-{android,ios}-*` tagets
- Replace them with one `run-clojure`
- Drop a bunch of `react-native-*` targets
- Replace them with one `run-metro`
- Replace `run-{android,ios}` with `run-{android,ios}`
- Drop `startdev-{android,ios,desktop}*` targets
- Drop `prod-build-{android,ios}` as deprecated
- Drop `src/status_im/android/core.cljs`
- Drop `src/status_im/ios/core.cljs`
- Move `lsof` tool to `default` shell
- Replace them with one `init` `src/status_im/core.cljs`
- Use `init` in one `shadow-cljs.edn` target `mobile`
- Use `mobile` target in `nix/mobile/android/jsbundle`
- Update instructions in `STARTING_GUIDE.md`
- Use `gradle` shell for `android-clean` target

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-15 18:29:31 +02:00