Commit Graph

57 Commits

Author SHA1 Message Date
Dan Caseley 72ec569029
[CHORE] Move Detox to Github Actions (#2340)
* Initial workflow for iOS detox tests

* Increase timeout

* Parallelise tests and optimise when to build

* Refine GH Actions logic

* Improve Detox App caching

* Upload failed test artifacts

* Rate limiting aware data setup

* Remove detox tests from Circle CI

* Revert "Rate limiting aware data setup"

This reverts commit d115604270.

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-07-27 17:51:35 -03:00
Dan Caseley df6c2c5424
[TESTS] Idempotence for e2e tests (#2308)
* Idempotence for Assorted

* Idempotence for Onboarding

* Idempotence for Rooms

* Remove redundant expects

* Fixes and improvements

* Remove unneeded sleeps

* Make stable following merge

* Try solving early taps without long sleep

Try solving early taps without long sleep (cont)

Temporary CircleCI hack for quicker testing

Add screenshots to CircleCI for failed tests

Try solving early taps without long sleep (cont. 2)

Revert "Temporary CircleCI hack for quicker testing"

This reverts commit 4abef3a5827910c05b12ac8b8380275b60e8af4f.

* Fix flaky test with a fluent wait on the tap

* Add some new sleeps to workaround #2324

* Add test artifacts to gitignore

* More longpress for dodgy taps, wait for pin response

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-07-22 13:32:21 -03:00
Dan Caseley 6436199780
[CHORE] CircleCI Upgrades (#2269)
* Upgrade nvm

* Upgrade XCode

* Use nvm's default installed version of node (LTS)

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-07-13 13:52:14 -03:00
Govind Dixit 089e4bf3eb
[NEW] Add fastlane to android module and configure CI (#2100) 2020-06-16 10:31:07 -03:00
Diego Mello d1e751bf12
[TESTS] Update and separate E2E tests (#2126)
* Tests passing until roomslist

* create room

* roominfo

* change server

* broadcast

* profile

* custom status

* forgot password

* working

* room and onboarding

* Tests separated

* config.yml refactor

* Revert "config.yml refactor"

This reverts commit 0e984d3029.

* CI

* lint

* CI refactor

* Onboarding tests

* npx detox

* Add all tests

* Save brew cache

* mac-env executor

* detox-test command

* Update readme

* Remove folder
2020-05-20 13:33:40 -03:00
Diego Mello ce51982bb0
Update all dependencies (#2008)
* Android RN 62

* First steps iOS

* Second step iOS

* iOS compiling

* "New" build system

* Finish iOS

* Flipper

* Update to RN 0.62.1

* expo libs

* Hermes working

* Fix lint

* Fix android build

* Patches

* Dev patches

* Patch WatermelonDB: https://github.com/Nozbe/WatermelonDB/pull/660

* Fix jitsi

* Update several minors

* Update dev minors and lint

* react-native-keyboard-input

* Few updates

* device info

* react-native-fast-image

* Navigation bar color

* react-native-picker-select

* webview

* reactotron-react-native

* Watermelondb

* RN 0.62.2

* Few updates

* Fix selection

* update gems

* remove lib

* finishing

* tests

* Use node 10

* Re-enable app bundle

* iOS build

* Update jitsi ios
2020-05-08 13:37:49 -03:00
Neil Agarwal 48f90fb9a8
[FIX] Remove react-native global installs (#1886)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-03-17 17:36:13 -03:00
Diego Mello 005e1ac46b
[FIX] Detox tests (#1790) 2020-03-03 17:27:38 -03:00
Diego Mello a62dfef3fa
[FIX] Different sourcemaps generation for Hermes (#1724)
* [FIX] Different sourcemaps generation for Hermes

* Upload sourcemaps after build
2020-02-14 16:12:06 -03:00
Exordian 8f64e65849
[FIX] Remove duplicate jetify step (#1628)
minor: also remove 'cd' calls

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-02-05 13:44:31 -03:00
Diego Mello 8823734d43
[NEW] Enable Hermes (#1446) 2019-12-11 16:23:16 -03:00
Djorkaeff Alexandre 7cdf6394fc [CHORE] Update CI Xcode Image (#1430) 2019-12-02 11:08:11 -03:00
Diego Mello e0f0f99990
[FIX] Use Ruby 2.4 on TestFlight upload (#1368) 2019-11-05 17:05:59 -03:00
Diego Mello 371a93d888
[CHORE] Update gems (#1365) 2019-11-04 16:29:15 -03:00
IlarionHalushka 59a71ffaef [CHORE] Bugsnag logging setup (#1145)
* initial bugsnag setup

* upload sourcemaps to bugsnag during ios-build job

* fix: spacing in config.yml

* add yarn global add react-native

* add separate step: Upload sourcemaps to Bugsnag

* add brew install watchman

* install react-native-cli, remove install watchman

* upload source maps for android build

* add yarn add global react-native react-native-cli for android-build ci job

* add working_directory to android-build

* install npm i -g react-native react-native-cli

* add Install Node step to android-build job

* export path to node to bash_profile

* add step Install React Native CLI to android build job

* use yarn generate-source-maps in ci; exchange firebase log -> bugsnag log

* implement send(toggle) crash reports button

* move BUGSNAG_API_KEY to config file; remove generated source maps files

* unlink bugsnag

* add ios/Pods files connected to Bugsnag; fix ci android build job

* export firebase analytics also from /utils/log

* use `log(e)` instead of `log(error)`

* API Key changes

* pod install

* Fix iOS build

* Simulate error

* lint

* Add navigation

* Use projectRoot

* Revert project root

* - Don't run on forks
- Upload dSYMs

* Remove error sim

* Remove automatic dSYMs upload

* Remove fastlane-plugin-bugsnag
2019-08-23 10:18:47 -03:00
Diego Mello ba232547f1
[CHORE] Update to react-native 0.60.4 (#1095)
* Update to 0.59.10

* stash

* stash

* patch RN

* Try to fix openURL

* Fix compile Share Extension

* Minor fixes

* build ios

* tracking view working and added postinstall

* SafeAreaView vertical never

* tracking view patch

* Android build working

* Android notifications working

* Lint and tests

* Fix android build

* Add tools:replace="android:appComponentFactory"

* Android build

* Update vector icons

* Update webview

* Remove jsc

* Update document picker

* Firebase

* jetify on postinstall

* Patch expo-haptics

* CI

* Migrate packages manually

* Disable ci cache

* Revert "Disable ci cache"

This reverts commit 4740d86102.

* CI

* audio

* adapter

* notifications

* Try RN directly

* Fix gradle

* Revert patches

* Restore cache

* update redux and lodash

* eslint-config-airbnb@17.1.1 eslint-plugin-jsx-a11y@6.2.3

* ejson@2.2.0 react-native-webview@6.7.0 semver@6.3.0 snyk@1.210.0

* codecov@3.5.0 eslint-plugin-react@7.14.3 eslint-plugin-react-native@3.7.0 react-dom@16.8.6

* Update react-redux and remove decorators

* Update redux-saga and reactotron libs

* Husky

* Storybook libs

* react-native-webview@6.8.0 markdown-it-flowdock@0.3.8 react-native-unimodules@0.5.3

* Removed regenerator-runtime

* react-native-picker-select

* react-navigation-header-buttons

* Remove comments

* react-native-notifications

* Fix rnn android build
2019-08-07 10:51:34 -03:00
IlarionHalushka d8c557c367 [CI] Restore cache on CI (#1029)
* feat: add fastlane save\restore cache config; comment not needed jobs;

* install fastlane using 'bundle install'

* install fastlane using 'sudo bundle install'

* uncomment ios build commands

* run set up google services in ios folder

* add working_directory: ios to ios-build steps

* remove 'cd ios' from Fastlane build step

* add save\restore cache for npm modules

* group save_cache steps

* cache fastlane in ios-testflight job

* uncomment previously commented jobs\steps

* fix: add missing colon

* use key for caching: node-modules-{{ checksum ".circleci/config.yml" }}-{{ checksum "yarn.lock" }}

* add names for save\restore steps

* ci: add `default` step with `working_directory: ~/repo` to ios-build job

* return back caching npm: `node-v1-{{ checksum "package.json" }}-{{ arch }}`

* fix: add missing curly braces

* save\restore cache in e2e-test job; remove {{arch}} from cache names

* add names to restore_cache steps in android-build job

* add names to save_cache steps in android-build job

* add names to all save\restore steps; change checksum package.json to yarn.lock

* change `npm` to `NPM` in steps naming

* remove {{ checksum circle ci }} from android-build job and fix naming of steps
2019-07-04 08:23:31 -03:00
IlarionHalushka f7a5db0559 [CHORE] Make e2e pass on CircleCI (#933)
* add README.md for running ios detox e2e tests

* uncomment circle ci e2e tests

* update e2e credentials and server url

* update e2e credentials and docs

* comment lastMessage prop on RoomListView->RoomItem (research realm bug)

* add sleep before search in joinpublic room test (research realm bug)

* use detox.launchApp instead of detox.reloadRN, (joinpuclicroom test)

* make e2e job run only on approval; update docs with PR review comments

* cache node_modules on CI jobs: e2e tests, ios build

* fix circle CI caching node_modules

* fix circle CI caching node_modules

* revert changes connected to caching node_modules

* remove unnecessary changes

* revert email value to diego.mello

* add stopTrackingMention when input becomes empty in messagebox

* add Android run instruction to readme

* fix spacing
2019-06-03 16:20:36 -03:00
Diego Mello dffba8ab58
[CHORE] Split Google Services in debug and production (#941)
* Split android

* Split iOS

* Update CI
2019-05-31 09:41:37 -03:00
Diego Mello 9e4a4d2454
[CHORE] Use react-native-firebase (#928)
We need to migrate from deprecated react-native-fabric to react-native-firebase.
This PR enables following Firebase features:
* Analytics
* Crashlytics
* Performance

It also tracks screen view without the necessity of HOC.

Future work:
I won't do it in this PR because it's large enough, but we need to log more app events, like 'sent_message', 'open_admin', 'media_upload', etc.
2019-05-28 10:03:08 -03:00
Diego Mello 29bd949743
[CHORE] Android app bundle (#915)
* [CHORE] Upgrade Mac CI image to 10.2.1

* [CHORE] Android App Bundle

* Fix CI
2019-05-23 15:44:33 -03:00
Diego Mello ba472d26ba
[CHORE] Upgrade Mac CI image to 10.2.1 (#914) 2019-05-22 18:09:50 -03:00
Diego Mello a1b1af01c9
Update RN to 0.59.8 (#896)
* update IOS react native to 0.59.8

* update Android react native to 0.59.8

* fix eslint errors

* Android debug working

* Android build

* Fix lint

* Making jest happy

* Update CircleCI android image

* Fix android build

* Use 32 bits

* Fix iOS build

* Update detox

* Use new Xcode build system

* Use old build system

* Update realm (64 bits support)
2019-05-22 17:15:35 -03:00
Diego Mello 6edef99d37
[CHORE] Remove e2e tests from CI (#875) 2019-05-04 13:44:56 -03:00
Diego Mello 8f5381d770
Update React Native to 0.58.6 (#668) 2019-03-01 11:40:22 -03:00
Diego Mello 2585038112
Update JS SDK version (#602) 2019-02-07 13:48:10 -02:00
Diego Mello 73feb4f067
[CHORE] Add hold step on CircleCI before TestFlight (#572) 2018-12-18 11:03:36 -02:00
Diego Mello 9990abdf26
[CHORE] Update Xcode image version on CircleCI (#561) 2018-12-06 11:33:16 -02:00
Diego Mello ea3cc7480d
Check $FABRIC_KEY availability in CircleCI for iOS (#507) 2018-10-24 15:29:28 -03:00
Diego Mello cda67427fa
Check $FABRIC_KEY availability in CircleCI (#506)
* Check $FABRIC_KEY in CircleCI

* Remove config scripts
2018-10-24 13:37:22 -03:00
Diego Mello 09ec7c6f21
Update Rocket.Chat.js.SDK (#494) 2018-10-17 17:12:01 -03:00
Diego Mello d5a4ead888
[FIX] Handle deleted messages (#466)
* [FIX] Handle deleted messages

* Fix rest error

* Fix some connection issues
2018-09-28 15:57:29 -03:00
Diego Mello 81c53acd60
Update dependencies (#431)
* Update dependencies

* Lint and test

* Added react-native fork

* rn 57

* Lint and tests updated

* Update xcode on circleci

* Use legacy build system

* Update tests
2018-09-25 16:28:42 -03:00
Diego Mello 101d4c727c
Sort/group rooms local only (#425)
* Update android api from ci

* Sort local only
2018-09-04 11:29:20 -03:00
Diego Mello 91025e9d03 [NEW] Onboarding (#407)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->
Closes #392 

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
![aug-07-2018 17-03-50](https://user-images.githubusercontent.com/804994/43799447-f62074dc-9a63-11e8-8aac-bf2c4c5a8a2b.gif)
![aug-07-2018 17-03-35](https://user-images.githubusercontent.com/804994/43799446-f5f84a70-9a63-11e8-8947-265113ae9bf4.gif)
![aug-07-2018 17-03-13](https://user-images.githubusercontent.com/804994/43799445-f5d70ee6-9a63-11e8-94a9-f49c7d69fbba.gif)
2018-08-10 14:26:36 -03:00
Diego Mello 8af34a705a Update gradle and targetSdkVersion (#328)
* Changed the way we read RocketChat settings since setting.type won't be returned from server anymore

* Permissions

* Unnecessary action sheet render

* Update gradle

* Switched testServer to use blob

* RoomsListHeader search fixed

* Runs loadMessagesForRoom only if room has at least 20 rows

* - Logout if user's token expired
- Removed update avatar logic
- Profile dialog border on android

* - Animations disabled
- CircleCI set

* Tests updated

* "eventType argument is required" fix
2018-06-20 10:40:33 -03:00
Diego Mello f61a57bb30 New markdown (#306)
Our current markdown is causing a lot of issues on Android devices, since it wraps everything inside a Text component.
On Android, Text doesn't support View as a child.
This PR adds react-native-markdown-renderer, that uses View as wrapper and may be better.
2018-05-29 14:09:20 -03:00
Guilherme Gazzo 182ab69d6f
Detox tests E2E (#283) 2018-05-23 10:39:18 -03:00
Guilherme Gazzo 557e485613
Beta (#265)
* Fabric iOS

* Fabric configured on iOS and Android

* - react-native-fabric configured

- login tracked

* README updated

* Run scripts from README updated

* README scripts

* get rooms and messages by rest

* user status

* more improves

* more improves

* send pong on timeout

* fix some methods

* more tests

* rest messages

* Room actions (#266)

* Toggle notifications

* Search messages

* Invite users

* Mute/Unmute users in room

* rocket.cat messages

* Room topic layout fixed

* Starred messages loading onEndReached

* Room actions onEndReached

* Unnecessary login request

* Login loading

* Login services fixed

* User presence layout

* ïmproves on room actions view

* Removed unnecessary data from SelectedUsersView

* load few messages on open room, search message improve

* fix loading messages forever

* Removed state from search

* Custom message time format

* secureTextEntry layout

* Reduce android app size

* Roles subscription fix

* Public routes navigation

* fix reconnect

* - New login/register, login, register

* proguard

* Login flux

* App init/restore

* Android layout fixes

* Multiple meteor connection requests fixed

* Nested attachments

* Nested attachments

* fix check status

* New login layout (#269)

* Public routes navigation

* New login/register, login, register

* Multiple meteor connection requests fixed

* Nested attachments

* Button component

* TextInput android layout fixed

* Register fixed

* Thinner close modal button

* Requests /me after login only one time

* Static images moved

* fix reconnect

* fix ddp

* fix custom emoji

* New message layout (#273)

* Grouping messages

* Message layout

* Users typing animation

* Image  attachment layout
2018-04-24 17:08:17 -03:00
Diego Mello 0e8b9fe8d7 CI fix 2018-04-03 15:30:09 -03:00
Diego Mello 17ecd5c9af Crashlytics (#258)
* Fabric iOS

* Fabric configured on iOS and Android

* login tracked

* more logs

* fix reaction
2018-04-03 13:24:58 -03:00
Diego Mello f20faccbfa Update iOS to RN 0.54 (#248)
* Update iOS to RN 0.54
2018-03-07 00:14:38 +00:00
Guilherme Gazzo 872532251b
Update config.yml 2018-03-05 11:23:47 -03:00
Guilherme Gazzo 885d1153a4
hotfix for ios 2018-03-05 10:41:44 -03:00
Guilherme Gazzo 9e3714758f
[WIP] Improves (#245) 2018-03-02 21:31:44 +00:00
Diego Mello b1bb815b07 Room actions (#231)
* Layout


* Empty starred list


* Favorite room

* Pinned messages

* fix last messages

* fix date on pinned messages
2018-02-19 16:19:39 -05:00
Guilherme Gazzo bb5e29fdc7
fix last messages (#239)
* fix last messages
2018-02-19 16:15:31 -05:00
Rodrigo Nascimento 4700266176
Remove hold step to deploy to testflight 2018-02-16 19:35:16 -02:00
Rodrigo Nascimento 1d749eea64 Fix TestFlight upload (#212) 2018-01-30 17:49:22 -02:00
Saket Kumar 1df96aef91 Handle when custom tabs and browser is not installed on the device. (#172)
* Handle when custom tabs and browser is not installed on the device.
2018-01-10 19:06:19 -02:00