Commit Graph

46 Commits

Author SHA1 Message Date
Andrea Maria Piana 532664ab84
Adds topic negotiation and partitioned topic
All the code has been implemented in statusgo: status-im/status-go#1466

Basically all the whisper filter management is done at that level.

Technical description
On startup we load all chats and send a list of them to status go:
For a public chat: {:chatId "status"}, we create a single filter, based on the name of the chat.

For each contact added by us, each user in a group chat and each one to one chat open, we send:
{:chatId "0x", :oneToOne true}. This will create a chats, to listen to their contact code.

Any previously negotiated topic is also returned.

Once loaded, we create our filters, and upsert the mailserver topics, both of which are solely based on the filters loaded.
In order to remove a chat, we delete/stopwatching first the the filter in status-react and then ask status-go to remove the filter. For a public chat we always remove, for a one-to-one we remove only if the user is not in our contacts, or in a group chat or we have a chat open. Negotiated topics are never removed, as otherwise the other user won't be able to contact us anymore.

On stopping whisper we don't have to ask status-go to remove filters as they are removed automatically.

Some more logic can be pushed in status-go, but that will be in subsequent PRs.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-06-24 13:54:43 +02:00
Roman Volosovskyi 2ad4c9c054
upgrade react-navigation 2019-06-19 12:00:22 +03:00
yenda bea720f8d0
[fix] crash on some android devices #8368
Signed-off-by: yenda <eric@status.im>
2019-06-07 15:56:27 +02:00
Pedro Pombeiro 1457f0f017
Some changes from the node2nix test branch that don't need to be there
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-06-06 19:13:31 +02:00
yenda 1ae42ea424
[perf] upgrade realm and improve schemas/queries
- upgrade to realm 2.28 to benefit from perf improvements
- remove user-statuses and replace by seen and outgoing-status fields
to get rid of a lot of bloat queries and computations
- remove unused seen message, bottom-infos
- remove unused fields in transport schema
- use objectForPrimaryKey whenever possible instead of get by field

