Skip to content

Commit

Permalink
Merge pull request #10439 from Expensify/andrew-npm-8
Browse files Browse the repository at this point in the history
Update to node 16 and npm 8 via `nvm` and updated many node packages
  • Loading branch information
AndrewGable authored Aug 19, 2022
2 parents 3e03f08 + 2be58c1 commit bef2d47
Show file tree
Hide file tree
Showing 32 changed files with 195,499 additions and 156,495 deletions.
2 changes: 1 addition & 1 deletion .github/actions/composite/setupNode/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ runs:

- uses: actions/setup-node@09ba51f18e18a3756fea1f54d09c6745c064491d
with:
node-version: 14.19.3
node-version-file: '.nvmrc'
cache: npm

- name: Install node packages
Expand Down
21,045 changes: 11,038 additions & 10,007 deletions .github/actions/javascript/awaitStagingDeploys/index.js

Large diffs are not rendered by default.

2,643 changes: 2,364 additions & 279 deletions .github/actions/javascript/bumpVersion/index.js

Large diffs are not rendered by default.

2,273 changes: 2,183 additions & 90 deletions .github/actions/javascript/checkBundleVersionStringMatch/index.js

Large diffs are not rendered by default.

21,045 changes: 11,038 additions & 10,007 deletions .github/actions/javascript/checkDeployBlockers/index.js

Large diffs are not rendered by default.

30,573 changes: 15,802 additions & 14,771 deletions .github/actions/javascript/createOrUpdateStagingDeploy/index.js

Large diffs are not rendered by default.

20,903 changes: 10,967 additions & 9,936 deletions .github/actions/javascript/getDeployPullRequestList/index.js

Large diffs are not rendered by default.

21,045 changes: 11,038 additions & 10,007 deletions .github/actions/javascript/getPullRequestDetails/index.js

Large diffs are not rendered by default.

21,045 changes: 11,038 additions & 10,007 deletions .github/actions/javascript/getReleaseBody/index.js

Large diffs are not rendered by default.

21,045 changes: 11,038 additions & 10,007 deletions .github/actions/javascript/isPullRequestMergeable/index.js

Large diffs are not rendered by default.

21,045 changes: 11,038 additions & 10,007 deletions .github/actions/javascript/isStagingDeployLocked/index.js

Large diffs are not rendered by default.

20,903 changes: 10,967 additions & 9,936 deletions .github/actions/javascript/markPullRequestsAsDeployed/index.js

Large diffs are not rendered by default.

21,045 changes: 11,038 additions & 10,007 deletions .github/actions/javascript/reopenIssueWithComment/index.js

Large diffs are not rendered by default.

21,045 changes: 11,038 additions & 10,007 deletions .github/actions/javascript/triggerWorkflowAndWait/index.js

Large diffs are not rendered by default.

20,903 changes: 10,967 additions & 9,936 deletions .github/actions/javascript/verifySignedCommits/index.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
if: ${{ github.actor != 'OSBotify' || github.event_name == 'workflow_call' }}
runs-on: ubuntu-latest
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

- run: npm run lint
env:
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/platformDeploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
if: ${{ fromJSON(needs.validateActor.outputs.IS_DEPLOYER) }}
runs-on: ubuntu-latest
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

- uses: ruby/setup-ruby@08245253a76fa4d1e459b7809579c62bd9eb718a
with:
Expand Down Expand Up @@ -95,7 +95,7 @@ jobs:
if: ${{ fromJSON(needs.validateActor.outputs.IS_DEPLOYER) }}
runs-on: macos-11
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

- name: Decrypt Developer ID Certificate
run: cd desktop && gpg --quiet --batch --yes --decrypt --passphrase="$DEVELOPER_ID_SECRET_PASSPHRASE" --output developer_id.p12 developer_id.p12.gpg
Expand Down Expand Up @@ -130,7 +130,7 @@ jobs:
if: ${{ fromJSON(needs.validateActor.outputs.IS_DEPLOYER) }}
runs-on: macos-11
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

- uses: ruby/setup-ruby@08245253a76fa4d1e459b7809579c62bd9eb718a
with:
Expand Down Expand Up @@ -208,7 +208,7 @@ jobs:
if: ${{ fromJSON(needs.validateActor.outputs.IS_DEPLOYER) }}
runs-on: ubuntu-latest
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

- name: Setup python
run: sudo apt-get install python3-setuptools
Expand Down Expand Up @@ -336,7 +336,7 @@ jobs:
if: ${{ always() }}
needs: [android, desktop, iOS, web]
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

- name: Set version
run: echo "VERSION=$(npm run print-version --silent)" >> "$GITHUB_ENV"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
if: ${{ github.actor != 'OSBotify' || github.event_name == 'workflow_call' }}
runs-on: ubuntu-latest
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

# If automatic signing is enabled, iOS builds will fail, so ensure we always have the proper profile specified
- name: Check Provisioning Style
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/validateGithubActions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
if: github.actor != 'OSBotify'
runs-on: ubuntu-latest
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

# Rebuild all the actions on this branch and check for a diff. Fail if there is one,
# because that would be a sign that the PR author did not rebuild the Github Actions
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/verifyPodfile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@ jobs:
if: github.actor != 'OSBotify'
runs-on: ubuntu-latest
steps:
- uses: Expensify/App/.github/actions/composite/setupNode@main
- uses: Expensify/App/.github/actions/composite/setupNode@andrew-npm-8

- run: ./.github/scripts/verifyPodfile.sh
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
engine-strict=true
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
16.15.1
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,15 @@
These instructions should get you set up ready to work on New Expensify 🙌

## Getting Started
1. Install `node` & `npm`: `brew install node`
1. Install `nvm` then `node` & `npm`: `brew install nvm && nvm install`
2. Install `watchman`: `brew install watchman`
3. Install dependencies: `npm install`

You can use any IDE or code editing tool for developing on any platform. Use your favorite!

## Recommended `node` setup
In order to have more consistent builds, we use a strict `node` and `npm` version as defined in the `package.json` `engines` field and `.nvmrc` file. `npm install` will fail if you do not use the version defined, so it is recommended to install `node` via `nvm` for easy node version management. Automatic `node` version switching can be installed for [`zsh`](https://github.com/nvm-sh/nvm#zsh) or [`bash`](https://github.com/nvm-sh/nvm#bash) using `nvm`.

## Running the web app 🕸
* To run the **development web app**: `npm run web`
* Changes applied to Javascript will be applied automatically via WebPack as configured in `webpack.dev.js`
Expand All @@ -49,7 +52,6 @@ For an M1 Mac, read this [SO](https://stackoverflow.com/c/expensify/questions/11
* To run a on a **Development Simulator**: `npm run ios`
* Changes applied to Javascript will be applied automatically, any changes to native code will require a recompile


## Running the Android app 🤖
* To install the Android dependencies, run: `npm install`
* Go through the instructions on [this SO post](https://stackoverflow.com/c/expensify/questions/13283/13284#13284) to start running the app on android.
Expand Down Expand Up @@ -93,7 +95,6 @@ variables referenced here get updated since your local `.env` file is ignored.
- `ONYX_METRICS` (optional) - Set this to `true` to capture even more performance metrics and see them in Flipper
see [React-Native-Onyx#benchmarks](https://github.com/Expensify/react-native-onyx#benchmarks) for more information


----

# Running the tests
Expand Down
Loading

0 comments on commit bef2d47

Please sign in to comment.