Ensure you have the following software installed:
- Xcode 12.4
- Java 11
Ensure you call git clone
with the recursive
flag to ensure submodules (packages/react-native) are included:
git clone https://github.com/invertase/notifee.git --recursive
cd notifee/
yarn
yarn tests_rn:packager
Ensure you have TypeScript compiler running to listen to react-native
submodule changes:
yarn build:rn:watch
The following package scripts are exported to help you run tests;
yarn tests_rn:test
- run Jest tests once and exit.yarn tests_rn:jest-watch
- run Jest tests in interactive mode and watch for changes.yarn tests_rn:jest-coverage
- run Jest tests with coverage. Coverage is output to./coverage
.
Tests can be found in the tests_react_native/specs
directory.
FIXME: Currently to get native code working correctly you need to do this:
cd tests_react_native/node_modules/@notifee && \rm -fr react-native && ln -s ../../../packages/react-native .
...that allows xcodebuild and android to link in the raw / maybe-unpublished code from local files instead of NPM package
To run tests, use these commands:
Android
: runyarn tests_rn:android:test
iOS
: runyarn tests_rn:ios:test
Runs ESLint and respective type checks on project files
yarn validate:all:js
yarn validate:all:ts
- Bump version:
npm version {minor/patch}
- Publish to npm:
npm publish
- Generate TypeDoc reference docs:
yarn gen/reference
- Push changes to master branch on notifee/react-native-notifee
- Add release notes to docs
- Deploy website (notifee.app)
- Create a new release on GitHub and tag as latest release.
- Add to Release Status and update any other relevant issues.