This script fetches a specified APK and analyzes it for values like
version code or commit and then based on that creates a branchy and a
commit in `fdroiddata` repository that can be used to create a release PR.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
New UI and re-frame handlers for setting pfp from url
Add fake chain-id, connect the pfp upload backend to UI
Add toast on setting pfp, new-new-new UI
Show assets based on selected network
Add horzontal padding to traits card
a11y ids and pr review changes
Added emoji in toast, fix chain id nill issue
Restore Podfile
Fix fix podfile
Add placeholder images for collections, hide option to set pfp when image url is empty or ends in mp4 or svg
Improvise missing designs
Fix paddings
New nu placeholders
Sort collections by name
Kinda fix issue 4
Fix lint
Signed-off-by: Shivek Khurana <shivek@status.im>
Now, you won't have to fight an arbitrary character limit on posts like Twitter, and you can pack more meaning into your messages without having to split them into multiple messages.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
People on HackerOne keep reporting this file as containing a secret token.
The reality is that this token is no longer usable since it was
published to a public repo, which would have caused it to be revoked
automatically though GitHub automation:
https://docs.github.com/en/code-security/secret-scanning/about-secret-scanning
Other than that I'm pretty sure nobody is using this script.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
The dependency on `make shell` is confusing and unnecessary since
`update-status-go.sh` script only requires availability of the
`nix-prefetch-url` utility to check SHA256 of the `status-go` verison.
Use of `make shell` with this script can also cause issues when running
`make run-android` if already in the shell, which prevents spawning a
new one and effectively stops changes to `status-go-verison.json` file
taking effect.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Baic skeleton 🦴
NFT Details page. The API is not returning properties
Add traits, add opensea link, fetch nfts when new account is added
Toggle privacy options
Hide NFT behind FF
Update sgv
Fix lint and rename opensea to collectibles
Signed-off-by: Shivek Khurana <shivek@status.im>
⛳️ Add flag to hide message in UI, there are some bugs in rebuild list process
Don't rebuild, just update the UI state
Update delete to soft delete. Some traces of delete already exist in the app
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
With upgrade to Go above `1.15` and Gomobile we now drop support for darwin/arm32 builds.
This means all devices like iPhone 5 or older.
For more details see:
https://tip.golang.org/doc/go1.15#darwin
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Fix function typo that caused android version to fail
Fix Issue 1 pointed out by Tetiana. Implement new UI to accomodate slow progress on Android
Fix QA Issue 3 - Hide reset password option for keycard accounts
Add steps to password reset
Align the checkbox on terms of use
Make modal rext align center because it wrapped abruptly
Logout user after password reset
Disable next button to curb recklessness
Remove reset password feature flag
Signed-off-by: Shivek Khurana <shivek@status.im>
This simplifies the package, and also drops the need for `deps.nix` file.
It also slims down the #11986 Go upgrade PR for easier debugging.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Change link on first screen fix#12122
Tos and privacy now open in webview. Added TOS to about fix#12208
New users TOS opt in fixes#12206
Add tos accept screen for existing users fixes#12207
Address reviews and effects to show-hide force tos opt-in screen
clear checkbox state when get started is clicked. Fixes qa-issue 2
Show screen logic and cleanup
Fix issue with banner not showing for second new account, until re-login. Update Terms of service to Terms of Use.
Update tos url
Update e2e
Update e2e 2
Update e2e 3
Signed-off-by: Shivek Khurana <shivek@status.im>
This is part of my work of moving Nix cache to a separate host
because our Master host with jenkins needs more space.
Also, new Nix installer updated `.profile`, not `.bash_profile`.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Do not need account-info for password reset
Update status go version
Java API
PR Fixes and hide behind a feature flag
Reset status go version to HEAD
Disable reset password in DEV
Enable reset password in DEV
Signed-off-by: Shivek Khurana <shivek@status.im>
Notable software upgrades:
- Go `1.14.13` to `1.14.15`
- Clojure `1.10.1.763` to `1.10.3.855`
- NodeJS `12.20.1` to `12.22.1`
- Git `2.29.2` to `2.31.1`
- CMake `3.10.2` to `3.18.1`
- Curl `7.74.0` to `7.76.1`
- Android NDK `21.3.6528147` to `22.1.7171670`
- Android Platform Tools `30.0.5` to `31.0.2`
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Settings screen
Settings event handler and connection to UI
Both bottom sheets with text in place
Make links inline
Show metrics in progress
Event value in accordion
Repurpose metrics screen for first time users
Onboarding metrics screen working, but not connected to flow. No animations yet.
Show opt-in banner for new accounts
Show opt in screen on login for existing accounts. Don't start metrics service for accounts where metrics are disabled
Tighten start/stop logic
Pagination and loader
Remove prn and fix lint
Ui fixes
Thank you animation
lint fix
PR comment fixes
Get rid of set, fix lint
Have an overshoot but buttons stopped working
add accessibility labels
True modals and fix opt-in displayed multiple times error
Fix icon cutting off on the top on smaller screens
Replace "invite-instructions" to "how-it-works" in all translatiosn
Add pagination to view-data events
Refactor open and close modal functions
Remove dispatch from init-db
Update status go to include pagination of data
Put metrics behind a feature flag
Signed-off-by: Shivek Khurana <shivek@status.im>
Fixes: #12179Fixes: #12133Fixes: #12131
This commit adds a community link in the description that can be copied and
shared by the user.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
This commit adds a setting in sync section so that user can select the
amount of days the can sync.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Fixes: #2061
This commit adds an unread mentions count in 3 places:
1) Public chats
2) Communities in home
3) Communities chats
The logic is that if you have unread mentions, it will show you the
count of messages with unread mentions, while if you have only unread
messages, you will see a blue dot.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
This commit moves most of the mailserver logic to status-go.
- Filters are now removed and not passed to the client anymore
- Ranges have been removed
- Gaps are now messages with a different content type
- Upsert/Save chat has been removed and instead we have more specific
endpoints such as CreatePublicChat/CreateOneToOneChat/CreateProfileChat
- Creation of timeline/profile chat has been moved to status-go
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
I have changed the behavior of loading notifications:
Before it would always use the same function and check for `cursor !=
""`.
This worked on most cases, but sometimes the user would jump back to the
home view without doing any clean up, so cursor would be `""` and it
would not load any notification anymore.
Now the two functions are split in initial load, and load-more.
Initial load is called on component-did-mount so we don't have to worry
about where the user is coming from. We also avoid multiple firing of
the events by checking `loading?`, so it does not result in duplicated
notifications.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
This extend adding permissions to a separate webview used for buying
crypto.
It also removes a fix with hardware acceleration, as the camera does not
work if disabled.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Remove redudant println, don't stop the task in case of a bad event, just reject that batch, capture navigate-to-cofx events with an effect, capture parts of screens/on-will-focus event
Fix lint
Shorten comment widths, update to use less brackets, call events reset once, double run safety for long running task
Call onboard after stopping
Reset periodic-tasks-chan to on close, formatting
Get rid of redundant inline function
Update go version to point to 0.75.1
Signed-off-by: Shivek Khurana <shivek@status.im>
Saving my initial noodling
Saving my initial noodling
Filtering working much better, data collection working better
Added jsonrpc call params
Added transformations ns and funcs
whitelisting the new rpc method
Addressed PR feedback
Minor fix for the on-failure log/error
lint fix
manual lint fix
Signed-off-by: Shivek Khurana <shivek@status.im>
[Fixes: #11806]
[Fixes: #11877]
Features added
An admin should receive a notification on android if a community request is made
Clicking on the push notification will take you to the list of requests
Changes to push notifications
Push notification for messages are grouped by chat, similarly to discord. Only the first notification in a chat will alert, the next will be "silent" notification. Meaning you will see the message but it will not alert. This is consistent with discord/whatsapp.
Clicking on a transaction notification will take you to wallet (not sure it was doing that before, but it might have)
Changed the behavior of the notification toggle, before Notifications and wallet transactions were separate, meaning you could have wallet transaction and Notifications disabled and you'd still receive transactions notifications. Now you need to have Notifications enabled to receive wallet transactions. Eventually we will have an option to toggle message notifications.
Technical details
Removes headless tasks, they were not used
Message notifications are passed unchanged to java, we still check if the chat is in the foreground, but no modifications are made to the notification object. This should get us closer to avoid clojure completely.
Merged the two notifications implementation (NewMessageSignalHandler and PushNotificationHelper). We should split maybe off in more meaningful classes, but there's less code duplication now, and it can be re-used for non-chat (communities) notifications.
Parsing of text for message notifications is done in status-go
Signal is not passed to status-react if notifications are not enabled
Next step
To completely remove notification code from status-react the following are required:
Java needs to be alerted of which chat is in the foreground and whether the app is in the foreground
Transaction notification body message need to be created in status-go
Notification signal needs to be stopped in Java
Limitations
If the name of a contact changes, the notification will not change, once is displayed, it won't be modified
Removed superfluous check
Adjusted images to be 50% the page width
Image width 75%
Finished off REPL section
Signed-off-by: Samuel Hawksby-Robinson <samuel@samyoul.com>
Based on https://notes.status.im/9Gr7kqF8SzC_SmYK0eB7uQ?view, hopefully this document can help some poor soul in the future. I have a little more work to do but I'm interested in whether this kind of document would be welcome in the repo
* Removed region from on-ramping we don't want it
* Updated status-go version
* revert change make ios made to keycard version
* Updated status-go version
* Updated status-go version
* Updated status-go version
Saving my initial noodling
Saving my initial noodling
Filtering working much better, data collection working better
Added jsonrpc call params
Added transformations ns and funcs
whitelisting the new rpc method
Addressed PR feedback
Fix lint
Add reasons to why txf ns exists
Transform event instead of the contexts
Signed-off-by: Shivek Khurana <shivek@status.im>
This commit adds bannning of users in communities for on-request and
invitation only communities.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
With these targets added we can simplify the format of the F-Droid YAML
metadata file which defines how to run `status-react` builds.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
It seems like this worked before purely because the `cljfmt` library was
already in the `~/.m2` cache folder. This issue was noticed when I
cleaned up the `~/.m2` folder on one Jenkins slave host and the Lint stage
started randomly failing.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: andrey <motor4ik@gmail.com>
Otherwise release builds never create the GitHub draft releases.
Not unless a user explicitly stats a build with `PUBLISH: true`.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
[Fixes: #11670]
[Fixes: #11671]
This commit fixes 2 issues.
One issue was due to removing tribute to talk, which added in the
`contacts` map any user you open a chat with, and some code relied on
this behavior.
The second issue was likely due to a react native upgrade which might
have fixed a bug but caused a different issue, which resulted in the
text disappearing when cursor was set.
I have removed that (it was only used on android) and everything seems
to be working correctly, but not so sure about this one.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
In some instances when fetching messages for a timeline the app would
crash as a map was accessed concurrently without locking.
This fixes the issue.
Signed-off-by: andrey <motor4ik@gmail.com>
There were a few issues with topic management:
- Topics/ranges were saved one-by-one, which cause an out of memory
error on some devices
- Topics that were not listened to were saved, and therefore requested
from the mailserver, which caused long syncing time
It also removes tribute to talk and add export/import methods
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Key phrase screen in place
Added flow in a Rich comment, added storage screen, added Keycard upsell banner
Validate seed against selected multiaccount
Vvalidate seed against multiaccount
Connected migration flow to Keycard onboarding flow, unable to finish because an event called generate-and-load-key is not being emitted with the flow I made
Fixed state that was needed to start the recovery process, also removed seed-phrase from app-db when onboarding starts
Moved strings to translations in key storage views
Upsell banner bg theme, accordion data, choose-storage next bug, Hide keys managment option for Keycard accounts and from multiaccounts list screen.
Added test for subscription function
Tests for keystore move checkbox and seed phrase input
Fix translations/en.json after merge conflict, add test for seed-phrase input, seed-against-key-uid validation and state setup for redirect to Keycard screens
Update validate fn to mock mnemonic import and cascading changes
Fix linting errors
Fix seed key-uid mismatch popup, reduce styles and remove redundant views
Add dot menu in place of access-existing-keys button on login page
Make multiaccount redirect test more terse
Remove dangling comma from translations/en.json
Fix var that was missed during rebase
fx/merge and extra newline fixes
Removed nil? check, tests pass
Unknown error popup
Redirect Keycard banner to https://keycard.tech
Remove unused sub and fix linting
Fix issue#4 - Unable to enter new seeds
Hide back and disable hardware back on Keycard onboarding intro if the user is coming from migration flow. Fixes issue#1 raised by Diana.
Set state so show wallet balances show up auto magically. Fixes issue#3.
Update tests to capture recovering state
Center align sign in button since the left button was deleted.
Changes suggested by Andrey
Add top margin to Keycard intro only when user comes key storage
Hide manage key storage on ios
Signed-off-by: Shivek Khurana <shivek@status.im>
This makes use of the refactoring of Android SDK done in:
https://github.com/NixOS/nixpkgs/pull/89775
Which allows us to drop the use of our own fork of `nixpkgs`.
Android Upgrades:
* Build Tools - `29.0.2` to `30.0.3`
* Platform Tools - `29.0.6` to `30.0.5`
* NDK Bundle - `21.0.6113669` to `21.3.6528147`
Other Upgrades:
* Git - `2.28.0` to `2.29.2`
* Go - `1.14.7` to `1.14.13`
* Clojure - `1.10.1.645` to `1.10.1.763`
* NodeJS - `12.18.3` to `12.20.1`
* Yarn - `1.22.4` to `1.22.10`
* OpenJDK - `8u265-ga` to `8u272-b10`
* PatchElf - `0.11` to `0.12`
* CoreUtils - `8.31` to `8.32`
Signed-off-by: Jakub Sokołowski <jakub@status.im>
This changes the behavior of mobile combined builds to not publish
the results of `nightly` or `release` builds unless `PUBLISH`
parameter is set to `true`.
It also makes the `BUILD_TYPE` into a dropdown choice field with
pre-defined values, like `manual` or `e2e`.
Changes:
- Add parameter definitions for `BUILD_TYPE` and `PUBLISH`
- Move uploading of `latest.json` to `Publish` stage
- Make `Publish` stage optional based on the `PUBLISH` parameter
Requires: https://github.com/status-im/status-react-jenkins/pull/21
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
* Adding 1.10 App/Play store release content
* Removes Cancel and Speed up tx
As discussed, the feature is not yet reliable for public release. On occasion the nonce cannot be overwritten, resulting in 2 pending transactions.
`multiaccounts` has some fields that should not be overriden
(`save-password`), so we expliciltly `assoc` only certain fields.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
* Create releases.md
File that captures release notes for App store ad Play store. Informs users of relevant additions, changes, fixes.
* Update and rename releases.md to RELEASES.md
As suggested, removing checklist to keep in a separate file and using capitals for the title
Update strings
Check if transaction has receipt on login
Notification on accept
Add large icon
Unify notifications for referral
Fix duplicate path for acquisition
Fix accept notification and visibility
Small fixes
Do not show notifications when not rewardable
Add home item
Show referral on lets go button
Fix list item on home
Hide messages on accept
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Fixes: #11545Fixes: #11544
The two issues were caused by the same bug, essentially if
`navigation-state-changed` event was fired (it's debounced) when the tab
had been closed, the browser would be updated with a `nil` id, causing
all sort of issues as it had not history etc.
This commit ensures that no changes are made if the browser is nil.
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
When calling `SendTransaction` sometimes the value would be a string
(most cases), sometimes the value would instead big a `BigInt`, which
would be serialized to an integer, and status-go would be unable to
parse it as it expects values to be a string.
This commit makes sure that values are always serialized as string
before sending them over.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
If a mailserver request is failing we disconnect at the 3rd attempt.
Though once we are disconnected, we connect again to the same mailserver
based on ping time.
This commit changes the behavior so that mailservers are penalized if
they are returning errors.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
pending transaction
This commit fixes an issue where pending transactions would be marked as
confirmed in commands, due to the fact that we would default to pending
if no transaction was in the database.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Chat messages are now sent in order using a different endpoint
`sendChatMessages`.
Text should always be displayed after images.
This is not implementing a Caption field, that would require either a
protocol change or leverage the `text` in the message.
It applies for both normal chats and timelines.
Move also all inputs under `chat/inputs` so we avoid re-renders as
`chats` has changed.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
This commit makes sure that we don't display multiple pop ups when
mailserver connection has failed.
It also fixes the navigation to avoid being stuck on Profile tab.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Fixes#10065
After clicking cancel, the popup is `dismissed`, so it will not appear again
Selecting a new mail server sets `dismissed` as false, so the error can appear again
In release `1.7.0` we had an issue with `status-go` version `v0.62.3.hotfix.3`
not matching [Semantic Versionig](https://semver.org/#spec-item-11) so a fix was
introduced in https://github.com/status-im/status-react/pull/11331 that made the regex a bit more lax.
Again in `1.9.0` we had the same issue and the release not appears as `develop`
instead of the actual `status-go` version, which this time was `0.63.8+hotfix.2`.
Notice the `+` instead of `-` or `.` before `hotfix.2`.
I've added `+` to allowed characters after the 3 digit standard version format.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Currently we are still using a bloom filter when querying mailserver.
This commit changes the behavior so that topics are used instead.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Also adjusted the `generate.sh` script and split stuff into separate function
to make it easier to run specific stages of the generation process.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
This commit fixes an issue with taking pictures from camera, where
the check for image count was not checked.
Signed-off-by: andrey <motor4ik@gmail.com>
When selecting an image from camera roll we would immediately setting
the filepath with the raw image, process and later once it was processed
we would replace the file path.
On slow devices, the user might press send while the image is still
processing, causing the raw image to be sent, which might be discarded
as too large and never sent.
This commit changes the behavior so that we only set the uri once the
image is processed, it might add some delay, but the image should be
correctly sent.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
There's an issue reported on slow devices when sending a batch of
images.
All the requests are send concurrently, and the sending of messages is
processed concurrently in the background.
On slow devices or connection with slow upload speed this may result in
expired envelopes, as the POW calculation or the upload takes too long,
and either they never leave the device, or worse they reach the
mailserver but won't be stored because already expired on arrival.
This commit allows setting the max-images-batch config value, setting it
to 1 for release and keeping it to 5 for other builds.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Fixes: #11441Fixes: #11416
The issue was due to a nil pointer exception with the
localNotificationService.
Upon upgrade it would be disabled and therefore it would not be
available.
This was due to the fact that initialization comes from the database and
not from status-react, so on upgrade it would not be available.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Using different temporary keychains does not work if we do not set
`default_keychain=true`, because `codesign` then can't find the cert:
```
error: No signing certificate "iOS Distribution" found: No "iOS Distribution" signing certificate matching team ID
```
But if we set `default_keychain=true` then we cause a race condition
when the keychain is deleted by a parallel job while another is using it
as its default.
For this reason we have to use a static keychain name and keep it
between builds.
I tried disabling `default_keychain=true` in #11378 but it worked only
because the default user keychain already had the cert.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
When sending messages in quick succession, it might be that multiple
messages are batched together in datasync, resulting in a single large
payload.
This commit changes the behavior so that we can pass a max-message-size
and we split the message in batches before sending.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
On shutdown the app was calling `PeersCount`, but sometimes the server
would be unavailable, resulting in a call to a nil pointer.
Upgrades status-go version with the fix.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
This is a new approach to signing the iOS app by using a temporary
Keychain created only for that specific build and unlocked in advance.
By doing it this way we can avoid issues with `errSecInternalComponent`
appearing when there is no UI to open a Keychain password prompt when
running build in CI. I've described this problem in details in:
https://github.com/fastlane/fastlane/issues/15185
Thanks to `codesign:` partition ID being added to key partition list by
Fastlane `match` when importing a Keychain this approach now works:
https://github.com/fastlane/fastlane/pull/17456
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Add inner border to image message
Add max batch size of 5
Disable camera roll more images
Use interop instead of aget
Add border as a separate layer
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Pods
Add headless js service
Handle Local Notifications react
CopyPaste driven implementation of java notification
pn demo
Show iOs push in foreground
Show icon in notification
Enable notifications on login
Get chain from status-go
Add UI for switching notifications
go go!
Fixup
Handle notification onPress
Android UI
Handle press iOs
Handle android press and validate
go update
Fix route params in universal link handler
Set show badge explicitly to false
Fix e2e
bump status go
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
We had an issue where the `1.7.0` release was using the `v0.62.3.hotfix.3`
version of `status-go` which didn't match the regex we use to verify
if the specified version is a valid version according to [Semantic Versioning](https://semver.org/).
You can check the current regex here: https://regex101.com/r/OeTQCv/3
I also added a trace message to show when we mark a build as `develop`.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
It's been a while and a fix for an issue I've reported a long time ago
has been merged in https://github.com/fastlane/fastlane/pull/17456. With
this fix we should see less iOS signing issues appearing as `errSecInternalComponent`.
This should also enable me to try a fix I proposed in
https://github.com/fastlane/fastlane/issues/15185 which consists of
creating a temporary unlocked keychain for each build.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
On status-go side:
- new `strong-emph` node was added for strong emphasised text with triple
"*" and "_"
- `del` node got proper marshalling and can be recognised (works with single
and double "~")
On status react side:
- styles for `strong-emph` nodes
- styles for `del` (strikethrough) nodes
- unsuccessful attempt to use monospaced fonts for code/codeblock (we have a font
which is used as monospaced but doesn't support that property actually)
Fixes: #11305
The issue was due to the fact that the first condition was wrapped in a
when in fx merge, causing it to be ignored.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
There was an issue with counting characters in status-go that meant that
unicode characters were double counted.
That issue is now fixed. It's still not going to be 100% accurate as
in some languages characters are displayed together if they come one
after the other, but this PR should make it much safer.
To overcome this we could cap the UI input to something a bit lower
(3000 characters for example) and that should give us some room.
This commit includes a migration of the database fixing an issue with
long filenames on desktop.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
The env variable `INFURA_TOKEN` is used at build time of JS bundle, not
the final APK file. We never passed the `secretsFile` to the
derivation for JS bundle so it never saw the `INFURA_TOKEN`.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Setting a top-level closure-defines does not have any effect,
it needs to be for some reason inside each environment.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Before it was possible to break the format of `status-go-version.json`:
```
> git ls-remote https://github.com/status-im/status-go v0.62.3.hotfix.3
59e6602405bfbcf8446d26aca9b8087e84529f8e refs/heads/release/v0.62.3.hotfix.3
59e6602405bfbcf8446d26aca9b8087e84529f8e refs/tags/v0.62.3.hotfix.3
```
Which would result in `commit-sha1` key being set to two commits insted of one.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
* `status-im-releases` for release builds
* `status-im-nightlies` for nightlies
I want to reserve the `status-im` bucket for use with the site.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
When starting the project the following would be spat out:
NPM dependency "react" has installed version "16.11.0"
"16.13.0" was required by jar:file:/Users/alex/.m2/repository
/reagent/reagent/0.10.0/reagent-0.10.0.jar!/deps.cljs
I've bumped up the version in package.json to to match the one being
pulled in by reagent.
Signed-off-by: andrey <motor4ik@gmail.com>
With the update of Emacs CIDER 0.26.1, it expects to have the latest
cider-nrepl dependency to be at 0.25.3 otherwise it throws an error
when connecting to the project's REPL.
Signed-off-by: andrey <motor4ik@gmail.com>
Cleanup http events
Add loaders
Add dapp flow
Fix tests
Fix dapp success event
Hide reward based on referrals metadata
New flows
Terms link
TX watcher event
Do not show success popup
Use new rewardable field from backend
Fix referral pulling
Update copy
Translate advertiser modal
Move modal styles into style ns
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Do not show referrals if contract is not available
Do not check contract for referral accept
Rename invite event namespace require
Remove dispatch from raw subs
Do nothing if there is no contract
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Rename events
Add router to handle all links
Use router in add new chat
Unify universal link and universal qr with router
Add icon for universal scanner
Update tests
Now routing is tested in routing PR
lint
Cleanup
QA fixes
Scan own profile
Handle more EIP
Fix wallet scanner
Fix stack for view profile in UL
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Remove picker panel from input
Clean pan state
Fixes#11031
Do not use pan state on android
iOs panel switching do not change height
Revert "Remove picker panel from input"
This reverts commit 0ab2c1544b70f8c491424376268f572696bd284a.
Change reactions space keeper method
Audio
Do not use accessory view on Android
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
This should fix the following error showing up on MacOS:
```
error: assertion ((__lessThan 0) ((builtins).stringLength watchmanSockPath))
failed at /Users/jenkins/repos/status-react/nix/mobile/android/watchman.nix:8:9
```
Which was caused by flags like `--argstr` not being passed.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Add acquisition backend methods
Init referrals sharing UI
Add invite on home screen
Use i18n for strings
Lint
Update status go
Pull acquisition contract to get SNT amount
Use new invite component
f pulling
go
Use screen instead of bottom sheet
Handle android install referrer
Post referrer to backend if present
go go
Add async storage for referral decisions
Update with the stage backend
Update contract methods
Modal
UI
Full handling of advertiser type
UI
test
UI
Handle with universal link
Allow multiple acquisition per installation
Fix android bottom sheet
Do not call service if no click-id received
Disable invite in release
Parse query params for referrer
Adapt UI changes
Add push notification
update deps
Mock react-native-push-notification
Request push notifications permission on press accept
Store transaction to local storage and load it back on login
Separate acquisition into smaller ns
Add chat invite
Get referrer only on first install
fix string
Fix firebase crash
Handle outdate click-id
Cleanup business logic
Update contract
Revert pn
Minor update to advertiser modal copy
OLD - Welcome to Status! Here is some crypto to get you started
NEW - Here’s some crypto to get you started! Use it to get stickers, an ENS name and try dapps
OLD - By accepting you agree to the starter pack
NEW - By accepting you agree to the referral program
upgrade status-go
Add mainnet
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Fixes#10988
Allow public key and filter public chats
Make toolbar width 100
Clear new identity from search
QA issues fix
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
New input UI
Inverse panel height calculation
Remove old chat input
Better animations
fix for pasting text
Add buttons accessibility
Fix dark mode
Update react navigation to fix the keyboard issues
Force close bottom sheet
Unmount android bottom sheet when not visible
Reset bottom sheet height android
more fixes
more fixes
Add hidden audio icon
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Previously we used both "keycard" and "hardwallet" names for stuff
related to keycard. It can be confusing as "hardwallet" might be used
for other hardwallets in future.
This updates a bunch of things in the Jenkins logic.
For details of that see:
https://github.com/status-im/status-react-jenkins/pull/12
It grew out of the changes I made to make PR builds available in Desktop client:
https://github.com/status-im/nim-status-client/pull/507
Changes:
- Bump `status-react-jenkins` library to newer version, probably `1.2.0`
- Update use of `utils.pkgFilename()` in `ci/Jenkinsfile.combined`
- Make all iOS builds go into the same folder: `status-ios`
- Drop e2e build type, infer it from Android ABIs set to `x86` only
- Simplify logic in `nix/mobile/android/release.nix.`
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Remove extra fn's
Long press animation cancel
Make select primary ens accessible
Add accessibility to controls components
Update e2e tests
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Having all keys related to specific multiacc in a separate dir will
simplify removing of the multiacc. Also it will allow adding of the same
account to different multiaccs.
Fix android password visibility change
Do not change secure-text-entry on android password visiblity
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Replace all the usage of the button without component
Use quo
Fix tests
List item in multiaccounts
Use list items in contacts
Fix welcome screen button
Experiment long press
Big list item
Remove old bottom sheet
Use bottom sheet
Keycard
Add error to list item
Stickers panel button
Images panel
Fix z-index in profile
Fix android crash
Fix signing list item
Try fixing test
iOs gas sheet keyboard
Disable root alert in e2e
keycard signing sheet height
Clean up bottom sheet events
Replace flat list in profile
Memorise the manual-close value for bottom sheet
Mailserver QR scanner
Fix e2e tests
E2e fix 2
Fix e2e 3
Remove extra fn
Reduce bridging time for animation
Trick android layout
Try hooks
Fix profile missing ens-name
Disable press on control in list-view
allow disabling animations in list item
Use simple list in wallet assets settings
TBD - this screen should be rewritten from scratch. Now on every interaction the full list is re-rendered, also it makes the wallet main screen to re-render.
Fix send sheet
Handle long press in main thread
UI fixes
perf
Update e2e
fix missing user name in image long press
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Build PR Scheme in PR build
use named parameters, use pr_build boolean
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Enable capabilities
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Add custom app icon
Remove user defined profile
Add PR scheme
Explicit provide provisioning profiles
Fix pr schema
Bump jenkins
Pod bump
Describe pr_build argument
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Add new switch component
Add all controls components
Use controls in list items
Delete leftover file
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-06-26 12:02:02 +03:00
1366 changed files with 81516 additions and 58431 deletions
### Builds in TestFlight and PlayStore to push as a release
[comment]: # (Will be added by QA after testing approving of build)
### Process
#### 1) Kick-off
- [ ] 1. Translation PRs is merged before cutting branch (Jinho)
- [ ] 2. Prepare scope of visible changes based on commits history, started from previous release branch cut ([example]( https://notes.status.im/1.14-release-notes?view))
- [ ] 3. Update [RELEASES.md](https://github.com/status-im/status-react/blob/develop/RELEASES.md) with release notes (make PR based on previous step)
- [ ] 4. Create release branch using this [guide](https://github.com/status-im/status-react/blob/develop/doc/RELEASE_GUIDE.md), bump VERSION (merge created PR ([example](https://github.com/status-im/status-react/pull/12504) ) to develop) and get successful release builds (so, testing can be started)
- [ ] 5. Based on release scope, ask for comms (Jonny)
- [ ] 6. Make sure that assets (screenshots, video) in stores are up to date. If should be updated, ask @cammellos for help
#### 2) Testing
[comment]: # (Section will be maintained by QA)
- [ ] Dogfooding (add notes, if it was held)
- [ ] Regression testing for release candidate build
- [ ] Upgrade tests
- [ ] Fix known blocker(s) found during regression testing
##### Blockers
[comment]: # (Section for blocker issues; should be fixed and merged by release-manager. Remove if no blockers found)
- [ ] Verify fix(es) on new release candidate build
- [ ] Retest
- [ ] Keep release build forever (button in Jenkins)
#### 3) Submission
- [ ] 1. Release notes written and added (500 character limit for updates (Android) and PR for [RELEASES.md](https://github.com/status-im/status-react/blob/develop/RELEASES.md) is ready to be merged (from 1.3 step)
- [ ] 2. Submit beta version for Android (Open Testing in Play Store)
- [ ] 3. Submit iOS build to Apple review ([instruction](https://drive.google.com/file/d/10Cl7PBB7TFPkZiVbfzdFGpfMRP9bxXuq/view?usp=sharing), be careful - low quality of audio)
- [ ] 4. Play store content reviewed and updated
- [ ] 5. Privacy policy reviewed and updated (ask in channel)
- [ ] 6. Countries to be excluded (ask in channel)
- [ ] 7. Changes to our FAQ made (should be checked and if any changes needed, ask Jakub to made them)
- [ ] 3. Upload builds for DO store, https://dev.status.im/ (Jakub)
#### 5) At time of publishing
- [ ] 1. Notify marketing to push comms and blog post (Jonny)
- [ ] 2. Publish release to app store and playstore
- [ ] 3. Final push to update prod site https://status.im/, [instructions](https://github.com/status-im/infra-docs/blob/master/articles/status_release_upload.md) (Jakub - requires credentials to upload)
- [ ] 4. Add the link to the post about the release and publish the release: https://github.com/status-im/status-react/releases (Jakub)
[<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="doc/github_badge.png" alt="Get it on Github" height="80"/>](https://github.com/status-im/status-react/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.
[](https://www.youtube.com/watch?v=oDCSEmS9c3o "Getting started with Status")
@@ -24,7 +27,7 @@ Developers are the heart of software and to keep Status beating we need all the
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.
- **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 [Community Principles](https://status.im/contribute/our_principles.html)
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)
- **Specification / Documentation**
John Dewey once said "Education is not preparation for life; education is life *itself* ". Developers & Designers need guidance and it all starts from documentation and specifications. Our software is only as good as its documentation, head over to our [docs](https://status.im/docs) and see how you can improve what we have.
This document explains some of the steps that are involved in relseases.
## PlayStore Metadata Updates
You can update Play Store releae metadata using `fastlane android upload_metadata`.
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:
# We need to include the private headers for QZipWriter. If in the future we can't use that class anymore, we can always resort to the QuaZIP OSS library
* Copyright (c) 2017-present, Status Research and Development GmbH.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
*/
importQtQuick2.4
importQtQuick.Controls2.2
importQtQuick.Layouts1.3
Rectangle{
id: root
width:384
height:640
ColumnLayout{
anchors.centerIn:parent
Text{
Layout.alignment:Qt.AlignCenter
text:"Oh, no! Status application just crashed!"
font.bold:true
font.pointSize:25
}
Text{
Layout.alignment:Qt.AlignCenter
Layout.topMargin:20
text:"Please report us <b>crash.dmp</b> and <b>Status</b> executable files to allow us fix the issue!"
font.bold:true
font.pointSize:20
}
RowLayout{
Layout.alignment:Qt.AlignCenter
Layout.topMargin:40
spacing:25
Button{
Layout.minimumWidth:150
text:"Report (highly appreciated)"
onClicked:reportPublisher.submit()
}
Button{
text:"Restart and Quit"
onClicked:reportPublisher.restartAndQuit()
}
Button{
text:"Just Quit"
onClicked:reportPublisher.quit()
}
}
RowLayout{
Layout.alignment:Qt.AlignCenter
Layout.topMargin:100
TextEdit{
readOnly:true
Layout.maximumWidth:500
wrapMode:TextEdit.Wrap
selectByMouse:true
font.pointSize:12
textFormat:TextEdit.RichText
text:"<div>Please upload both <b>crash.dmp</b> and <b>Status</b> executable files from the report directory:<br>"+reportPublisher.resolveDataStoragePath()+"</div>"
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.