rename status-react to status-mobile
This way the name of the repo makes at least some sense and matches the `status-desktop` repo naming. Also updated `status-jenkins-lib` since it also contained references to `status-react` repo and job names. Signed-off-by: Jakub Sokołowski <jakub@status.im>
This commit is contained in:
parent
61cb54fb8e
commit
1f7fd17ff1
10
Makefile
10
Makefile
|
@ -33,7 +33,7 @@ export BUILD_TAG := $(shell git rev-parse --short HEAD)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# We don't want to use /run/user/$UID because it runs out of space too easilly.
|
# We don't want to use /run/user/$UID because it runs out of space too easilly.
|
||||||
export TMPDIR = /tmp/tmp-status-react-$(BUILD_TAG)
|
export TMPDIR = /tmp/tmp-status-mobile-$(BUILD_TAG)
|
||||||
# This has to be specified for both the Node.JS server process and the Qt process.
|
# This has to be specified for both the Node.JS server process and the Qt process.
|
||||||
export REACT_SERVER_PORT ?= 5001
|
export REACT_SERVER_PORT ?= 5001
|
||||||
# The path can be anything, but home is usually safest.
|
# The path can be anything, but home is usually safest.
|
||||||
|
@ -42,7 +42,7 @@ export KEYSTORE_PATH ?= $(HOME)/.gradle/status-im.keystore
|
||||||
# Our custom config is located in nix/nix.conf
|
# Our custom config is located in nix/nix.conf
|
||||||
export NIX_CONF_DIR = $(PWD)/nix
|
export NIX_CONF_DIR = $(PWD)/nix
|
||||||
# Location of symlinks to derivations that should not be garbage collected
|
# Location of symlinks to derivations that should not be garbage collected
|
||||||
export _NIX_GCROOTS = /nix/var/nix/gcroots/per-user/$(USER)/status-react
|
export _NIX_GCROOTS = /nix/var/nix/gcroots/per-user/$(USER)/status-mobile
|
||||||
# Defines which variables will be kept for Nix pure shell, use semicolon as divider
|
# Defines which variables will be kept for Nix pure shell, use semicolon as divider
|
||||||
export _NIX_KEEP ?= TMPDIR,BUILD_ENV,STATUS_GO_SRC_OVERRIDE
|
export _NIX_KEEP ?= TMPDIR,BUILD_ENV,STATUS_GO_SRC_OVERRIDE
|
||||||
|
|
||||||
|
@ -84,7 +84,7 @@ nix-gc: nix-gc-protected ##@nix Garbage collect all packages older than 20 days
|
||||||
nix-store --gc
|
nix-store --gc
|
||||||
|
|
||||||
nix-clean: export TARGET := default
|
nix-clean: export TARGET := default
|
||||||
nix-clean: ##@nix Remove all status-react build artifacts from /nix/store
|
nix-clean: ##@nix Remove all status-mobile build artifacts from /nix/store
|
||||||
nix/scripts/clean.sh
|
nix/scripts/clean.sh
|
||||||
|
|
||||||
nix-purge: SHELL := /bin/sh
|
nix-purge: SHELL := /bin/sh
|
||||||
|
@ -144,7 +144,7 @@ purge: _fix-node-perms _tmpdir-rm ##@prepare Remove all output folders
|
||||||
|
|
||||||
watchman-clean: export TARGET := watchman
|
watchman-clean: export TARGET := watchman
|
||||||
watchman-clean: ##@prepare Delete repo directory from watchman
|
watchman-clean: ##@prepare Delete repo directory from watchman
|
||||||
watchman watch-del $${STATUS_REACT_HOME}
|
watchman watch-del $${STATUS_MOBILE_HOME}
|
||||||
|
|
||||||
pod-install: export TARGET := ios
|
pod-install: export TARGET := ios
|
||||||
pod-install: ##@prepare Run 'pod install' to install podfiles and update Podfile.lock
|
pod-install: ##@prepare Run 'pod install' to install podfiles and update Podfile.lock
|
||||||
|
@ -341,7 +341,7 @@ android-devices: ##@other Invoke adb devices
|
||||||
adb devices
|
adb devices
|
||||||
|
|
||||||
android-logcat: export TARGET := android-env
|
android-logcat: export TARGET := android-env
|
||||||
android-logcat: ##@other Read status-react logs from Android phone using adb
|
android-logcat: ##@other Read status-mobile logs from Android phone using adb
|
||||||
adb logcat | grep -e RNBootstrap -e ReactNativeJS -e ReactNative -e StatusModule -e StatusNativeLogs -e 'F DEBUG :' -e 'Go :' -e 'GoLog :' -e 'libc :'
|
adb logcat | grep -e RNBootstrap -e ReactNativeJS -e ReactNative -e StatusModule -e StatusNativeLogs -e 'F DEBUG :' -e 'Go :' -e 'GoLog :' -e 'libc :'
|
||||||
|
|
||||||
android-install: export TARGET := android-env
|
android-install: export TARGET := android-env
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
[<img src="https://play.google.com/intl/en_us/badges/images/generic/en-play-badge.png" alt="Get it on Google Play" height="80"/>](https://play.google.com/store/apps/details?id=im.status.ethereum)
|
[<img src="https://play.google.com/intl/en_us/badges/images/generic/en-play-badge.png" alt="Get it on Google Play" height="80"/>](https://play.google.com/store/apps/details?id=im.status.ethereum)
|
||||||
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" alt="Get it on F-Droid" height="80"/>](https://f-droid.org/packages/im.status.ethereum/)
|
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" alt="Get it on F-Droid" height="80"/>](https://f-droid.org/packages/im.status.ethereum/)
|
||||||
[<img src="doc/github_badge.png" alt="Get it on Github" height="80"/>](https://github.com/status-im/status-react/releases)
|
[<img src="doc/github_badge.png" alt="Get it on Github" height="80"/>](https://github.com/status-im/status-mobile/releases)
|
||||||
|
|
||||||
Join us in creating a browser, messenger, and gateway to a decentralized world. Status is a free (libre) open source mobile client targeting Android & iOS built entirely on [Ethereum](https://ethereum.org/) technologies. That's right, no middle men and `go-ethereum` running directly on your device.
|
Join us in creating a browser, messenger, and gateway to a decentralized world. Status is a free (libre) open source mobile client targeting Android & iOS built entirely on [Ethereum](https://ethereum.org/) technologies. That's right, no middle men and `go-ethereum` running directly on your device.
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ Go straight to the [docs](https://status.im/docs) or [join our chat](https://joi
|
||||||
|
|
||||||
- **Developer**
|
- **Developer**
|
||||||
Developers are the heart of software and to keep Status beating we need all the help we can get! If you're looking to code in ClojureScript or Golang then Status is the project for you! We use React Native and there is even some Java/Objective-C too!
|
Developers are the heart of software and to keep Status beating we need all the help we can get! If you're looking to code in ClojureScript or Golang then Status is the project for you! We use React Native and there is even some Java/Objective-C too!
|
||||||
Want to learn more about it? Start by reading our [Developer Introduction](https://status.im/developer_tools/) which guides you through the technology stack and start browsing [beginner issues](https://github.com/status-im/status-react/issues?utf8=%E2%9C%93&q=is%3Aopen%20is%3Aissue%20label%3A%22good%20first%20issue%22%20). Then you can read how to [Build Status](https://status.im/technical/build_status/), which talks about managing project dependencies, coding guidelines and testing procedures.
|
Want to learn more about it? Start by reading our [Developer Introduction](https://status.im/developer_tools/) which guides you through the technology stack and start browsing [beginner issues](https://github.com/status-im/status-mobile/issues?utf8=%E2%9C%93&q=is%3Aopen%20is%3Aissue%20label%3A%22good%20first%20issue%22%20). Then you can read how to [Build Status](https://status.im/technical/build_status/), which talks about managing project dependencies, coding guidelines and testing procedures.
|
||||||
|
|
||||||
- **Community Management**
|
- **Community Management**
|
||||||
Metcalfe's law states that the value of a network is proportional to the square of the number of connected users of the system - without community Status is meaningless. We're looking to create a positive, fun environment to explore new ideas, experiment and grow the Status community. Building a community takes a lot of work but the people you'll meet and long lasting relationships you form will be well worth it, check out our [Mission and Community Principles](https://status.im/about)
|
Metcalfe's law states that the value of a network is proportional to the square of the number of connected users of the system - without community Status is meaningless. We're looking to create a positive, fun environment to explore new ideas, experiment and grow the Status community. Building a community takes a lot of work but the people you'll meet and long lasting relationships you form will be well worth it, check out our [Mission and Community Principles](https://status.im/about)
|
||||||
|
@ -36,7 +36,7 @@ John Dewey once said "Education is not preparation for life; education is life *
|
||||||
Content is King, keeping our blog up to date and informing the community of news helps keep everyone on the same page. [Jump into our chat](https://join.status.im/chat/public/status) and discuss with the team how you can contribute!
|
Content is King, keeping our blog up to date and informing the community of news helps keep everyone on the same page. [Jump into our chat](https://join.status.im/chat/public/status) and discuss with the team how you can contribute!
|
||||||
|
|
||||||
- **Testers**
|
- **Testers**
|
||||||
It's bug hunting season! Status is currently under active development and there is sure to be a bunch of learning, [build status from scratch](https://status.im/technical/build_status/) or if an android user check out our [nightly builds](https://status.im/nightly). You can shake your phone to submit bug reports, or start browsing our [Github Issues](https://github.com/status-im/status-react/issues). Every bug you find brings Status closer to stable, usable software for everyone to enjoy!
|
It's bug hunting season! Status is currently under active development and there is sure to be a bunch of learning, [build status from scratch](https://status.im/technical/build_status/) or if an android user check out our [nightly builds](https://status.im/nightly). You can shake your phone to submit bug reports, or start browsing our [Github Issues](https://github.com/status-im/status-mobile/issues). Every bug you find brings Status closer to stable, usable software for everyone to enjoy!
|
||||||
|
|
||||||
- **Security**
|
- **Security**
|
||||||
Status is a visual interface to make permanent changes on the Blockchain, it handles crypto-tokens that have real value and allows 3rd party code execution. Security is paramount to its success. You are given permission to break Status as hard as you can, as long as you share your findings with the community!
|
Status is a visual interface to make permanent changes on the Blockchain, it handles crypto-tokens that have real value and allows 3rd party code execution. Security is paramount to its success. You are given permission to break Status as hard as you can, as long as you share your findings with the community!
|
||||||
|
@ -64,7 +64,7 @@ Feel free to email us at [support@status.im](mailto:support@status.im) or better
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
Licensed under the [Mozilla Public License v2.0](https://github.com/status-im/status-react/blob/develop/LICENSE.md)
|
Licensed under the [Mozilla Public License v2.0](https://github.com/status-im/status-mobile/blob/develop/LICENSE.md)
|
||||||
|
|
||||||
## Testing Supported by
|
## Testing Supported by
|
||||||
|
|
||||||
|
|
370
RELEASES.md
370
RELEASES.md
|
@ -2,81 +2,81 @@
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
* 💬 Re-open app on the last open chat ([details](https://github.com/status-im/status-react/issues/12782))
|
* 💬 Re-open app on the last open chat ([details](https://github.com/status-im/status-mobile/issues/12782))
|
||||||
* 🪙 Support \$UBI token ([details](https://github.com/status-im/status-react/issues/12975))
|
* 🪙 Support \$UBI token ([details](https://github.com/status-im/status-mobile/issues/12975))
|
||||||
* 🔔 Implementation of remote android notifications ([details](https://github.com/status-im/status-react/issues/12866))
|
* 🔔 Implementation of remote android notifications ([details](https://github.com/status-im/status-mobile/issues/12866))
|
||||||
* 🔁 Sync clear history on paired devices ([details](https://github.com/status-im/status-react/issues/13004))
|
* 🔁 Sync clear history on paired devices ([details](https://github.com/status-im/status-mobile/issues/13004))
|
||||||
* 📑 Synchronize browser bookmarks/favorites across devices ([details](https://github.com/status-im/status-react/issues/12961))
|
* 📑 Synchronize browser bookmarks/favorites across devices ([details](https://github.com/status-im/status-mobile/issues/12961))
|
||||||
* 🔕 Add mute option to android ([details](https://github.com/status-im/status-react/issues/12890))
|
* 🔕 Add mute option to android ([details](https://github.com/status-im/status-mobile/issues/12890))
|
||||||
* 👛 Wallet Connect 2.0 integration ([details](https://github.com/status-im/status-react/issues/12546))
|
* 👛 Wallet Connect 2.0 integration ([details](https://github.com/status-im/status-mobile/issues/12546))
|
||||||
* 💰 Implement Wallet Connect 1.0 ([details](https://github.com/status-im/status-react/issues/12870))
|
* 💰 Implement Wallet Connect 1.0 ([details](https://github.com/status-im/status-mobile/issues/12870))
|
||||||
* ⚙️ Sync settings ([details](https://github.com/status-im/status-react/pull/13053))
|
* ⚙️ Sync settings ([details](https://github.com/status-im/status-mobile/pull/13053))
|
||||||
|
|
||||||
### Improvements
|
### Improvements
|
||||||
|
|
||||||
* Improve order of mailserver requests ([details](https://github.com/status-im/status-react/issues/12783))
|
* Improve order of mailserver requests ([details](https://github.com/status-im/status-mobile/issues/12783))
|
||||||
* Load images from an https server ([details](https://github.com/status-im/status-react/issues/12855))
|
* Load images from an https server ([details](https://github.com/status-im/status-mobile/issues/12855))
|
||||||
* Load audio messages from https server ([details](https://github.com/status-im/status-react/issues/13116))
|
* Load audio messages from https server ([details](https://github.com/status-im/status-mobile/issues/13116))
|
||||||
* Show message timestamps on tap, remove from bubbles 🕙 ([details](https://github.com/status-im/status-react/pull/12915))
|
* Show message timestamps on tap, remove from bubbles 🕙 ([details](https://github.com/status-im/status-mobile/pull/12915))
|
||||||
* support PUK and seed recovery during onboarding ([details](https://github.com/status-im/status-react/pull/12955))
|
* support PUK and seed recovery during onboarding ([details](https://github.com/status-im/status-mobile/pull/12955))
|
||||||
* update react-native-webview ([details](https://github.com/status-im/status-react/pull/12987))
|
* update react-native-webview ([details](https://github.com/status-im/status-mobile/pull/12987))
|
||||||
* Add group members to mentionable list ([details](https://github.com/status-im/status-react/pull/12994))
|
* Add group members to mentionable list ([details](https://github.com/status-im/status-mobile/pull/12994))
|
||||||
* always use english for fallback text ([details](https://github.com/status-im/status-react/pull/13019))
|
* always use english for fallback text ([details](https://github.com/status-im/status-mobile/pull/13019))
|
||||||
* Disable chat input for chats with a blocked user ([details](https://github.com/status-im/status-react/pull/13162))
|
* Disable chat input for chats with a blocked user ([details](https://github.com/status-im/status-mobile/pull/13162))
|
||||||
* Handle timeouts on mailserver requests ([details](https://github.com/status-im/status-react/issues/13022))
|
* Handle timeouts on mailserver requests ([details](https://github.com/status-im/status-mobile/issues/13022))
|
||||||
* Human Readable data display when signing using eth_signTypedData_v3 ([details](https://github.com/status-im/status-react/issues/12535))
|
* Human Readable data display when signing using eth_signTypedData_v3 ([details](https://github.com/status-im/status-mobile/issues/12535))
|
||||||
|
|
||||||
### Bug Fixes
|
### Bug Fixes
|
||||||
|
|
||||||
* Bug/fix opensea api ([details](https://github.com/status-im/status-react/pull/13021))
|
* Bug/fix opensea api ([details](https://github.com/status-im/status-mobile/pull/13021))
|
||||||
* Show "Fetch more messages" only in public chats and communities ([details](https://github.com/status-im/status-react/pull/12927))
|
* Show "Fetch more messages" only in public chats and communities ([details](https://github.com/status-im/status-mobile/pull/12927))
|
||||||
* Chats are not synced if delete and re-add them on the first device while the second device is offline ([details](https://github.com/status-im/status-react/issues/12913))
|
* Chats are not synced if delete and re-add them on the first device while the second device is offline ([details](https://github.com/status-im/status-mobile/issues/12913))
|
||||||
* fix distortion of app theme due to change in system theme ([details](https://github.com/status-im/status-react/pull/12934))
|
* fix distortion of app theme due to change in system theme ([details](https://github.com/status-im/status-mobile/pull/12934))
|
||||||
* Unable to perform swap on 1inch.exchange if initial swap was cancelled by closing bottom sheet ([details](https://github.com/status-im/status-react/issues/12920))
|
* Unable to perform swap on 1inch.exchange if initial swap was cancelled by closing bottom sheet ([details](https://github.com/status-im/status-mobile/issues/12920))
|
||||||
* Error when trying to edit 'per-gas price limit' on 1inch.exchange ([details](https://github.com/status-im/status-react/issues/12991))
|
* Error when trying to edit 'per-gas price limit' on 1inch.exchange ([details](https://github.com/status-im/status-mobile/issues/12991))
|
||||||
* Allow adding emoji in status input even if it exceeds limit ([details](https://github.com/status-im/status-react/pull/12949))
|
* Allow adding emoji in status input even if it exceeds limit ([details](https://github.com/status-im/status-mobile/pull/12949))
|
||||||
* Allow adding emoji to group intro message if it exceeds limit ([details](https://github.com/status-im/status-react/pull/13024))
|
* Allow adding emoji to group intro message if it exceeds limit ([details](https://github.com/status-im/status-mobile/pull/13024))
|
||||||
* Use higher base fee value for default tx fee calculation ([details](https://github.com/status-im/status-react/pull/13020))
|
* Use higher base fee value for default tx fee calculation ([details](https://github.com/status-im/status-mobile/pull/13020))
|
||||||
* Profile QR code overlaps share menu during sharing (IOS) ([details](https://github.com/status-im/status-react/pull/13050))
|
* Profile QR code overlaps share menu during sharing (IOS) ([details](https://github.com/status-im/status-mobile/pull/13050))
|
||||||
* No value in 'Gas amount limit' field in NFT dapps ([details](https://github.com/status-im/status-react/pull/13051))
|
* No value in 'Gas amount limit' field in NFT dapps ([details](https://github.com/status-im/status-mobile/pull/13051))
|
||||||
* Stop showing fetch more button for cleared history ([details](https://github.com/status-im/status-react/pull/13084))
|
* Stop showing fetch more button for cleared history ([details](https://github.com/status-im/status-mobile/pull/13084))
|
||||||
* fix ens resolve issue while following deep link ([details](https://github.com/status-im/status-react/pull/13080))
|
* fix ens resolve issue while following deep link ([details](https://github.com/status-im/status-mobile/pull/13080))
|
||||||
* Fix deadlock on syncing all data ([details](https://github.com/status-im/status-react/pull/13128))
|
* Fix deadlock on syncing all data ([details](https://github.com/status-im/status-mobile/pull/13128))
|
||||||
* Fix broken username and timestamp layout for long usernames ([details](https://github.com/status-im/status-react/pull/13174))
|
* Fix broken username and timestamp layout for long usernames ([details](https://github.com/status-im/status-mobile/pull/13174))
|
||||||
|
|
||||||
## 1.18.0 Release notes :package:
|
## 1.18.0 Release notes :package:
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
* 🚦Online status indicator <https://github.com/status-im/status-react/issues/12547>
|
* 🚦Online status indicator <https://github.com/status-im/status-mobile/issues/12547>
|
||||||
* 👛 Add possibility to select wallet for ENS names <https://github.com/status-im/status-react/pull/12761>
|
* 👛 Add possibility to select wallet for ENS names <https://github.com/status-im/status-mobile/pull/12761>
|
||||||
* 🐞 Bug reporting and logs sharing improvements <https://github.com/status-im/status-react/pull/12773>
|
* 🐞 Bug reporting and logs sharing improvements <https://github.com/status-im/status-mobile/pull/12773>
|
||||||
* 🍳 Simplify Keycard onboarding by using defaults for pairing password <https://github.com/status-im/status-react/issues/12685>
|
* 🍳 Simplify Keycard onboarding by using defaults for pairing password <https://github.com/status-im/status-mobile/issues/12685>
|
||||||
* 💾 Backup contacts via Waku <https://github.com/status-im/status-react/issues/12550>
|
* 💾 Backup contacts via Waku <https://github.com/status-im/status-mobile/issues/12550>
|
||||||
* 🪙 Added ENS token <https://github.com/status-im/status-react/issues/12807>
|
* 🪙 Added ENS token <https://github.com/status-im/status-mobile/issues/12807>
|
||||||
* 🌠 Using react-native-fast-image for stickers <https://github.com/status-im/status-react/pull/12769>
|
* 🌠 Using react-native-fast-image for stickers <https://github.com/status-im/status-mobile/pull/12769>
|
||||||
#### Message reliability improvements
|
#### Message reliability improvements
|
||||||
* 𝌗 Show loading until all messages are processed <https://github.com/status-im/status-react/pull/12834>
|
* 𝌗 Show loading until all messages are processed <https://github.com/status-im/status-mobile/pull/12834>
|
||||||
* 💪🏼 More robust message confirmations handling <https://github.com/status-im/status-react/pull/12824>
|
* 💪🏼 More robust message confirmations handling <https://github.com/status-im/status-mobile/pull/12824>
|
||||||
* 📶 Allow sending messages when offline <https://github.com/status-im/status-react/issues/11889>
|
* 📶 Allow sending messages when offline <https://github.com/status-im/status-mobile/issues/11889>
|
||||||
#### Improvements on device pairing
|
#### Improvements on device pairing
|
||||||
* 🔔💻 Notification in activity centre now sync across devices <https://github.com/status-im/status-react/issues/12571>
|
* 🔔💻 Notification in activity centre now sync across devices <https://github.com/status-im/status-mobile/issues/12571>
|
||||||
* ✅💻 Sync read messages across devices <https://github.com/status-im/status-react/pull/12698>
|
* ✅💻 Sync read messages across devices <https://github.com/status-im/status-mobile/pull/12698>
|
||||||
#### Network settings improvements
|
#### Network settings improvements
|
||||||
* ✨ Add Binance Smart chain <https://github.com/status-im/status-react/pull/12809>
|
* ✨ Add Binance Smart chain <https://github.com/status-im/status-mobile/pull/12809>
|
||||||
* ♏︎ Added custom network symbol <https://github.com/status-im/status-react/commit/c16b0860ec921a61c119857de27c6f29e301e4f6>
|
* ♏︎ Added custom network symbol <https://github.com/status-im/status-mobile/commit/c16b0860ec921a61c119857de27c6f29e301e4f6>
|
||||||
* 💰 Network fee on xDai chain <https://github.com/status-im/status-react/pull/12845>
|
* 💰 Network fee on xDai chain <https://github.com/status-im/status-mobile/pull/12845>
|
||||||
* 📇 Support tx history (in a way) when on BSC chains <https://github.com/status-im/status-react/pull/12843>
|
* 📇 Support tx history (in a way) when on BSC chains <https://github.com/status-im/status-mobile/pull/12843>
|
||||||
* 🙅🏻 Remove POA network from the list <https://github.com/status-im/status-react/pull/12887>
|
* 🙅🏻 Remove POA network from the list <https://github.com/status-im/status-mobile/pull/12887>
|
||||||
|
|
||||||
### Bug Fixes
|
### Bug Fixes
|
||||||
* Fix activity center community invite preview <https://github.com/status-im/status-react/pull/12803>
|
* Fix activity center community invite preview <https://github.com/status-im/status-mobile/pull/12803>
|
||||||
* Missing notifications for some contacts <https://github.com/status-im/status-react/issues/12776>
|
* Missing notifications for some contacts <https://github.com/status-im/status-mobile/issues/12776>
|
||||||
* Fixes scrolling issues on the 'Max priority fee' bottom sheet <https://github.com/status-im/status-react/issues/12530>
|
* Fixes scrolling issues on the 'Max priority fee' bottom sheet <https://github.com/status-im/status-mobile/issues/12530>
|
||||||
* Handle Keycard timeout on iOS 15 <https://github.com/status-im/status-react/pull/12826>
|
* Handle Keycard timeout on iOS 15 <https://github.com/status-im/status-mobile/pull/12826>
|
||||||
* Allow user to be reinvited to the same group after leaving <https://github.com/status-im/status-react/pull/12814>
|
* Allow user to be reinvited to the same group after leaving <https://github.com/status-im/status-mobile/pull/12814>
|
||||||
* Fix for "TypeError: Network request failed" when switching to Goerli network <https://github.com/status-im/status-react/issues/11964>
|
* Fix for "TypeError: Network request failed" when switching to Goerli network <https://github.com/status-im/status-mobile/issues/11964>
|
||||||
* Fix for Spin of death on adding custom NFT token contract <https://github.com/status-im/status-react/issues/12365>
|
* Fix for Spin of death on adding custom NFT token contract <https://github.com/status-im/status-mobile/issues/12365>
|
||||||
* Changing screen orientation results in breaking images / layout <https://github.com/status-im/status-react/issues/12858>
|
* Changing screen orientation results in breaking images / layout <https://github.com/status-im/status-mobile/issues/12858>
|
||||||
|
|
||||||
|
|
||||||
## 1.17
|
## 1.17
|
||||||
|
@ -85,41 +85,41 @@
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
- 🖼️ Add ability to Share image from Status ([details](https://github.com/status-im/status-react/pull/12528))
|
- 🖼️ Add ability to Share image from Status ([details](https://github.com/status-im/status-mobile/pull/12528))
|
||||||
- 🕵️ Private Profile Photos ([details](https://github.com/status-im/status-react/pull/11768))
|
- 🕵️ Private Profile Photos ([details](https://github.com/status-im/status-mobile/pull/11768))
|
||||||
- 🥥 Custom Emoji Thumbnails for Community Channels ([details](https://github.com/status-im/status-react/pull/12594))
|
- 🥥 Custom Emoji Thumbnails for Community Channels ([details](https://github.com/status-im/status-mobile/pull/12594))
|
||||||
- 🔄 Sync deleted chats ([details](https://github.com/status-im/status-react/pull/12662))
|
- 🔄 Sync deleted chats ([details](https://github.com/status-im/status-mobile/pull/12662))
|
||||||
- 🔃 Sync removed/deleted/blocked contacts ([details](https://github.com/status-im/status-react/pull/12541))
|
- 🔃 Sync removed/deleted/blocked contacts ([details](https://github.com/status-im/status-mobile/pull/12541))
|
||||||
- 💸 Allow overriding nonce when sending transaction ([details](https://github.com/status-im/status-react/pull/12679))
|
- 💸 Allow overriding nonce when sending transaction ([details](https://github.com/status-im/status-mobile/pull/12679))
|
||||||
- 🗑️ Delete messages ([details](https://github.com/status-im/status-react/pull/12390))
|
- 🗑️ Delete messages ([details](https://github.com/status-im/status-mobile/pull/12390))
|
||||||
- 🎨 NFT Support via OpenSea ([details](https://github.com/status-im/status-react/pull/12485))
|
- 🎨 NFT Support via OpenSea ([details](https://github.com/status-im/status-mobile/pull/12485))
|
||||||
- 🤳🏻 Enable collectibles and NFT as profile picture ([details](https://github.com/status-im/status-react/pull/12615))
|
- 🤳🏻 Enable collectibles and NFT as profile picture ([details](https://github.com/status-im/status-mobile/pull/12615))
|
||||||
|
|
||||||
### Improvements
|
### Improvements
|
||||||
|
|
||||||
- Move pull to refresh to the account overview screen ([details](https://github.com/status-im/status-react/pull/12479))
|
- Move pull to refresh to the account overview screen ([details](https://github.com/status-im/status-mobile/pull/12479))
|
||||||
- Add $RARE token to our default list ([details](https://github.com/status-im/status-react/pull/12521))
|
- Add $RARE token to our default list ([details](https://github.com/status-im/status-mobile/pull/12521))
|
||||||
- Small UI Design Improvements ([details](https://github.com/status-im/status-react/pull/12544))
|
- Small UI Design Improvements ([details](https://github.com/status-im/status-mobile/pull/12544))
|
||||||
- Chats list performance ([details](https://github.com/status-im/status-react/pull/12554))
|
- Chats list performance ([details](https://github.com/status-im/status-mobile/pull/12554))
|
||||||
- Add push notification on group chat invite ([details](https://github.com/status-im/status-react/pull/12440))
|
- Add push notification on group chat invite ([details](https://github.com/status-im/status-mobile/pull/12440))
|
||||||
- Contacts performance ([details](https://github.com/status-im/status-react/pull/12643))
|
- Contacts performance ([details](https://github.com/status-im/status-mobile/pull/12643))
|
||||||
- Add profile image in push notifications ([details](https://github.com/status-im/status-react/pull/12427))
|
- Add profile image in push notifications ([details](https://github.com/status-im/status-mobile/pull/12427))
|
||||||
- Enable UI for signing legacy txs on networks without eip1559 ([details](https://github.com/status-im/status-react/pull/12692))
|
- Enable UI for signing legacy txs on networks without eip1559 ([details](https://github.com/status-im/status-mobile/pull/12692))
|
||||||
- Doubled the character limit on timeline posts ([details](https://github.com/status-im/status-react/commit/a9333ad52ca71f512d5306f802927d0c20d63944))
|
- Doubled the character limit on timeline posts ([details](https://github.com/status-im/status-mobile/commit/a9333ad52ca71f512d5306f802927d0c20d63944))
|
||||||
|
|
||||||
### Bugfixes
|
### Bugfixes
|
||||||
|
|
||||||
- Don't show notifications from self ([details](https://github.com/status-im/status-react/pull/12505))
|
- Don't show notifications from self ([details](https://github.com/status-im/status-mobile/pull/12505))
|
||||||
- Request permissions before saving images ([details](https://github.com/status-im/status-react/pull/12516))
|
- Request permissions before saving images ([details](https://github.com/status-im/status-mobile/pull/12516))
|
||||||
- Re-enable amount/fee validation on tx signing ([details](https://github.com/status-im/status-react/pull/12537))
|
- Re-enable amount/fee validation on tx signing ([details](https://github.com/status-im/status-mobile/pull/12537))
|
||||||
- Fix browser history sorting ([details](https://github.com/status-im/status-react/pull/12497))
|
- Fix browser history sorting ([details](https://github.com/status-im/status-mobile/pull/12497))
|
||||||
- Fix show/hide password on Android ([details](https://github.com/status-im/status-react/pull/12536))
|
- Fix show/hide password on Android ([details](https://github.com/status-im/status-mobile/pull/12536))
|
||||||
- Fix connecting autofarm.network dapps with status wallet freezes ([details](https://github.com/status-im/status-react/pull/12529))
|
- Fix connecting autofarm.network dapps with status wallet freezes ([details](https://github.com/status-im/status-mobile/pull/12529))
|
||||||
- RPC URL is lower-cased when entered in URL field when adding ([details](https://github.com/status-im/status-react/pull/12574))
|
- RPC URL is lower-cased when entered in URL field when adding ([details](https://github.com/status-im/status-mobile/pull/12574))
|
||||||
- Allow retrieving of profile updates after removing contact ([details](https://github.com/status-im/status-react/pull/12581))
|
- Allow retrieving of profile updates after removing contact ([details](https://github.com/status-im/status-mobile/pull/12581))
|
||||||
- Fetch history on receiving pubchat installation ([details](https://github.com/status-im/status-react/pull/12644))
|
- Fetch history on receiving pubchat installation ([details](https://github.com/status-im/status-mobile/pull/12644))
|
||||||
- Can't send funds to multisig - Out of gas ([details](https://github.com/status-im/status-react/pull/12648))
|
- Can't send funds to multisig - Out of gas ([details](https://github.com/status-im/status-mobile/pull/12648))
|
||||||
- Fix handling errors on eth_gasPrice ([details](https://github.com/status-im/status-react/pull/12710))
|
- Fix handling errors on eth_gasPrice ([details](https://github.com/status-im/status-mobile/pull/12710))
|
||||||
|
|
||||||
## 1.16
|
## 1.16
|
||||||
|
|
||||||
|
@ -127,88 +127,88 @@
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
- EIP-1159 support ([#12369](https://github.com/status-im/status-react/pull/12369))
|
- EIP-1159 support ([#12369](https://github.com/status-im/status-mobile/pull/12369))
|
||||||
- Hide/show option for accounts in the wallet ([#12438](https://github.com/status-im/status-react/pull/12438))
|
- Hide/show option for accounts in the wallet ([#12438](https://github.com/status-im/status-mobile/pull/12438))
|
||||||
- Delete accounts in wallet ([#12444](https://github.com/status-im/status-react/pull/12444))
|
- Delete accounts in wallet ([#12444](https://github.com/status-im/status-mobile/pull/12444))
|
||||||
- Enable keeping database when migrating account to keycard ([#12306](https://github.com/status-im/status-react/pull/12306))
|
- Enable keeping database when migrating account to keycard ([#12306](https://github.com/status-im/status-mobile/pull/12306))
|
||||||
- Replies from group chat in activity centre ([#12266](https://github.com/status-im/status-react/pull/12266))
|
- Replies from group chat in activity centre ([#12266](https://github.com/status-im/status-mobile/pull/12266))
|
||||||
|
|
||||||
### Improvements
|
### Improvements
|
||||||
|
|
||||||
- Remove clear history from non-public chats ([#12384](https://github.com/status-im/status-react/pull/12384))
|
- Remove clear history from non-public chats ([#12384](https://github.com/status-im/status-mobile/pull/12384))
|
||||||
- Clearing push notifications on read (Android) ([#12464](https://github.com/status-im/status-react/pull/12464))
|
- Clearing push notifications on read (Android) ([#12464](https://github.com/status-im/status-mobile/pull/12464))
|
||||||
- Enable migration to keycard from signed-in state ([#11778](https://github.com/status-im/status-react/issues/11778))
|
- Enable migration to keycard from signed-in state ([#11778](https://github.com/status-im/status-mobile/issues/11778))
|
||||||
|
|
||||||
### Bug Fixes
|
### Bug Fixes
|
||||||
|
|
||||||
#### Chat
|
#### Chat
|
||||||
|
|
||||||
- Fix Error when opening 1-1 chat in Activity center for blocked user ([#12399](https://github.com/status-im/status-react/pull/12399))
|
- Fix Error when opening 1-1 chat in Activity center for blocked user ([#12399](https://github.com/status-im/status-mobile/pull/12399))
|
||||||
- Long press is long and it makes the message disappear entirely ([#12445](https://github.com/status-im/status-react/pull/12445))
|
- Long press is long and it makes the message disappear entirely ([#12445](https://github.com/status-im/status-mobile/pull/12445))
|
||||||
- Sort pinned messages by time of pinning ([#12402](https://github.com/status-im/status-react/pull/12402))
|
- Sort pinned messages by time of pinning ([#12402](https://github.com/status-im/status-mobile/pull/12402))
|
||||||
- Screens with overlapping long usernames ([#12471](https://github.com/status-im/status-react/pull/12471))
|
- Screens with overlapping long usernames ([#12471](https://github.com/status-im/status-mobile/pull/12471))
|
||||||
|
|
||||||
#### Browser (Dapp)
|
#### Browser (Dapp)
|
||||||
|
|
||||||
- Fix some token swap errors in Uniswap ([#12417](https://github.com/status-im/status-react/pull/12417))
|
- Fix some token swap errors in Uniswap ([#12417](https://github.com/status-im/status-mobile/pull/12417))
|
||||||
- Update react-native-webview for better SSL handling ([#12409](https://github.com/status-im/status-react/pull/12409))
|
- Update react-native-webview for better SSL handling ([#12409](https://github.com/status-im/status-mobile/pull/12409))
|
||||||
|
|
||||||
#### Keycard
|
#### Keycard
|
||||||
|
|
||||||
- App freezes until reopening when signing tx with frozen Keycard ([#12473](https://github.com/status-im/status-react/pull/12473))
|
- App freezes until reopening when signing tx with frozen Keycard ([#12473](https://github.com/status-im/status-mobile/pull/12473))
|
||||||
|
|
||||||
#### Wallet
|
#### Wallet
|
||||||
|
|
||||||
- Allow to add assets with same name ([#12466](https://github.com/status-im/status-react/pull/12466))
|
- Allow to add assets with same name ([#12466](https://github.com/status-im/status-mobile/pull/12466))
|
||||||
- Update DATAcoin name ([#12454](https://github.com/status-im/status-react/pull/12454))
|
- Update DATAcoin name ([#12454](https://github.com/status-im/status-mobile/pull/12454))
|
||||||
|
|
||||||
## 1.15
|
## 1.15
|
||||||
|
|
||||||
### For iOS and Android
|
### For iOS and Android
|
||||||
### Features
|
### Features
|
||||||
- New improved native navigation, its very fast :dash: [[details](https://github.com/status-im/status-react/pull/12141)]
|
- New improved native navigation, its very fast :dash: [[details](https://github.com/status-im/status-mobile/pull/12141)]
|
||||||
- Pinned messages in chats :pushpin: [[details](https://github.com/status-im/status-react/issues/11699)]
|
- Pinned messages in chats :pushpin: [[details](https://github.com/status-im/status-mobile/issues/11699)]
|
||||||
- Add support for ETH2x-FLI ERC20 token ⚫ [[details](https://github.com/status-im/status-react/issues/11885)]
|
- Add support for ETH2x-FLI ERC20 token ⚫ [[details](https://github.com/status-im/status-mobile/issues/11885)]
|
||||||
- Add support for HEZ ERC20 token ⚫ [[details](https://github.com/status-im/status-react/issues/12233)]
|
- Add support for HEZ ERC20 token ⚫ [[details](https://github.com/status-im/status-mobile/issues/12233)]
|
||||||
- Show number of unread mentions in public and communities chats :bell: [[details](https://github.com/status-im/status-react/issues/12061)]
|
- Show number of unread mentions in public and communities chats :bell: [[details](https://github.com/status-im/status-mobile/issues/12061)]
|
||||||
- QR code scanner for browser :ticket: [[details](https://github.com/status-im/status-react/issues/12195)]
|
- QR code scanner for browser :ticket: [[details](https://github.com/status-im/status-mobile/issues/12195)]
|
||||||
- Edit messages after sending :pencil2: [[details](https://github.com/status-im/status-react/issues/12067)]
|
- Edit messages after sending :pencil2: [[details](https://github.com/status-im/status-mobile/issues/12067)]
|
||||||
- Allow password reset :abcd: [[details](https://github.com/status-im/status-react/pull/12245)]
|
- Allow password reset :abcd: [[details](https://github.com/status-im/status-mobile/pull/12245)]
|
||||||
|
|
||||||
### Improvements
|
### Improvements
|
||||||
- Native modals and tabs :house_with_garden:
|
- Native modals and tabs :house_with_garden:
|
||||||
- Improved time to show login screen :timer_clock:
|
- Improved time to show login screen :timer_clock:
|
||||||
- New, human friendly, terms of use :pencil: [[details](https://github.com/status-im/status-react/issues/12206)]
|
- New, human friendly, terms of use :pencil: [[details](https://github.com/status-im/status-mobile/issues/12206)]
|
||||||
|
|
||||||
### Bug Fixes
|
### Bug Fixes
|
||||||
- No contact request in Activity Center after 1-1 chat deleted of non-contact user :no_good: [[details](https://github.com/status-im/status-react/issues/12218)]
|
- No contact request in Activity Center after 1-1 chat deleted of non-contact user :no_good: [[details](https://github.com/status-im/status-mobile/issues/12218)]
|
||||||
|
|
||||||
## 1.14
|
## 1.14
|
||||||
|
|
||||||
### For iOS and Android
|
### For iOS and Android
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
- Highlight posts that mention you ([details](https://github.com/status-im/status-react/pull/12146))
|
- Highlight posts that mention you ([details](https://github.com/status-im/status-mobile/pull/12146))
|
||||||
- Remove PUK and Pairing Code screen from Keycard onboarding
|
- Remove PUK and Pairing Code screen from Keycard onboarding
|
||||||
[details](https://github.com/status-im/status-react/pull/12155))
|
[details](https://github.com/status-im/status-mobile/pull/12155))
|
||||||
- Added unread messages count for messages with mentions in public chats ([details](https://github.com/status-im/status-react/pull/12152))
|
- Added unread messages count for messages with mentions in public chats ([details](https://github.com/status-im/status-mobile/pull/12152))
|
||||||
- Sync history setting allowing to sync chat history up to 1 month ([details](https://github.com/status-im/status-react/pull/12166))
|
- Sync history setting allowing to sync chat history up to 1 month ([details](https://github.com/status-im/status-mobile/pull/12166))
|
||||||
|
|
||||||
|
|
||||||
### Improvements
|
### Improvements
|
||||||
|
|
||||||
- "My profile" button for simplification of finding own public key ([details](https://github.com/status-im/status-react/pull/12044))
|
- "My profile" button for simplification of finding own public key ([details](https://github.com/status-im/status-mobile/pull/12044))
|
||||||
- Factory reset option is available on account creation and recovery flows ([details](https://github.com/status-im/status-react/pull/12055))
|
- Factory reset option is available on account creation and recovery flows ([details](https://github.com/status-im/status-mobile/pull/12055))
|
||||||
- Allow the creation of recovery/backup Keycard from the login interface ([details](https://github.com/status-im/status-react/pull/12115))
|
- Allow the creation of recovery/backup Keycard from the login interface ([details](https://github.com/status-im/status-mobile/pull/12115))
|
||||||
- Reset blocked and/or frozen Keycards ([details](https://github.com/status-im/status-react/pull/12127))
|
- Reset blocked and/or frozen Keycards ([details](https://github.com/status-im/status-mobile/pull/12127))
|
||||||
- Show cached balance ([details](https://github.com/status-im/status-react/pull/12134))
|
- Show cached balance ([details](https://github.com/status-im/status-mobile/pull/12134))
|
||||||
|
|
||||||
|
|
||||||
### Bugfixes
|
### Bugfixes
|
||||||
|
|
||||||
- Pending transactions are stored in the database and shown on history screen after re-login ([details](https://github.com/status-im/status-react/pull/12032))
|
- Pending transactions are stored in the database and shown on history screen after re-login ([details](https://github.com/status-im/status-mobile/pull/12032))
|
||||||
- Multiple fixes for keycard
|
- Multiple fixes for keycard
|
||||||
- Fixes for resolving ENS name from chat key ([details](https://github.com/status-im/status-react/pull/12100))
|
- Fixes for resolving ENS name from chat key ([details](https://github.com/status-im/status-mobile/pull/12100))
|
||||||
|
|
||||||
|
|
||||||
## 1.13
|
## 1.13
|
||||||
|
@ -216,7 +216,7 @@
|
||||||
### For iOS and Android
|
### For iOS and Android
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
- New activity manager https://github.com/status-im/status-react/issues/11958
|
- New activity manager https://github.com/status-im/status-mobile/issues/11958
|
||||||
New chats and group chat invitation will appear in a new section, the activity center, where a user will be able to accept or decline the request.
|
New chats and group chat invitation will appear in a new section, the activity center, where a user will be able to accept or decline the request.
|
||||||
https://www.figma.com/file/r59kCQxl6tlC0dHkcAJOpP/Action-center-MVP---Mobile?node-id=2%3A8012 (not fully implemented)
|
https://www.figma.com/file/r59kCQxl6tlC0dHkcAJOpP/Action-center-MVP---Mobile?node-id=2%3A8012 (not fully implemented)
|
||||||
|
|
||||||
|
@ -290,7 +290,7 @@ V1.11 also makes some improvements to the overall Status experience. Improved co
|
||||||
|
|
||||||
Update in the App Store or Google Play if you do not have auto updates enabled.
|
Update in the App Store or Google Play if you do not have auto updates enabled.
|
||||||
|
|
||||||
For the full changelog, see Github https://github.com/status-im/status-react/milestone/49?closed=1
|
For the full changelog, see Github https://github.com/status-im/status-mobile/milestone/49?closed=1
|
||||||
|
|
||||||
#### Added
|
#### Added
|
||||||
- Add Giphy url support in chat
|
- Add Giphy url support in chat
|
||||||
|
@ -311,7 +311,7 @@ V1.11 also makes some improvements to the overall Status experience. Improved co
|
||||||
|
|
||||||
Update in the App Store or Google Play if you do not have auto updates enabled.
|
Update in the App Store or Google Play if you do not have auto updates enabled.
|
||||||
|
|
||||||
For the full changelog, see Github https://github.com/status-im/status-react/milestone/49?closed=1
|
For the full changelog, see Github https://github.com/status-im/status-mobile/milestone/49?closed=1
|
||||||
|
|
||||||
#### Added
|
#### Added
|
||||||
- Migrate existing account to Keycard
|
- Migrate existing account to Keycard
|
||||||
|
@ -486,7 +486,7 @@ Update in the [App Store](https://apps.apple.com/us/app/status-private-communica
|
||||||
|
|
||||||
The APK available is [here](https://status-im-files.ams3.cdn.digitaloceanspaces.com/StatusIm-Mobile-v1.8.0.apk).
|
The APK available is [here](https://status-im-files.ams3.cdn.digitaloceanspaces.com/StatusIm-Mobile-v1.8.0.apk).
|
||||||
|
|
||||||
For the full changelog, see our [Github](https://github.com/status-im/status-react/commits/release/1.8.x).
|
For the full changelog, see our [Github](https://github.com/status-im/status-mobile/commits/release/1.8.x).
|
||||||
> [Verify APK link before publishing blog post]
|
> [Verify APK link before publishing blog post]
|
||||||
>
|
>
|
||||||
|
|
||||||
|
@ -496,7 +496,7 @@ This release fixes an issue with fetching ERC20 balance. It was due to a contrac
|
||||||
|
|
||||||
|
|
||||||
## 1.7.1
|
## 1.7.1
|
||||||
Full release commits: https://github.com/status-im/status-react/commits/release/1.7.1
|
Full release commits: https://github.com/status-im/status-mobile/commits/release/1.7.1
|
||||||
### Android + iOS
|
### Android + iOS
|
||||||
#### Excerpt
|
#### Excerpt
|
||||||
Several users have reported an issue in upgrading from release 1.6.1 to release 1.7. This update fixes the issue.
|
Several users have reported an issue in upgrading from release 1.6.1 to release 1.7. This update fixes the issue.
|
||||||
|
@ -513,7 +513,7 @@ Retry failed migration
|
||||||
|
|
||||||
|
|
||||||
## 1.7
|
## 1.7
|
||||||
Full release commits: https://github.com/status-im/status-react/commits/release/1.7.x
|
Full release commits: https://github.com/status-im/status-mobile/commits/release/1.7.x
|
||||||
|
|
||||||
### Android
|
### Android
|
||||||
#### Excerpt (446 characters including spaces)
|
#### Excerpt (446 characters including spaces)
|
||||||
|
@ -639,13 +639,13 @@ For the full changelog, see our Github
|
||||||
### Excerpt
|
### Excerpt
|
||||||
This intermediate release, 1.4.1, includes bug fixes as well as UX and accessibility improvements. Most visibly, a gorgeous set of new icons, accessible input fields and toggling password entry visibility. Next to that the release includes updates to Notifications on Android, like being able to open Status, as well as close the notification service, directly from the notification banner.
|
This intermediate release, 1.4.1, includes bug fixes as well as UX and accessibility improvements. Most visibly, a gorgeous set of new icons, accessible input fields and toggling password entry visibility. Next to that the release includes updates to Notifications on Android, like being able to open Status, as well as close the notification service, directly from the notification banner.
|
||||||
|
|
||||||
For the full changelog, see our [Github](https://github.com/status-im/status-react/commits/release/1.4.x)
|
For the full changelog, see our [Github](https://github.com/status-im/status-mobile/commits/release/1.4.x)
|
||||||
|
|
||||||
|
|
||||||
### Full
|
### Full
|
||||||
While focused on building new features there are a few improvements we did not want to hold off on sharing. This intermediate release, 1.4.1, includes bug fixes as well as UX and accessibility improvements. Most visibly, a gorgeous set of new icons, accessible input fields and toggling password entry visibility. Next to that the release includes updates to Notifications on Android, like being able to open Status, as well as close the notification service, directly from the notification banner.
|
While focused on building new features there are a few improvements we did not want to hold off on sharing. This intermediate release, 1.4.1, includes bug fixes as well as UX and accessibility improvements. Most visibly, a gorgeous set of new icons, accessible input fields and toggling password entry visibility. Next to that the release includes updates to Notifications on Android, like being able to open Status, as well as close the notification service, directly from the notification banner.
|
||||||
|
|
||||||
For the full changelog, see our [Github](https://github.com/status-im/status-react/commits/release/1.4.x).
|
For the full changelog, see our [Github](https://github.com/status-im/status-mobile/commits/release/1.4.x).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -685,7 +685,7 @@ The final addition to v1.4 is the introduction of browser support for EIP 1139
|
||||||
|
|
||||||
Beyond that, version 1.4 includes some updates to the FAQ, extended translation support, and some fixes to ENS username displays, dark mode contrast, QR code scanner and more.
|
Beyond that, version 1.4 includes some updates to the FAQ, extended translation support, and some fixes to ENS username displays, dark mode contrast, QR code scanner and more.
|
||||||
|
|
||||||
For the full changelog, see our [Github](https://github.com/status-im/status-react/commits/release/1.4.x).
|
For the full changelog, see our [Github](https://github.com/status-im/status-mobile/commits/release/1.4.x).
|
||||||
|
|
||||||
#### Added
|
#### Added
|
||||||
- Keycard integration on Android
|
- Keycard integration on Android
|
||||||
|
@ -706,7 +706,7 @@ For the full changelog, see our [Github](https://github.com/status-im/status-rea
|
||||||
- Resolved error on scrolling account view
|
- Resolved error on scrolling account view
|
||||||
- Parse markdown in subheader chat list
|
- Parse markdown in subheader chat list
|
||||||
- Banner to back up seed phrase tappable
|
- Banner to back up seed phrase tappable
|
||||||
- [Chat performance improvements](https://github.com/status-im/status-react/pull/10711)
|
- [Chat performance improvements](https://github.com/status-im/status-mobile/pull/10711)
|
||||||
- QR code scanning issue when scanning from join.status.im
|
- QR code scanning issue when scanning from join.status.im
|
||||||
|
|
||||||
|
|
||||||
|
@ -722,7 +722,7 @@ In the future, we'd like to expand these to host more than 10 members. We'll emb
|
||||||
|
|
||||||
Lastly, we've changed our webview implementation over to the react-native-community package, to remain in sync with the React Native community and benefit from upstream improvements.
|
Lastly, we've changed our webview implementation over to the react-native-community package, to remain in sync with the React Native community and benefit from upstream improvements.
|
||||||
|
|
||||||
As always, we've also included a few nice fixes in this release. For the full changelog, [see our Github](https://github.com/status-im/status-react/commits/release/1.3.x).
|
As always, we've also included a few nice fixes in this release. For the full changelog, [see our Github](https://github.com/status-im/status-mobile/commits/release/1.3.x).
|
||||||
|
|
||||||
|
|
||||||
#### Added
|
#### Added
|
||||||
|
@ -737,8 +737,8 @@ As always, we've also included a few nice fixes in this release. For the full ch
|
||||||
- Persistant wallet value
|
- Persistant wallet value
|
||||||
- Update to all text input, increasing pressable areas
|
- Update to all text input, increasing pressable areas
|
||||||
- Improved seed phrase text input on small screens
|
- Improved seed phrase text input on small screens
|
||||||
- Easier to find user's public key for sharing (https://github.com/status-im/status-react/pull/10207#event-3163431514)
|
- Easier to find user's public key for sharing (https://github.com/status-im/status-mobile/pull/10207#event-3163431514)
|
||||||
- Shortened universal links (https://github.com/status-im/status-react/issues/10083)
|
- Shortened universal links (https://github.com/status-im/status-mobile/issues/10083)
|
||||||
|
|
||||||
## 1.2
|
## 1.2
|
||||||
|
|
||||||
|
@ -783,7 +783,7 @@ With further improvements to Waku in the pipeline, Status becomes accessible to
|
||||||
|
|
||||||
Biggest changes:
|
Biggest changes:
|
||||||
- Status now support importing private key and seed phrase inside multiaccount!
|
- Status now support importing private key and seed phrase inside multiaccount!
|
||||||
(https://github.com/status-im/status-react/pull/10100)
|
(https://github.com/status-im/status-mobile/pull/10100)
|
||||||
- all chat dialogs moved to bottom sheet
|
- all chat dialogs moved to bottom sheet
|
||||||
- added "Mark all as read" option
|
- added "Mark all as read" option
|
||||||
- unread badge is changed for public chat
|
- unread badge is changed for public chat
|
||||||
|
@ -792,41 +792,41 @@ More detailed:
|
||||||
|
|
||||||
ENS name improvements:
|
ENS name improvements:
|
||||||
|
|
||||||
- https://github.com/status-im/status-react/pull/9952 - fixes ENS to new registry
|
- https://github.com/status-im/status-mobile/pull/9952 - fixes ENS to new registry
|
||||||
- https://github.com/status-im/status-react/pull/9997 - Check for empty public key (for ENS names)
|
- https://github.com/status-im/status-mobile/pull/9997 - Check for empty public key (for ENS names)
|
||||||
- https://github.com/status-im/status-react/pull/10007 - improve ENS display in Public chats
|
- https://github.com/status-im/status-mobile/pull/10007 - improve ENS display in Public chats
|
||||||
- https://github.com/status-im/status-react/pull/10022 - fix crash on long ENS names
|
- https://github.com/status-im/status-mobile/pull/10022 - fix crash on long ENS names
|
||||||
|
|
||||||
|
|
||||||
General improvements:
|
General improvements:
|
||||||
|
|
||||||
- https://github.com/status-im/status-react/pull/10027 - deep link handling (rename get.status.im to join.status.im)
|
- https://github.com/status-im/status-mobile/pull/10027 - deep link handling (rename get.status.im to join.status.im)
|
||||||
- https://github.com/status-im/status-react/pull/9940 - changed navigation on logout
|
- https://github.com/status-im/status-mobile/pull/9940 - changed navigation on logout
|
||||||
- https://github.com/status-im/status-react/pull/9917 - added search to currencies and assets
|
- https://github.com/status-im/status-mobile/pull/9917 - added search to currencies and assets
|
||||||
- https://github.com/status-im/status-react/pull/9941 - improvement on snackbar by considering login time (less "Offline", "Connected" after login)
|
- https://github.com/status-im/status-mobile/pull/9941 - improvement on snackbar by considering login time (less "Offline", "Connected" after login)
|
||||||
- https://github.com/status-im/status-react/pull/9898 - added qr code reader for scanning QR when add watch-only address
|
- https://github.com/status-im/status-mobile/pull/9898 - added qr code reader for scanning QR when add watch-only address
|
||||||
- https://github.com/status-im/status-react/pull/9882 - Respond to FaceID failure callback
|
- https://github.com/status-im/status-mobile/pull/9882 - Respond to FaceID failure callback
|
||||||
- https://github.com/status-im/status-react/pull/9915 - Make bottom sheet height dynamical
|
- https://github.com/status-im/status-mobile/pull/9915 - Make bottom sheet height dynamical
|
||||||
- https://github.com/status-im/status-react/pull/9931 - 2 lines for user name on intro screen
|
- https://github.com/status-im/status-mobile/pull/9931 - 2 lines for user name on intro screen
|
||||||
|
|
||||||
Chat improvements:
|
Chat improvements:
|
||||||
- https://github.com/status-im/status-react/pull/10056 - added "Mark all as read" feature
|
- https://github.com/status-im/status-mobile/pull/10056 - added "Mark all as read" feature
|
||||||
- https://github.com/status-im/status-react/pull/9993, https://github.com/status-im/status-react/pull/9999 - better handling of ENS names / chat keys when starting new chat
|
- https://github.com/status-im/status-mobile/pull/9993, https://github.com/status-im/status-mobile/pull/9999 - better handling of ENS names / chat keys when starting new chat
|
||||||
- https://github.com/status-im/status-react/pull/10117 - reworked unread message indicator in public chats
|
- https://github.com/status-im/status-mobile/pull/10117 - reworked unread message indicator in public chats
|
||||||
- https://github.com/status-im/status-react/pull/9868 - all chat dialogs are moved to bottom sheets
|
- https://github.com/status-im/status-mobile/pull/9868 - all chat dialogs are moved to bottom sheets
|
||||||
|
|
||||||
Performance improvements:
|
Performance improvements:
|
||||||
- https://github.com/status-im/status-react/pull/9995 - Offload chat messages
|
- https://github.com/status-im/status-mobile/pull/9995 - Offload chat messages
|
||||||
- https://github.com/status-im/status-react/pull/10120 - Android app UI is slow after background
|
- https://github.com/status-im/status-mobile/pull/10120 - Android app UI is slow after background
|
||||||
|
|
||||||
Issues fixed:
|
Issues fixed:
|
||||||
- https://github.com/status-im/status-react/issues/10002
|
- https://github.com/status-im/status-mobile/issues/10002
|
||||||
- https://github.com/status-im/status-react/issues/8797
|
- https://github.com/status-im/status-mobile/issues/8797
|
||||||
- https://github.com/status-im/status-react/issues/6839
|
- https://github.com/status-im/status-mobile/issues/6839
|
||||||
- https://github.com/status-im/status-react/issues/9754
|
- https://github.com/status-im/status-mobile/issues/9754
|
||||||
- https://github.com/status-im/status-react/issues/10044
|
- https://github.com/status-im/status-mobile/issues/10044
|
||||||
- https://github.com/status-im/status-react/issues/10041
|
- https://github.com/status-im/status-mobile/issues/10041
|
||||||
- https://github.com/status-im/status-react/issues/9886
|
- https://github.com/status-im/status-mobile/issues/9886
|
||||||
|
|
||||||
## 1.0
|
## 1.0
|
||||||
|
|
||||||
|
@ -877,7 +877,7 @@ Acolytec3
|
||||||
• Improvements to wallet transaction flow UI
|
• Improvements to wallet transaction flow UI
|
||||||
• Sticker market and two initial sticker packs
|
• Sticker market and two initial sticker packs
|
||||||
• Choice of wallet to use when interacting with Dapps
|
• Choice of wallet to use when interacting with Dapps
|
||||||
• [Proper markdown support](https://github.com/status-im/status-react/pull/9409#issue-338045622)
|
• [Proper markdown support](https://github.com/status-im/status-mobile/pull/9409#issue-338045622)
|
||||||
• ENS username setting option for use in chat
|
• ENS username setting option for use in chat
|
||||||
• Improved chat intro screen and public chat list
|
• Improved chat intro screen and public chat list
|
||||||
• Updated chat command flow, with additional privacy layer to be compatible with multiaccount
|
• Updated chat command flow, with additional privacy layer to be compatible with multiaccount
|
||||||
|
@ -893,7 +893,7 @@ Acolytec3
|
||||||
• Algorithm for deriving public chat key changed, performance. (andrey review: pubkey or 3 word name?, not sure if Algorithm for deriving pubkey can be changed)
|
• Algorithm for deriving public chat key changed, performance. (andrey review: pubkey or 3 word name?, not sure if Algorithm for deriving pubkey can be changed)
|
||||||
• Storage of app state moved to Status-go—performance improvements in chat load times
|
• Storage of app state moved to Status-go—performance improvements in chat load times
|
||||||
• Browser privacy mode enabled by default, option removed (EIP1102)
|
• Browser privacy mode enabled by default, option removed (EIP1102)
|
||||||
• Updates to EIP1102 for compatibility (https://github.com/status-im/status-react/pull/9629)
|
• Updates to EIP1102 for compatibility (https://github.com/status-im/status-mobile/pull/9629)
|
||||||
• Protocol breaking changes: removed transit encoding in favor of protobuf, for better performance and interoperability with other languages
|
• Protocol breaking changes: removed transit encoding in favor of protobuf, for better performance and interoperability with other languages
|
||||||
• Roughly 45% improvement in how quickly chats load
|
• Roughly 45% improvement in how quickly chats load
|
||||||
• Profile screen cleaned up
|
• Profile screen cleaned up
|
||||||
|
@ -957,17 +957,17 @@ To get involved, you can find our current bounty issues on Gitcoin [LINK].
|
||||||
- Moved `Browser privacy Mode` toggle to the browser screen as new preference setting
|
- Moved `Browser privacy Mode` toggle to the browser screen as new preference setting
|
||||||
- `Fetch more messages` button now retrieves up to 30 days of history in public chats
|
- `Fetch more messages` button now retrieves up to 30 days of history in public chats
|
||||||
- Long press a chat for more options; no more swiping
|
- Long press a chat for more options; no more swiping
|
||||||
- Fewer messages rendered before a chat is scrolled for better performance ([8191](https://github.com/status-im/status-react/pull/8191))
|
- Fewer messages rendered before a chat is scrolled for better performance ([8191](https://github.com/status-im/status-mobile/pull/8191))
|
||||||
- Using checksummed addresses in wallet (EIP55) ([8121](https://github.com/status-im/status-react/issues/8121) and [4959](https://github.com/status-im/status-react/issues/4959))
|
- Using checksummed addresses in wallet (EIP55) ([8121](https://github.com/status-im/status-mobile/issues/8121) and [4959](https://github.com/status-im/status-mobile/issues/4959))
|
||||||
- Scanning QR code from a DApp does not cause redirect
|
- Scanning QR code from a DApp does not cause redirect
|
||||||
|
|
||||||
**Fixed**
|
**Fixed**
|
||||||
- Browser crash when incorrect domain entered ([8239](https://github.com/status-im/status-react/issues/8239))
|
- Browser crash when incorrect domain entered ([8239](https://github.com/status-im/status-mobile/issues/8239))
|
||||||
- ENS registration bug ([8249](https://github.com/status-im/status-react/issues/8249))
|
- ENS registration bug ([8249](https://github.com/status-im/status-mobile/issues/8249))
|
||||||
- Wallet balance updates correctly after Tx received ([8107](https://github.com/status-im/status-react/issues/8107))
|
- Wallet balance updates correctly after Tx received ([8107](https://github.com/status-im/status-mobile/issues/8107))
|
||||||
- Support for EIP1577/`contenthash` field for ENS
|
- Support for EIP1577/`contenthash` field for ENS
|
||||||
- Numeric validation for `send`/`receive` chat commands ([1442](https://github.com/status-im/status-react/issues/1442))
|
- Numeric validation for `send`/`receive` chat commands ([1442](https://github.com/status-im/status-mobile/issues/1442))
|
||||||
- Allow to select chat item below plus button ([7859](https://github.com/status-im/status-react/issues/7859))
|
- Allow to select chat item below plus button ([7859](https://github.com/status-im/status-mobile/issues/7859))
|
||||||
|
|
||||||
|
|
||||||
## 0.12.0
|
## 0.12.0
|
||||||
|
@ -1029,11 +1029,11 @@ Reminder: On April 1st, we'll experiment with eliminating all centralized, third
|
||||||
- Improved UI performance (https://www.pivotaltracker.com/story/show/164245989)
|
- Improved UI performance (https://www.pivotaltracker.com/story/show/164245989)
|
||||||
|
|
||||||
**Fixed**
|
**Fixed**
|
||||||
- Universal link to public chat bug (https://github.com/status-im/status-react/issues/7549)
|
- Universal link to public chat bug (https://github.com/status-im/status-mobile/issues/7549)
|
||||||
- Beta warning popup (https://github.com/status-im/status-react/issues/7771)
|
- Beta warning popup (https://github.com/status-im/status-mobile/issues/7771)
|
||||||
- DApp offline error (https://github.com/status-im/status-react/issues/7188#issuecomment-474308724)
|
- DApp offline error (https://github.com/status-im/status-mobile/issues/7188#issuecomment-474308724)
|
||||||
- Bug with QR code scanner for custom bootnodes (https://github.com/status-im/status-react/pull/7782)
|
- Bug with QR code scanner for custom bootnodes (https://github.com/status-im/status-mobile/pull/7782)
|
||||||
- Error message when entering an incorrect custom mailserver (https://github.com/status-im/status-react/issues/7752)
|
- Error message when entering an incorrect custom mailserver (https://github.com/status-im/status-mobile/issues/7752)
|
||||||
|
|
||||||
|
|
||||||
## 0.10.1 - Hot Fix
|
## 0.10.1 - Hot Fix
|
||||||
|
@ -1080,9 +1080,9 @@ And that concludes the most significant changes of this release! For more, check
|
||||||
- Minor tweaks to chat UI
|
- Minor tweaks to chat UI
|
||||||
|
|
||||||
**Fixed**
|
**Fixed**
|
||||||
- Status now works on restricted [ports](https://github.com/status-im/status-react/pull/7382)
|
- Status now works on restricted [ports](https://github.com/status-im/status-mobile/pull/7382)
|
||||||
- Overlap on small screens during log-in
|
- Overlap on small screens during log-in
|
||||||
- False mailserver connection error [removed](https://github.com/status-im/status-react/issues/7531)
|
- False mailserver connection error [removed](https://github.com/status-im/status-mobile/issues/7531)
|
||||||
- Premature sending of contact requests on Profile > Send message
|
- Premature sending of contact requests on Profile > Send message
|
||||||
- DApps on same host (i.e. IPFS) no longer share user-granted permissions
|
- DApps on same host (i.e. IPFS) no longer share user-granted permissions
|
||||||
|
|
||||||
|
@ -1152,7 +1152,7 @@ For the full list of changes, see below.
|
||||||
|
|
||||||
_Notes to call out_
|
_Notes to call out_
|
||||||
- Privacy mode by default instructions
|
- Privacy mode by default instructions
|
||||||
- Breaking change: no PNs for old versions after next mobile release - https://github.com/status-im/status-react/pull/6893
|
- Breaking change: no PNs for old versions after next mobile release - https://github.com/status-im/status-mobile/pull/6893
|
||||||
- Setting up device pairing
|
- Setting up device pairing
|
||||||
|
|
||||||
|
|
||||||
|
@ -1179,7 +1179,7 @@ Fixed
|
||||||
- Transaction history fixes
|
- Transaction history fixes
|
||||||
- Updating enabled tokens before navigating to wallet
|
- Updating enabled tokens before navigating to wallet
|
||||||
|
|
||||||
[All changes](https://github.com/status-im/status-react/compare/release/0.9.31...release/0.9.32)
|
[All changes](https://github.com/status-im/status-mobile/compare/release/0.9.31...release/0.9.32)
|
||||||
|
|
||||||
## 0.9.31
|
## 0.9.31
|
||||||
|
|
||||||
|
@ -1210,7 +1210,7 @@ Fixed
|
||||||
- Restored missing transaction error messages
|
- Restored missing transaction error messages
|
||||||
- Granting profile access applies per DApp rather than per host
|
- Granting profile access applies per DApp rather than per host
|
||||||
|
|
||||||
[All changes](https://github.com/status-im/status-react/compare/release/0.9.30...release/0.9.31)
|
[All changes](https://github.com/status-im/status-mobile/compare/release/0.9.30...release/0.9.31)
|
||||||
|
|
||||||
## 0.9.30
|
## 0.9.30
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
library 'status-jenkins-lib@v1.4.3'
|
library 'status-jenkins-lib@v1.5.0'
|
||||||
|
|
||||||
/* Options section can't access functions in objects. */
|
/* Options section can't access functions in objects. */
|
||||||
def isPRBuild = utils.isPRBuild()
|
def isPRBuild = utils.isPRBuild()
|
||||||
|
@ -17,7 +17,7 @@ pipeline {
|
||||||
artifactNumToKeepStr: '10',
|
artifactNumToKeepStr: '10',
|
||||||
))
|
))
|
||||||
/* Allows combined build to copy */
|
/* Allows combined build to copy */
|
||||||
copyArtifactPermission('/status-react/*')
|
copyArtifactPermission('/status-mobile/*')
|
||||||
/* Abort old PR builds. */
|
/* Abort old PR builds. */
|
||||||
disableConcurrentBuilds(
|
disableConcurrentBuilds(
|
||||||
abortPrevious: isPRBuild
|
abortPrevious: isPRBuild
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
library 'status-jenkins-lib@v1.4.3'
|
library 'status-jenkins-lib@v1.5.0'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label 'linux' }
|
agent { label 'linux' }
|
||||||
|
@ -41,13 +41,13 @@ pipeline {
|
||||||
stage('Build') {
|
stage('Build') {
|
||||||
parallel {
|
parallel {
|
||||||
stage('iOS') { steps { script {
|
stage('iOS') { steps { script {
|
||||||
ios = jenkins.Build('status-react/platforms/ios')
|
ios = jenkins.Build('status-mobile/platforms/ios')
|
||||||
} } }
|
} } }
|
||||||
stage('Android') { steps { script {
|
stage('Android') { steps { script {
|
||||||
apk = jenkins.Build('status-react/platforms/android')
|
apk = jenkins.Build('status-mobile/platforms/android')
|
||||||
} } }
|
} } }
|
||||||
stage('Android e2e') { steps { script {
|
stage('Android e2e') { steps { script {
|
||||||
apke2e = jenkins.Build('status-react/platforms/android-e2e')
|
apke2e = jenkins.Build('status-mobile/platforms/android-e2e')
|
||||||
} } }
|
} } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -91,7 +91,7 @@ pipeline {
|
||||||
build(job: 'website/status.im', wait: false);
|
build(job: 'website/status.im', wait: false);
|
||||||
break;
|
break;
|
||||||
case 'release':
|
case 'release':
|
||||||
github.publishReleaseFiles(repo: 'status-react');
|
github.publishReleaseFiles(repo: 'status-mobile');
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} }
|
} }
|
||||||
|
@ -101,7 +101,7 @@ pipeline {
|
||||||
steps { script {
|
steps { script {
|
||||||
e2eApk = utils.getEnv(apke2e, 'SAUCE_URL')
|
e2eApk = utils.getEnv(apke2e, 'SAUCE_URL')
|
||||||
build(
|
build(
|
||||||
job: 'status-react/e2e/status-app-nightly',
|
job: 'status-mobile/e2e/status-app-nightly',
|
||||||
parameters: [string(name: 'APK_NAME', value: e2eApk)],
|
parameters: [string(name: 'APK_NAME', value: e2eApk)],
|
||||||
wait: false
|
wait: false
|
||||||
)
|
)
|
||||||
|
@ -126,7 +126,7 @@ def List genChoices(String previousChoice, List defaultChoices) {
|
||||||
* - A user explicitly specified a value
|
* - A user explicitly specified a value
|
||||||
* Since release builds create and re-create GitHub drafts every time. */
|
* Since release builds create and re-create GitHub drafts every time. */
|
||||||
def Boolean getPublishDefault(Boolean previousValue) {
|
def Boolean getPublishDefault(Boolean previousValue) {
|
||||||
if (env.JOB_NAME.startsWith('status-react/release')) { return true }
|
if (env.JOB_NAME.startsWith('status-mobile/release')) { return true }
|
||||||
if (previousValue != null) { return previousValue }
|
if (previousValue != null) { return previousValue }
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
library 'status-jenkins-lib@v1.4.3'
|
library 'status-jenkins-lib@v1.5.0'
|
||||||
|
|
||||||
/* Options section can't access functions in objects. */
|
/* Options section can't access functions in objects. */
|
||||||
def isPRBuild = utils.isPRBuild()
|
def isPRBuild = utils.isPRBuild()
|
||||||
|
@ -25,7 +25,7 @@ pipeline {
|
||||||
artifactNumToKeepStr: '10',
|
artifactNumToKeepStr: '10',
|
||||||
))
|
))
|
||||||
/* Allows combined build to copy */
|
/* Allows combined build to copy */
|
||||||
copyArtifactPermission('/status-react/*')
|
copyArtifactPermission('/status-mobile/*')
|
||||||
/* Abort old PR builds. */
|
/* Abort old PR builds. */
|
||||||
disableConcurrentBuilds(
|
disableConcurrentBuilds(
|
||||||
abortPrevious: isPRBuild
|
abortPrevious: isPRBuild
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
library 'status-jenkins-lib@v1.4.3'
|
library 'status-jenkins-lib@v1.5.0'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label params.AGENT_LABEL }
|
agent { label params.AGENT_LABEL }
|
||||||
|
@ -97,7 +97,7 @@ pipeline {
|
||||||
sshagent(credentials: ['nix-cache-ssh']) {
|
sshagent(credentials: ['nix-cache-ssh']) {
|
||||||
nix.shell("""
|
nix.shell("""
|
||||||
find /nix/store/ -mindepth 1 -maxdepth 1 -type d \
|
find /nix/store/ -mindepth 1 -maxdepth 1 -type d \
|
||||||
-not -name '*.links' -and -not -name '*-status-react-*' \
|
-not -name '*.links' -and -not -name '*-status-mobile-*' \
|
||||||
| xargs nix copy \
|
| xargs nix copy \
|
||||||
--to ssh-ng://${params.NIX_CACHE_USER}@${params.NIX_CACHE_HOST}
|
--to ssh-ng://${params.NIX_CACHE_USER}@${params.NIX_CACHE_HOST}
|
||||||
""",
|
""",
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
library 'status-jenkins-lib@v1.4.3'
|
library 'status-jenkins-lib@v1.5.0'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
library 'status-jenkins-lib@v1.4.3'
|
library 'status-jenkins-lib@v1.5.0'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label 'macos' }
|
agent { label 'macos' }
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
library 'status-jenkins-lib@v1.4.3'
|
library 'status-jenkins-lib@v1.5.0'
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent { label 'linux' }
|
agent { label 'linux' }
|
||||||
|
|
|
@ -128,7 +128,7 @@ You should also run `lint` and `rewritemeta` for the App ID to verify and fix th
|
||||||
|
|
||||||
# Details
|
# Details
|
||||||
|
|
||||||
The original research was done in [#8512](https://github.com/status-im/status-react/issues/8512).
|
The original research was done in [#8512](https://github.com/status-im/status-mobile/issues/8512).
|
||||||
|
|
||||||
Normally F-Droid server wants to run Gradle itself, but we do not specify the `gradle` key in order to run `make release-fdroid` ourselves in `build` step. We also add `android/build.gradle` to `scanignore` to avoid F-Droid trying to use Gradle directly.
|
Normally F-Droid server wants to run Gradle itself, but we do not specify the `gradle` key in order to run `make release-fdroid` ourselves in `build` step. We also add `android/build.gradle` to `scanignore` to avoid F-Droid trying to use Gradle directly.
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Setup your Editor/IDE
|
# Setup your Editor/IDE
|
||||||
|
|
||||||
You can use any Clojure enabled editor. Here are instructions for developing the status-react app using:
|
You can use any Clojure enabled editor. Here are instructions for developing the status-mobile app using:
|
||||||
|
|
||||||
* IntelliJ IDEA and Cursive
|
* IntelliJ IDEA and Cursive
|
||||||
* VS Code and Calva
|
* VS Code and Calva
|
||||||
|
@ -11,11 +11,11 @@ You can use any Clojure enabled editor. Here are instructions for developing the
|
||||||
|
|
||||||
- [Using Cursive](#using-cursive)
|
- [Using Cursive](#using-cursive)
|
||||||
- [Install Cursive](#install-cursive)
|
- [Install Cursive](#install-cursive)
|
||||||
- [Getting Cursive to understand `status-react`](#getting-cursive-to-understand-status-react)
|
- [Getting Cursive to understand `status-mobile`](#getting-cursive-to-understand-status-mobile)
|
||||||
- [I get a lot of `cannot be resolved`](#i-get-a-lot-of-cannot-be-resolved)
|
- [I get a lot of `cannot be resolved`](#i-get-a-lot-of-cannot-be-resolved)
|
||||||
- [REPL!](#repl)
|
- [REPL!](#repl)
|
||||||
- [Connecting to REPL to IntelliJ](#connecting-to-repl-to-intellij)
|
- [Connecting to REPL to IntelliJ](#connecting-to-repl-to-intellij)
|
||||||
- [Connecting REPL and IntelliJ to `status-react`](#connecting-repl-and-intellij-to-status-react)
|
- [Connecting REPL and IntelliJ to `status-mobile`](#connecting-repl-and-intellij-to-status-mobile)
|
||||||
- [Using Calva](#using-calva)
|
- [Using Calva](#using-calva)
|
||||||
- [Start and connect the REPL](#start-and-connect-the-repl)
|
- [Start and connect the REPL](#start-and-connect-the-repl)
|
||||||
- [Use the REPL](#use-the-repl)
|
- [Use the REPL](#use-the-repl)
|
||||||
|
@ -26,9 +26,9 @@ You can use any Clojure enabled editor. Here are instructions for developing the
|
||||||
|
|
||||||
See https://cursive-ide.com/userguide/index.html
|
See https://cursive-ide.com/userguide/index.html
|
||||||
|
|
||||||
### Getting Cursive to understand `status-react`
|
### Getting Cursive to understand `status-mobile`
|
||||||
|
|
||||||
- Add this file to the root of the `status-react` project dir
|
- Add this file to the root of the `status-mobile` project dir
|
||||||
- https://gist.github.com/Samyoul/f71a0593ba7a12d24dd0d5ef986ebbec
|
- https://gist.github.com/Samyoul/f71a0593ba7a12d24dd0d5ef986ebbec
|
||||||
- Right click and "add as leiningen project"
|
- Right click and "add as leiningen project"
|
||||||
|
|
||||||
|
@ -73,8 +73,8 @@ Which will load the following menu
|
||||||
|
|
||||||
Enter the below options:
|
Enter the below options:
|
||||||
|
|
||||||
- Name = status-react
|
- Name = status-mobile
|
||||||
- Display Name = status-react
|
- Display Name = status-mobile
|
||||||
- Connection type = nREPL
|
- Connection type = nREPL
|
||||||
- Connection details
|
- Connection details
|
||||||
- Host = 127.0.0.1
|
- Host = 127.0.0.1
|
||||||
|
@ -114,7 +114,7 @@ See below:
|
||||||
|
|
||||||
<img src="images/IDE_SETUP/9_REPL_7.png" width=75% />
|
<img src="images/IDE_SETUP/9_REPL_7.png" width=75% />
|
||||||
|
|
||||||
#### Connecting REPL and IntelliJ to `status-react`
|
#### Connecting REPL and IntelliJ to `status-mobile`
|
||||||
|
|
||||||
**The important next step is telling REPL the context in which to interact with the code.**
|
**The important next step is telling REPL the context in which to interact with the code.**
|
||||||
|
|
||||||
|
@ -167,7 +167,7 @@ For VS Code users.
|
||||||
|
|
||||||
### Start and connect the REPL
|
### Start and connect the REPL
|
||||||
|
|
||||||
1. Open the `status-react` folder.
|
1. Open the `status-mobile` folder.
|
||||||
1. Start [Status development](STARTING_GUIDE.md#development) (Starting the `run-clojure` and `run-metro` jobs in split view in the VS Code integrated terminal works great.)
|
1. Start [Status development](STARTING_GUIDE.md#development) (Starting the `run-clojure` and `run-metro` jobs in split view in the VS Code integrated terminal works great.)
|
||||||
1. Run the VS Code command: **Calva: Connect to a running REPL Server in the project**
|
1. Run the VS Code command: **Calva: Connect to a running REPL Server in the project**
|
||||||
1. Select the project type `shadow-cljs`
|
1. Select the project type `shadow-cljs`
|
||||||
|
|
|
@ -13,9 +13,9 @@
|
||||||
#### Before publishing
|
#### Before publishing
|
||||||
- [ ] Translations for comms available
|
- [ ] Translations for comms available
|
||||||
- [ ] Promotional content ready
|
- [ ] Promotional content ready
|
||||||
- [ ] Update Draft with release on https://github.com/status-im/status-react/releases
|
- [ ] Update Draft with release on https://github.com/status-im/status-mobile/releases
|
||||||
- [ ] Add release to DO store and [update site](https://notes.status.im/s/status-release-upload#) (Jakub - requires credentials to upload)
|
- [ ] Add release to DO store and [update site](https://notes.status.im/s/status-release-upload#) (Jakub - requires credentials to upload)
|
||||||
|
|
||||||
#### At time of publishing
|
#### At time of publishing
|
||||||
- [ ] validate draft release on github release page https://github.com/status-im/status-react/releases
|
- [ ] validate draft release on github release page https://github.com/status-im/status-mobile/releases
|
||||||
- [ ] update https://github.com/status-im/status-react/blob/develop/RELEASES.md with release notes
|
- [ ] update https://github.com/status-im/status-mobile/blob/develop/RELEASES.md with release notes
|
||||||
|
|
|
@ -8,7 +8,7 @@ This document explains some of the steps that are involved in releases.
|
||||||
|
|
||||||
All the coordination is done in the `#release` channel on discord.
|
All the coordination is done in the `#release` channel on discord.
|
||||||
|
|
||||||
Release readiness can be tracked by watching an appropriate milestone at [milestones](https://github.com/status-im/status-react/milestones) section in github.
|
Release readiness can be tracked by watching an appropriate milestone at [milestones](https://github.com/status-im/status-mobile/milestones) section in github.
|
||||||
|
|
||||||
When release is building you can check the progress in a testrail. Ask @churik for access if you don't have it
|
When release is building you can check the progress in a testrail. Ask @churik for access if you don't have it
|
||||||
|
|
||||||
|
@ -53,7 +53,7 @@ tested successfully.
|
||||||
|
|
||||||
## Bugfixes before an app is released
|
## Bugfixes before an app is released
|
||||||
|
|
||||||
Because both `status-react` and `status-go` might have newer commits that we don't want to include, bug fixes should be applied separately to develop and the release branch.
|
Because both `status-mobile` and `status-go` might have newer commits that we don't want to include, bug fixes should be applied separately to develop and the release branch.
|
||||||
The best workflow is to send a PR to develop, get it merged, and the cherry-pick on the
|
The best workflow is to send a PR to develop, get it merged, and the cherry-pick on the
|
||||||
release branch.
|
release branch.
|
||||||
|
|
||||||
|
@ -87,9 +87,9 @@ Push the branch and then the tag to origin:
|
||||||
`git push --set-upstream origin release/v0.62.3+hotfix.2`
|
`git push --set-upstream origin release/v0.62.3+hotfix.2`
|
||||||
`git push origin v0.62.3+hotfix.2`
|
`git push origin v0.62.3+hotfix.2`
|
||||||
|
|
||||||
Switch to status-react release branch, and cherry pick the commit you need.
|
Switch to status-mobile release branch, and cherry pick the commit you need.
|
||||||
|
|
||||||
Once that's done, update the status-react release branch with the new tag:
|
Once that's done, update the status-mobile release branch with the new tag:
|
||||||
|
|
||||||
`make shell`
|
`make shell`
|
||||||
|
|
||||||
|
@ -101,9 +101,9 @@ And commit and push the changes
|
||||||
|
|
||||||
The hotfix process is basically identical to the workflow of a bugfix:
|
The hotfix process is basically identical to the workflow of a bugfix:
|
||||||
|
|
||||||
1) Add the changes on status-react
|
1) Add the changes on status-mobile
|
||||||
2) Make sure you use a hotfix branch for status-go (unless we are happy to release from develop)
|
2) Make sure you use a hotfix branch for status-go (unless we are happy to release from develop)
|
||||||
3) Update the `VERSION` in status-react
|
3) Update the `VERSION` in status-mobile
|
||||||
|
|
||||||
# PlayStore Metadata Updates
|
# PlayStore Metadata Updates
|
||||||
This section is relevant only for the marketing team, no developer participation is required.
|
This section is relevant only for the marketing team, no developer participation is required.
|
||||||
|
@ -112,4 +112,4 @@ You can update Play Store release metadata using `fastlane android upload_metada
|
||||||
|
|
||||||
But that requires credentials necessary for accessing Play Store API. The simpler way is to edit files contained within [`fastlane/metadata`](metadata) and run the following CI job:
|
But that requires credentials necessary for accessing Play Store API. The simpler way is to edit files contained within [`fastlane/metadata`](metadata) and run the following CI job:
|
||||||
|
|
||||||
https://ci.status.im/job/status-react/job/tools/job/update-playstore-metadata/
|
https://ci.status.im/job/status-mobile/job/tools/job/update-playstore-metadata/
|
||||||
|
|
|
@ -25,7 +25,7 @@ QA process was focused on account creation and login with keycard, and this bug
|
||||||
|
|
||||||
# Missing labels for en translation
|
# Missing labels for en translation
|
||||||
|
|
||||||
https://github.com/status-im/status-react/issues/9003
|
https://github.com/status-im/status-mobile/issues/9003
|
||||||
|
|
||||||
## Cause
|
## Cause
|
||||||
|
|
||||||
|
|
|
@ -64,7 +64,7 @@ It's recommented that you [add your public SSH key to your GitHub account](https
|
||||||
|
|
||||||
## Configure GPG Keys for signing commits
|
## Configure GPG Keys for signing commits
|
||||||
|
|
||||||
In order to increase security we require all commits in `status-react` repo to be signed with a GPG key.
|
In order to increase security we require all commits in `status-mobile` repo to be signed with a GPG key.
|
||||||
|
|
||||||
Steps:
|
Steps:
|
||||||
1. [Generate a new GPG key](https://help.github.com/en/github/authenticating-to-github/generating-a-new-gpg-key)
|
1. [Generate a new GPG key](https://help.github.com/en/github/authenticating-to-github/generating-a-new-gpg-key)
|
||||||
|
|
|
@ -64,9 +64,9 @@ info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this
|
||||||
`yarn.lock` is not updated to be in sync with `package.json`.
|
`yarn.lock` is not updated to be in sync with `package.json`.
|
||||||
|
|
||||||
## Solution
|
## Solution
|
||||||
Update yarn.lock file. In order to do this, perform the following steps on a clean `status-react` repo:
|
Update yarn.lock file. In order to do this, perform the following steps on a clean `status-mobile` repo:
|
||||||
```
|
```
|
||||||
cd status-react
|
cd status-mobile
|
||||||
yarn install
|
yarn install
|
||||||
```
|
```
|
||||||
and don't forget to commit updated `yarn.lock` together with `package.json`.
|
and don't forget to commit updated `yarn.lock` together with `package.json`.
|
||||||
|
@ -87,7 +87,7 @@ adb server version (41) doesn't match this client (40); killing...
|
||||||
This might cause all kinds of difficult-to-debug errors, e.g.:
|
This might cause all kinds of difficult-to-debug errors, e.g.:
|
||||||
- not being able to find the device through `adb devices`
|
- not being able to find the device through `adb devices`
|
||||||
- `make run-android` throwing `com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: device 'device-id' not found.`
|
- `make run-android` throwing `com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: device 'device-id' not found.`
|
||||||
- `make run-android` throwing `- Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081 Unable to install /status-react/android/app/build/outputs/apk/debug/app-debug.apk com.android.ddmlib.InstallException: EOF`
|
- `make run-android` throwing `- Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081 Unable to install /status-mobile/android/app/build/outputs/apk/debug/app-debug.apk com.android.ddmlib.InstallException: EOF`
|
||||||
- dropped CLJS repl connections (that have been enabled previously with the help of `make android-ports`)
|
- dropped CLJS repl connections (that have been enabled previously with the help of `make android-ports`)
|
||||||
|
|
||||||
## Cause
|
## Cause
|
||||||
|
|
|
@ -75,7 +75,7 @@ These guidelines make db.cljs namespaces the place to go when making changes to
|
||||||
- events must always be declared with `fx/defn` macro
|
- events must always be declared with `fx/defn` macro
|
||||||
|
|
||||||
## Testing flow
|
## Testing flow
|
||||||
- All PRs automatically go to "REVIEW" column on [Pipeline for QA](https://github.com/status-im/status-react/projects/7) project on Github. This is our main board for QA / devs interaction
|
- All PRs automatically go to "REVIEW" column on [Pipeline for QA](https://github.com/status-im/status-mobile/projects/7) project on Github. This is our main board for QA / devs interaction
|
||||||
- After the PR gets at least 1 approval, it should be moved to "E2E Tests" column. Some PRs may need approvals from more than one person.
|
- After the PR gets at least 1 approval, it should be moved to "E2E Tests" column. Some PRs may need approvals from more than one person.
|
||||||
- Critical path tests are automatically run for all PRs in "E2E Tests" column.
|
- Critical path tests are automatically run for all PRs in "E2E Tests" column.
|
||||||
- If E2E tests pass:
|
- If E2E tests pass:
|
||||||
|
@ -94,7 +94,7 @@ Calls to `log/debug` will not be printed to the console by default. It can be en
|
||||||
![Enable Debug Logs](./log-settings.png)
|
![Enable Debug Logs](./log-settings.png)
|
||||||
|
|
||||||
## Translations
|
## Translations
|
||||||
The app relies on system locale to select a language from the [list of supported languages](https://github.com/status-im/status-react/blob/bda73867471cf2bb8a68b1cc27c9f94b92d9a58b/src/status_im/i18n_resources.cljs#L9). It falls back to English in cash the system locale is not supported.
|
The app relies on system locale to select a language from the [list of supported languages](https://github.com/status-im/status-mobile/blob/bda73867471cf2bb8a68b1cc27c9f94b92d9a58b/src/status_im/i18n_resources.cljs#L9). It falls back to English in cash the system locale is not supported.
|
||||||
|
|
||||||
We use Lokalise App to manage [translations](https://translate.status.im/). In case you need to add/remove a key to translations, you only need to change `en.json`. Missing keys fallback to `en.json`. The actual translations will be added by Lokalise.
|
We use Lokalise App to manage [translations](https://translate.status.im/). In case you need to add/remove a key to translations, you only need to change `en.json`. Missing keys fallback to `en.json`. The actual translations will be added by Lokalise.
|
||||||
|
|
||||||
|
@ -113,7 +113,7 @@ $ make run-re-frisk
|
||||||
A server will be started at http://localhost:4567. It might show "not connected" at first. Don't worry and just start using the app. The events and state will populate.
|
A server will be started at http://localhost:4567. It might show "not connected" at first. Don't worry and just start using the app. The events and state will populate.
|
||||||
|
|
||||||
## Merging approved PRs
|
## Merging approved PRs
|
||||||
We don't Github's UI to merge. Instead `./scripts/merge-pr.sh` is used to sign and merge PR to `develop`. You first need to enable [GPG signing on you commits](https://github.com/status-im/status-react/blob/develop/STARTING_GUIDE.md#configure-gpg-keys-for-signing-commits).
|
We don't Github's UI to merge. Instead `./scripts/merge-pr.sh` is used to sign and merge PR to `develop`. You first need to enable [GPG signing on you commits](https://github.com/status-im/status-mobile/blob/develop/STARTING_GUIDE.md#configure-gpg-keys-for-signing-commits).
|
||||||
|
|
||||||
Once your commits are verfied and PR approved, you can run the script like so:
|
Once your commits are verfied and PR approved, you can run the script like so:
|
||||||
|
|
||||||
|
|
|
@ -49,7 +49,7 @@ decentralization and security.
|
||||||
Q2 we will provide two ways of accessing the Ethereum network:
|
Q2 we will provide two ways of accessing the Ethereum network:
|
||||||
|
|
||||||
- Upstream RPC with Infura (default)
|
- Upstream RPC with Infura (default)
|
||||||
- Custom upstream node (https://github.com/status-im/status-react/issues/3994)
|
- Custom upstream node (https://github.com/status-im/status-mobile/issues/3994)
|
||||||
|
|
||||||
From a decentralization point of view we need the latter before we can release
|
From a decentralization point of view we need the latter before we can release
|
||||||
the beta.
|
the beta.
|
||||||
|
|
|
@ -20,11 +20,11 @@ chance to talk to strangers and it is open by default.
|
||||||
Whether group chats are in scope or not has been a recurring discussing and a
|
Whether group chats are in scope or not has been a recurring discussing and a
|
||||||
lot of effort has been wasted related to this.
|
lot of effort has been wasted related to this.
|
||||||
|
|
||||||
There are currently a lot of outstanding regressions related to group chat: https://github.com/status-im/status-react/labels/group-chat Additionally, since group chats are private the encryption and security of those are generally harder than 1-1 and public chat.
|
There are currently a lot of outstanding regressions related to group chat: https://github.com/status-im/status-mobile/labels/group-chat Additionally, since group chats are private the encryption and security of those are generally harder than 1-1 and public chat.
|
||||||
|
|
||||||
## Decision
|
## Decision
|
||||||
|
|
||||||
Disable group chat for beta and don't work on bugs related to it until after. See https://github.com/status-im/status-react/issues/3995
|
Disable group chat for beta and don't work on bugs related to it until after. See https://github.com/status-im/status-mobile/issues/3995
|
||||||
|
|
||||||
This ensures we can release beta without blockers, and then we can take some
|
This ensures we can release beta without blockers, and then we can take some
|
||||||
time to fix group chats properly.
|
time to fix group chats properly.
|
||||||
|
|
|
@ -13,7 +13,7 @@ Proposed
|
||||||
|
|
||||||
We have some data that we don't want to appear in the logs (user passwords are
|
We have some data that we don't want to appear in the logs (user passwords are
|
||||||
a good example). Currently, they are passed around as strings, that could be
|
a good example). Currently, they are passed around as strings, that could be
|
||||||
printed out by mistake in a log entry (see https://github.com/status-im/status-react/issues/4053)
|
printed out by mistake in a log entry (see https://github.com/status-im/status-mobile/issues/4053)
|
||||||
|
|
||||||
## Decision
|
## Decision
|
||||||
|
|
||||||
|
|
|
@ -95,7 +95,7 @@ We also have an ongoing document with them.
|
||||||
|
|
||||||
#### iOS Test Flight Release
|
#### iOS Test Flight Release
|
||||||
**Upload to AppStore Connect**
|
**Upload to AppStore Connect**
|
||||||
Use [this Jenkins job](https://jenkins.status.im/job/status-react/job/upload_release_ios/)
|
Use [this Jenkins job](https://jenkins.status.im/job/status-mobile/job/upload_release_ios/)
|
||||||
|
|
||||||
**“What to test” field**
|
**“What to test” field**
|
||||||
When AppStore Connect asks you to fill in the field called “what to test”, just copy the release notes there.
|
When AppStore Connect asks you to fill in the field called “what to test”, just copy the release notes there.
|
||||||
|
@ -114,7 +114,7 @@ If reviewed successfully, we can share it to our users by adding “testflight-b
|
||||||
The uploaded release is **immediately available**!
|
The uploaded release is **immediately available**!
|
||||||
Do it only if the iOS build is approved by Apple!
|
Do it only if the iOS build is approved by Apple!
|
||||||
|
|
||||||
Use [this Jenkins job](https://jenkins.status.im/job/status-react/job/upload_release_android/)
|
Use [this Jenkins job](https://jenkins.status.im/job/status-mobile/job/upload_release_android/)
|
||||||
|
|
||||||
Don’t forget to update the screenshots if necessary!
|
Don’t forget to update the screenshots if necessary!
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ As a rule of thumb, coverage should increase.
|
||||||
**3. Reject PRs that don't write what tests the author have done and what platforms you used to test, including screenshots, videos or logs**
|
**3. Reject PRs that don't write what tests the author have done and what platforms you used to test, including screenshots, videos or logs**
|
||||||
This means QA and dev have to spend less time catching obvious problems.
|
This means QA and dev have to spend less time catching obvious problems.
|
||||||
|
|
||||||
**4. Run tests when a PR is at "Review" stage on https://github.com/status-im/status-react/projects/7 (or add new 'e2e stage' between review and `TO TEST`)**
|
**4. Run tests when a PR is at "Review" stage on https://github.com/status-im/status-mobile/projects/7 (or add new 'e2e stage' between review and `TO TEST`)**
|
||||||
|
|
||||||
**5. Dev asks for 2-3 reviewers, including a designer if the change affects UI, and these reviewers review within a day.**
|
**5. Dev asks for 2-3 reviewers, including a designer if the change affects UI, and these reviewers review within a day.**
|
||||||
This ensures we don't have *diffusion of responsibility* and that PRs are reviewed quickly.
|
This ensures we don't have *diffusion of responsibility* and that PRs are reviewed quickly.
|
||||||
|
|
|
@ -23,8 +23,8 @@ The `State` field in the Pivotal story is used to track the progress of a Pivota
|
||||||
| ---------- | -------- |
|
| ---------- | -------- |
|
||||||
| `Unstarted` | In backlog |
|
| `Unstarted` | In backlog |
|
||||||
| `Started` | Developer has started work on story |
|
| `Started` | Developer has started work on story |
|
||||||
| `Finished` | Developer has finished work on story (Pull Request for story is in [REVIEW](https://github.com/status-im/status-react/projects/7#column-1843024) column in [Pipeline for QA](https://github.com/status-im/status-react/projects/7) board) |
|
| `Finished` | Developer has finished work on story (Pull Request for story is in [REVIEW](https://github.com/status-im/status-mobile/projects/7#column-1843024) column in [Pipeline for QA](https://github.com/status-im/status-mobile/projects/7) board) |
|
||||||
| `Delivered` | Pull Request for story is in testing in [Pipeline for QA](https://github.com/status-im/status-react/projects/7) board) board |
|
| `Delivered` | Pull Request for story is in testing in [Pipeline for QA](https://github.com/status-im/status-mobile/projects/7) board) board |
|
||||||
| `Accepted` | PR has been merged |
|
| `Accepted` | PR has been merged |
|
||||||
| `Rejected` | PR has been aborted |
|
| `Rejected` | PR has been aborted |
|
||||||
|
|
||||||
|
|
|
@ -23,9 +23,9 @@ let
|
||||||
'';
|
'';
|
||||||
|
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
[ -z "$STATUS_REACT_HOME" ] && echo "STATUS_REACT_HOME is empty!" && exit 1
|
[ -z "$STATUS_MOBILE_HOME" ] && echo "STATUS_MOBILE_HOME is empty!" && exit 1
|
||||||
|
|
||||||
export FASTLANE_PLUGINFILE_PATH=$STATUS_REACT_HOME/fastlane/Pluginfile
|
export FASTLANE_PLUGINFILE_PATH=$STATUS_MOBILE_HOME/fastlane/Pluginfile
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -4,7 +4,7 @@ def getStatusGoSHA1 = { ->
|
||||||
def statusgoOverridePath = System.getenv("STATUS_GO_SRC_OVERRIDE")
|
def statusgoOverridePath = System.getenv("STATUS_GO_SRC_OVERRIDE")
|
||||||
if (statusgoOverridePath != null && statusgoOverridePath != "") {
|
if (statusgoOverridePath != null && statusgoOverridePath != "") {
|
||||||
logger.info("build.gradle: Using local version of status-go from ${statusgoOverridePath}")
|
logger.info("build.gradle: Using local version of status-go from ${statusgoOverridePath}")
|
||||||
return "unknown" // This value is defined in https://github.com/status-im/status-react/blob/develop/nix/status-go/default.nix, in `srcData.shortRev`
|
return "unknown" // This value is defined in https://github.com/status-im/status-mobile/blob/develop/nix/status-go/default.nix, in `srcData.shortRev`
|
||||||
}
|
}
|
||||||
|
|
||||||
def jsonSlurper = new groovy.json.JsonSlurper()
|
def jsonSlurper = new groovy.json.JsonSlurper()
|
||||||
|
|
|
@ -73,8 +73,8 @@ nix-build \
|
||||||
--no-out-link \
|
--no-out-link \
|
||||||
--show-trace \
|
--show-trace \
|
||||||
--attr targets.mobile.android.release \
|
--attr targets.mobile.android.release \
|
||||||
--argstr secrets-file '/tmp/tmp-status-react-559a3a441/tmp.xAnrPuNtAP' \
|
--argstr secrets-file '/tmp/tmp-status-mobile-559a3a441/tmp.xAnrPuNtAP' \
|
||||||
--option extra-sandbox-paths '/home/joe/.gradle/status-im.keystore /tmp/tmp-status-react-559a3a441/tmp.xAnrPuNtAP' \
|
--option extra-sandbox-paths '/home/joe/.gradle/status-im.keystore /tmp/tmp-status-mobile-559a3a441/tmp.xAnrPuNtAP' \
|
||||||
--arg config '{ \
|
--arg config '{ \
|
||||||
status-im.build-type="nightly";
|
status-im.build-type="nightly";
|
||||||
status-im.build-number="2020022418";
|
status-im.build-number="2020022418";
|
||||||
|
@ -94,6 +94,6 @@ Would fail.
|
||||||
|
|
||||||
The `make nix-gc` target calls `nix-store --gc` and normally would remove almost everything, but to prevent that we place symlinks to protected derivations in `/nix/var/nix/gcroots` subfolder. Specifically:
|
The `make nix-gc` target calls `nix-store --gc` and normally would remove almost everything, but to prevent that we place symlinks to protected derivations in `/nix/var/nix/gcroots` subfolder. Specifically:
|
||||||
```sh
|
```sh
|
||||||
_NIX_GCROOTS="${_NIX_GCROOTS:-/nix/var/nix/gcroots/per-user/${USER}/status-react}"
|
_NIX_GCROOTS="${_NIX_GCROOTS:-/nix/var/nix/gcroots/per-user/${USER}/status-mobile}"
|
||||||
```
|
```
|
||||||
Whenever `nix/scripts/build.sh` or `nix/scripts/shell.sh` are called they update symlinks named after given targets in that folder. This in combination with `keep-outputs = true` set in `nix/nix.conf` prevents garbage collection from removing too much.
|
Whenever `nix/scripts/build.sh` or `nix/scripts/shell.sh` are called they update symlinks named after given targets in that folder. This in combination with `keep-outputs = true` set in `nix/nix.conf` prevents garbage collection from removing too much.
|
||||||
|
|
|
@ -38,7 +38,7 @@ stalled-download-timeout = 9001
|
||||||
|
|
||||||
## NDK Bundle Download Failures
|
## NDK Bundle Download Failures
|
||||||
|
|
||||||
There is a known issue([#11111](https://github.com/status-im/status-react/issues/11111)) where the fetching of Android NDK Bundle from our own cache host fails in various different ways:
|
There is a known issue([#11111](https://github.com/status-im/status-mobile/issues/11111)) where the fetching of Android NDK Bundle from our own cache host fails in various different ways:
|
||||||
```
|
```
|
||||||
unable to download 'https://nix-cache.status.im/nar/64g5wharwjj040rg1v8jnc5qhv1hkgds.nar':
|
unable to download 'https://nix-cache.status.im/nar/64g5wharwjj040rg1v8jnc5qhv1hkgds.nar':
|
||||||
HTTP error 200 (curl error: Stream error in the HTTP/2 framing layer)
|
HTTP error 200 (curl error: Stream error in the HTTP/2 framing layer)
|
||||||
|
|
|
@ -27,13 +27,13 @@ The `deps.json` is loaded by the derivation in [`default.nix`](./default.nix) an
|
||||||
cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar
|
cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar
|
||||||
|
|
||||||
> nix-build --no-out-link -A pkgs.deps.clojure
|
> nix-build --no-out-link -A pkgs.deps.clojure
|
||||||
/nix/store/d7p8r9vhq6z2jmxwakxpcb262wgkc86s-status-react-clojure-deps
|
/nix/store/d7p8r9vhq6z2jmxwakxpcb262wgkc86s-status-mobile-clojure-deps
|
||||||
|
|
||||||
> DEPS=$(nix-build --no-out-link -A pkgs.deps.clojure)
|
> DEPS=$(nix-build --no-out-link -A pkgs.deps.clojure)
|
||||||
|
|
||||||
> find $DEPS -iname 'cljfmt-0.6.7.*'
|
> find $DEPS -iname 'cljfmt-0.6.7.*'
|
||||||
/nix/store/d7p...86s-status-react-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.pom.sha1
|
/nix/store/d7p...86s-status-mobile-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.pom.sha1
|
||||||
/nix/store/d7p...86s-status-react-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.pom
|
/nix/store/d7p...86s-status-mobile-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.pom
|
||||||
/nix/store/d7p...86s-status-react-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar.sha1
|
/nix/store/d7p...86s-status-mobile-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar.sha1
|
||||||
/nix/store/d7p...86s-status-react-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar
|
/nix/store/d7p...86s-status-mobile-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar
|
||||||
```
|
```
|
||||||
|
|
|
@ -54,7 +54,7 @@ let
|
||||||
deps));
|
deps));
|
||||||
|
|
||||||
in makeOverridable stdenv.mkDerivation {
|
in makeOverridable stdenv.mkDerivation {
|
||||||
name = "status-react-clojure-deps";
|
name = "status-mobile-clojure-deps";
|
||||||
phases = [ "buildPhase" ];
|
phases = [ "buildPhase" ];
|
||||||
buildPhase = "${script}/bin/create-local-maven-repo";
|
buildPhase = "${script}/bin/create-local-maven-repo";
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,9 +28,9 @@ Generating scripts:
|
||||||
Finally we have the Nix derivation in `default.nix` which produces a derivation with all of the Gradle project dependencies:
|
Finally we have the Nix derivation in `default.nix` which produces a derivation with all of the Gradle project dependencies:
|
||||||
```
|
```
|
||||||
$ nix-build --no-out-link --attr pkgs.deps.gradle default.nix
|
$ nix-build --no-out-link --attr pkgs.deps.gradle default.nix
|
||||||
/nix/store/57g95ik19k6gs5w68yid3hzhsax60i3m-status-react-maven-deps
|
/nix/store/57g95ik19k6gs5w68yid3hzhsax60i3m-status-mobile-maven-deps
|
||||||
|
|
||||||
$ ls -l /nix/store/57g95ik19k6gs5w68yid3hzhsax60i3m-status-react-maven-deps | head -n 5
|
$ ls -l /nix/store/57g95ik19k6gs5w68yid3hzhsax60i3m-status-mobile-maven-deps | head -n 5
|
||||||
total 32
|
total 32
|
||||||
dr-xr-xr-x 3 root root 3 Jan 1 1970 android
|
dr-xr-xr-x 3 root root 3 Jan 1 1970 android
|
||||||
dr-xr-xr-x 35 root root 35 Jan 1 1970 androidx
|
dr-xr-xr-x 35 root root 35 Jan 1 1970 androidx
|
||||||
|
@ -54,8 +54,8 @@ A problem occurred configuring project ':react-native-example-project'.
|
||||||
> Could not resolve all artifacts for configuration ':react-native-example-project:classpath'.
|
> Could not resolve all artifacts for configuration ':react-native-example-project:classpath'.
|
||||||
> Could not find com.android.tools.build:gradle:3.4.0.
|
> Could not find com.android.tools.build:gradle:3.4.0.
|
||||||
Searched in the following locations:
|
Searched in the following locations:
|
||||||
- file:/nix/store/34a4qd5qhg2a9kq6a0q9lp7hgmi48q4x-status-react-maven-deps/com/android/tools/build/gradle/3.4.0/gradle-3.4.0.pom
|
- file:/nix/store/34a4qd5qhg2a9kq6a0q9lp7hgmi48q4x-status-mobile-maven-deps/com/android/tools/build/gradle/3.4.0/gradle-3.4.0.pom
|
||||||
- file:/nix/store/34a4qd5qhg2a9kq6a0q9lp7hgmi48q4x-status-react-maven-deps/com/android/tools/build/gradle/3.4.0/gradle-3.4.0.jar
|
- file:/nix/store/34a4qd5qhg2a9kq6a0q9lp7hgmi48q4x-status-mobile-maven-deps/com/android/tools/build/gradle/3.4.0/gradle-3.4.0.jar
|
||||||
Required by:
|
Required by:
|
||||||
project :react-native-example-project
|
project :react-native-example-project
|
||||||
```
|
```
|
||||||
|
@ -66,7 +66,7 @@ You can use the `add_package.sh` script to add missing Gradle dependencies:
|
||||||
> make shell TARGET=gradle
|
> make shell TARGET=gradle
|
||||||
Configuring Nix shell for target 'gradle'...
|
Configuring Nix shell for target 'gradle'...
|
||||||
|
|
||||||
[nix-shell:~/status-react]$ nix/deps/gradle/add_package.sh com.android.tools.build:gradle:3.4.0
|
[nix-shell:~/status-mobile]$ nix/deps/gradle/add_package.sh com.android.tools.build:gradle:3.4.0
|
||||||
Regenerating Nix files...
|
Regenerating Nix files...
|
||||||
Found 548 direct dependencies...
|
Found 548 direct dependencies...
|
||||||
Successfully added: com.android.tools.build:gradle:3.4.0
|
Successfully added: com.android.tools.build:gradle:3.4.0
|
||||||
|
|
|
@ -55,7 +55,7 @@ let
|
||||||
deps));
|
deps));
|
||||||
|
|
||||||
in makeOverridable stdenv.mkDerivation {
|
in makeOverridable stdenv.mkDerivation {
|
||||||
name = "status-react-maven-deps";
|
name = "status-mobile-maven-deps";
|
||||||
buildInputs = [ aapt2 ];
|
buildInputs = [ aapt2 ];
|
||||||
phases = [ "buildPhase" "patchPhase" ];
|
phases = [ "buildPhase" "patchPhase" ];
|
||||||
buildPhase = "${script}/bin/create-local-maven-repo";
|
buildPhase = "${script}/bin/create-local-maven-repo";
|
||||||
|
|
|
@ -10,18 +10,18 @@ If you look at [`nix/deps/nodejs/default.nix`](./default.nix) you'll see that it
|
||||||
Welcome to Nix version 2.3.9. Type :? for help.
|
Welcome to Nix version 2.3.9. Type :? for help.
|
||||||
|
|
||||||
nix-repl> pkgs.deps.nodejs
|
nix-repl> pkgs.deps.nodejs
|
||||||
«derivation /nix/store/23mpmpjjnq7miclv6bc6ilgypy8wz69p-status-react-node-deps-1.8.0.drv»
|
«derivation /nix/store/23mpmpjjnq7miclv6bc6ilgypy8wz69p-status-mobile-node-deps-1.8.0.drv»
|
||||||
```
|
```
|
||||||
You can build the derivation:
|
You can build the derivation:
|
||||||
```
|
```
|
||||||
nix-repl> :b pkgs.deps.nodejs
|
nix-repl> :b pkgs.deps.nodejs
|
||||||
|
|
||||||
this derivation produced the following outputs:
|
this derivation produced the following outputs:
|
||||||
out -> /nix/store/dqb2cjyz1g6n7jic07058y26lnmgaaz9-status-react-node-deps-1.8.0
|
out -> /nix/store/dqb2cjyz1g6n7jic07058y26lnmgaaz9-status-mobile-node-deps-1.8.0
|
||||||
```
|
```
|
||||||
And look inside:
|
And look inside:
|
||||||
```
|
```
|
||||||
> cd /nix/store/dqb2cjyz1g6n7jic07058y26lnmgaaz9-status-react-node-deps-1.8.0
|
> cd /nix/store/dqb2cjyz1g6n7jic07058y26lnmgaaz9-status-mobile-node-deps-1.8.0
|
||||||
> ls
|
> ls
|
||||||
deps node_modules
|
deps node_modules
|
||||||
> ls node_modules | grep react-native-image
|
> ls node_modules | grep react-native-image
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
# Create a yarn package for our project that contains all the dependecies.
|
# Create a yarn package for our project that contains all the dependecies.
|
||||||
yarn2nix-moretea.mkYarnModules rec {
|
yarn2nix-moretea.mkYarnModules rec {
|
||||||
pname = "status-react";
|
pname = "status-mobile";
|
||||||
name = "${pname}-node-deps-${version}";
|
name = "${pname}-node-deps-${version}";
|
||||||
version = lib.fileContents ../../../VERSION;
|
version = lib.fileContents ../../../VERSION;
|
||||||
yarnLock = ../../../yarn.lock;
|
yarnLock = ../../../yarn.lock;
|
||||||
|
|
|
@ -40,7 +40,7 @@ in {
|
||||||
export STATUS_GO_ANDROID_LIBDIR=${status-go {}}
|
export STATUS_GO_ANDROID_LIBDIR=${status-go {}}
|
||||||
|
|
||||||
# check if node modules changed and if so install them
|
# check if node modules changed and if so install them
|
||||||
$STATUS_REACT_HOME/nix/scripts/node_modules.sh ${deps.nodejs-patched}
|
$STATUS_MOBILE_HOME/nix/scripts/node_modules.sh ${deps.nodejs-patched}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
{ secretsFile ? "" }:
|
{ secretsFile ? "" }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "status-react-build-jsbundle-android";
|
name = "status-mobile-build-jsbundle-android";
|
||||||
src =
|
src =
|
||||||
let path = ./../../../..;
|
let path = ./../../../..;
|
||||||
# We use builtins.path so that we can name the resulting derivation,
|
# We use builtins.path so that we can name the resulting derivation,
|
||||||
|
@ -16,7 +16,7 @@ stdenv.mkDerivation {
|
||||||
# which is outside of our control inherit path;
|
# which is outside of our control inherit path;
|
||||||
in builtins.path {
|
in builtins.path {
|
||||||
inherit path;
|
inherit path;
|
||||||
name = "status-react-source-jsbundle";
|
name = "status-mobile-source-jsbundle";
|
||||||
filter =
|
filter =
|
||||||
# Keep this filter as restrictive as possible in order to avoid
|
# Keep this filter as restrictive as possible in order to avoid
|
||||||
# unnecessary rebuilds and limit closure size
|
# unnecessary rebuilds and limit closure size
|
||||||
|
|
|
@ -40,13 +40,13 @@ let
|
||||||
|
|
||||||
baseName = "${buildType}-android";
|
baseName = "${buildType}-android";
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "status-react-build-${baseName}";
|
name = "status-mobile-build-${baseName}";
|
||||||
|
|
||||||
src = let path = ./../../..;
|
src = let path = ./../../..;
|
||||||
# We use builtins.path so that we can name the resulting derivation
|
# We use builtins.path so that we can name the resulting derivation
|
||||||
in builtins.path {
|
in builtins.path {
|
||||||
inherit path;
|
inherit path;
|
||||||
name = "status-react-source-${baseName}";
|
name = "status-mobile-source-${baseName}";
|
||||||
# Keep this filter as restrictive as possible in order to avoid unnecessary rebuilds and limit closure size
|
# Keep this filter as restrictive as possible in order to avoid unnecessary rebuilds and limit closure size
|
||||||
filter = lib.mkFilter {
|
filter = lib.mkFilter {
|
||||||
root = path;
|
root = path;
|
||||||
|
|
|
@ -8,7 +8,7 @@ let
|
||||||
in mkShell {
|
in mkShell {
|
||||||
buildInputs = [ cocoapods ];
|
buildInputs = [ cocoapods ];
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
pushd "$STATUS_REACT_HOME" > /dev/null
|
pushd "$STATUS_MOBILE_HOME" > /dev/null
|
||||||
{
|
{
|
||||||
echo "Checking for modifications in ios/Pods..."
|
echo "Checking for modifications in ios/Pods..."
|
||||||
if diff -q ${podfileLock} ${manifestLock}; then
|
if diff -q ${podfileLock} ${manifestLock}; then
|
||||||
|
|
|
@ -9,11 +9,11 @@ mkShell {
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
export STATUS_GO_IOS_LIBDIR=${status-go {}}/Statusgo.xcframework
|
export STATUS_GO_IOS_LIBDIR=${status-go {}}/Statusgo.xcframework
|
||||||
|
|
||||||
RCTSTATUS_DIR="$STATUS_REACT_HOME/modules/react-native-status/ios/RCTStatus"
|
RCTSTATUS_DIR="$STATUS_MOBILE_HOME/modules/react-native-status/ios/RCTStatus"
|
||||||
targetBasename='Statusgo.xcframework'
|
targetBasename='Statusgo.xcframework'
|
||||||
|
|
||||||
# Compare target folder with source to see if copying is required
|
# Compare target folder with source to see if copying is required
|
||||||
if [ -d "$RCTSTATUS_DIR/$targetBasename" ] && [ -d $STATUS_REACT_HOME/ios/Pods/ ] && \
|
if [ -d "$RCTSTATUS_DIR/$targetBasename" ] && [ -d $STATUS_MOBILE_HOME/ios/Pods/ ] && \
|
||||||
diff -qr --no-dereference $RCTSTATUS_DIR/$targetBasename/ $STATUS_GO_IOS_LIBDIR/ > /dev/null; then
|
diff -qr --no-dereference $RCTSTATUS_DIR/$targetBasename/ $STATUS_GO_IOS_LIBDIR/ > /dev/null; then
|
||||||
echo "$RCTSTATUS_DIR/$targetBasename already in place"
|
echo "$RCTSTATUS_DIR/$targetBasename already in place"
|
||||||
else
|
else
|
||||||
|
|
|
@ -23,7 +23,7 @@ findRelated() {
|
||||||
elif [[ "${path}" =~ .*.lock ]]; then
|
elif [[ "${path}" =~ .*.lock ]]; then
|
||||||
log " ! Lock: ${path}"
|
log " ! Lock: ${path}"
|
||||||
return
|
return
|
||||||
elif [[ "${path}" =~ .*status-react-shell.drv ]]; then
|
elif [[ "${path}" =~ .*status-mobile-shell.drv ]]; then
|
||||||
echo -n "${path}"
|
echo -n "${path}"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
@ -88,7 +88,7 @@ if [[ -n "${nixResultPath}" ]]; then
|
||||||
# if provided we can narrow down what to clean based on result path
|
# if provided we can narrow down what to clean based on result path
|
||||||
toDelete=$(findByResult "${nixResultPath}")
|
toDelete=$(findByResult "${nixResultPath}")
|
||||||
else
|
else
|
||||||
# use regular expression that should match all status-react build artifacts
|
# use regular expression that should match all status-mobile build artifacts
|
||||||
toDelete=$(findByRegex '.*-status-(react|go)-(shell|source|build|patched-npm-gradle-modules).*')
|
toDelete=$(findByRegex '.*-status-(react|go)-(shell|source|build|patched-npm-gradle-modules).*')
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
set -Ee
|
set -Ee
|
||||||
|
|
||||||
_NIX_GCROOTS="${_NIX_GCROOTS:-/nix/var/nix/gcroots/per-user/${USER}/status-react}"
|
_NIX_GCROOTS="${_NIX_GCROOTS:-/nix/var/nix/gcroots/per-user/${USER}/status-mobile}"
|
||||||
|
|
||||||
GIT_ROOT=$(cd "${BASH_SOURCE%/*}" && git rev-parse --show-toplevel)
|
GIT_ROOT=$(cd "${BASH_SOURCE%/*}" && git rev-parse --show-toplevel)
|
||||||
source "${GIT_ROOT}/nix/scripts/source.sh"
|
source "${GIT_ROOT}/nix/scripts/source.sh"
|
||||||
|
|
|
@ -114,8 +114,8 @@ replaceNodeModules() {
|
||||||
echo -n "${src}" > "${sentinelFile}"
|
echo -n "${src}" > "${sentinelFile}"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Destination folder, Nix sets STATUS_REACT_HOME
|
# Destination folder, Nix sets STATUS_MOBILE_HOME
|
||||||
dst="$STATUS_REACT_HOME/node_modules"
|
dst="$STATUS_MOBILE_HOME/node_modules"
|
||||||
# Source of Node modules from /nix/store
|
# Source of Node modules from /nix/store
|
||||||
src="$1"
|
src="$1"
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
let
|
let
|
||||||
inherit (pkgs) mkShell;
|
inherit (pkgs) mkShell;
|
||||||
in mkShell {
|
in mkShell {
|
||||||
name = "status-react-shell"; # for identifying all shells
|
name = "status-mobile-shell"; # for identifying all shells
|
||||||
|
|
||||||
buildInputs = with pkgs; lib.unique ([
|
buildInputs = with pkgs; lib.unique ([
|
||||||
# core utilities that should always be present in a shell
|
# core utilities that should always be present in a shell
|
||||||
|
@ -33,7 +33,7 @@ in mkShell {
|
||||||
|
|
||||||
# just a nicety for easy access to node scripts
|
# just a nicety for easy access to node scripts
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
export STATUS_REACT_HOME=$(git rev-parse --show-toplevel)
|
export STATUS_MOBILE_HOME=$(git rev-parse --show-toplevel)
|
||||||
export PATH="$STATUS_REACT_HOME/node_modules/.bin:$PATH"
|
export PATH="$STATUS_MOBILE_HOME/node_modules/.bin:$PATH"
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,8 +15,8 @@ let
|
||||||
# Combines with many other shells
|
# Combines with many other shells
|
||||||
node-sh = mkShell {
|
node-sh = mkShell {
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
export STATUS_REACT_HOME=$(git rev-parse --show-toplevel)
|
export STATUS_MOBILE_HOME=$(git rev-parse --show-toplevel)
|
||||||
$STATUS_REACT_HOME/nix/scripts/node_modules.sh ${pkgs.deps.nodejs-patched}
|
$STATUS_MOBILE_HOME/nix/scripts/node_modules.sh ${pkgs.deps.nodejs-patched}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -94,7 +94,7 @@
|
||||||
"binary": {
|
"binary": {
|
||||||
"module_name": "status_nodejs_addon",
|
"module_name": "status_nodejs_addon",
|
||||||
"module_path": "./lib/binding/",
|
"module_path": "./lib/binding/",
|
||||||
"host": "https://github.com/status-im/status-react/releases/download/",
|
"host": "https://github.com/status-im/status-mobile/releases/download/",
|
||||||
"remote_path": "{version}"
|
"remote_path": "{version}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -189,7 +189,7 @@
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
this._events[name].forEach(cb => {
|
this._events[name].forEach(cb => {
|
||||||
// Fixes: https://github.com/status-im/status-react/issues/13642
|
// Fixes: https://github.com/status-im/status-mobile/issues/13642
|
||||||
// Metamask also errors on the same issue, but it's using https://github.com/MetaMask/safe-event-emitter and therefore the dapp still works
|
// Metamask also errors on the same issue, but it's using https://github.com/MetaMask/safe-event-emitter and therefore the dapp still works
|
||||||
try{
|
try{
|
||||||
cb(data)
|
cb(data)
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
# Fetches pull request refs and prints commits
|
# Fetches pull request refs and prints commits
|
||||||
# for the given range grouped by pull request
|
# for the given range grouped by pull request
|
||||||
|
|
||||||
REPOSITORY="status-im/status-react"
|
REPOSITORY="status-im/status-mobile"
|
||||||
REPOSITORY_URL="https://github.com/$REPOSITORY.git"
|
REPOSITORY_URL="https://github.com/$REPOSITORY.git"
|
||||||
PULL_REQUEST_REMOTE="pullRequestRemote"
|
PULL_REQUEST_REMOTE="pullRequestRemote"
|
||||||
PULL_REQUEST_URL="https://api.github.com/repos/$REPOSITORY/pulls/"
|
PULL_REQUEST_URL="https://api.github.com/repos/$REPOSITORY/pulls/"
|
||||||
|
|
|
@ -23,7 +23,7 @@ confirm() {
|
||||||
load_config() {
|
load_config() {
|
||||||
[[ -f merge-pr.conf ]] && . merge-pr.conf
|
[[ -f merge-pr.conf ]] && . merge-pr.conf
|
||||||
: ${OWNER:=status-im}
|
: ${OWNER:=status-im}
|
||||||
: ${REPO:=status-react}
|
: ${REPO:=status-mobile}
|
||||||
: ${REMOTE:=origin}
|
: ${REMOTE:=origin}
|
||||||
: ${BRANCH:=develop}
|
: ${BRANCH:=develop}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
# PARAMETERS ----------------------------
|
# PARAMETERS ----------------------------
|
||||||
# Github repo to scan
|
# Github repo to scan
|
||||||
GITHUB_REPO="status-im/status-react"
|
GITHUB_REPO="status-im/status-mobile"
|
||||||
|
|
||||||
# Computational mode
|
# Computational mode
|
||||||
# available values :
|
# available values :
|
||||||
|
|
|
@ -470,7 +470,7 @@
|
||||||
(when (= flow :import)
|
(when (= flow :import)
|
||||||
(load-recovery-pin-screen))
|
(load-recovery-pin-screen))
|
||||||
;; TODO: If card is already initialized need to confirm pin only then go to mnenmonic
|
;; TODO: If card is already initialized need to confirm pin only then go to mnenmonic
|
||||||
;; https://github.com/status-im/status-react/issues/9451
|
;; https://github.com/status-im/status-mobile/issues/9451
|
||||||
(when (= flow :create)
|
(when (= flow :create)
|
||||||
(mnemonic/set-mnemonic)))))
|
(mnemonic/set-mnemonic)))))
|
||||||
|
|
||||||
|
|
|
@ -741,7 +741,7 @@
|
||||||
{:db (assoc db :tos/accepted? new-terms-of-service-accepted)})
|
{:db (assoc db :tos/accepted? new-terms-of-service-accepted)})
|
||||||
|
|
||||||
(fx/defn get-opted-in-to-new-terms-of-service
|
(fx/defn get-opted-in-to-new-terms-of-service
|
||||||
"New TOS sprint https://github.com/status-im/status-react/pull/12240"
|
"New TOS sprint https://github.com/status-im/status-mobile/pull/12240"
|
||||||
{:events [:get-opted-in-to-new-terms-of-service]}
|
{:events [:get-opted-in-to-new-terms-of-service]}
|
||||||
[{:keys [db]}]
|
[{:keys [db]}]
|
||||||
{::async-storage/get {:keys [:new-terms-of-service-accepted]
|
{::async-storage/get {:keys [:new-terms-of-service-accepted]
|
||||||
|
|
|
@ -54,7 +54,7 @@
|
||||||
:bioauth-code nil}))
|
:bioauth-code nil}))
|
||||||
false)]
|
false)]
|
||||||
(test/is (= true (get-in db [:multiaccounts/login :save-password?])))
|
(test/is (= true (get-in db [:multiaccounts/login :save-password?])))
|
||||||
;; case 2 from https://github.com/status-im/status-react/issues/9573
|
;; case 2 from https://github.com/status-im/status-mobile/issues/9573
|
||||||
(test/is (= keychain/auth-method-biometric-prepare (:auth-method db)))
|
(test/is (= keychain/auth-method-biometric-prepare (:auth-method db)))
|
||||||
(test/testing "disable biometric"
|
(test/testing "disable biometric"
|
||||||
(let [{:keys [db]} (biometric/disable {:db db})]
|
(let [{:keys [db]} (biometric/disable {:db db})]
|
||||||
|
|
|
@ -102,7 +102,7 @@
|
||||||
:accessibility-label "create-backup-keycard"
|
:accessibility-label "create-backup-keycard"
|
||||||
:on-press #(re-frame/dispatch [:keycard-settings.ui/backup-card-pressed :backup-card])}]
|
:on-press #(re-frame/dispatch [:keycard-settings.ui/backup-card-pressed :backup-card])}]
|
||||||
;; TODO(rasom): uncomment this when unpairing will be enabled
|
;; TODO(rasom): uncomment this when unpairing will be enabled
|
||||||
;; https://github.com/status-im/status-react/issues/9227
|
;; https://github.com/status-im/status-mobile/issues/9227
|
||||||
#_[quo/list-item {:icon :main-icons/close
|
#_[quo/list-item {:icon :main-icons/close
|
||||||
:size :small
|
:size :small
|
||||||
:title (i18n/label :t/unpair-card)
|
:title (i18n/label :t/unpair-card)
|
||||||
|
|
|
@ -68,7 +68,7 @@
|
||||||
:accessibility-label :next-button
|
:accessibility-label :next-button
|
||||||
:disabled (or (not next-enabled?)
|
:disabled (or (not next-enabled?)
|
||||||
;; disable on resetting? so the user cannot press the next button recklessly
|
;; disable on resetting? so the user cannot press the next button recklessly
|
||||||
;; https://github.com/status-im/status-react/pull/12245#issuecomment-874827573
|
;; https://github.com/status-im/status-mobile/pull/12245#issuecomment-874827573
|
||||||
resetting?)
|
resetting?)
|
||||||
:type :secondary
|
:type :secondary
|
||||||
:after :main-icons/next}
|
:after :main-icons/next}
|
||||||
|
|
|
@ -241,7 +241,7 @@
|
||||||
(fn [url]
|
(fn [url]
|
||||||
(.openURL ^js react/linking url)))
|
(.openURL ^js react/linking url)))
|
||||||
|
|
||||||
(def gh-issue-url "https://github.com/status-im/status-react/issues/new?labels=bug&title=%s&body=%s")
|
(def gh-issue-url "https://github.com/status-im/status-mobile/issues/new?labels=bug&title=%s&body=%s")
|
||||||
|
|
||||||
(fx/defn submit-issue
|
(fx/defn submit-issue
|
||||||
[{:keys [db]}]
|
[{:keys [db]}]
|
||||||
|
|
|
@ -13,10 +13,10 @@
|
||||||
; As a user, I want to accept 3 generated words when creating my account so that I can recognize these words when signing transactions
|
; As a user, I want to accept 3 generated words when creating my account so that I can recognize these words when signing transactions
|
||||||
; and thus make it hard to create a phishing page and protect myself from phishing attack.
|
; and thus make it hard to create a phishing page and protect myself from phishing attack.
|
||||||
;
|
;
|
||||||
; See more info at: https://github.com/status-im/status-react/issues/1585
|
; See more info at: https://github.com/status-im/status-mobile/issues/1585
|
||||||
;
|
;
|
||||||
; Currently only English is supported (as the default language),
|
; Currently only English is supported (as the default language),
|
||||||
; for more details see #https://github.com/status-im/status-react/issues/1679
|
; for more details see #https://github.com/status-im/status-mobile/issues/1679
|
||||||
|
|
||||||
(defn pick-words [dictionary]
|
(defn pick-words [dictionary]
|
||||||
(repeatedly 3 #(rand-nth dictionary)))
|
(repeatedly 3 #(rand-nth dictionary)))
|
||||||
|
|
|
@ -102,6 +102,6 @@
|
||||||
:tick? false
|
:tick? false
|
||||||
:print-events? true
|
:print-events? true
|
||||||
;; todo(rasom): revisit this number when/if
|
;; todo(rasom): revisit this number when/if
|
||||||
;; https://github.com/status-im/status-react/pull/2849 will be merged
|
;; https://github.com/status-im/status-mobile/pull/2849 will be merged
|
||||||
:threshold 200
|
:threshold 200
|
||||||
:events events}))))
|
:events events}))))
|
||||||
|
|
|
@ -42,7 +42,7 @@ Use device with Android 7.1 or newer.
|
||||||
- `--bugreport=True` - generate bugreport file
|
- `--bugreport=True` - generate bugreport file
|
||||||
|
|
||||||
```
|
```
|
||||||
$ cd status-react/test/appium
|
$ cd status-mobile/test/appium
|
||||||
$ python3 -m pytest --apk=StatusIm-181109-092655-009d97-e2e.apk --device_ip=192.168.0.104 --bugreport=True --docker=true --docker_shared_volume=/Users/lukas/Desktop/shared tests/atomic/transactions/test_wallet.py::TestTransactionWalletSingleDevice::test_send_eth_from_wallet_to_contact
|
$ python3 -m pytest --apk=StatusIm-181109-092655-009d97-e2e.apk --device_ip=192.168.0.104 --bugreport=True --docker=true --docker_shared_volume=/Users/lukas/Desktop/shared tests/atomic/transactions/test_wallet.py::TestTransactionWalletSingleDevice::test_send_eth_from_wallet_to_contact
|
||||||
```
|
```
|
||||||
- Follow the instructions shown in the command line
|
- Follow the instructions shown in the command line
|
||||||
|
|
|
@ -109,7 +109,7 @@ class BaseTestReport:
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_jenkins_link_to_rerun_e2e(branch_name="develop", pr_id="", apk_name="", tr_case_ids=""):
|
def get_jenkins_link_to_rerun_e2e(branch_name="develop", pr_id="", apk_name="", tr_case_ids=""):
|
||||||
return 'https://ci.status.im/job/status-react/job/e2e/job/status-app-prs-rerun/parambuild/' \
|
return 'https://ci.status.im/job/status-mobile/job/e2e/job/status-app-prs-rerun/parambuild/' \
|
||||||
'?BRANCH_NAME=%s&APK_NAME=%s&PR_ID=%s&TR_CASE_IDS=%s' % (branch_name, apk_name, pr_id, tr_case_ids)
|
'?BRANCH_NAME=%s&APK_NAME=%s&PR_ID=%s&TR_CASE_IDS=%s' % (branch_name, apk_name, pr_id, tr_case_ids)
|
||||||
|
|
||||||
def get_sauce_final_screenshot_url(self, job_id):
|
def get_sauce_final_screenshot_url(self, job_id):
|
||||||
|
|
|
@ -308,4 +308,4 @@ class TestrailReport(BaseTestReport):
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def make_error_with_gh_issue_link(error, issue_id):
|
def make_error_with_gh_issue_link(error, issue_id):
|
||||||
return error.replace(issue_id,
|
return error.replace(issue_id,
|
||||||
'[%s](https://github.com/status-im/status-react/issues/%s)' % (issue_id, issue_id[1:]))
|
'[%s](https://github.com/status-im/status-mobile/issues/%s)' % (issue_id, issue_id[1:]))
|
||||||
|
|
|
@ -44,7 +44,7 @@ background_service_message = 'Background service for notifications'
|
||||||
|
|
||||||
bootnode_address = "enode://a8a97f126f5e3a340cb4db28a1187c325290ec08b2c9a6b1f19845ac86c46f9fac2ba13328822590" \
|
bootnode_address = "enode://a8a97f126f5e3a340cb4db28a1187c325290ec08b2c9a6b1f19845ac86c46f9fac2ba13328822590" \
|
||||||
"fd3de3acb09cc38b5a05272e583a2365ad1fa67f66c55b34@167.99.210.203:30404"
|
"fd3de3acb09cc38b5a05272e583a2365ad1fa67f66c55b34@167.99.210.203:30404"
|
||||||
# referred to https://github.com/status-im/status-react/blob/develop/resources/config/fleets.json
|
# referred to https://github.com/status-im/status-mobile/blob/develop/resources/config/fleets.json
|
||||||
mailserver_address = 'enode://b74859176c9751d314aeeffc26ec9f866a412752e7ddec91b19018a18e7cca8d637cfe2cedcb972f8eb64d81' \
|
mailserver_address = 'enode://b74859176c9751d314aeeffc26ec9f866a412752e7ddec91b19018a18e7cca8d637cfe2cedcb972f8eb64d81' \
|
||||||
'6fbd5b4e89c7e8c7fd7df8a1329fa43db80b0bfe@47.52.90.156:443'
|
'6fbd5b4e89c7e8c7fd7df8a1329fa43db80b0bfe@47.52.90.156:443'
|
||||||
staging_fleet = 'eth.staging'
|
staging_fleet = 'eth.staging'
|
||||||
|
|
|
@ -169,7 +169,7 @@ def pytest_configure(config):
|
||||||
testrail_report.add_run(run_name)
|
testrail_report.add_run(run_name)
|
||||||
if pr_number:
|
if pr_number:
|
||||||
from github import Github
|
from github import Github
|
||||||
repo = Github(github_token).get_user('status-im').get_repo('status-react')
|
repo = Github(github_token).get_user('status-im').get_repo('status-mobile')
|
||||||
pull = repo.get_pull(int(pr_number))
|
pull = repo.get_pull(int(pr_number))
|
||||||
pull.get_commits()[0].create_status(state='pending', context='Mobile e2e tests',
|
pull.get_commits()[0].create_status(state='pending', context='Mobile e2e tests',
|
||||||
description='e2e tests are running')
|
description='e2e tests are running')
|
||||||
|
@ -200,7 +200,7 @@ def pytest_unconfigure(config):
|
||||||
testrail_report.add_results()
|
testrail_report.add_results()
|
||||||
if config.getoption('pr_number'):
|
if config.getoption('pr_number'):
|
||||||
from github import Github
|
from github import Github
|
||||||
repo = Github(github_token).get_user('status-im').get_repo('status-react')
|
repo = Github(github_token).get_user('status-im').get_repo('status-mobile')
|
||||||
pull = repo.get_pull(int(config.getoption('pr_number')))
|
pull = repo.get_pull(int(config.getoption('pr_number')))
|
||||||
comment = pull.create_issue_comment(github_report.build_html_report(testrail_report.run_id))
|
comment = pull.create_issue_comment(github_report.build_html_report(testrail_report.run_id))
|
||||||
if not testrail_report.is_run_successful():
|
if not testrail_report.is_run_successful():
|
||||||
|
|
|
@ -404,7 +404,7 @@ class TestOneToOneChatMultipleSharedDevices(MultipleSharedDeviceTestCase):
|
||||||
if self.chat_2.user_name_text.text != self.default_username_1:
|
if self.chat_2.user_name_text.text != self.default_username_1:
|
||||||
self.errors.append("Default username '%s' is not shown in one-to-one chat" % self.default_username_1)
|
self.errors.append("Default username '%s' is not shown in one-to-one chat" % self.default_username_1)
|
||||||
|
|
||||||
# TODO: disabled until https://github.com/status-im/status-react/issues/12936 fix
|
# TODO: disabled until https://github.com/status-im/status-mobile/issues/12936 fix
|
||||||
# profile_1.just_fyi("Check timestamps for sender and receiver")
|
# profile_1.just_fyi("Check timestamps for sender and receiver")
|
||||||
# for chat in device_1_chat, device_2_chat:
|
# for chat in device_1_chat, device_2_chat:
|
||||||
# chat.verify_message_is_under_today_text(timestamp_message, self.errors)
|
# chat.verify_message_is_under_today_text(timestamp_message, self.errors)
|
||||||
|
|
|
@ -165,8 +165,8 @@ class TestPublicChatMultipleDeviceMerged(MultipleSharedDeviceTestCase):
|
||||||
[chat.home_button.double_click() for chat in (self.chat_1, self.chat_2)]
|
[chat.home_button.double_click() for chat in (self.chat_1, self.chat_2)]
|
||||||
[home.get_chat('#' + self.public_chat_name).click() for home in (self.home_1, self.home_2)]
|
[home.get_chat('#' + self.public_chat_name).click() for home in (self.home_1, self.home_2)]
|
||||||
giphy_url = 'https://giphy.com/gifs/this-is-fine-QMHoU66sBXqqLqYvGO'
|
giphy_url = 'https://giphy.com/gifs/this-is-fine-QMHoU66sBXqqLqYvGO'
|
||||||
preview_urls = {'github_pr': {'url': 'https://github.com/status-im/status-react/pull/11707',
|
preview_urls = {'github_pr': {'url': 'https://github.com/status-im/status-mobile/pull/11707',
|
||||||
'txt': 'Update translations by jinhojang6 · Pull Request #11707 · status-im/status-react',
|
'txt': 'Update translations by jinhojang6 · Pull Request #11707 · status-im/status-mobile',
|
||||||
'subtitle': 'GitHub'},
|
'subtitle': 'GitHub'},
|
||||||
'yotube': {
|
'yotube': {
|
||||||
'url': 'https://www.youtube.com/watch?v=XN-SVmuJH2g&list=PLbrz7IuP1hrgNtYe9g6YHwHO6F3OqNMao',
|
'url': 'https://www.youtube.com/watch?v=XN-SVmuJH2g&list=PLbrz7IuP1hrgNtYe9g6YHwHO6F3OqNMao',
|
||||||
|
|
|
@ -125,7 +125,7 @@ class TestPerformance(SingleDeviceTestCase):
|
||||||
'então, mais tarde tornou-se a décima província do Canadá, em 1949.[14] Austrália ratientão, mais tarde ' \
|
'então, mais tarde tornou-se a décima província do Canadá, em 1949.[14] Austrália ratientão, mais tarde ' \
|
||||||
'tornou-se a décima província do Canadá, em 1949.[14] Austrália rati então, mais tarde tornou-se a décima' \
|
'tornou-se a décima província do Canadá, em 1949.[14] Austrália rati então, mais tarde tornou-se a décima' \
|
||||||
' província do Canadá, '
|
' província do Canadá, '
|
||||||
gh_link_message = 'https://github.com/status-im/status-react/issues'
|
gh_link_message = 'https://github.com/status-im/status-mobile/issues'
|
||||||
gif = 'https://media.giphy.com/media/7GYHmjk6vlqY8/giphy.gif'
|
gif = 'https://media.giphy.com/media/7GYHmjk6vlqY8/giphy.gif'
|
||||||
long_arabic_text = 'لك التفاصيل لتكتشف حقيقة وأساس تلك السعادة البشرية، فلا أحد يرفض أو يكره أو يتجنب ا' \
|
long_arabic_text = 'لك التفاصيل لتكتشف حقيقة وأساس تلك السعادة البشرية، فلا أحد يرفض أو يكره أو يتجنب ا' \
|
||||||
'لشعور بالسعادة، ولكن بفضل هؤلاء الأشخاص الذين لا يدركون بأن السعادة لا بد أن نستشعرها بصورة أكثر' \
|
'لشعور بالسعادة، ولكن بفضل هؤلاء الأشخاص الذين لا يدركون بأن السعادة لا بد أن نستشعرها بصورة أكثر' \
|
||||||
|
|
|
@ -22,9 +22,9 @@ chats = {
|
||||||
'gph.is': {'txt':'4. short vertical gif https://gph.is/2jG1Xjj'},
|
'gph.is': {'txt':'4. short vertical gif https://gph.is/2jG1Xjj'},
|
||||||
'giphy.com': {'txt':'5. long landscape gif https://giphy.com/gifs/thegoodplace-season-1-episode-11-3oxHQoD2rep6XGbDDa'},
|
'giphy.com': {'txt':'5. long landscape gif https://giphy.com/gifs/thegoodplace-season-1-episode-11-3oxHQoD2rep6XGbDDa'},
|
||||||
'media.giphy': {'txt':'6. media gif https://media.giphy.com/media/iFxXouCf76ZencqIRP/giphy.gif'},
|
'media.giphy': {'txt':'6. media gif https://media.giphy.com/media/iFxXouCf76ZencqIRP/giphy.gif'},
|
||||||
'github': {'txt': '7. github. com https://github.com/status-im/status-react/ ',
|
'github': {'txt': '7. github. com https://github.com/status-im/status-mobile/ ',
|
||||||
#'title': 'status-im/status-react',
|
#'title': 'status-im/status-mobile',
|
||||||
'title':'GitHub - status-im/status-react: a free (libre) open source, mobile OS for Ethereum',
|
'title':'GitHub - status-im/status-mobile: a free (libre) open source, mobile OS for Ethereum',
|
||||||
'subtitle': 'GitHub'}
|
'subtitle': 'GitHub'}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
Binary file not shown.
|
@ -1,4 +1,4 @@
|
||||||
Status react protocol tests
|
Status Mobile protocol tests
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
## Run the tests
|
## Run the tests
|
||||||
|
|
Loading…
Reference in New Issue