Signed-off-by: yenda <eric@status.im>
2019-06-04 23:36:35 +02:00
tbenr 090a4e7c76
fixes #6573
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-31 10:25:24 +02:00
Dmitry Novotochinov fd061833f5
save keycard key-uid to account and use it to login
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-05-29 12:55:32 +03:00
Roman Volosovskyi b0be9ee976
Send logs on shaking device 2019-05-24 13:35:04 +03:00
Dmitry Novotochinov 29eeb140b9
[#8145] exclude some chars when generating pairing password
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-05-17 17:35:58 +03:00
Roman Volosovskyi ff39426e56
[android] send logs to error-reports@status.im 2019-05-10 17:02:58 +03:00
Dmitry Novotochinov 99e00898f9
[#7911 #7894] delete account and logout after keycard reset
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-05-08 14:35:10 +03:00
Roman Volosovskyi fbda69ff78
[iOS, Android] Upgrade realm-js 2019-04-12 16:21:41 +03:00
Dmitry Novotochinov 14f3b43090
[#7892] generate mnemonic offline
pass bip39 words list to keycard sdk, instead of fetch it from github

Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-04-10 14:38:30 +03:00
bitsikka 747ca2b985
[#7915] fix - Text for empty chat state is shown upside down and text direction is strange 2019-04-08 14:47:36 +03:00
Dmitry Novotochinov 4decedf5f6
Revert "Revert "[#7133] sign tx with keycard""
This reverts commit 4ccb1ea52d.

Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-04-05 15:49:47 +03:00
Dmitry Novotochinov 4ccb1ea52d
Revert "[#7133] sign tx with keycard"
This reverts commit feffcaf33d.

Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-04-02 20:12:40 +03:00
Dmitry Novotochinov feffcaf33d
[#7133] sign tx with keycard
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-04-02 18:07:41 +03:00
Roman Volosovskyi 24a978d442
Migrate to RN 0.59.2 2019-04-01 17:42:57 +03:00
Dmitry Novotochinov f91a69c6b0
Make keycard login faster
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-03-12 13:38:36 +03:00
Dmitry Novotochinov 43bd6d159a
improve keycard installation UX
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-03-08 14:57:29 +03:00
tbenr b1331378d5
fixes #6597
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-03-06 17:09:58 +01:00
Dmitry Novotochinov 908e80eb0b
[#7216] import account to keycard
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-03-01 14:38:00 +03:00
Roman Volosovskyi 9f5d5d8349
revert Replace react-navigation-stack with fork without default background color 2019-02-28 10:12:53 +02:00
Igor Mandrigin cbb0221e7f
remove (unused) react-native-level-fs
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-27 17:32:34 +01:00
Igor Mandrigin 4fa1ae614a
android: don't crash on invalid URLs
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-27 13:59:51 +01:00
Roman Volosovskyi 5368604353
Replace react-navigation-stack with fork without default background color 2019-02-26 19:08:36 +02:00
Dmitry Novotochinov bae935d3e4
[#7217] check card state before installation
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-02-25 22:57:56 +03:00
Andrea Maria Piana becb32d5e7
Use dedup-id instead of raw-payload
This is a backward/forward compatible change with status-go.
We are changing the way messages are confirmed from passing the
raw-object to status-go to a dedup-id instead, which needs to be sent
back.
Based on the response from status-go we detect whether they are ids or
object and act accordingly.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-02-17 23:05:25 +01:00
Igor Mandrigin 9ba0bda8f7
Use gomobile binaries (again)
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-14 10:19:24 +01:00
Igor Mandrigin 3617fefbe9
Revert "Use gomobile binaries for iOS and Android."
This reverts commit c47fc34127.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-12 12:34:27 +01:00
Adam Babik c47fc34127
Use gomobile binaries for iOS and Android.
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-12 10:21:31 +01:00
kn 6988950ea8
[#6973] Replace react-native-i18n with react-native-languages 2019-02-09 23:27:46 -08:00
Dmitry Novotochinov 1b836bf7ec
[#7006] login with keycard
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-02-06 00:20:07 +03:00
Andrey Shovkoplyas 5fe9e3d156
[#6587] IPFS hosted apps should not share cookies/etc
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-02-05 18:49:25 +01:00
Dmitry Novotochinov cee18d23b8
[#7132] add keycard settings
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-01-23 20:11:23 +03:00
Pedro Pombeiro 03c4287e73
Fix dependencies reported by package-checker bot 2019-01-18 12:13:08 +01:00
Pedro Pombeiro f07057daec
Create releases for all forked repos
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-01-17 23:17:29 +01:00
Pedro Pombeiro a12653d420
Standardize on `git+https` URL style, since `github:status-im/*` style URLs seem to break Android builds 2019-01-17 23:16:41 +01:00
Pedro Pombeiro c9c39828fc
Fix bignumber.js dependency clash
```
warning Pattern ["bignumber.js@github:status-im/bignumber.js#master"] is trying to unpack in the same destination "/home/pedro/.cache/yarn/v4/npm-bignumber-js-4.0.2-cc066a0a3d6bfe0c436c9957f4ea8344bf963c89/node_modules/bignumber.js" as pattern ["bignumber.js@https://github.com/status-im/bignumber.js.git"]. This could result in non-deterministic behavior, skipping.
```
2019-01-17 23:16:36 +01:00
Jakub Sokołowski b51b565cdb
add dockerimage for building android
- remove unused android-ndk toolchains
- add build.sh and test target for easy testing of image
- separate generic parts into a base image
- pass keystore credentials via env variables

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-01-16 17:36:13 +01:00
Roman Volosovskyi 2777809db9
enable saving password on android
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-01-08 17:40:00 +01:00
Dmitry Novotochinov 7fa46065a7
[#7005] add installation progress bar
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-12-24 18:02:38 +03:00
Dmitry Novotochinov 962c49e345
add keycard installation
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-12-20 15:43:37 +03:00
Igor Mandrigin b65f678429
Upgrade realm to 2.21.0
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-12-12 11:57:50 +01:00
yenda 891447b8b3
update realm to 2.20.1 and node to 10.14.0
- add node version 10.14.1 via nvm wrapper for CI

Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: yenda <eric@status.im>
2018-11-30 15:46:58 +01:00
Igor Mandrigin 37ef82b04d
Use `yarn` instead of `npm` for package management. Lock dependencies.
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-11-29 16:29:57 +01:00